Computational Geometry Lecture Linear Programming

Size: px
Start display at page:

Download "Computational Geometry Lecture Linear Programming"

Transcription

1 Computational Geometry Lecture Linear Programming INSTITUTE FOR THEORETICAL INFORMATICS FACULTY OF INFORMATICS Tamara Mchedlidze Darren Strash

2 Profit optimization You are the boss of a company, that produces two products P 1 und P 2 from three raw materials R 1, R 2 und R 3. Let s assume you produce x 1 items of the product P 1 and x 2 items of product P 2. Assume that items P 1, P 2 get profit of 300e and 500e, respectively. Then the total profit is: G(x 1, x 2 ) = 300x x 2 Assume that the amout of raw material you need for P 1 and P 2 is: P 1 : 4R 1 + R 2 P 2 : 11R 1 + R 2 + R 3 And in your warehouse there are 880R 1, 150R 2 and 60R 3. So: R 1 : 4x x R 2 : x 1 + x R 3 : x 2 60 Which choice for (x 1, x 2 ) maximizes your profit? 2

3 Solution x e e e e 0 0 (300, 500) Linear constraints: R 1 : 4x x R 2 : x 1 + x R 3 : x 2 60 x 1 0 x 2 0 Linear objective function: G(x 1, x 2 ) = 300x x 2 = (300, 500) ( x 1 ) x 2 G(110, 40) = = Isocost line (orthogonal to ( ) ) x 1 Ax b x 0 max c T x c - normal vector maximum value of the objective function under the constraints. max{c T x Ax b, x 0}

4 Linear programming Definition: Given a set of linear constraints H and a linear objective function c in R d, a linear program (LP) is formulated as follows: maximize c 1 x 1 + c 2 x c d x d under constr. a 1,1 x a 1,d x d b 1 a 2,1 x a 2,d x d b 2 a n,1 x a n,d x d b n. } H H is a set of half-spaces in R d. We are searching for a point x h H h, that maximizes c T x, i.e. max{c T x Ax b, x 0}. Linear programming is a central method in operations research. 4

5 Algorithms for LPs There are many algorithms to solve LPs: Simplex-Algorithm [Dantzig, 1947] Ellipsoid-Method [Khatchiyan, 1979] Interior-Point-Method [Karmarkar, 1979] They work well in practice, especially for large values of n (number of constraints) and d (number of variables). Today: Special case d = 2 Possibilities for the solution space 5 H = infeasible c H is unbounded in the direction c feasible region H is bounded c solution is not unique c unique solution

6 First approach Idea: Compute the feasible region H and search for the angle p, that maximizes c T p. The half-planes are convex Let s try a simple Divide-and-Conquer Algorithm IntersectHalfplanes(H) if H = 1 then C H else (H 1, H 2 ) SplitInHalves(H) C 1 IntersectHalfplanes(H 1 ) C 2 IntersectHalfplanes(H 2 ) C IntersectConvexRegions(C 1, C 2 ) return C 6

7 Intersect convex regions IntersectConvexRegions(C 1, C 2 ) can be implemented using a sweep line method: consider the left and the right boundaries of C 1 and C 2 move the sweep line l from top to bottom and save the crossed edges ( 4) The nodes of C 1 C 2 define events. We process every event in O(1) time, dependent on the type of the edges incident to the event vertex. l C 1 C 2 Theorem 1: The intersection of two convex polygonal regions in the plane with n 1 + n 2 = n nodes can be computed in O(n) time. 7

