maximize c, x subject to Ax b,

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

COMP331/557. Chapter 2: The Geometry of Linear Programming. (Bertsimas & Tsitsiklis, Chapter 2)

Convex Geometry arising in Optimization

Combinatorial Geometry & Topology arising in Game Theory and Optimization

Lecture 2 - Introduction to Polytopes

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

Linear programming and duality theory

Modeling and Analysis of Hybrid Systems

Modeling and Analysis of Hybrid Systems

Math 414 Lecture 2 Everyone have a laptop?

Chapter 4 Concepts from Geometry

Some Advanced Topics in Linear Programming

CS522: Advanced Algorithms

ORIE 6300 Mathematical Programming I September 2, Lecture 3

Numerical Optimization

Finite Math Linear Programming 1 May / 7

LP Geometry: outline. A general LP. minimize x c T x s.t. a T i. x b i, i 2 M 1 a T i x = b i, i 2 M 3 x j 0, j 2 N 1. where

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

Math 5593 Linear Programming Lecture Notes

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

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

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

Integer Programming Theory

College of Computer & Information Science Fall 2007 Northeastern University 14 September 2007

MA4254: Discrete Optimization. Defeng Sun. Department of Mathematics National University of Singapore Office: S Telephone:

3. The Simplex algorithmn The Simplex algorithmn 3.1 Forms of linear programs

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

Polytopes Course Notes

Linear Programming in Small Dimensions

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

Linear Programming and its Applications

11 Linear Programming

EC 521 MATHEMATICAL METHODS FOR ECONOMICS. Lecture 2: Convex Sets

Lecture 6: Faces, Facets

Applied Integer Programming

FACES OF CONVEX SETS

MATH 890 HOMEWORK 2 DAVID MEREDITH

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

Lecture 2 September 3

Lecture 3: Convex sets

Lecture 4: Linear Programming

Lesson 17. Geometry and Algebra of Corner Points

Lecture Notes 2: The Simplex Algorithm

R n a T i x = b i} is a Hyperplane.

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

Lecture 5: Properties of convex sets

IE 5531: Engineering Optimization I

Lecture 5: Duality Theory

Lecture 4: Rational IPs, Polyhedron, Decomposition Theorem

Mathematical and Algorithmic Foundations Linear Programming and Matchings

Lecture 9: Linear Programming

16.410/413 Principles of Autonomy and Decision Making

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

2. Convex sets. x 1. x 2. affine set: contains the line through any two distinct points in the set

Question. Why is the third shape not convex?

Convex Optimization. Convex Sets. ENSAE: Optimisation 1/24

6.854 Advanced Algorithms. Scribes: Jay Kumar Sundararajan. Duality

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

Introduction to Modern Control Systems

Convexity: an introduction

Lecture 2: August 29, 2018

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.

arxiv: v1 [math.co] 15 Dec 2009

60 2 Convex sets. {x a T x b} {x ã T x b}

Convex Optimization Lecture 2

2. Convex sets. affine and convex sets. some important examples. operations that preserve convexity. generalized inequalities

Discrete Optimization 2010 Lecture 5 Min-Cost Flows & Total Unimodularity

1 Linear Programming. 1.1 Optimizion problems and convex polytopes 1 LINEAR PROGRAMMING

CS671 Parallel Programming in the Many-Core Era

Lecture 2 Convex Sets

However, this is not always true! For example, this fails if both A and B are closed and unbounded (find an example).

Polyhedral Computation and their Applications. Jesús A. De Loera Univ. of California, Davis

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

Advanced Linear Programming. Organisation. Lecturers: Leen Stougie, CWI and Vrije Universiteit in Amsterdam

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

4 Integer Linear Programming (ILP)

Outreach Lecture: Polytopes

The Simplex Algorithm

Lecture 2: August 31

CS675: Convex and Combinatorial Optimization Spring 2018 Convex Sets. Instructor: Shaddin Dughmi

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

Algebraic Geometry of Segmentation and Tracking

5.3 Cutting plane methods and Gomory fractional cuts

Mathematical Programming and Research Methods (Part II)

Convex Optimization. 2. Convex Sets. Prof. Ying Cui. Department of Electrical Engineering Shanghai Jiao Tong University. SJTU Ying Cui 1 / 33

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

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

COMPUTATIONAL GEOMETRY

A mini-introduction to convexity

Polyhedral Computation Today s Topic: The Double Description Algorithm. Komei Fukuda Swiss Federal Institute of Technology Zurich October 29, 2010

arxiv: v1 [math.co] 12 Dec 2017

Conic Duality. yyye

Simplex Algorithm in 1 Slide

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 4: Convex Sets. Instructor: Shaddin Dughmi

EE/ACM Applications of Convex Optimization in Signal Processing and Communications Lecture 6

ACTUALLY DOING IT : an Introduction to Polyhedral Computation

Introduction to Mathematical Programming IE496. Final Review. Dr. Ted Ralphs

Simplicial Cells in Arrangements of Hyperplanes

Polar Duality and Farkas Lemma

CS675: Convex and Combinatorial Optimization Spring 2018 Consequences of the Ellipsoid Algorithm. Instructor: Shaddin Dughmi

Transcription:

