Linear Programming Motivation: The Diet Problem

Size: px
Start display at page:

Download "Linear Programming Motivation: The Diet Problem"

Transcription

1 Agenda We ve done Greedy Method Divide and Conquer Dynamic Programming Network Flows & Applications NP-completeness Now Linear Programming and the Simplex Method Hung Q. Ngo (SUNY at Buffalo) CSE / 59 Linear Programming Motivation: The Diet Problem Setting n foods (beef, apple, potato chips, pho, bún bò, etc.) m nutritional elements (vitamins, calories, etc.) each gram of jth food contains a ij units of nutritional element i a good meal needs b i units of nutritional element i each gram of jth food costs c j Objective design the most economical meal yet dietarily sufficient (Halliburton must solve this problem!) Hung Q. Ngo (SUNY at Buffalo) CSE / 59

2 The Diet Problem as a Linear Program Let x j be the weight of food j in a dietarily sufficient meal. min c 1 x 1 + c 2 x c n x n subject to a 11 x 1 + a 12 x a 1n x n b 1 a 21 x 1 + a 22 x a 2n x n b a m1 x 1 + a m2 x a mn x n b m x j 0, j = 1,..., n, Hung Q. Ngo (SUNY at Buffalo) CSE / 59 Linear Programming Motivation: The Max-Flow Problem Maximize the value of f: val(f) = e=(s,v) E Subject to 0 f e c e, e E f e f e = 0, e=(u,v) E e=(v,w) E f e v s, t Hung Q. Ngo (SUNY at Buffalo) CSE / 59

3 Formalizing the Linear Programming Problem Linear objective function max or min 8 3 x 1 + 2x 2 + x 3 6x 4 + x 5 Linear constraints, can take many forms Inequality constraints 3x 1 + 4x 5 2x 6 3 2x 1 + 2x 2 + x 3 0 Equality constraints x 2 x 4 + x 3 = 3 Non-negativity constraints (special case of inequality) x 1, x 5, x 7 0 Hung Q. Ngo (SUNY at Buffalo) CSE / 59 Some notational conventions All vectors are column vectors c 1 c n x 1 x 2 c 2 c =., x =., A = x n a 11 a a 1n a 21 a a 2n , b = a m1 a m2... a mn b 1 b 2. b m. Hung Q. Ngo (SUNY at Buffalo) CSE / 59

4 Linear Program: Standard Form min / max c 1 x 1 + c 2 x c n x n subject to a 11 x 1 + a 12 x a 1n x n = b 1 a 21 x 1 + a 22 x a 2n x n = b 2 or, in matrix notations, =. a m1 x 1 + a m2 x a mn x n = b m x j 0, j = 1,..., n, min / max { c T x Ax = b, x 0 } Hung Q. Ngo (SUNY at Buffalo) CSE / 59 Linear Program: Canonical Form min Version min c 1 x 1 + c 2 x c n x n subject to a 11 x 1 + a 12 x a 1n x n b 1 a 21 x 1 + a 22 x a 2n x n b 2 or, in matrix notations, a m1 x 1 + a m2 x a mn x n b m x j 0, j = 1,..., n, min { c T x Ax b, x 0 } Hung Q. Ngo (SUNY at Buffalo) CSE / 59

5 Linear Program: Canonical Form max Version max c 1 x 1 + c 2 x c n x n subject to a 11 x 1 + a 12 x a 1n x n b 1 a 21 x 1 + a 22 x a 2n x n b 2 or, in matrix notations, a m1 x 1 + a m2 x a mn x n b m x j 0, j = 1,..., n, max { c T x Ax b, x 0 } Hung Q. Ngo (SUNY at Buffalo) CSE / 59 Conversions Between Forms of Linear Programs max c T x = min( c) T x j a ijx j = b i is equivalent to j a ijx j b i and j a ijx j b i. j a ijx j b i is equivalent to j a ijx j b i j a ijx j b i is equivalent to j a ijx j + s i = b i, s i 0. The variable s i is called a slack variable. When x j 0, replace all occurrences of x j by x j, and replace x j 0 by x j 0. When x j is not restricted in sign, replace it by (u j v j ), and u j, v j 0. Hung Q. Ngo (SUNY at Buffalo) CSE / 59

6 Example of Converting Linear Programs Write min x 1 x 2 + 4x 3 subject to 3x 1 x 2 = 3 x 2 + 2x 4 4 x 1 + x 3 3 x 1, x 2 0 in standard (min / max) form and canonical (min / max) form. Hung Q. Ngo (SUNY at Buffalo) CSE / 59 LP Geometry: Example 1 max 2x + y subject to 2x + y 2 5x + 3y 15 x + y 4 x 0, y 0 Hung Q. Ngo (SUNY at Buffalo) CSE / 59

7 Example 1 Feasible Region Hung Q. Ngo (SUNY at Buffalo) CSE / 59 Example 1 Objective Function Hung Q. Ngo (SUNY at Buffalo) CSE / 59

8 LP Geometry: Example 2 max 2x + y subject to 2x + 3y 8 8x + 3y 12 4x + 3y 24 Hung Q. Ngo (SUNY at Buffalo) CSE / 59 Example 2 Feasible Region Hung Q. Ngo (SUNY at Buffalo) CSE / 59

9 Example 2 Objective Function Hung Q. Ngo (SUNY at Buffalo) CSE / 59 Half Space and Hyperplane Each inequality a T x b defines a half-space. a T x b a a T x b Each equality a T x = b defines a hyperplane. Hung Q. Ngo (SUNY at Buffalo) CSE / 59

10 Polyhedron, Vertices, Direction of Optimization A polyhedron is the set of points x satisfying Ax b (or equivalently A x b ) c T x = d 1 d 2 < d 1 c T x is improved moving along this direction vertex c c T x = d 2 Hung Q. Ngo (SUNY at Buffalo) CSE / 59 Linear Programming Duality: A Motivating Example max 3x 1 + 2x 2 + 4x 3 subject to x 1 + x 2 + 2x 3 4 2x 1 + 3x 3 5 4x 1 + x 2 + 3x 3 7 x 1, x 2, x 3 0. Someone claims x T = [ ] is optimal with cost 9. Feasibility is easy. How could we verify optimality? We ask the person for a proof! Hung Q. Ngo (SUNY at Buffalo) CSE / 59

11 Her Proof of the Optimality of x Done! 5 3 ( x 1 + x 2 + 2x 3 ) ( 2x 1 + 3x 3 ) ( 4x 1 + x 2 + 3x 3 ) Ma ia hii Ma ia huu Ma ia hoo Ma ia haha... 3x 1 + 2x 2 + 4x 3 9 Hung Q. Ngo (SUNY at Buffalo) CSE / 59 OK, How Did... I do that? Beside listening to Numa Numa, find non-negative multipliers y 1 ( x 1 + x 2 + 2x 3 ) 4y 1 y 2 ( 2x 1 + 3x 3 ) 5y 2 y 3 ( 4x 1 + x 2 + 3x 3 ) 7y 3 (y 1 +2y 2 +4y 3 )x 1 +(y 1 +y 3 )x 2 +(2y 1 +3y 2 +3y 3 )x 3 (4y 1 +5y 2 +7y 3 ) Want LHS to be like 3x 1 + 2x 2 + 4x 3. Thus, as long as y 1 + 2y 2 + 4y 3 3 y 1 + y 3 2 2y 1 + 3y 2 + 3y 3 4 y 1, y 2, y 3 0. we have 3x 1 + 2x 2 + 4x 3 4y 1 + 5y 2 + 7y 3 Hung Q. Ngo (SUNY at Buffalo) CSE / 59