8 Running time of IntersectHalfplanes(H) IntersectHalfplanes(H) if H = 1 then C H else (H 1, H 2 ) SplitInHalves(H) C 1 IntersectHalfplanes(H 1 ) C 2 IntersectHalfplanes(H 2 ) C IntersectConvexRegions(C 1, C 2 ) return C Task: What is the running time of IntersectHalfplanes(H)? Recursive formula { O(1) when n = 1 T (n) = O(n) + 2T (n/2) when n > 1 Master Theorem T (n) O(n log n) 8-3

9 Running time of IntersectHalfplanes(H) IntersectHalfplanes(H) if H = 1 then Cfeasible H region H can be found in O(n log n) time else H has O(n) nodes (H the 1, node H 2 ) p that SplitInHalves(H) maximizes c T p can therefore be found Cin 1 O(n IntersectHalfplanes(H log n) time 1 ) C 2 IntersectHalfplanes(H 2 ) C IntersectConvexRegions(C 1, C 2 ) return C Task: What is the running time of IntersectHalfplanes(H)? Recursive formula { O(1) when n = 1 T (n) = O(n) + 2T (n/2) when n > 1 Master Theorem T (n) O(n log n) 8-4

10 Bounded LPs Idea: Instead of computing the feasible region and then searching for the optimal angle, do this incrementally. Invariant: Current best solution is a unique corner of the current feasible polygon How to deal with the unbounded feasible regions? Define two half-planes for a big enough value M m 1 = { x M if c x > 0 x M otherwise When the optimal point is not unique, select lexicographically smallest one! m 2 = { y M if c y > 0 y M otherwise m 1 m2 c c 9-5

11 Bounded LPs Idea: Instead of computing the feasible region and then searching for the optimal angle, do this incrementally. Invariant: 9-6 Current best solution is a unique corner of the current feasible polygon How to deal with the unbounded feasible regions? Define two half-planes for a big enough value M m 1 = { x M if c x > 0 x M otherwise When the optimal point is not unique, select lexicographically smallest one! m 2 = { y M if c y > 0 y M otherwise Consider a LP (H, c) with H = {h 1,..., h n }, c = (c x, c y ). We denote the first i constraints by H i = {m 1, m 2, h 1,..., h i }, and the feasible polygon defineed by them by C i = m 1 m 2 h 1 h i

12 Properties each region C i has a single optimal angle v i it holds that: C 0 C 1 C n = C How the optimal angle v i 1 changes when the half plane h i is added? Lemma 1: For 1 i n and bounding line l i of h i holds that: (i) If v i 1 h i then v i = v i 1, (ii) otherwise, either C i = or v i l i. h 5 h 6 c c c v 4 v 4 = v 5 v 5 v 6 10

13 One-dimentional LP In case(ii) of Lemma 1, we search for the best point on the segment l i C i 1 : 11 we parametrize l i : y = ax + b define new objective function fc(x) i = c ( ) T x ax+b for j i 1 let σ x (l j, l i ) denote the x-coordinate of l j l i This gives us the following one-dimentional LP: maximize f i c(x) = c x x + c y (ax + b) with constr. x σ x (l j, l i ) if l i h j is limited to the right x σ x (l j, l i ) if l i h j is limited to the left Lemma 2: A one-dimentional LP can be solved in linear time. In particular, in case (ii), one can compute the new angle v i or decide whether C i = in O(i) time.

14 Incremental Algorithm 2dBoundedLP(H, c, m 1, m 2 ) worst-case running time: C 0 m 1 m 2 T (n) = n i=1 O(i) = O(n2 ) v 0 unique angle of C 0 for i 1 to n do if v i 1 h i then v i v i 1 O(1) else v i 1dBoundedLP(σ(H i 1 ), fc) i if v i = nil then O(i) return infeasible return v n Lemma 3: Algorithmus 2dBoundedLP needs Θ(n 2 ) time to solve an LP with n contraints and 2 variables. 12

15 What else can we do? Obs.: It is not the half-planes H that force the high running time, but the order in which we consider them. c h 6 h 5 h h 4 3 h 1 h 2 v 2 v 3 v 4 v 5 v 6 How to find (quickly) a good ordering? Zufällig! 13

16 Randomized incremental algorithm 2dRandomizedBoundedLP(H, c, m 1, m 2 ) C 0 m 1 m 2 v 0 unique angle of C 0 H RandomPermutation(H) for i 1 to n do if v i 1 h i then v i v i 1 else v i 1dBoundedLP(σ(H i 1 ), f i c) if v i = nil then return infeasible return v n 14

17 Random permutation RandomPermutation(A) Input: Array A[1... n] Output: Array A, rearranged into a random permutation for k n to 2 do r Random(k) Random num. between 1 and k exchange A[r] and A[k] Obs.: The running time of 2dRandomizedBoundedLP depends on the random permutation computed by the procedure RandomPermutation. In the following we compute the expected running time. Theorem 2: A two-dimentional LP with n constraints can be solved in O(n) randomized expected time. 15

18 Unbounded LPs Till now: Artificial contraints to bound C by m 1 and m 2 Next: recongnize and deal with an unbonded LP c H unbounded in the direction c Def.: A LP (H, c) is called unbounded, if there exists a ray ρ = {p + λd λ > 0} in C = H, such that the value of the objective function f c becomes arbitrarily large along ρ. It must be that: d, c > 0 d, η(h) 0 for all h H where η(h) is the normal vector of h oriented towards the feasible side of h 16

19 Characterization Lemma 4: A LP (H, c) is unbounded iff there is a vector d R 2 such that d, c > 0 d, η(h) 0 for all h H LP (H, c) with H = {h H d, η(h) = 0} is feasible. Test whether (H, c) is unbounded with a one-dimentional LP: Step 1: rotate coordinate system till c = (0, 1) normalize vector d with d, c > 0 as d = (d x, 1) For normal vector η(h) = (η x, η y ) it should hold that d, η(h) = d x η x + η y 0 Let H = {d x η x + η y 0 h H} Check whether this one-dim. LP H is feasible 17

20 Test auf Unbeschränktheit Step 2: If Step 1 returns a feasible solution d x compute H = {h H d xη x (h) + η y (h) = 0} Normals to H are orthogonal to d = (d x, 1) lines bounding half-planes of H are parallel to d intersect the bounding lines of H with x-axis 1d-LP If the two steps result in a feasible solution, the LP (H, c) is unbounded and we can construct the ray ρ. If the LP H in Step 2 is infeasible, then then so is the initial LP (H, c). If the LP H of the Step 1 is infeasible, then by Lemma 4, (H, c) is bounded. 18

21 Certificates of boundness Obs.: When the LP H = {d x η x + η y 0 h H} of the Step 1 is infeasible, we can use this information further! d right x d left x 1d-LP H is infeasible the interval [d left x, d right x ] = let h 1 and h 2 be the half planes corresponding to d left x and d right x There is no vector d that would satisfy h 1 and h 2, thus the LP ({h 1, h 2 }, c) is already bounded h 1 and h 2 are certificates of the boundness use h 1 and h 2 in 2dRandomizedBoundedLP as m 1 and m 2 19

22 Algorithms 2dRandomizedLP(H, c)? Vector d with d, c > 0 and d, η(h) 0 for all h H if d exists then H {h H d, η(h) = 0} if H feasible then return (ray ρ, unbounded) else return infeasible else (h 1, h 2 ) Certificates for the boundness of (H, c) H H \ {h 1, h 2 } return 2dRandomizedBoundedLP(H, c, h 1, h 2 ) Theorem 3: A two-dimentional LP with n constraints can be solved in O(n) randomized expected time. 20

23 Discussion Can the two-dimentional algorithms be generalized to more dimentions? Yes! The same way as the two-dimentional LP is solved incrementally with reduction to a one-dimentional LP, a d-dimentional LP can be solved by a randomized incremental algorithm with a reduction to (d 1)-dimentional LP. The expected running time is then O(c d d! n) for a constant c. The algorithm is therefore usefull only for small values on d. The simple randomized incremental algorithm for two and more dimentions given in this lecture is due to Seidel (1991). 21

Linear Programming and Halfplane Intersection

Linear Programming and Halfplane Intersection CMPS 3130/6130 Computational Geometry Spring 2015 Linear Programming and Halfplane Intersection Carola Wenk CMPS 3130/6130 Computational Geometry 1 Word Problem A company produces tables and chairs. The

More information

Optimization (168) Lecture 7-8-9

Optimization (168) Lecture 7-8-9 Optimization (168) Lecture 7-8-9 Jesús De Loera UC Davis, Mathematics Wednesday, April 2, 2012 1 DEGENERACY IN THE SIMPLEX METHOD 2 DEGENERACY z =2x 1 x 2 + 8x 3 x 4 =1 2x 3 x 5 =3 2x 1 + 4x 2 6x 3 x 6

More information

Linear Classification: Linear Programming

Linear Classification: Linear Programming Linear Classification: Linear Programming Yufei Tao Department of Computer Science and Engineering Chinese University of Hong Kong 1 / 21 Y Tao Linear Classification: Linear Programming Recall the definition

More information

Linear Programming. Chapter Introduction

Linear Programming. Chapter Introduction Chapter 3 Linear Programming Linear programs (LP) play an important role in the theory and practice of optimization problems. Many COPs can directly be formulated as LPs. Furthermore, LPs are invaluable

More information

Motivating examples Introduction to algorithms Simplex algorithm. On a particular example General algorithm. Duality An application to game theory

Motivating examples Introduction to algorithms Simplex algorithm. On a particular example General algorithm. Duality An application to game theory Instructor: Shengyu Zhang 1 LP Motivating examples Introduction to algorithms Simplex algorithm On a particular example General algorithm Duality An application to game theory 2 Example 1: profit maximization

More information

Linear Classification: Linear Programming

Linear Classification: Linear Programming Yufei Tao Department of Computer Science and Engineering Chinese University of Hong Kong Recall the definition of linear classification. Definition 1. Let R d denote the d-dimensional space where the domain

More information

TIM 206 Lecture 3: The Simplex Method

TIM 206 Lecture 3: The Simplex Method TIM 206 Lecture 3: The Simplex Method Kevin Ross. Scribe: Shane Brennan (2006) September 29, 2011 1 Basic Feasible Solutions Have equation Ax = b contain more columns (variables) than rows (constraints),

More information

IE 400 Principles of Engineering Management. Graphical Solution of 2-variable LP Problems

IE 400 Principles of Engineering Management. Graphical Solution of 2-variable LP Problems IE 400 Principles of Engineering Management Graphical Solution of 2-variable LP Problems Graphical Solution of 2-variable LP Problems Ex 1.a) max x 1 + 3 x 2 s.t. x 1 + x 2 6 - x 1 + 2x 2 8 x 1, x 2 0,

More information

Algorithms and Theory of Computation. Lecture 13: Linear Programming (2)

Algorithms and Theory of Computation. Lecture 13: Linear Programming (2) Algorithms and Theory of Computation Lecture 13: Linear Programming (2) Xiaohui Bei MAS 714 September 25, 2018 Nanyang Technological University MAS 714 September 25, 2018 1 / 15 LP Duality Primal problem

More information

1 Seidel s LP algorithm

1 Seidel s LP algorithm 15-451/651: Design & Analysis of Algorithms October 21, 2015 Lecture #14 last changed: November 7, 2015 In this lecture we describe a very nice algorithm due to Seidel for Linear Programming in lowdimensional

More information

IE 5531: Engineering Optimization I

IE 5531: Engineering Optimization I IE 5531: Engineering Optimization I Lecture 3: Linear Programming, Continued Prof. John Gunnar Carlsson September 15, 2010 Prof. John Gunnar Carlsson IE 5531: Engineering Optimization I September 15, 2010

More information

ENGI 5708 Design of Civil Engineering Systems

ENGI 5708 Design of Civil Engineering Systems ENGI 5708 Design of Civil Engineering Systems Lecture 04: Graphical Solution Methods Part 1 Shawn Kenny, Ph.D., P.Eng. Assistant Professor Faculty of Engineering and Applied Science Memorial University

More information

Theory and Internet Protocols

Theory and Internet Protocols Game Lecture 2: Linear Programming and Zero Sum Nash Equilibrium Xiaotie Deng AIMS Lab Department of Computer Science Shanghai Jiaotong University September 26, 2016 1 2 3 4 Standard Form (P) Outline

More information

Week 5: Quicksort, Lower bound, Greedy

Week 5: Quicksort, Lower bound, Greedy Week 5: Quicksort, Lower bound, Greedy Agenda: Quicksort: Average case Lower bound for sorting Greedy method 1 Week 5: Quicksort Recall Quicksort: The ideas: Pick one key Compare to others: partition into

More information

LINEAR PROGRAMMING I. a refreshing example standard form fundamental questions geometry linear algebra simplex algorithm

LINEAR PROGRAMMING I. a refreshing example standard form fundamental questions geometry linear algebra simplex algorithm Linear programming Linear programming. Optimize a linear function subject to linear inequalities. (P) max c j x j n j= n s. t. a ij x j = b i i m j= x j 0 j n (P) max c T x s. t. Ax = b Lecture slides

More information

3. Linear Programming and Polyhedral Combinatorics

3. Linear Programming and Polyhedral Combinatorics Massachusetts Institute of Technology 18.433: Combinatorial Optimization Michel X. Goemans February 28th, 2013 3. Linear Programming and Polyhedral Combinatorics Summary of what was seen in the introductory

More information

Lecture slides by Kevin Wayne

Lecture slides by Kevin Wayne LINEAR PROGRAMMING I a refreshing example standard form fundamental questions geometry linear algebra simplex algorithm Lecture slides by Kevin Wayne Last updated on 7/25/17 11:09 AM Linear programming

More information

Optimization WS 13/14:, by Y. Goldstein/K. Reinert, 9. Dezember 2013, 16: Linear programming. Optimization Problems

Optimization WS 13/14:, by Y. Goldstein/K. Reinert, 9. Dezember 2013, 16: Linear programming. Optimization Problems Optimization WS 13/14:, by Y. Goldstein/K. Reinert, 9. Dezember 2013, 16:38 2001 Linear programming Optimization Problems General optimization problem max{z(x) f j (x) 0,x D} or min{z(x) f j (x) 0,x D}

More information

Prelude to the Simplex Algorithm. The Algebraic Approach The search for extreme point solutions.

Prelude to the Simplex Algorithm. The Algebraic Approach The search for extreme point solutions. Prelude to the Simplex Algorithm The Algebraic Approach The search for extreme point solutions. 1 Linear Programming-1 x 2 12 8 (4,8) Max z = 6x 1 + 4x 2 Subj. to: x 1 + x 2

More information

CSC Design and Analysis of Algorithms. LP Shader Electronics Example

CSC Design and Analysis of Algorithms. LP Shader Electronics Example CSC 80- Design and Analysis of Algorithms Lecture (LP) LP Shader Electronics Example The Shader Electronics Company produces two products:.eclipse, a portable touchscreen digital player; it takes hours

More information

Operations Research Graphical Solution. Dr. Özgür Kabak

Operations Research Graphical Solution. Dr. Özgür Kabak Operations Research Graphical Solution Dr. Özgür Kabak Solving LPs } The Graphical Solution } The Simplex Algorithm } Using Software 2 LP Solutions: Four Cases } The LP has a unique optimal solution. }

