ACTUALLY DOING IT : an Introduction to Polyhedral Computation

Similar documents
Combinatorial Geometry & Topology arising in Game Theory and Optimization

Convex Geometry arising in Optimization

Linear Programming and its Applications

1. CONVEX POLYGONS. Definition. A shape D in the plane is convex if every line drawn between two points in D is entirely inside D.

Linear programming and the efficiency of the simplex algorithm for transportation polytopes

We have set up our axioms to deal with the geometry of space but have not yet developed these ideas much. Let s redress that imbalance.

Week 7 Convex Hulls in 3D

Lecture 2 - Introduction to Polytopes

Zipper Unfoldings of Polyhedral Complexes

4 LINEAR PROGRAMMING (LP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

Linear Programming. Linear Programming. Linear Programming. Example: Profit Maximization (1/4) Iris Hui-Ru Jiang Fall Linear programming

MATH 890 HOMEWORK 2 DAVID MEREDITH

Question. Why is the third shape not convex?

be a polytope. has such a representation iff it contains the origin in its interior. For a generic, sort the inequalities so that

Ma/CS 6b Class 26: Art Galleries and Politicians

Contents. Preface... VII. Part I Classical Topics Revisited

FACES OF CONVEX SETS

Advanced Operations Research Techniques IE316. Quiz 1 Review. Dr. Ted Ralphs

Lecture 6: Faces, Facets

Math 414 Lecture 2 Everyone have a laptop?

CS675: Convex and Combinatorial Optimization Spring 2018 The Simplex Algorithm. Instructor: Shaddin Dughmi

Lecture notes on the simplex method September We will present an algorithm to solve linear programs of the form. maximize.

Chapter 15 Introduction to Linear Programming

Convex Hulls in Three Dimensions. Polyhedra

A Topologically Convex Vertex-Ununfoldable Polyhedron

Applied Integer Programming

Polar Duality and Farkas Lemma

Investigating Mixed-Integer Hulls using a MIP-Solver

Linear programming and duality theory

Design and Analysis of Algorithms (V)

Happy Endings for Flip Graphs. David Eppstein Univ. of California, Irvine Computer Science Department

Some Open Problems in Graph Theory and Computational Geometry

Algebraic-Geometric ideas in Discrete Optimization (Universidad de Sevilla, 2014)

THE HYPERDETERMINANT AND TRIANGULATIONS OF THE 4-CUBE

DM545 Linear and Integer Programming. Lecture 2. The Simplex Method. Marco Chiarandini

Planar Graphs. 1 Graphs and maps. 1.1 Planarity and duality

Course Number: Course Title: Geometry

1 Appendix to notes 2, on Hyperbolic geometry:

Topological Issues in Hexahedral Meshing

The simplex method and the diameter of a 0-1 polytope

Lecture 4: Linear Programming

Finding Small Triangulations of Polytope Boundaries Is Hard

POLYTOPES. Grünbaum and Shephard [40] remarked that there were three developments which foreshadowed the modern theory of convex polytopes.

7. The Gauss-Bonnet theorem

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 14: Combinatorial Problems as Linear Programs I. Instructor: Shaddin Dughmi

Multi-tiling and equidecomposability of polytopes by lattice translates

arxiv: v1 [cs.cc] 30 Jun 2017

Example: The following is an example of a polyhedron. Fill the blanks with the appropriate answer. Vertices:

CS 372: Computational Geometry Lecture 10 Linear Programming in Fixed Dimension

A Study of the Rigidity of Regular Polytopes

POLYHEDRAL GEOMETRY. Convex functions and sets. Mathematical Programming Niels Lauritzen Recall that a subset C R n is convex if

Cluster algebras and infinite associahedra

Linear Programming: Introduction

Integer Programming Theory

COMPUTATIONAL GEOMETRY

Triangulations of hyperbolic 3-manifolds admitting strict angle structures

Classification of Ehrhart quasi-polynomials of half-integral polygons

Convexity: an introduction

Platonic Solids. Jennie Sköld. January 21, Karlstad University. Symmetries: Groups Algebras and Tensor Calculus FYAD08

maximize c, x subject to Ax b,

Linear Programming Duality and Algorithms

On the Hardness of Computing Intersection, Union and Minkowski Sum of Polytopes

Chapter 4 Concepts from Geometry

Triangles and Squares David Eppstein, ICS Theory Group, April 20, 2001

Interval-Vector Polytopes

Linear Programming in Small Dimensions

TILING PROBLEMS: FROM DOMINOES, CHECKERBOARDS, AND MAZES TO DISCRETE GEOMETRY

In this chapter we introduce some of the basic concepts that will be useful for the study of integer programming problems.

Submodularity Reading Group. Matroid Polytopes, Polymatroid. M. Pawan Kumar

THEORY OF LINEAR AND INTEGER PROGRAMMING

Tiling Polyhedra with Tetrahedra

CS 473: Algorithms. Ruta Mehta. Spring University of Illinois, Urbana-Champaign. Ruta (UIUC) CS473 1 Spring / 50

Figure 2.1: An example of a convex set and a nonconvex one.

Section Notes 5. Review of Linear Programming. Applied Math / Engineering Sciences 121. Week of October 15, 2017

J Linear Programming Algorithms

Math 210 Manifold III, Spring 2018 Euler Characteristics of Surfaces Hirotaka Tamanoi

Artificial Intelligence

What is dimension? An investigation by Laura Escobar. Math Explorer s Club

Multiply using the grid method.

Obtaining the H and T Honeycomb from a Cross-Section of the 16-cell Honeycomb

EULER S FORMULA AND THE FIVE COLOR THEOREM

Lesson 17. Geometry and Algebra of Corner Points

Math 462: Review questions

A PROOF OF THE LOWER BOUND CONJECTURE FOR CONVEX POLYTOPES

ORIE 6300 Mathematical Programming I September 2, Lecture 3

Linear and Integer Programming :Algorithms in the Real World. Related Optimization Problems. How important is optimization?

Mathematical and Algorithmic Foundations Linear Programming and Matchings

The radius for a regular polygon is the same as the radius of the circumscribed circle.

1 The Platonic Solids

Department of Mathematics, Box University of Washington Seattle, WA

Convex Hull Representation Conversion (cddlib, lrslib)

Graphs and Network Flows IE411. Lecture 21. Dr. Ted Ralphs

Veering triangulations admit strict angle structures

Lecture 3. Corner Polyhedron, Intersection Cuts, Maximal Lattice-Free Convex Sets. Tepper School of Business Carnegie Mellon University, Pittsburgh

MAXIMAL FLOW THROUGH A NETWORK

Introduction to Geometry (Autumn Tertm 2012) Exercises 3. Section A. Figure 1

Outreach Lecture: Polytopes

A Course in Convexity

Semistandard Young Tableaux Polytopes. Sara Solhjem Joint work with Jessica Striker. April 9, 2017

Voronoi diagram and Delaunay triangulation

Transcription:

ACTUALLY DOING IT : an Introduction to Polyhedral Computation Jesús A. De Loera Department of Mathematics Univ. of California, Davis http://www.math.ucdavis.edu/ deloera/ 1

What is a Convex Polytope? 2

Well,something like these... 3

or like these 4

But NOT quite like these! 5

A definition PLEASE! The word CONVEX stands for sets that contain any line segment joining two of its points: NOT CONVEX CONVEX 6

A (hyper)plane divides spaces into two half-spaces. Half-spaces are convex sets! Intersection of convex sets is a convex set! 01 000000 111111 0000000000 1111111111 00000000000000 11111111111111 0000000000000000000 1111111111111111111 00000000000000000000000 11111111111111111111111 0000000000000000000000000000 1111111111111111111111111111 00000000000000000000000000000000 11111111111111111111111111111111 000000000000000000000000000000000000 111111111111111111111111111111111111 00000000000000000000000000000000000000000 11111111111111111111111111111111111111111 000000000000000000000000000000000000000000000 111111111111111111111111111111111111111111111 0000000000000000000000000000000000000000000000000 1111111111111111111111111111111111111111111111111 000000000000000000000000000000000000000000000000000000 111111111111111111111111111111111111111111111111111111 000000000000000000000000000000000000000000 111111111111111111111111111111111111111111 0000000000 1111111111 0000000000000000000000000000000000000000000000 1111111111111111111111111111111111111111111111 0000000000000000000000000000000000000000000000000 1111111111111111111111111111111111111111111111111 0000000000000000000000000000000000000000000000000000 1111111111111111111111111111111111111111111111111111 00000000000000000000000000000000000000000000000000000000 11111111111111111111111111111111111111111111111111111111 00000000000000000000000000000000000000000000000000000000000 11111111111111111111111111111111111111111111111111111111111 0000000000000000000000000 1111111111111111111111111 00000000000000000000000000000000000 11111111111111111111111111111111111 000000000000000000000000 111111111111111111111111 000000000000000000 111111111111111111 000000000000 111111111111 00000000000000000000 11111111111111111111 00000000000000 11111111111111 00000000000 11111111111 0000000000000000 1111111111111111 0000000000 1111111111 00000000 11111111 000000000000 111111111111 000000 111111 0000000 1111111 00000000 11111111 000 111 00000 11111 00000 11111 0000 1111 01 01 Formally a half-space is a linear inequality: a 1 x 1 + a 2 x 2 +... + a d x d b Definition: A polytope is a bounded subset of Euclidean space that results as the intersection of finitely many half-spaces. 7

An algebraic formulation for polytopes A polytope has also an algebraic representation as the set of solutions of a system of linear inequalities: a 1,1 x 1 + a 1,2 x 2 +... + a 1,d x d b 1 a 2,1 x 1 + a 2,2 x 2 +... + a 2,d x d b 2. a k,1 x 1 + a k,2 x 2 +... + a k,d x d b k Note: This includes the possibility of using some linear equalities as well as inequalities!! Polytopes represented by sets of the form {x Ax = b, x 0}, for suitable matrix A, and vector b. 8

Faces of Polytopes 9

Some Numeric Properties of Polyhedra Euler s formula V E +F = 2, relates the number of vertices V, edges E, and facets F of a 3-dimensional polytope. 10

Given a convex 3-polytope P, if f i (P) the number of i-dimensional faces. There is one vector (f 0 (P),f 1 (P),f 2 (P)). that counts faces, the f-vector of P. Theorem (Steinitz 1906) A vector of non-negative integers (f 0 (P),f 1 (P),f 2 (P)) Z 3 is a the f-vector of a 3-dimensional polytope if and only if 1. f 0 (P) f 1 (P) + f 2 (P) = 2 2. 2f 1 (P) 3f 0 (P) 3. 2f 1 (P) 3f 2 (P) OPEN PROBLEM 1: Can one find similar conditions characterizing f-vectors of 4-dimensional polytopes? In this case the vectors have 4 components (f 0,f 1, f 2,f 3 ). 11

Ways to Visualize Polytopes 12

13

14

Unfolding Polyhedra What happens if we use scissors and cut along the edges of a polyhedron? What happens to a dodecahedron? 15

16

17

18

Open Problem 2: Can one always find an unfolding that has no selfoverlappings? 19

A Challenge to intuition Question: Is there always a single way to glue together an unfolding to reconstruct a polyhedron? 20

S -5-2.5 0 2.5 5 S 0 2 4 6 Polytope 1 8 polytope 2 8 6 6 view from front and top 4 view from front and top 4 C B 2 B 2 A 0 A 0-5 -2.5 0 2.5 5-5 -2.5 0 2.5 5 8 6 4 2 5-5 -2.5-5 0 2.5-2.5 0 S 2.5 Polytope 1 5 view from behind and below 8 6 4 5-2.5 0 2.5 S polytope 2 view from behind and below -5 0 2 4 6 0 B C A 2 0 B C A 21

Linear Programming: Polytopes are useful!! You may not know it but, We all need to solve the Linear Programming Problems: maximize C 1 x 1 + C 2 x 2 +... + C d x d among all x 1,x 2,...,x d, satisfying: a 1,1 x 1 + a 1,2 x 2 +... + a 1,d x d b 1 a 2,1 x 1 + a 2,2 x 2 +... + a 2,d x d b 2. a k,1 x 1 + a k,2 x 2 +... + a k,d x d b k 22

The Simplex Method George Dantzig, inventor of the simplex algorithm 23

The simplex method Lemma: A vertex of the polytope is always an optimal solution for a linear program. We need to find a special vertex of the polytope! The simplex method walks along the graph of the polytope, each time moving to a better and better cost! 24

Hirsch Conjecture Performance of the simplex method depends on the diameter of the graph of the polytope: largest distance between any pair of nodes. Open Problem 3: (the Hirsch conjecture) The diameter of a polytope P is at most # of facets(p) dim(p). It has been open for 40 years now! It is known to be true in many instances, e.g. for polytopes with 0/1 vertices. It is best possible tight bound for general polytopes. Best known general bound is 2 dim(p) 2 3 (# facets of P dim(p) + 5/2). 25

Duality Problems about faces can also be rephrased as problems about vertices! 26

Coloring Faces/Vertices Given a 3-dimensional polyhedron we want to color its faces or vertices, with the minimum number of colors possible, in such a way that two adjacent elements have different colors. Theorem[The four-color theorem] Four colors always suffice! 27

Zonotopes Question: Are there special families of 3-colorable 3-polytopes? A zonotope is the linear projection of a k-dimensional cube. Open Problem 4 Are the facets of a 3-zonotope always 3-colorable? 28

Dual Equivalent to: The vertices of any great-circle arrangement can be colored with 3-colors! 29

What is the volume of a Polytope? volume of egyptian pyramid = 1 (area of base) height 3 30

Easy and pretty in some cases... 31

But general proofs seem to rely on an infinite process! 32

But not in dimension two! Polygons of the same area are equidecomposable, i.e., one can be partitioned into pieces that can be reassembled into the other. 33

Hilbert s Third Problem Are any two convex 3-dimensional polytopes of the same volume equidecomposable? 34

Enough to know how to do it for tetrahedra! To compute the volume of a polyhedron divide it as a disjoint union of tetrahedra. Calculate volume for each tetrahedron (an easy determinant) and then add them up! 35

The size of a triangulation Triangulations of a convex polyhedron come in different sizes! i.e. the number of tetrahedra changes. 6 8 36

Open Problem 5: If for a 3-dimensional polyhedron P we know that there is triangulation of size k 1 and triangulations of size k 2, with k 2 > k 1 is there a triangulation of every size k, with k 1 < k < k 2? 37

The Hamiltonicity of a triangulation The dual graph of a triangulation: it has one vertex for each tetrahedron and an edge joining two such vertices if the two tetrahedra share a triangle: 00 11 00 11 Open Problem 6 Is it true that every 3-dimensional polyhedron has a triangulation whose dual graph is Hamiltonian? 38

Counting lattice points Lattice points are those points with integer coordinates: Z n = {(x 1, x 2,...,x n ) x i integer} We wish to count how many lie inside a given polytope! 39

We can approximate the volume! Let P be a convex polytope in R d. For each integer n 1, let np = {nq q P } P 3P 40

Counting function approximates volume For P a d-polytope, let i(p,n) = #(np Z d ) = #{q P nq Z d } This is the number of lattice points in the dilation np. Volume of P = limit n i(p,n) n d At each dilation we can approximate the volume by placing a small unit cube centered at each lattice point: 41

Combinatorics via Lattice points Many objects can be counted as the lattice points in some polytope: E.g., Sudoku configurations, matchings on graphs, and MAGIC squares: 12 0 5 7 0 12 7 5 7 5 0 12 5 7 12 0 5 CHALLENGE: HOW MANY 4 4 magic squares with sum n are there? Same as counting the points with integer coordinates inside the n-th dilation of a magic square polytope! 42

Indeed, we can describe it by linear constraints! The possible magic squares are non-negative integer solutions of a system of equations and inequalities: Ten equations, one for each row sum, column sum, and diagonal sum. For example, x 11 + x 12 + x 13 + x 14 = 220, first row x 13 + x 23 + x 33 + x 43 = 71, third column, and of course x ij 0 Open Problem 7: Find a formula for the volume of n n magic squares polytope or, more strongly, find a formula for the number of lattice points of each dilation. And more exciting things to come!! 43

Fundamental Questions in this Adventure Basic definitions and the Rules of Computation. How we represent polytopes in a computer? Facets versus Vertices. Finding Decompositions and Triangulations. Volumes and Integrals over Polytopes. Lattice Points inside Polytopes Along the way we will look at reasons to look at applications of all these concepts!!! 44

Thank you! Muchas Gracias! 45