12 How to Get the Best Multipliers Answer: minimize the upper bound. min 4y 1 + 5y 2 + 7y 3 y 1 + 2y 2 + 4y 3 3 y 1 + y 3 2 2y 1 + 3y 2 + 3y 3 4 y 1, y 2, y 3 0. Hung Q. Ngo (SUNY at Buffalo) CSE / 59 What We Have Just Shown If x is feasible for the Primal Program max 3x 1 + 2x 2 + 4x 3 subject to x 1 + x 2 + 2x 3 4 2x 1 + 3x 3 5 4x 1 + x 2 + 3x 3 7 x 1, x 2, x 3 0. and y is feasible for the Dual Program min 4y 1 + 5y 2 + 7y 3 y 1 + 2y 2 + 4y 3 3 y 1 + y 3 2 2y 1 + 3y 2 + 3y 3 4 y 1, y 2, y 3 0. then 3x 1 + 2x 2 + 4x 3 4y 1 + 5y 2 + 7y 3 Hung Q. Ngo (SUNY at Buffalo) CSE / 59

13 Primal-Dual Pairs - Canonical Form min c T x (primal/dual program) subject to Ax b x 0 max b T y (dual/primal program) subject to A T y c y 0. Note The dual of the dual is the primal! Hung Q. Ngo (SUNY at Buffalo) CSE / 59 Primal-Dual Pairs - Standard Form min / max c T x (primal program) subject to Ax = b x 0 max / min b T y (dual program) subject to A T y c no non-negativity restriction!. Hung Q. Ngo (SUNY at Buffalo) CSE / 59

14 General Rules for Writing Dual Programs Maximization problem Minimization problem Constraints Variables ith constraint ith variable 0 ith constraint ith variable 0 ith constraint = ith variable unrestricted Variables Constraints jth variable 0 jth constraint jth variable 0 jth constraint jth variable unrestricted jth constraint = Table: Rules for converting between primals and duals. Note The dual of the dual is the primal! Hung Q. Ngo (SUNY at Buffalo) CSE / 59 Weak Duality Canonical Form Version Consider the following primal-dual pair in canonical form Theorem (Weak Duality) Primal LP: min{c T x Ax b, x 0}, Dual LP: max{b T y A T y c, y 0}. Suppose x is primal feasible, and y is dual feasible for the LPs defined above, then c T x b T y. Corollary If x is an primal-optimal and y is an dual-optimal, then c T x b T y. Corollary If x is primal-feasible, y is dual-feasible, and c T x = b T y, then x and y are optimal for their respective programs. Hung Q. Ngo (SUNY at Buffalo) CSE / 59

15 Weak Duality Standard Form Version Consider the following primal-dual pair in standard form Primal LP: min{c T x Ax = b, x 0}, Dual LP: Theorem (Weak Duality) max{b T y A T y c}. Suppose x is primal feasible, and y is dual feasible for the LPs defined above, then c T x b T y. Corollary If x is an primal-optimal and y is an dual-optimal, then c T x b T y. Corollary If x is primal-feasible, y is dual-feasible, and c T x = b T y, then x and y are optimal for their respective programs. Hung Q. Ngo (SUNY at Buffalo) CSE / 59 Strong Duality Theorem (Strong Duality) If the primal LP has an optimal solution x, then the dual LP has an optimal solution y such that c T x = b T y. Dual Feasible Infeasible Optimal Unbounded Feasible Optimal X Nah Nah Primal Unbounded Nah Nah X Infeasible Nah X X Hung Q. Ngo (SUNY at Buffalo) CSE / 59

16 The Diet Problem Revisited The dual program for the diet problem: max b 1 y 1 + b 2 y b m y m subject to a 11 y 1 + a 21 y a m1 y m c 1 a 12 y 1 + a 22 y a 2n y m c a 1n y 1 + a 2n y a mn y m c n y j 0, j = 1,..., m, (Possible) Interpretation: y i is the price per unit of nutrient i that a whole-seller sets to manufacture different types of foods. Hung Q. Ngo (SUNY at Buffalo) CSE / 59 The Max-Flow Problem Revisited The dual program for the Max-Flow LP Formulation: min c uv y uv uv E subject to y uv z u + z v 0 uv E z s = 1 z t = 0 y uv 0 uv E Theorem (Max-Flow Min-Cut) Maximum flow value equal minimum cut capacity. Proof. Let (y, z ) be optimal to the dual above. Set W = {v z v 1}, then total flow out of W is equal to cap(()w, W ). Hung Q. Ngo (SUNY at Buffalo) CSE / 59

17 The Simplex Method: High-Level Overview Consider a linear program min{c T x x P }, P is a polyhedron 1 Find a vertex of P, if P is not empty (the LP is feasible) 2 Find a neighboring vertex with better cost If found, then repeat step 2 Otherwise, either report unbounded or optimal solution Hung Q. Ngo (SUNY at Buffalo) CSE / 59 Questions 1 When is P not empty? 2 When does P have a vertex? (i.e. P is pointed) 3 What is a vertex, anyhow? 4 How to find an initial vertex? 5 What if no vertex is optimal? 6 How to find a better neighboring vertex 7 Will the algorithm terminate? 8 How long does it take? Hung Q. Ngo (SUNY at Buffalo) CSE / 59

18 3. What is a vertex, anyhow? u w y +y vertex v Many ways to define a vertex v: v P a vertex iff y 0 with v + y, v y P v P a vertex iff u w such that v = (u + w)/2 v P a vertex iff it s the unique intersection of n independent faces Hung Q. Ngo (SUNY at Buffalo) CSE / 59 Questions 1 When is P not empty? 2 When does P have a vertex? (i.e. P is pointed) 3 What is a vertex, anyhow? 4 How to find an initial vertex? 5 What if no vertex is optimal? 6 How to find a better neighboring vertex 7 Will the algorithm terminate? 8 How long does it take? Hung Q. Ngo (SUNY at Buffalo) CSE / 59

19 2. When is P pointed? Question Define a polyhedron which has no vertex? Lemma P is pointed iff it contains no line Lemma P = {x Ax = b, x 0}, if not empty, always has a vertex. Lemma v P = {x Ax = b, x 0} is a vertex iff the columns of A corresponding to non-zero coordinates of v are linearly independent Hung Q. Ngo (SUNY at Buffalo) CSE / 59 Questions 1 When is P not empty? 2 When does P have a vertex? (i.e. P is pointed) 3 What is a vertex, anyhow? 4 How to find an initial vertex? 5 What if no vertex is optimal? 6 How to find a better neighboring vertex 7 Will the algorithm terminate? 8 How long does it take? Hung Q. Ngo (SUNY at Buffalo) CSE / 59