More information

The Simplex Method. Standard form (max) z c T x = 0 such that Ax = b.

The Simplex Method. Standard form (max) z c T x = 0 such that Ax = b. The Simplex Method Standard form (max) z c T x = 0 such that Ax = b. The Simplex Method Standard form (max) z c T x = 0 such that Ax = b. Build initial tableau. z c T 0 0 A b The Simplex Method Standard

More information

4.5 Simplex method. LP in standard form: min z = c T x s.t. Ax = b

4.5 Simplex method. LP in standard form: min z = c T x s.t. Ax = b 4.5 Simplex method LP in standard form: min z = c T x s.t. Ax = b x 0 George Dantzig (1914-2005) Examine a sequence of basic feasible solutions with non increasing objective function values until an optimal

More information

Chapter 3, Operations Research (OR)

Chapter 3, Operations Research (OR) Chapter 3, Operations Research (OR) Kent Andersen February 7, 2007 1 Linear Programs (continued) In the last chapter, we introduced the general form of a linear program, which we denote (P) Minimize Z

More information

The simplex algorithm

The simplex algorithm The simplex algorithm The simplex algorithm is the classical method for solving linear programs. Its running time is not polynomial in the worst case. It does yield insight into linear programs, however,

More information

IE 5531: Engineering Optimization I