Lecture 8 Linear programming is about problems of the form maximize c, x subject to Ax b, where A R m n, x R n, c R n, and b R m, and the inequality sign means inequality in each row. The feasible set is the set of all possible candidates, F = {x R n : Ax b}. This set can be empty (example: x, x 2), unbounded (example: x ) or bounded (example: x, x 0). In any case, it is a convex set. The set of feasible solutions is the set over which we will search for solutions, and it is therefore important to understand the geometry of this set. The set of the feasible sets of linear programming is called a polyhedron. 8. Linear Programming Duality: a first glance Suppose we are faced with a linear programming problem. A first important task is to find out if there exist any feasible solutions at all. That is, we would like to know if the feasible set F is empty or not, i.e., if Ax b has a solution. If it is not empty, we can certify that by producing a vector from F. To verify that the feasible set is empty is more tricky: we are asked to show that no vector lives in F. What we can try to do, however, is to show that the assumption of a solution to Ax b would lead to a contradiction. Denote by a i the rows of A, so that the entries of Ax are given by a i x for i m. Assuming x F, then given a vector 0 λ = (λ,..., λ m ) with λ i 0, the linear combination satisfies λ, Ax = λ i a i x λ i b i = λ, b. (8.) If we can find parameters λ such that the left-hand side of (8.) is identically 0 and the right-hand side is strictly negative, then we have found a contradition and can

2 conclude that no x satisfies Ax b. A condition that ensures this is λ i a i = 0, λ, b < 0. (8.2) In matrix form, λ 0, A λ = 0, λ, b < 0. This condition will still be satisfied if we normalise the vector λ such that m λ i =, so the statement says that 0 is a convex combination of the vectors defining the equations. Example 8.. Consider the system x + x 2 2 x x 2.5. (8.3) The transpose matrix A and the vector b are A = Drawing the columns of A we get ( ) 0, b = 0 2.5. a a 2 a 3 We can get the origin as a convex combination of the vectors a i (drawing a rope around them encloses the origin), and such a combination is given by λ = (/3, /3, /3). Taking the scalar product with the vector b we get λ, b = 3 (2.5) = 6 < 0. This shows that the system (8.3) does not have a solution (a fact that in this simple example can also be seen by drawing a picture). It turns out that Condition (8.2) is not only sufficient but also necessary, and the separating hyperplane theorem is an essential part of this. We first make a detour in order to better understand the feasible sets, the polyhedra.

8.2. POLYHEDRA 3 8.2 Polyhedra Definition 8.2. A polyhedron (plural: polyhedra) is a set defined as the solution of linear equalities and inequalities, where A R m n, b R m. More classically, we can write out the equations. P = {x R n : Ax b}, (8.) a x + + a n x d b, a m x + + a mn x d b m. (8.2) We now introduce some useful terminology and concepts associated to polyhedra, and illustrate them with a few examples. A supporting hyperplane H of a polyhedron P is a hyperplane such that P H, where H is a halfspace associated to H. If H is a supporting hyperplane, then a set of the form F = H P is called a face of P. In particular, the polyhedron P is a face. Each of the inequalities a i, x b i in (8.) defines a supporting hyperplane, and therefore a face. The dimension of a face F, dim F, is the smallest dimension of an affine space containing F. Faces of dimension dim F = dim P are called facets, faces of dimension 0 are vertices, and of dimension edges. A vertex can equivalently be characterised as a point x P that can not be written as a convex combination of two other points in P. Example 8.3. Polyhedra in one dimension are the sets [a, b], [a, ), (, b], R or, where a b. Each of them is clearly convex. Example 8.4. The set P = {x R 2 : x + x 2, x 0, x 2 0}. is the polyhedron shown in Figure 8.. We can write the defining inequalities in standard form Ax b by setting A = 0, b = 0. 0 0 This polyhedron has one face of dimension 2 (itself), three facets of dimension (the sides, corresponding to the three equations), and three vertices of dimension 0 (the corners, corresponding any two of the defining equations). Example 8.5. The polyhedron in Albrecht Dürer s famous Melencolia I, aka the truncated triangular trapezohedron, can be described using eight inequalities, see Figure 8.2.

4 a a2 a3 Figure 8.: A two-dimensional polyhedron and defining equations. 0.707x 0.4082x2 + 0.3773x3 0.707x + 0.4082x2 0.3773x3 0.707x + 0.4082x2 0.3773x3 0.707x 0.4082x2 + 0.3773x3 0.865x2 + 0.3773x3 0.865x2 0.3773x3 0.633x3 0.633x3 Figure 8.2: Dürer s Melencolia and equations defining the polyhedron We now move to a different characterization of bounded polyhedra. The main result of this lecture is that bounded polytopes can be described completely from knowing their vertices. A polyhedron P is called bounded, if there exists a ball B(0, r) with r > 0 such that P B(0, r). For example, halfspaces are not bounded, but the polytope from Examples 8.4 and 8.5 are. We first observe the nontrivial fact that a polyhedron has only fin Definition 8.6. A polytope is the convex hull of finitely many points, P = conv({x,..., xk }) = { k X λi xi, λi 0, X λi = }. i Theorem 8.7. A bounded polyhedron P is the convex hull of its vertices. Example 8.8. The triangle in Example 8.4 is the convex hull of the points (0, 0)>, (0, )>, and (, 0)>.

8.2. POLYHEDRA 5 Example 8.9. The Dürer polytope is the convex hull of the following 2 vertices:.442.442 0.8536 0.8536 v = 0.865, v 2 = 0.865, v 3 = 0.4928, v 4 = 0.4928,.5840.5840 0.0000 0.0000 0.0000 0.0000 v 5 =.6330, v 6 = 0.9856, v 7 = 0.9856, v 8 =.6330,.5840.5840 0.8536 0.8536.442.442 v 9 = 0.4928, v 0 = 0.4928, v = 0.865, v 2 = 0.865..5840.5840 The converse of Theorem 8.7 is also true. Theorem 8.0. A polytope is a bounded polyhedron. The equivalence between polytopes and bounded polyhedra gives a first glimpse into linear programming duality theory, a topic of central importance in both modeling and algorithm design.