20 5. What if no vertex is optimal? Lemma Let P = {x Ax = b, x 0}. If min { c T x x P } is bounded (i.e. it has an optimal solution), then for all x P, there is a vertex v P such that c T v c T x. Theorem The linear program min{c T x Ax = b, x 0} either 1 is infeasible, 2 is unbounded, or 3 has an optimal solution at a vertex. Hung Q. Ngo (SUNY at Buffalo) CSE / 59 Questions 1 When is P not empty? 2 When does P have a vertex? (i.e. P is pointed) 3 What is a vertex, anyhow? 4 How to find an initial vertex? 5 What if no vertex is optimal? 6 How to find a better neighboring vertex 7 Will the algorithm terminate? 8 How long does it take? Hung Q. Ngo (SUNY at Buffalo) CSE / 59

21 6. How to find a better neighboring vertex The answer is the core of the Simplex method This is basically one iteration of the method Consider a concrete example: max 3x 1 + 2x 2 + 4x 3 subject to x 1 + x 2 + 2x 3 4 2x 1 + 3x 3 5 4x 1 + x 2 + 3x 3 7 x 1, x 2, x 3 0. Hung Q. Ngo (SUNY at Buffalo) CSE / 59 Sample execution of the Simplex algorithm Converting to standard form max 3x 1 +2x 2 +4x 3 subject to x 1 +x 2 +2x 3 +x 4 = 4 2x 1 +3x 3 +x 5 = 5 4x 1 +x 2 +3x 3 +x 6 = 7 x 1, x 2, x 3, x 4, x 5, x 6 0. x = [ ] T is a vertex! Define B = {4, 5, 6}, N = {1, 2, 3}. The variables x i, i N are called free variables. The x i with i B are basic variables. How does one improve x? Increase x 3 as much as possible! (x 1 or x 2 works too.) Hung Q. Ngo (SUNY at Buffalo) CSE / 59

22 Sample execution of the Simplex algorithm x 3 can only be at most 5/3, forcing x 4 = 2/3, x 5 = 0, x 5 = 2 x T = [ 0 0 5/3 2/3 0 2 ] is the new vertex (why?!!!) The new objective value is 20/3 x 3 enters the basis B, x 5 leaves the basis B = {3, 4, 6}, N = {1, 2, 5} Rewrite the linear program max 3x 1 +2x 2 +4x 3 subject to 1 3 x 1 +x 2 +x 4 = x 1 +x x 5 = 5 3 2x 1 +x 2 +x 6 = 2 x 1, x 2, x 3, x 4, x 5, x 6 0. Hung Q. Ngo (SUNY at Buffalo) CSE / 59 Sample execution of the Simplex algorithm We also want the objective function to depend only on the free variables: ( 5 3x 1 + 2x 2 + 4x 3 = 3x 1 + 2x x 1 1 ) 3 x 5 The linear program is thus equivalent to = 1 3 x 1 + 2x x max 3 x 1 +2x x subject to 1 3 x 1 +x 2 +x 4 = x 1 +x x 5 = 5 3 2x 1 +x 2 +x 6 = 2 Increase x 2 to 2/3, so that x 2 enters, x 4 leaves. x 1, x 2, x 3, x 4, x 5, x 6 0. Hung Q. Ngo (SUNY at Buffalo) CSE / 59

23 Sample execution of the Simplex algorithm max x 1 2x subject to 1 3 x 1 +x 2 +x 4 = x 1 +x x 5 = x 1 x x 5 +x 6 = 4 3 x 1, x 2, x 3, x 4, x 5, x 6 0. At this point, only x 1 to increase. If all its coefficients are non-positive (like 1/3 above), then the LP is unbounded Fortunately, this is not the case here Increase x 1 to 4/7, so that x 1 enters, x 6 leaves. Hung Q. Ngo (SUNY at Buffalo) CSE / 59 Sample execution of the Simplex algorithm max 11 7 x x x subject to +x x x x 6 = 6 7 Now, x 5 enters again, x 3 leaves. +x x x x 6 = 9 7 x x x x 6 = 4 7 x 1, x 2, x 3, x 4, x 5, x 6 0. Hung Q. Ngo (SUNY at Buffalo) CSE / 59

24 Sample execution of the Simplex algorithm max 1 3 x x x subject to +x x x x 6 = x x 4 +x x 6 = 3 x x x x 6 = 1 x 1, x 2, x 3, x 4, x 5, x 6 0. Yeah! No more improvement is possible. We have reached the optimal vertex v = [ ] T. The optimal cost is 9. Hung Q. Ngo (SUNY at Buffalo) CSE / 59 Questions 1 When is P not empty? 2 When does P have a vertex? (i.e. P is pointed) 3 What is a vertex, anyhow? 4 How to find an initial vertex? 5 What if no vertex is optimal? 6 How to find a better neighboring vertex 7 Will the algorithm terminate? 8 How long does it take? Hung Q. Ngo (SUNY at Buffalo) CSE / 59