IE 5531: Engineering Optimization I IE 5531: Engineering Optimization I Lecture 5: The Simplex method, continued Prof. John Gunnar Carlsson September 22, 2010 Prof. John Gunnar Carlsson IE 5531: Engineering Optimization I September 22, 2010

More information

C&O 355 Mathematical Programming Fall 2010 Lecture 2. N. Harvey

C&O 355 Mathematical Programming Fall 2010 Lecture 2. N. Harvey C&O 355 Mathematical Programming Fall 2010 Lecture 2 N. Harvey Outline LP definition & some equivalent forms Example in 2D Theorem: LPs have 3 possible outcomes Examples Linear regression, bipartite matching,

More information

Spring 2017 CO 250 Course Notes TABLE OF CONTENTS. richardwu.ca. CO 250 Course Notes. Introduction to Optimization

Spring 2017 CO 250 Course Notes TABLE OF CONTENTS. richardwu.ca. CO 250 Course Notes. Introduction to Optimization Spring 2017 CO 250 Course Notes TABLE OF CONTENTS richardwu.ca CO 250 Course Notes Introduction to Optimization Kanstantsin Pashkovich Spring 2017 University of Waterloo Last Revision: March 4, 2018 Table

More information

Input: System of inequalities or equalities over the reals R. Output: Value for variables that minimizes cost function

Input: System of inequalities or equalities over the reals R. Output: Value for variables that minimizes cost function Linear programming Input: System of inequalities or equalities over the reals R A linear cost function Output: Value for variables that minimizes cost function Example: Minimize 6x+4y Subject to 3x + 2y

More information

1 Review Session. 1.1 Lecture 2

1 Review Session. 1.1 Lecture 2 1 Review Session Note: The following lists give an overview of the material that was covered in the lectures and sections. Your TF will go through these lists. If anything is unclear or you have questions

More information

Distributed Real-Time Control Systems. Lecture Distributed Control Linear Programming

Distributed Real-Time Control Systems. Lecture Distributed Control Linear Programming Distributed Real-Time Control Systems Lecture 13-14 Distributed Control Linear Programming 1 Linear Programs Optimize a linear function subject to a set of linear (affine) constraints. Many problems can

More information

9.1 Linear Programs in canonical form

9.1 Linear Programs in canonical form 9.1 Linear Programs in canonical form LP in standard form: max (LP) s.t. where b i R, i = 1,..., m z = j c jx j j a ijx j b i i = 1,..., m x j 0 j = 1,..., n But the Simplex method works only on systems

More information

Linear Programming. Linear Programming I. Lecture 1. Linear Programming. Linear Programming

Linear Programming. Linear Programming I. Lecture 1. Linear Programming. Linear Programming Linear Programming Linear Programming Lecture Linear programming. Optimize a linear function subject to linear inequalities. (P) max " c j x j n j= n s. t. " a ij x j = b i # i # m j= x j 0 # j # n (P)

More information

Today s class. Constrained optimization Linear programming. Prof. Jinbo Bi CSE, UConn. Numerical Methods, Fall 2011 Lecture 12

Today s class. Constrained optimization Linear programming. Prof. Jinbo Bi CSE, UConn. Numerical Methods, Fall 2011 Lecture 12 Today s class Constrained optimization Linear programming 1 Midterm Exam 1 Count: 26 Average: 73.2 Median: 72.5 Maximum: 100.0 Minimum: 45.0 Standard Deviation: 17.13 Numerical Methods Fall 2011 2 Optimization

More information

Linear Programming Duality

Linear Programming Duality Summer 2011 Optimization I Lecture 8 1 Duality recap Linear Programming Duality We motivated the dual of a linear program by thinking about the best possible lower bound on the optimal value we can achieve

More information

MATH2070 Optimisation

MATH2070 Optimisation MATH2070 Optimisation Linear Programming Semester 2, 2012 Lecturer: I.W. Guo Lecture slides courtesy of J.R. Wishart Review The standard Linear Programming (LP) Problem Graphical method of solving LP problem

More information

Lecture 2: The Simplex method. 1. Repetition of the geometrical simplex method. 2. Linear programming problems on standard form.

Lecture 2: The Simplex method. 1. Repetition of the geometrical simplex method. 2. Linear programming problems on standard form. Lecture 2: The Simplex method. Repetition of the geometrical simplex method. 2. Linear programming problems on standard form. 3. The Simplex algorithm. 4. How to find an initial basic solution. Lecture

More information

Lecture 1 Introduction

Lecture 1 Introduction L. Vandenberghe EE236A (Fall 2013-14) Lecture 1 Introduction course overview linear optimization examples history approximate syllabus basic definitions linear optimization in vector and matrix notation

More information

Chapter 3 Introduction to Linear Programming PART 1. Assoc. Prof. Dr. Arslan M. Örnek

Chapter 3 Introduction to Linear Programming PART 1. Assoc. Prof. Dr. Arslan M. Örnek Chapter 3 Introduction to Linear Programming PART 1 Assoc. Prof. Dr. Arslan M. Örnek http://homes.ieu.edu.tr/~aornek/ise203%20optimization%20i.htm 1 3.1 What Is a Linear Programming Problem? Linear Programming

More information

IE 5531: Engineering Optimization I

IE 5531: Engineering Optimization I IE 5531: Engineering Optimization I Lecture 7: Duality and applications Prof. John Gunnar Carlsson September 29, 2010 Prof. John Gunnar Carlsson IE 5531: Engineering Optimization I September 29, 2010 1

More information

CO 250 Final Exam Guide

CO 250 Final Exam Guide Spring 2017 CO 250 Final Exam Guide TABLE OF CONTENTS richardwu.ca CO 250 Final Exam Guide Introduction to Optimization Kanstantsin Pashkovich Spring 2017 University of Waterloo Last Revision: March 4,

More information

Lecture 10: Linear programming duality and sensitivity 0-0

Lecture 10: Linear programming duality and sensitivity 0-0 Lecture 10: Linear programming duality and sensitivity 0-0 The canonical primal dual pair 1 A R m n, b R m, and c R n maximize z = c T x (1) subject to Ax b, x 0 n and minimize w = b T y (2) subject to

More information

Integer Programming ISE 418. Lecture 12. Dr. Ted Ralphs

Integer Programming ISE 418. Lecture 12. Dr. Ted Ralphs Integer Programming ISE 418 Lecture 12 Dr. Ted Ralphs ISE 418 Lecture 12 1 Reading for This Lecture Nemhauser and Wolsey Sections II.2.1 Wolsey Chapter 9 ISE 418 Lecture 12 2 Generating Stronger Valid

More information

Multicommodity Flows and Column Generation

Multicommodity Flows and Column Generation Lecture Notes Multicommodity Flows and Column Generation Marc Pfetsch Zuse Institute Berlin pfetsch@zib.de last change: 2/8/2006 Technische Universität Berlin Fakultät II, Institut für Mathematik WS 2006/07

More information

Optimization. Broadly two types: Unconstrained and Constrained optimizations We deal with constrained optimization. General form:

Optimization. Broadly two types: Unconstrained and Constrained optimizations We deal with constrained optimization. General form: Optimization Broadly two types: Unconstrained and Constrained optimizations We deal with constrained optimization General form: Min or Max f(x) (1) Subject to g(x) ~ b (2) lo < x < up (3) Some important

More information

Introduction to optimization

Introduction to optimization Introduction to optimization Geir Dahl CMA, Dept. of Mathematics and Dept. of Informatics University of Oslo 1 / 24 The plan 1. The basic concepts 2. Some useful tools (linear programming = linear optimization)

More information

Yinyu Ye, MS&E, Stanford MS&E310 Lecture Note #06. The Simplex Method

Yinyu Ye, MS&E, Stanford MS&E310 Lecture Note #06. The Simplex Method The Simplex Method Yinyu Ye Department of Management Science and Engineering Stanford University Stanford, CA 94305, U.S.A. http://www.stanford.edu/ yyye (LY, Chapters 2.3-2.5, 3.1-3.4) 1 Geometry of Linear

More information

"SYMMETRIC" PRIMAL-DUAL PAIR

SYMMETRIC PRIMAL-DUAL PAIR "SYMMETRIC" PRIMAL-DUAL PAIR PRIMAL Minimize cx DUAL Maximize y T b st Ax b st A T y c T x y Here c 1 n, x n 1, b m 1, A m n, y m 1, WITH THE PRIMAL IN STANDARD FORM... Minimize cx Maximize y T b st Ax

More information

Lecture 6 Simplex method for linear programming

Lecture 6 Simplex method for linear programming Lecture 6 Simplex method for linear programming Weinan E 1,2 and Tiejun Li 2 1 Department of Mathematics, Princeton University, weinan@princeton.edu 2 School of Mathematical Sciences, Peking University,

More information

Discrete Optimization