25 7&8 Termination and Running Time Termination There are finitely many vertices ( ( n m) ) Terminating = non-cycling, i.e. never come back to a vertex Many cycling prevention methods: perturbation method, lexicographic rule, Bland s pivoting rule, etc. Bland s pivoting rule: pick smallest possible j to leave the basis, then smallest possible i to enter the basis Running time Klee & Minty (1969) showed that Simplex could take exponential time Hung Q. Ngo (SUNY at Buffalo) CSE / 59 Summary: Simplex with Bland s Rule 1 Start from a vertex v of P. 2 Determine B and N; Let y T B = ct B A 1 B. 3 If ( c T N yt B a j) 0, then vertex v is optimal. Moreover, 4 Else, let c T v = c T Bv B + c T Nv N = c T B ( A 1 B a j k ( A 1 B b A 1 B A Nv N ) + c T N v N j = min { j N : ( c j y T Ba j ) < 0 }. 5 If A 1 B a j 0, then report unbounded LP and Stop! 6 Otherwise, pick smallest k B such that ( A 1 B a ) j > 0 and that k { } (A 1 B b) k (A 1 ) B = min b) i ( ) : i B, A 1 B a ) j i > 0. ( A 1 B a j 7 x k leaves, x j enters: B = B {j} {k}, N = N {k} {j}. Go back to step 3. Hung Q. Ngo (SUNY at Buffalo) CSE / 59 i

26 By Product: Strong Duality Theorem (Strong Duality) If the primal LP has an optimal solution x, then the dual LP has an optimal solution y such that c T x = b T y. Proof. Suppose Simplex returns vertex x (at B and N) Recall yb T = ct B A 1 B, then ct x = yb T b [ ] [ ] A T A T y B = B cb y B = A T N y B A T N [ cb c N ] = c. Set y = y T B. Done! Hung Q. Ngo (SUNY at Buffalo) CSE / 59 Questions 1 When is P not empty? 2 When does P have a vertex? (i.e. P is pointed) 3 What is a vertex, anyhow? 4 How to find an initial vertex? 5 What if no vertex is optimal? 6 How to find a better neighboring vertex 7 Will the algorithm terminate? 8 How long does it take? Hung Q. Ngo (SUNY at Buffalo) CSE / 59

27 1&4 Feasibility and the Initial Vertex In P = {x Ax = b, x 0}, we can assume b 0 (why?). Let A = [ A I ] Let P = {z A z = b, z 0}. A vertex of P is z = [0,..., 0, b 1,..., b m ] T P is feasible iff the following LP has optimum value 0 { m } min z n+i z P i=1 From an optimal vertex z, ignore the last m coordinates to obtain a vertex of P Hung Q. Ngo (SUNY at Buffalo) CSE / 59 Questions 1 When is P not empty? 2 When does P have a vertex? (i.e. P is pointed) 3 What is a vertex, anyhow? 4 How to find an initial vertex? 5 What if no vertex is optimal? 6 How to find a better neighboring vertex 7 Will the algorithm terminate? 8 How long does it take? Hung Q. Ngo (SUNY at Buffalo) CSE / 59

Mathematical and Algorithmic Foundations Linear Programming and Matchings

Mathematical and Algorithmic Foundations Linear Programming and Matchings Adavnced Algorithms Lectures Mathematical and Algorithmic Foundations Linear Programming and Matchings Paul G. Spirakis Department of Computer Science University of Patras and Liverpool Paul G. Spirakis

More information

Linear programming and duality theory

Linear programming and duality theory Linear programming and duality theory Complements of Operations Research Giovanni Righini Linear Programming (LP) A linear program is defined by linear constraints, a linear objective function. Its variables

More information

Outline. CS38 Introduction to Algorithms. Linear programming 5/21/2014. Linear programming. Lecture 15 May 20, 2014

Outline. CS38 Introduction to Algorithms. Linear programming 5/21/2014. Linear programming. Lecture 15 May 20, 2014 5/2/24 Outline CS38 Introduction to Algorithms Lecture 5 May 2, 24 Linear programming simplex algorithm LP duality ellipsoid algorithm * slides from Kevin Wayne May 2, 24 CS38 Lecture 5 May 2, 24 CS38

More information

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

Section Notes 5. Review of Linear Programming. Applied Math / Engineering Sciences 121. Week of October 15, 2017 Section Notes 5 Review of Linear Programming Applied Math / Engineering Sciences 121 Week of October 15, 2017 The following list of topics is an overview of the material that was covered in the lectures

More information

Lecture Notes 2: The Simplex Algorithm

Lecture Notes 2: The Simplex Algorithm Algorithmic Methods 25/10/2010 Lecture Notes 2: The Simplex Algorithm Professor: Yossi Azar Scribe:Kiril Solovey 1 Introduction In this lecture we will present the Simplex algorithm, finish some unresolved

More information

Duality. Primal program P: Maximize n. Dual program D: Minimize m. j=1 c jx j subject to n. j=1. i=1 b iy i subject to m. i=1

Duality. Primal program P: Maximize n. Dual program D: Minimize m. j=1 c jx j subject to n. j=1. i=1 b iy i subject to m. i=1 Duality Primal program P: Maximize n j=1 c jx j subject to n a ij x j b i, i = 1, 2,..., m j=1 x j 0, j = 1, 2,..., n Dual program D: Minimize m i=1 b iy i subject to m a ij x j c j, j = 1, 2,..., n i=1

More information

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

CS 473: Algorithms. Ruta Mehta. Spring University of Illinois, Urbana-Champaign. Ruta (UIUC) CS473 1 Spring / 29 CS 473: Algorithms Ruta Mehta University of Illinois, Urbana-Champaign Spring 2018 Ruta (UIUC) CS473 1 Spring 2018 1 / 29 CS 473: Algorithms, Spring 2018 Simplex and LP Duality Lecture 19 March 29, 2018

More information

Linear Programming Duality and Algorithms

Linear Programming Duality and Algorithms COMPSCI 330: Design and Analysis of Algorithms 4/5/2016 and 4/7/2016 Linear Programming Duality and Algorithms Lecturer: Debmalya Panigrahi Scribe: Tianqi Song 1 Overview In this lecture, we will cover

More information

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

CS 473: Algorithms. Ruta Mehta. Spring University of Illinois, Urbana-Champaign. Ruta (UIUC) CS473 1 Spring / 36 CS 473: Algorithms Ruta Mehta University of Illinois, Urbana-Champaign Spring 2018 Ruta (UIUC) CS473 1 Spring 2018 1 / 36 CS 473: Algorithms, Spring 2018 LP Duality Lecture 20 April 3, 2018 Some of the

More information

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

3. The Simplex algorithmn The Simplex algorithmn 3.1 Forms of linear programs 11 3.1 Forms of linear programs... 12 3.2 Basic feasible solutions... 13 3.3 The geometry of linear programs... 14 3.4 Local search among basic feasible solutions... 15 3.5 Organization in tableaus...

More information

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

Lecture notes on the simplex method September We will present an algorithm to solve linear programs of the form. maximize. Cornell University, Fall 2017 CS 6820: Algorithms Lecture notes on the simplex method September 2017 1 The Simplex Method We will present an algorithm to solve linear programs of the form maximize subject

More information

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

DM545 Linear and Integer Programming. Lecture 2. The Simplex Method. Marco Chiarandini DM545 Linear and Integer Programming Lecture 2 The Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark Outline 1. 2. 3. 4. Standard Form Basic Feasible Solutions

More information

Section Notes 4. Duality, Sensitivity, and the Dual Simplex Algorithm. Applied Math / Engineering Sciences 121. Week of October 8, 2018

Section Notes 4. Duality, Sensitivity, and the Dual Simplex Algorithm. Applied Math / Engineering Sciences 121. Week of October 8, 2018 Section Notes 4 Duality, Sensitivity, and the Dual Simplex Algorithm Applied Math / Engineering Sciences 121 Week of October 8, 2018 Goals for the week understand the relationship between primal and dual

More information

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

Introduction to Mathematical Programming IE496. Final Review. Dr. Ted Ralphs Introduction to Mathematical Programming IE496 Final Review Dr. Ted Ralphs IE496 Final Review 1 Course Wrap-up: Chapter 2 In the introduction, we discussed the general framework of mathematical modeling

More information

Linear Programming and its Applications

Linear Programming and its Applications Linear Programming and its Applications Outline for Today What is linear programming (LP)? Examples Formal definition Geometric intuition Why is LP useful? A first look at LP algorithms Duality Linear

More information

Linear Programming. Course review MS-E2140. v. 1.1

Linear Programming. Course review MS-E2140. v. 1.1 Linear Programming MS-E2140 Course review v. 1.1 Course structure Modeling techniques Linear programming theory and the Simplex method Duality theory Dual Simplex algorithm and sensitivity analysis Integer

More information

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

Advanced Operations Research Techniques IE316. Quiz 2 Review. Dr. Ted Ralphs Advanced Operations Research Techniques IE316 Quiz 2 Review Dr. Ted Ralphs IE316 Quiz 2 Review 1 Reading for The Quiz Material covered in detail in lecture Bertsimas 4.1-4.5, 4.8, 5.1-5.5, 6.1-6.3 Material

More information

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

CS675: Convex and Combinatorial Optimization Spring 2018 The Simplex Algorithm. Instructor: Shaddin Dughmi CS675: Convex and Combinatorial Optimization Spring 2018 The Simplex Algorithm Instructor: Shaddin Dughmi Algorithms for Convex Optimization We will look at 2 algorithms in detail: Simplex and Ellipsoid.

More information

Some Advanced Topics in Linear Programming

Some Advanced Topics in Linear Programming Some Advanced Topics in Linear Programming Matthew J. Saltzman July 2, 995 Connections with Algebra and Geometry In this section, we will explore how some of the ideas in linear programming, duality theory,

More information

11 Linear Programming

11 Linear Programming 11 Linear Programming 11.1 Definition and Importance The final topic in this course is Linear Programming. We say that a problem is an instance of linear programming when it can be effectively expressed

More information

Linear Programming: Introduction

Linear Programming: Introduction CSC 373 - Algorithm Design, Analysis, and Complexity Summer 2016 Lalla Mouatadid Linear Programming: Introduction A bit of a historical background about linear programming, that I stole from Jeff Erickson

More information

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

4 LINEAR PROGRAMMING (LP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 4 LINEAR PROGRAMMING (LP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 Mathematical programming (optimization) problem: min f (x) s.t. x X R n set of feasible solutions with linear objective function

More information

Heuristic Optimization Today: Linear Programming. Tobias Friedrich Chair for Algorithm Engineering Hasso Plattner Institute, Potsdam

Heuristic Optimization Today: Linear Programming. Tobias Friedrich Chair for Algorithm Engineering Hasso Plattner Institute, Potsdam Heuristic Optimization Today: Linear Programming Chair for Algorithm Engineering Hasso Plattner Institute, Potsdam Linear programming Let s first define it formally: A linear program is an optimization

More information

Artificial Intelligence

Artificial Intelligence Artificial Intelligence Combinatorial Optimization G. Guérard Department of Nouvelles Energies Ecole Supérieur d Ingénieurs Léonard de Vinci Lecture 1 GG A.I. 1/34 Outline 1 Motivation 2 Geometric resolution

More information

Linear Programming. Linear programming provides methods for allocating limited resources among competing activities in an optimal way.

Linear Programming. Linear programming provides methods for allocating limited resources among competing activities in an optimal way. University of Southern California Viterbi School of Engineering Daniel J. Epstein Department of Industrial and Systems Engineering ISE 330: Introduction to Operations Research - Deterministic Models Fall

More information

An iteration of the simplex method (a pivot )

An iteration of the simplex method (a pivot ) Recap, and outline of Lecture 13 Previously Developed and justified all the steps in a typical iteration ( pivot ) of the Simplex Method (see next page). Today Simplex Method Initialization Start with

More information

Algorithmic Game Theory and Applications. Lecture 6: The Simplex Algorithm

Algorithmic Game Theory and Applications. Lecture 6: The Simplex Algorithm Algorithmic Game Theory and Applications Lecture 6: The Simplex Algorithm Kousha Etessami Recall our example 1 x + y

More information

Econ 172A - Slides from Lecture 2

Econ 172A - Slides from Lecture 2 Econ 205 Sobel Econ 172A - Slides from Lecture 2 Joel Sobel September 28, 2010 Announcements 1. Sections this evening (Peterson 110, 8-9 or 9-10). 2. Podcasts available when I remember to use microphone.

More information

The Simplex Algorithm

The Simplex Algorithm The Simplex Algorithm Uri Feige November 2011 1 The simplex algorithm The simplex algorithm was designed by Danzig in 1947. This write-up presents the main ideas involved. It is a slight update (mostly

More information

Linear Programming. Larry Blume. Cornell University & The Santa Fe Institute & IHS

Linear Programming. Larry Blume. Cornell University & The Santa Fe Institute & IHS Linear Programming Larry Blume Cornell University & The Santa Fe Institute & IHS Linear Programs The general linear program is a constrained optimization problem where objectives and constraints are all

More information

6.854 Advanced Algorithms. Scribes: Jay Kumar Sundararajan. Duality

6.854 Advanced Algorithms. Scribes: Jay Kumar Sundararajan. Duality 6.854 Advanced Algorithms Scribes: Jay Kumar Sundararajan Lecturer: David Karger Duality This lecture covers weak and strong duality, and also explains the rules for finding the dual of a linear program,

More information

COT 6936: Topics in Algorithms! Giri Narasimhan. ECS 254A / EC 2443; Phone: x3748

COT 6936: Topics in Algorithms! Giri Narasimhan. ECS 254A / EC 2443; Phone: x3748 COT 6936: Topics in Algorithms! Giri Narasimhan ECS 254A / EC 2443; Phone: x3748 giri@cs.fiu.edu http://www.cs.fiu.edu/~giri/teach/cot6936_s12.html https://moodle.cis.fiu.edu/v2.1/course/view.php?id=174

More information

AM 121: Intro to Optimization Models and Methods Fall 2017

AM 121: Intro to Optimization Models and Methods Fall 2017 AM 121: Intro to Optimization Models and Methods Fall 2017 Lecture 10: Dual Simplex Yiling Chen SEAS Lesson Plan Interpret primal simplex in terms of pivots on the corresponding dual tableau Dictionaries

More information

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

Linear Programming. Linear Programming. Linear Programming. Example: Profit Maximization (1/4) Iris Hui-Ru Jiang Fall Linear programming Linear Programming 3 describes a broad class of optimization tasks in which both the optimization criterion and the constraints are linear functions. Linear Programming consists of three parts: A set of

More information

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

CS 473: Algorithms. Ruta Mehta. Spring University of Illinois, Urbana-Champaign. Ruta (UIUC) CS473 1 Spring / 50 CS 473: Algorithms Ruta Mehta University of Illinois, Urbana-Champaign Spring 2018 Ruta (UIUC) CS473 1 Spring 2018 1 / 50 CS 473: Algorithms, Spring 2018 Introduction to Linear Programming Lecture 18 March

More information

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

College of Computer & Information Science Fall 2007 Northeastern University 14 September 2007 College of Computer & Information Science Fall 2007 Northeastern University 14 September 2007 CS G399: Algorithmic Power Tools I Scribe: Eric Robinson Lecture Outline: Linear Programming: Vertex Definitions

More information

Dual-fitting analysis of Greedy for Set Cover

Dual-fitting analysis of Greedy for Set Cover Dual-fitting analysis of Greedy for Set Cover We showed earlier that the greedy algorithm for set cover gives a H n approximation We will show that greedy produces a solution of cost at most H n OPT LP

More information

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

Discrete Optimization 2010 Lecture 5 Min-Cost Flows & Total Unimodularity Discrete Optimization 2010 Lecture 5 Min-Cost Flows & Total Unimodularity Marc Uetz University of Twente m.uetz@utwente.nl Lecture 5: sheet 1 / 26 Marc Uetz Discrete Optimization Outline 1 Min-Cost Flows

More information

New Directions in Linear Programming

New Directions in Linear Programming New Directions in Linear Programming Robert Vanderbei November 5, 2001 INFORMS Miami Beach NOTE: This is a talk mostly on pedagogy. There will be some new results. It is not a talk on state-of-the-art

More information

Lecture 5: Duality Theory

Lecture 5: Duality Theory Lecture 5: Duality Theory Rajat Mittal IIT Kanpur The objective of this lecture note will be to learn duality theory of linear programming. We are planning to answer following questions. What are hyperplane

More information

Advanced Algorithms Linear Programming

Advanced Algorithms Linear Programming Reading: Advanced Algorithms Linear Programming CLRS, Chapter29 (2 nd ed. onward). Linear Algebra and Its Applications, by Gilbert Strang, chapter 8 Linear Programming, by Vasek Chvatal Introduction to

More information

16.410/413 Principles of Autonomy and Decision Making

16.410/413 Principles of Autonomy and Decision Making 16.410/413 Principles of Autonomy and Decision Making Lecture 17: The Simplex Method Emilio Frazzoli Aeronautics and Astronautics Massachusetts Institute of Technology November 10, 2010 Frazzoli (MIT)

More information

Math Models of OR: The Simplex Algorithm: Practical Considerations

Math Models of OR: The Simplex Algorithm: Practical Considerations Math Models of OR: The Simplex Algorithm: Practical Considerations John E. Mitchell Department of Mathematical Sciences RPI, Troy, NY 12180 USA September 2018 Mitchell Simplex Algorithm: Practical Considerations

More information

Linear Programming in Small Dimensions

Linear Programming in Small Dimensions Linear Programming in Small Dimensions Lekcija 7 sergio.cabello@fmf.uni-lj.si FMF Univerza v Ljubljani Edited from slides by Antoine Vigneron Outline linear programming, motivation and definition one dimensional

More information

15-451/651: Design & Analysis of Algorithms October 11, 2018 Lecture #13: Linear Programming I last changed: October 9, 2018

15-451/651: Design & Analysis of Algorithms October 11, 2018 Lecture #13: Linear Programming I last changed: October 9, 2018 15-451/651: Design & Analysis of Algorithms October 11, 2018 Lecture #13: Linear Programming I last changed: October 9, 2018 In this lecture, we describe a very general problem called linear programming

More information

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

Linear and Integer Programming :Algorithms in the Real World. Related Optimization Problems. How important is optimization? Linear and Integer Programming 15-853:Algorithms in the Real World Linear and Integer Programming I Introduction Geometric Interpretation Simplex Method Linear or Integer programming maximize z = c T x

More information

Math 5593 Linear Programming Lecture Notes

Math 5593 Linear Programming Lecture Notes Math 5593 Linear Programming Lecture Notes Unit II: Theory & Foundations (Convex Analysis) University of Colorado Denver, Fall 2013 Topics 1 Convex Sets 1 1.1 Basic Properties (Luenberger-Ye Appendix B.1).........................

More information

Outline. Combinatorial Optimization 2. Finite Systems of Linear Inequalities. Finite Systems of Linear Inequalities. Theorem (Weyl s theorem :)

Outline. Combinatorial Optimization 2. Finite Systems of Linear Inequalities. Finite Systems of Linear Inequalities. Theorem (Weyl s theorem :) Outline Combinatorial Optimization 2 Rumen Andonov Irisa/Symbiose and University of Rennes 1 9 novembre 2009 Finite Systems of Linear Inequalities, variants of Farkas Lemma Duality theory in Linear Programming

More information

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

Advanced Operations Research Techniques IE316. Quiz 1 Review. Dr. Ted Ralphs Advanced Operations Research Techniques IE316 Quiz 1 Review Dr. Ted Ralphs IE316 Quiz 1 Review 1 Reading for The Quiz Material covered in detail in lecture. 1.1, 1.4, 2.1-2.6, 3.1-3.3, 3.5 Background material

More information

Finite Math Linear Programming 1 May / 7

Finite Math Linear Programming 1 May / 7 Linear Programming Finite Math 1 May 2017 Finite Math Linear Programming 1 May 2017 1 / 7 General Description of Linear Programming Finite Math Linear Programming 1 May 2017 2 / 7 General Description of

More information

5. DUAL LP, SOLUTION INTERPRETATION, AND POST-OPTIMALITY

5. DUAL LP, SOLUTION INTERPRETATION, AND POST-OPTIMALITY 5. DUAL LP, SOLUTION INTERPRETATION, AND POST-OPTIMALITY 5.1 DUALITY Associated with every linear programming problem (the primal) is another linear programming problem called its dual. If the primal involves

More information

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

MA4254: Discrete Optimization. Defeng Sun. Department of Mathematics National University of Singapore Office: S Telephone: MA4254: Discrete Optimization Defeng Sun Department of Mathematics National University of Singapore Office: S14-04-25 Telephone: 6516 3343 Aims/Objectives: Discrete optimization deals with problems of

More information

4 Linear Programming (LP) E. Amaldi -- Foundations of Operations Research -- Politecnico di Milano 1

4 Linear Programming (LP) E. Amaldi -- Foundations of Operations Research -- Politecnico di Milano 1 4 Linear Programming (LP) E. Amaldi -- Foundations of Operations Research -- Politecnico di Milano 1 Definition: A Linear Programming (LP) problem is an optimization problem: where min f () s.t. X n the

More information

Integer Programming Theory

Integer Programming Theory Integer Programming Theory Laura Galli October 24, 2016 In the following we assume all functions are linear, hence we often drop the term linear. In discrete optimization, we seek to find a solution x

More information

AMS : Combinatorial Optimization Homework Problems - Week V

AMS : Combinatorial Optimization Homework Problems - Week V AMS 553.766: Combinatorial Optimization Homework Problems - Week V For the following problems, A R m n will be m n matrices, and b R m. An affine subspace is the set of solutions to a a system of linear

More information

Lecture 6: Faces, Facets

Lecture 6: Faces, Facets IE 511: Integer Programming, Spring 2019 31 Jan, 2019 Lecturer: Karthik Chandrasekaran Lecture 6: Faces, Facets Scribe: Setareh Taki Disclaimer: These notes have not been subjected to the usual scrutiny

More information

Read: H&L chapters 1-6

Read: H&L chapters 1-6 Viterbi School of Engineering Daniel J. Epstein Department of Industrial and Systems Engineering ISE 330: Introduction to Operations Research Fall 2006 (Oct 16): Midterm Review http://www-scf.usc.edu/~ise330

More information

Linear Programming. Readings: Read text section 11.6, and sections 1 and 2 of Tom Ferguson s notes (see course homepage).

Linear Programming. Readings: Read text section 11.6, and sections 1 and 2 of Tom Ferguson s notes (see course homepage). Linear Programming Learning Goals. Introduce Linear Programming Problems. Widget Example, Graphical Solution. Basic Theory: Feasible Set, Vertices, Existence of Solutions. Equivalent formulations. Outline

More information

Linear Programming. Widget Factory Example. Linear Programming: Standard Form. Widget Factory Example: Continued.

Linear Programming. Widget Factory Example. Linear Programming: Standard Form. Widget Factory Example: Continued. Linear Programming Widget Factory Example Learning Goals. Introduce Linear Programming Problems. Widget Example, Graphical Solution. Basic Theory:, Vertices, Existence of Solutions. Equivalent formulations.

More information

Lecture 16 October 23, 2014

Lecture 16 October 23, 2014 CS 224: Advanced Algorithms Fall 2014 Prof. Jelani Nelson Lecture 16 October 23, 2014 Scribe: Colin Lu 1 Overview In the last lecture we explored the simplex algorithm for solving linear programs. While

More information

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

The simplex method and the diameter of a 0-1 polytope The simplex method and the diameter of a 0-1 polytope Tomonari Kitahara and Shinji Mizuno May 2012 Abstract We will derive two main results related to the primal simplex method for an LP on a 0-1 polytope.

More information

Design and Analysis of Algorithms (V)

Design and Analysis of Algorithms (V) Design and Analysis of Algorithms (V) An Introduction to Linear Programming Guoqiang Li School of Software, Shanghai Jiao Tong University Homework Assignment 2 is announced! (deadline Apr. 10) Linear Programming

More information

Linear Programming Problems

Linear Programming Problems Linear Programming Problems Two common formulations of linear programming (LP) problems are: min Subject to: 1,,, 1,2,,;, max Subject to: 1,,, 1,2,,;, Linear Programming Problems The standard LP problem

More information

Lesson 17. Geometry and Algebra of Corner Points

Lesson 17. Geometry and Algebra of Corner Points SA305 Linear Programming Spring 2016 Asst. Prof. Nelson Uhan 0 Warm up Lesson 17. Geometry and Algebra of Corner Points Example 1. Consider the system of equations 3 + 7x 3 = 17 + 5 = 1 2 + 11x 3 = 24

More information

Recap, and outline of Lecture 18

Recap, and outline of Lecture 18 Recap, and outline of Lecture 18 Previously Applications of duality: Farkas lemma (example of theorems of alternative) A geometric view of duality Degeneracy and multiple solutions: a duality connection

More information

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

In this chapter we introduce some of the basic concepts that will be useful for the study of integer programming problems. 2 Basics In this chapter we introduce some of the basic concepts that will be useful for the study of integer programming problems. 2.1 Notation Let A R m n be a matrix with row index set M = {1,...,m}

More information

1. Lecture notes on bipartite matching

1. Lecture notes on bipartite matching Massachusetts Institute of Technology 18.453: Combinatorial Optimization Michel X. Goemans February 5, 2017 1. Lecture notes on bipartite matching Matching problems are among the fundamental problems in

More information

J Linear Programming Algorithms

J Linear Programming Algorithms Simplicibus itaque verbis gaudet Mathematica Veritas, cum etiam per se simplex sit Veritatis oratio. [And thus Mathematical Truth prefers simple words, because the language of Truth is itself simple.]

More information

Solutions for Operations Research Final Exam

Solutions for Operations Research Final Exam Solutions for Operations Research Final Exam. (a) The buffer stock is B = i a i = a + a + a + a + a + a 6 + a 7 = + + + + + + =. And the transportation tableau corresponding to the transshipment problem

More information

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

CS 372: Computational Geometry Lecture 10 Linear Programming in Fixed Dimension CS 372: Computational Geometry Lecture 10 Linear Programming in Fixed Dimension Antoine Vigneron King Abdullah University of Science and Technology November 7, 2012 Antoine Vigneron (KAUST) CS 372 Lecture

More information

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

R n a T i x = b i} is a Hyperplane. Geometry of LPs Consider the following LP : min {c T x a T i x b i The feasible region is i =1,...,m}. X := {x R n a T i x b i i =1,...,m} = m i=1 {x Rn a T i x b i} }{{} X i The set X i is a Half-space.

More information

Notes taken by Mea Wang. February 11, 2005

Notes taken by Mea Wang. February 11, 2005 CSC2411 - Linear Programming and Combinatorial Optimization Lecture 5: Smoothed Analysis, Randomized Combinatorial Algorithms, and Linear Programming Duality Notes taken by Mea Wang February 11, 2005 Summary:

More information

Civil Engineering Systems Analysis Lecture XIV. Instructor: Prof. Naveen Eluru Department of Civil Engineering and Applied Mechanics

Civil Engineering Systems Analysis Lecture XIV. Instructor: Prof. Naveen Eluru Department of Civil Engineering and Applied Mechanics Civil Engineering Systems Analysis Lecture XIV Instructor: Prof. Naveen Eluru Department of Civil Engineering and Applied Mechanics Today s Learning Objectives Dual 2 Linear Programming Dual Problem 3

More information

Chapter II. Linear Programming

Chapter II. Linear Programming 1 Chapter II Linear Programming 1. Introduction 2. Simplex Method 3. Duality Theory 4. Optimality Conditions 5. Applications (QP & SLP) 6. Sensitivity Analysis 7. Interior Point Methods 1 INTRODUCTION

More information

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

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 14: Combinatorial Problems as Linear Programs I. Instructor: Shaddin Dughmi CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 14: Combinatorial Problems as Linear Programs I Instructor: Shaddin Dughmi Announcements Posted solutions to HW1 Today: Combinatorial problems

More information

ORF 307: Lecture 14. Linear Programming: Chapter 14: Network Flows: Algorithms

ORF 307: Lecture 14. Linear Programming: Chapter 14: Network Flows: Algorithms ORF 307: Lecture 14 Linear Programming: Chapter 14: Network Flows: Algorithms Robert J. Vanderbei April 10, 2018 Slides last edited on April 10, 2018 http://www.princeton.edu/ rvdb Agenda Primal Network

More information

Approximation Algorithms

Approximation Algorithms Approximation Algorithms Prof. Tapio Elomaa tapio.elomaa@tut.fi Course Basics A 4 credit unit course Part of Theoretical Computer Science courses at the Laboratory of Mathematics There will be 4 hours

More information

maximize minimize b T y subject to A T y c, 0 apple y. The problem on the right is in standard form so we can take its dual to get the LP c T x

maximize minimize b T y subject to A T y c, 0 apple y. The problem on the right is in standard form so we can take its dual to get the LP c T x 4 Duality Theory Recall from Section that the dual to an LP in standard form (P) is the LP maximize subject to c T x Ax apple b, apple x (D) minimize b T y subject to A T y c, apple y. Since the problem

More information

Approximation Algorithms: The Primal-Dual Method. My T. Thai

Approximation Algorithms: The Primal-Dual Method. My T. Thai Approximation Algorithms: The Primal-Dual Method My T. Thai 1 Overview of the Primal-Dual Method Consider the following primal program, called P: min st n c j x j j=1 n a ij x j b i j=1 x j 0 Then the

More information

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

COMP331/557. Chapter 2: The Geometry of Linear Programming. (Bertsimas & Tsitsiklis, Chapter 2) COMP331/557 Chapter 2: The Geometry of Linear Programming (Bertsimas & Tsitsiklis, Chapter 2) 49 Polyhedra and Polytopes Definition 2.1. Let A 2 R m n and b 2 R m. a set {x 2 R n A x b} is called polyhedron

More information

NATCOR Convex Optimization Linear Programming 1

NATCOR Convex Optimization Linear Programming 1 NATCOR Convex Optimization Linear Programming 1 Julian Hall School of Mathematics University of Edinburgh jajhall@ed.ac.uk 5 June 2018 What is linear programming (LP)? The most important model used in

More information

LECTURE 6: INTERIOR POINT METHOD. 1. Motivation 2. Basic concepts 3. Primal affine scaling algorithm 4. Dual affine scaling algorithm

LECTURE 6: INTERIOR POINT METHOD. 1. Motivation 2. Basic concepts 3. Primal affine scaling algorithm 4. Dual affine scaling algorithm LECTURE 6: INTERIOR POINT METHOD 1. Motivation 2. Basic concepts 3. Primal affine scaling algorithm 4. Dual affine scaling algorithm Motivation Simplex method works well in general, but suffers from exponential-time

More information

Approximation Algorithms

Approximation Algorithms Approximation Algorithms Group Members: 1. Geng Xue (A0095628R) 2. Cai Jingli (A0095623B) 3. Xing Zhe (A0095644W) 4. Zhu Xiaolu (A0109657W) 5. Wang Zixiao (A0095670X) 6. Jiao Qing (A0095637R) 7. Zhang

More information

1. Lecture notes on bipartite matching February 4th,

1. Lecture notes on bipartite matching February 4th, 1. Lecture notes on bipartite matching February 4th, 2015 6 1.1.1 Hall s Theorem Hall s theorem gives a necessary and sufficient condition for a bipartite graph to have a matching which saturates (or matches)

More information

3 No-Wait Job Shops with Variable Processing Times

3 No-Wait Job Shops with Variable Processing Times 3 No-Wait Job Shops with Variable Processing Times In this chapter we assume that, on top of the classical no-wait job shop setting, we are given a set of processing times for each operation. We may select

More information

Math 414 Lecture 30. The greedy algorithm provides the initial transportation matrix.

Math 414 Lecture 30. The greedy algorithm provides the initial transportation matrix. Math Lecture The greedy algorithm provides the initial transportation matrix. matrix P P Demand W ª «2 ª2 «W ª «W ª «ª «ª «Supply The circled x ij s are the initial basic variables. Erase all other values

More information

Discrete Optimization. Lecture Notes 2

Discrete Optimization. Lecture Notes 2 Discrete Optimization. Lecture Notes 2 Disjunctive Constraints Defining variables and formulating linear constraints can be straightforward or more sophisticated, depending on the problem structure. The

More information

Introduction. Linear because it requires linear functions. Programming as synonymous of planning.

Introduction. Linear because it requires linear functions. Programming as synonymous of planning. LINEAR PROGRAMMING Introduction Development of linear programming was among the most important scientific advances of mid-20th cent. Most common type of applications: allocate limited resources to competing

More information

Combinatorial Optimization

Combinatorial Optimization Combinatorial Optimization Frank de Zeeuw EPFL 2012 Today Introduction Graph problems - What combinatorial things will we be optimizing? Algorithms - What kind of solution are we looking for? Linear Programming

More information

Linear Programming Terminology

Linear Programming Terminology Linear Programming Terminology The carpenter problem is an example of a linear program. T and B (the number of tables and bookcases to produce weekly) are decision variables. The profit function is an

More information

4 Integer Linear Programming (ILP)

4 Integer Linear Programming (ILP) TDA6/DIT37 DISCRETE OPTIMIZATION 17 PERIOD 3 WEEK III 4 Integer Linear Programg (ILP) 14 An integer linear program, ILP for short, has the same form as a linear program (LP). The only difference is that

More information

Chapter 15 Introduction to Linear Programming

Chapter 15 Introduction to Linear Programming Chapter 15 Introduction to Linear Programming An Introduction to Optimization Spring, 2015 Wei-Ta Chu 1 Brief History of Linear Programming The goal of linear programming is to determine the values of

More information

4.1 Graphical solution of a linear program and standard form

4.1 Graphical solution of a linear program and standard form 4.1 Graphical solution of a linear program and standard form Consider the problem min c T x Ax b x where x = ( x1 x ) ( 16, c = 5 ), b = 4 5 9, A = 1 7 1 5 1. Solve the problem graphically and determine

More information

4 Greedy Approximation for Set Cover

4 Greedy Approximation for Set Cover COMPSCI 532: Design and Analysis of Algorithms October 14, 2015 Lecturer: Debmalya Panigrahi Lecture 12 Scribe: Allen Xiao 1 Overview In this lecture, we introduce approximation algorithms and their analysis

More information

OPERATIONS RESEARCH. Linear Programming Problem

OPERATIONS RESEARCH. Linear Programming Problem OPERATIONS RESEARCH Chapter 1 Linear Programming Problem Prof. Bibhas C. Giri Department of Mathematics Jadavpur University Kolkata, India Email: bcgiri.jumath@gmail.com 1.0 Introduction Linear programming

More information

Polytopes Course Notes

Polytopes Course Notes Polytopes Course Notes Carl W. Lee Department of Mathematics University of Kentucky Lexington, KY 40506 lee@ms.uky.edu Fall 2013 i Contents 1 Polytopes 1 1.1 Convex Combinations and V-Polytopes.....................

More information

Linear Programming. Presentation for use with the textbook, Algorithm Design and Applications, by M. T. Goodrich and R. Tamassia, Wiley, 2015

Linear Programming. Presentation for use with the textbook, Algorithm Design and Applications, by M. T. Goodrich and R. Tamassia, Wiley, 2015 Presentation for use with the textbook, Algorithm Design and Applications, by M. T. Goodrich and R. Tamassia, Wiley, 2015 Linear Programming 2015 Goodrich and Tamassia 1 Formulating the Problem q The function

More information

Advanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras

Advanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras Advanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras Lecture 16 Cutting Plane Algorithm We shall continue the discussion on integer programming,

More information

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

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 LP Geometry: outline I Polyhedra I Extreme points, vertices, basic feasible solutions I Degeneracy I Existence of extreme points I Optimality of extreme points IOE 610: LP II, Fall 2013 Geometry of Linear

More information

Identical text Minor difference Moved in S&W Wrong in S&W Not copied from Wiki 1

Identical text Minor difference Moved in S&W Wrong in S&W Not copied from Wiki 1 Introduction The article Roadmap for Optimization (WIREs: Computational Statistics, Said and Wegman, 2009) purports to provide in broad brush strokes a perspective on the area in order to orient the reader

More information