Discrete Optimization Prof. Friedrich Eisenbrand Martin Niemeier Due Date: April 15, 2010 Discussions: March 25, April 01 Discrete Optimization Spring 2010 s 3 You can hand in written solutions for up to two of the exercises

More information

February 17, Simplex Method Continued

February 17, Simplex Method Continued 15.053 February 17, 2005 Simplex Method Continued 1 Today s Lecture Review of the simplex algorithm. Formalizing the approach Alternative Optimal Solutions Obtaining an initial bfs Is the simplex algorithm

More information

LINEAR PROGRAMMING. Relation to the Text (cont.) Relation to Material in Text. Relation to the Text. Relation to the Text (cont.

LINEAR PROGRAMMING. Relation to the Text (cont.) Relation to Material in Text. Relation to the Text. Relation to the Text (cont. LINEAR PROGRAMMING Relation to Material in Text After a brief introduction to linear programming on p. 3, Cornuejols and Tϋtϋncϋ give a theoretical discussion including duality, and the simplex solution

More information

Today: Linear Programming (con t.)

Today: Linear Programming (con t.) Today: Linear Programming (con t.) COSC 581, Algorithms April 10, 2014 Many of these slides are adapted from several online sources Reading Assignments Today s class: Chapter 29.4 Reading assignment for

More information

3. Duality: What is duality? Why does it matter? Sensitivity through duality.

3. Duality: What is duality? Why does it matter? Sensitivity through duality. 1 Overview of lecture (10/5/10) 1. Review Simplex Method 2. Sensitivity Analysis: How does solution change as parameters change? How much is the optimal solution effected by changing A, b, or c? How much

More information

Introduction to Mathematical Programming

Introduction to Mathematical Programming Introduction to Mathematical Programming Ming Zhong Lecture 22 October 22, 2018 Ming Zhong (JHU) AMS Fall 2018 1 / 16 Table of Contents 1 The Simplex Method, Part II Ming Zhong (JHU) AMS Fall 2018 2 /

More information

Chapter 11. Approximation Algorithms. Slides by Kevin Wayne Pearson-Addison Wesley. All rights reserved.

Chapter 11. Approximation Algorithms. Slides by Kevin Wayne Pearson-Addison Wesley. All rights reserved. Chapter 11 Approximation Algorithms Slides by Kevin Wayne. Copyright @ 2005 Pearson-Addison Wesley. All rights reserved. 1 P and NP P: The family of problems that can be solved quickly in polynomial time.

More information

Part 1. The Review of Linear Programming Introduction

Part 1. The Review of Linear Programming Introduction In the name of God Part 1. The Review of Linear Programming 1.1. Spring 2010 Instructor: Dr. Masoud Yaghini Outline The Linear Programming Problem Geometric Solution References The Linear Programming Problem

More information

Linear programs Optimization Geoff Gordon Ryan Tibshirani

Linear programs Optimization Geoff Gordon Ryan Tibshirani Linear programs 10-725 Optimization Geoff Gordon Ryan Tibshirani Review: LPs LPs: m constraints, n vars A: R m n b: R m c: R n x: R n ineq form [min or max] c T x s.t. Ax b m n std form [min or max] c

More information

Topics in Theoretical Computer Science April 08, Lecture 8

Topics in Theoretical Computer Science April 08, Lecture 8 Topics in Theoretical Computer Science April 08, 204 Lecture 8 Lecturer: Ola Svensson Scribes: David Leydier and Samuel Grütter Introduction In this lecture we will introduce Linear Programming. It was

More information

MS-E2140. Lecture 1. (course book chapters )

MS-E2140. Lecture 1. (course book chapters ) Linear Programming MS-E2140 Motivations and background Lecture 1 (course book chapters 1.1-1.4) Linear programming problems and examples Problem manipulations and standard form Graphical representation

More information

CSC373: Algorithm Design, Analysis and Complexity Fall 2017 DENIS PANKRATOV NOVEMBER 1, 2017

CSC373: Algorithm Design, Analysis and Complexity Fall 2017 DENIS PANKRATOV NOVEMBER 1, 2017 CSC373: Algorithm Design, Analysis and Complexity Fall 2017 DENIS PANKRATOV NOVEMBER 1, 2017 Linear Function f: R n R is linear if it can be written as f x = a T x for some a R n Example: f x 1, x 2 =

More information

Lecture 5 Simplex Method. September 2, 2009

Lecture 5 Simplex Method. September 2, 2009 Simplex Method September 2, 2009 Outline: Lecture 5 Re-cap blind search Simplex method in steps Simplex tableau Operations Research Methods 1 Determining an optimal solution by exhaustive search Lecture

More information

Thursday, May 24, Linear Programming

Thursday, May 24, Linear Programming Linear Programming Linear optimization problems max f(x) g i (x) b i x j R i =1,...,m j =1,...,n Optimization problem g i (x) f(x) When and are linear functions Linear Programming Problem 1 n max c x n

More information

Special cases of linear programming

Special cases of linear programming Special cases of linear programming Infeasible solution Multiple solution (infinitely many solution) Unbounded solution Degenerated solution Notes on the Simplex tableau 1. The intersection of any basic

More information

A strongly polynomial algorithm for linear systems having a binary solution

A strongly polynomial algorithm for linear systems having a binary solution A strongly polynomial algorithm for linear systems having a binary solution Sergei Chubanov Institute of Information Systems at the University of Siegen, Germany e-mail: sergei.chubanov@uni-siegen.de 7th

More information

Simplex Method for LP (II)

Simplex Method for LP (II) Simplex Method for LP (II) Xiaoxi Li Wuhan University Sept. 27, 2017 (week 4) Operations Research (Li, X.) Simplex Method for LP (II) Sept. 27, 2017 (week 4) 1 / 31 Organization of this lecture Contents:

More information

Solution Cases: 1. Unique Optimal Solution Reddy Mikks Example Diet Problem

Solution Cases: 1. Unique Optimal Solution Reddy Mikks Example Diet Problem Solution Cases: 1. Unique Optimal Solution 2. Alternative Optimal Solutions 3. Infeasible solution Case 4. Unbounded Solution Case 5. Degenerate Optimal Solution Case 1. Unique Optimal Solution Reddy Mikks

More information

Introduction to Mathematical Programming IE406. Lecture 10. Dr. Ted Ralphs

Introduction to Mathematical Programming IE406. Lecture 10. Dr. Ted Ralphs Introduction to Mathematical Programming IE406 Lecture 10 Dr. Ted Ralphs IE406 Lecture 10 1 Reading for This Lecture Bertsimas 4.1-4.3 IE406 Lecture 10 2 Duality Theory: Motivation Consider the following

More information

MS-E2140. Lecture 1. (course book chapters )

MS-E2140. Lecture 1. (course book chapters ) Linear Programming MS-E2140 Motivations and background Lecture 1 (course book chapters 1.1-1.4) Linear programming problems and examples Problem manipulations and standard form problems Graphical representation

More information

Chapter 11. Approximation Algorithms. Slides by Kevin Wayne Pearson-Addison Wesley. All rights reserved.

Chapter 11. Approximation Algorithms. Slides by Kevin Wayne Pearson-Addison Wesley. All rights reserved. Chapter 11 Approximation Algorithms Slides by Kevin Wayne. Copyright @ 2005 Pearson-Addison Wesley. All rights reserved. 1 Approximation Algorithms Q. Suppose I need to solve an NP-hard problem. What should

More information

Convex Optimization. Ofer Meshi. Lecture 6: Lower Bounds Constrained Optimization

Convex Optimization. Ofer Meshi. Lecture 6: Lower Bounds Constrained Optimization Convex Optimization Ofer Meshi Lecture 6: Lower Bounds Constrained Optimization Lower Bounds Some upper bounds: #iter μ 2 M #iter 2 M #iter L L μ 2 Oracle/ops GD κ log 1/ε M x # ε L # x # L # ε # με f

More information

Duality. Peter Bro Mitersen (University of Aarhus) Optimization, Lecture 9 February 28, / 49

Duality. Peter Bro Mitersen (University of Aarhus) Optimization, Lecture 9 February 28, / 49 Duality Maximize c T x for x F = {x (R + ) n Ax b} If we guess x F, we can say that c T x is a lower bound for the optimal value without executing the simplex algorithm. Can we make similar easy guesses

More information

Lecture 10: Linear programming. duality. and. The dual of the LP in standard form. maximize w = b T y (D) subject to A T y c, minimize z = c T x (P)

Lecture 10: Linear programming. duality. and. The dual of the LP in standard form. maximize w = b T y (D) subject to A T y c, minimize z = c T x (P) Lecture 10: Linear programming duality Michael Patriksson 19 February 2004 0-0 The dual of the LP in standard form minimize z = c T x (P) subject to Ax = b, x 0 n, and maximize w = b T y (D) subject to

More information

ENM 202 OPERATIONS RESEARCH (I) OR (I) 2 LECTURE NOTES. Solution Cases:

ENM 202 OPERATIONS RESEARCH (I) OR (I) 2 LECTURE NOTES. Solution Cases: ENM 202 OPERATIONS RESEARCH (I) OR (I) 2 LECTURE NOTES Solution Cases: 1. Unique Optimal Solution Case 2. Alternative Optimal Solution Case 3. Infeasible Solution Case 4. Unbounded Solution Case 5. Degenerate

More information

4.5 Simplex method. min z = c T x s.v. Ax = b. LP in standard form

4.5 Simplex method. min z = c T x s.v. Ax = b. LP in standard form 4.5 Simplex method min z = c T x s.v. Ax = b x 0 LP in standard form Examine a sequence of basic feasible solutions with non increasing objective function value until an optimal solution is reached or

More information

THE UNIVERSITY OF HONG KONG DEPARTMENT OF MATHEMATICS. Operations Research I

THE UNIVERSITY OF HONG KONG DEPARTMENT OF MATHEMATICS. Operations Research I LN/MATH2901/CKC/MS/2008-09 THE UNIVERSITY OF HONG KONG DEPARTMENT OF MATHEMATICS Operations Research I Definition (Linear Programming) A linear programming (LP) problem is characterized by linear functions

More information

Summary of the simplex method

Summary of the simplex method MVE165/MMG631,Linear and integer optimization with applications The simplex method: degeneracy; unbounded solutions; starting solutions; infeasibility; alternative optimal solutions Ann-Brith Strömberg

More information

MATH 4211/6211 Optimization Linear Programming

MATH 4211/6211 Optimization Linear Programming MATH 4211/6211 Optimization Linear Programming Xiaojing Ye Department of Mathematics & Statistics Georgia State University Xiaojing Ye, Math & Stat, Georgia State University 0 The standard form of a Linear

More information

An introductory example

An introductory example CS1 Lecture 9 An introductory example Suppose that a company that produces three products wishes to decide the level of production of each so as to maximize profits. Let x 1 be the amount of Product 1

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 https://moodle.cis.fiu.edu/v2.1/course/view.php?id=612 Gaussian Elimination! Solving a system of simultaneous

More information

LINEAR PROGRAMMING II

LINEAR PROGRAMMING II LINEAR PROGRAMMING II LP duality strong duality theorem bonus proof of LP duality applications Lecture slides by Kevin Wayne Last updated on 7/25/17 11:09 AM LINEAR PROGRAMMING II LP duality Strong duality

More information

Intro to Theory of Computation

Intro to Theory of Computation Intro to Theory of Computation LECTURE 24 Last time Relationship between models: deterministic/nondeterministic Class P Today Class NP Sofya Raskhodnikova Homework 9 due Homework 0 out 4/5/206 L24. I-clicker

More information

Review Solutions, Exam 2, Operations Research

Review Solutions, Exam 2, Operations Research Review Solutions, Exam 2, Operations Research 1. Prove the weak duality theorem: For any x feasible for the primal and y feasible for the dual, then... HINT: Consider the quantity y T Ax. SOLUTION: To

More information

Linear Programming. 1 An Introduction to Linear Programming

Linear Programming. 1 An Introduction to Linear Programming 18.415/6.854 Advanced Algorithms October 1994 Lecturer: Michel X. Goemans Linear Programming 1 An Introduction to Linear Programming Linear programming is a very important class of problems, both algorithmically

More information

Chapter 1 Linear Programming. Paragraph 5 Duality

Chapter 1 Linear Programming. Paragraph 5 Duality Chapter 1 Linear Programming Paragraph 5 Duality What we did so far We developed the 2-Phase Simplex Algorithm: Hop (reasonably) from basic solution (bs) to bs until you find a basic feasible solution

More information

Polynomiality of Linear Programming

Polynomiality of Linear Programming Chapter 10 Polynomiality of Linear Programming In the previous section, we presented the Simplex Method. This method turns out to be very efficient for solving linear programmes in practice. While it is

More information

Quicksort. Where Average and Worst Case Differ. S.V. N. (vishy) Vishwanathan. University of California, Santa Cruz

Quicksort. Where Average and Worst Case Differ. S.V. N. (vishy) Vishwanathan. University of California, Santa Cruz Quicksort Where Average and Worst Case Differ S.V. N. (vishy) Vishwanathan University of California, Santa Cruz vishy@ucsc.edu February 1, 2016 S.V. N. Vishwanathan (UCSC) CMPS101 1 / 28 Basic Idea Outline

More information

Computational Complexity. IE 496 Lecture 6. Dr. Ted Ralphs

Computational Complexity. IE 496 Lecture 6. Dr. Ted Ralphs Computational Complexity IE 496 Lecture 6 Dr. Ted Ralphs IE496 Lecture 6 1 Reading for This Lecture N&W Sections I.5.1 and I.5.2 Wolsey Chapter 6 Kozen Lectures 21-25 IE496 Lecture 6 2 Introduction to

More information

III. Linear Programming

III. Linear Programming III. Linear Programming Thomas Sauerwald Easter 2017 Outline Introduction Standard and Slack Forms Formulating Problems as Linear Programs Simplex Algorithm Finding an Initial Solution III. Linear Programming

More information

CS675: Convex and Combinatorial Optimization Fall 2014 Combinatorial Problems as Linear Programs. Instructor: Shaddin Dughmi

CS675: Convex and Combinatorial Optimization Fall 2014 Combinatorial Problems as Linear Programs. Instructor: Shaddin Dughmi CS675: Convex and Combinatorial Optimization Fall 2014 Combinatorial Problems as Linear Programs Instructor: Shaddin Dughmi Outline 1 Introduction 2 Shortest Path 3 Algorithms for Single-Source Shortest

More information

The Simplex Algorithm and Goal Programming

The Simplex Algorithm and Goal Programming The Simplex Algorithm and Goal Programming In Chapter 3, we saw how to solve two-variable linear programming problems graphically. Unfortunately, most real-life LPs have many variables, so a method is

More information

AM 121: Intro to Optimization

AM 121: Intro to Optimization AM 121: Intro to Optimization Models and Methods Lecture 6: Phase I, degeneracy, smallest subscript rule. Yiling Chen SEAS Lesson Plan Phase 1 (initialization) Degeneracy and cycling Smallest subscript

More information

Termination, Cycling, and Degeneracy

Termination, Cycling, and Degeneracy Chapter 4 Termination, Cycling, and Degeneracy We now deal first with the question, whether the simplex method terminates. The quick answer is no, if it is implemented in a careless way. Notice that we

More information

Optimisation and Operations Research

Optimisation and Operations Research Optimisation and Operations Research Lecture 22: Linear Programming Revisited Matthew Roughan http://www.maths.adelaide.edu.au/matthew.roughan/ Lecture_notes/OORII/ School

More information

CS711008Z Algorithm Design and Analysis

CS711008Z Algorithm Design and Analysis CS711008Z Algorithm Design and Analysis Lecture 8 Linear programming: interior point method Dongbo Bu Institute of Computing Technology Chinese Academy of Sciences, Beijing, China 1 / 31 Outline Brief

More information

7. Lecture notes on the ellipsoid algorithm

7. Lecture notes on the ellipsoid algorithm Massachusetts Institute of Technology Michel X. Goemans 18.433: Combinatorial Optimization 7. Lecture notes on the ellipsoid algorithm The simplex algorithm was the first algorithm proposed for linear

More information

CSCI 1951-G Optimization Methods in Finance Part 01: Linear Programming

CSCI 1951-G Optimization Methods in Finance Part 01: Linear Programming CSCI 1951-G Optimization Methods in Finance Part 01: Linear Programming January 26, 2018 1 / 38 Liability/asset cash-flow matching problem Recall the formulation of the problem: max w c 1 + p 1 e 1 = 150

More information

Lecture 5: Computational Complexity

Lecture 5: Computational Complexity Lecture 5: Computational Complexity (3 units) Outline Computational complexity Decision problem, Classes N P and P. Polynomial reduction and Class N PC P = N P or P = N P? 1 / 22 The Goal of Computational

More information

Cutting Plane Methods II

Cutting Plane Methods II 6.859/5.083 Integer Programming and Combinatorial Optimization Fall 2009 Cutting Plane Methods II Gomory-Chvátal cuts Reminder P = {x R n : Ax b} with A Z m n, b Z m. For λ [0, ) m such that λ A Z n, (λ

More information

2. Linear Programming Problem

2. Linear Programming Problem . Linear Programming Problem. Introduction to Linear Programming Problem (LPP). When to apply LPP or Requirement for a LPP.3 General form of LPP. Assumptions in LPP. Applications of Linear Programming.6

More information