The Simplex Algorithm: Technicalities 1

Size: px
Start display at page:

Download "The Simplex Algorithm: Technicalities 1"

Transcription

1 1/45 The Simplex Algorithm: Technicalities 1 Adrian Vetta 1 This presentation is based upon the book Linear Programming by Vasek Chvatal

2 2/45 Two Issues Here we discuss two potential problems with the simplex method and how to avoid them. Termination. How can we ensure that the algorithm terminates? Initialialisation. How can we ensure that the algorithm starts?

3 3/45 Part I Termination: Cycling

4 4/45 Choosing Pivots Entering Variable. We may chose any non-basic variable with a positive coefficient in the top row of the dictionary to enter the basis. If there is more than one choice to enter, which do we pick? Leaving Variable. We may chose any basic variable whose non-negativity imposes the most stringent constraint on the entering variable to leave the basis. If there is more than one choice to leave, which do we pick?

5 5/45 Degeneracy Leaving Variable. We may chose any basic variable whose non-negativity imposes the most stringent constraint on the entering variable to leave the basis. If two basic variables x i, x j can be selected to leave the basis then their values are both forced to zero by the entering variable. Since one of them, say x i, must stay in the basis, we now have a basic variable whose value is zero. [Its constant term in the dictionary is 0.] Basic solutions with some basic variables of value zero are called degenerate. For a pivot at a degenerate solution, the objective value will not increase, nor will any of the variable values change.

6 6/45 Cycling So pivots at degenerate solutions do not lead to better solutions. Is it possible that the algorithm can get stuck (before it finds an optimal solution) in a sequence of degenerate solutions? YES. - If we are not careful in how we choose our pivots.

7 /45 An Example of Cycling Assume we use the following rules for selecting pivots: Entering Variable. Add the non-basic variable with the highest positive coefficient. Leaving Variable. In case of a tie, remove the basic variable with the smallest subscript. Apply these rules to the following example. maximise 10x 1 57x 2 9x 3 24x 4 1 subject to 2 x x x 3 + 9x x x x 3 + x 4 0 x 1 1 x 1, x 2, x 3, x 4 0

8 8/45 Dictionary Form maximise 10x 1 57x 2 9x 3 24x subject to x1 2 2 x2 5 x3 + 9x x1 3 2 x2 1 x3 + x4 0 2 x 1 1 x 1, x 2, x 3, x 4 0 Write in dictionary form. z = 10x 1 57x 2 9x 3 24x 4 x 5 = 1 2 x x x 3 9x 4 x 6 = 1 2 x x x 3 x 4 x 7 = 1 x 1

9 9/45 Pivot 1 z = 10x 1 57x 2 9x 3 24x 4 x 5 = 1 2 x x x 3 9x 4 x 6 = 1 2 x x x 3 x 4 x 7 = 1 x 1 Pivot: Add x 1 to basis. (We had no choice.) Remove x 5 from basis. (We had the choice of x 5 or x 6 ). z = 10(11x 2 + 5x 3 18x 4 2x 5) 57x 2 9x 3 24x 4 x 1 = 11x 2 + 5x 3 18x 4 2x 5 x 6 = 1 2 (11x2 + 5x3 18x4 2x5) x2 + 1 x3 2 x 7 = 1 (11x 2 + 5x 3 18x 4 2x 5) x4 z = 53x x 3 204x 3 20x 5 x 1 = 11x 2 + 5x 3 18x 4 2x 5 x 6 = 4x 2 2x 3 + 8x 4 + x 5 x 7 = 1 11x 2 5x x 4 + 2x 5

10 10/45 Pivot 2 z = 53x x 3 204x 3 20x 5 x 1 = 11x 2 + 5x 3 18x 4 2x 5 x 6 = 4x 2 2x 3 + 8x 4 + x 5 x 7 = 1 11x 2 5x x 4 + 2x 5 Pivot: Add x 2 to basis. (It has a higher coefficient than x 3.) Remove x 6 from basis. (We had no choice; x 1 is unconstrained by x 2 ). z = 53( 1 2 x3 + 2x x5 1 x6) + 41x3 204x3 20x5 4 1 x 2 = 2 x3 + 2x x5 1 4 x6 x 1 = 11( 1 2 x3 + 2x x5 1 x6) + 5x3 18x4 2x5 4 x 7 = 1 11( 1 2 x3 + 2x x5 1 x6) 5x3 + 18x4 + 2x5 4 z = 29 2 x 3 98x x x 6 x 2 = 1 2 x 3 + 2x x x 6 x 1 = 1 2 x 3 + 4x x x 6 x 7 = x 3 4x x x 6

11 1/45 Pivot z = x3 98x4 2 4 x x6 x 2 = 1 2 x3 + 2x x5 1 4 x6 x 1 = 1 2 x3 + 4x x x6 x 7 = x3 4x4 3 4 x x6 Pivot: Add x 3 to basis. (No choice.) Remove x 1 from basis. (We had the choice of choice of x 1 or x 2.) 29 z = 2 (8x x x6 2x1) 98x x5 4 4 x6 x 3 = 8x x5 11 x6 2x1 2 x 2 = 1 2 (8x x x6 2x1) + 2x x5 1 4 x6 x 7 = (8x x x6 2x1) 4x x x6 z = 18x x 5 93x 6 29x 1 x 3 = 8x x x 6 2x 1 x 2 = 2x x x 6 + x 1 x 7 = 1 x 1

12 12/45 Pivot 4 z = 18x x 5 93x 6 29x 1 x 3 = 8x x5 11 x6 2x1 2 x 2 = 2x x5 + 5 x6 + x1 2 x 7 = 1 x 1 Pivot: Add x 4 to basis. (It has a higher coefficient than x 5.) Remove x 2 from basis. (No choice as x 3 unconstrained by x 4.) z = 18( 1 4 x x x1 1 x2) + 15x5 93x6 29x1 2 1 x 4 = 4 x x x1 1 2 x2 x 3 = 8( 1 4 x x x1 1 x2) x5 11 x6 2x1 2 x 7 = 1 x 1 21 z = 2 x x 6 20x 1 9x 2 x 4 = 1 4 x x x x 2 x 3 = 1 2 x x 6 + 2x 1 4x 2 x 7 = 1 x 1

13 13/45 Pivot z = x 4 = 1 4 x x x1 1 2 x2 141 x5 x6 20x1 9x2 2 x 3 = 1 2 x x 7 = 1 x 1 x6 + 2x1 4x2 Pivot: Add x 5 to basis. (No choice.) Remove x 3 from basis. (We had the choice of x 3 or x 4.) z = (9x6 + 4x1 8x2 2x3) x6 20x1 9x2 2 2 x 5 = 9x 6 + 4x 1 8x 2 2x 3 x 4 = 1 4 (9x6 + 4x1 8x2 2x3) x x1 1 2 x2 x 7 = 1 x 1 z = 24x x 1 93x 2 21x 3 x 5 = 9x 6 + 4x 1 8x 2 2x 3 x 4 = x x x 2 + x 7 = 1 x x 3

14 14/45 Pivot 6 z = 24x x 1 93x 2 21x 3 x 5 = 9x 6 + 4x 1 8x 2 2x 3 x 4 = x x x2 + x 7 = 1 x x3 Pivot: Add x 6 to basis. (It has a higher coefficient than x 1.) Remove x 4 from basis. (No choice as x 5 unconstrained by x 6.) z = 24( 1 2 x x2 + 1 x3 x4) + 22x1 93x2 21x3 2 1 x 6 = 2 x x2 + 1 x3 x4 2 x 5 = 9( 1 2 x x2 + 1 x3 x4) + 4x1 8x2 2x3 2 x 7 = 1 x 1 z = 10x 1 57x 2 9x 3 24x 4 x 6 = 1 2 x x x 3 x 4 x 5 = 1 2 x x x 3 9x 4 x 7 = 1 x 1

15 15/45 A Cycle is Obtained z = 10x 1 57x 2 9x 3 24x 4 x 6 = 1 2 x x2 + 1 x3 x4 2 x 5 = 1 2 x x2 + 5 x3 9x4 2 x 7 = 1 x 1 But this is exactly the same as the original dictionary! z = 10x 1 57x 2 9x 3 24x 4 x 5 = 1 2 x x x 3 9x 4 x 6 = 1 2 x x x 3 x 4 x 7 = 1 x 1 We are stuck in a cycle (with top row coefficients not all negative). So the simplex algorithm did not terminate!

16 16/45 Part II Bland s Rule

17 17/45 Bland s Rule Can we stop the algorithm from cycling? YES. - If we are more careful in how we choose the entering and leaving variables. Bland s Rule. Given a choice, always choose the variable with the smallest subscript (for both entering and leaving variables).

18 18/45 Bland s Rule: Pivot 1 Let s see how this works with the previous example. z = 10x 1 57x 2 9x 3 24x 4 x 5 = 1 2 x x x 3 9x 4 x 6 = 1 2 x x x 3 x 4 x 7 = 1 x 1 Pivot: Add x 1 to basis. (We had no choice.) Remove x 5 from basis. (It has a lower subscript than x 6.) z = 53x x 3 204x 3 20x 5 x 1 = 11x 2 + 5x 3 18x 4 2x 5 x 6 = 4x 2 2x 3 + 8x 4 + x 5 x 7 = 1 11x 2 5x x 4 + 2x 5

19 19/45 Bland s Rule: Pivot 2 z = 53x x 3 204x 3 20x 5 x 1 = 11x 2 + 5x 3 18x 4 2x 5 x 6 = 4x 2 2x 3 + 8x 4 + x 5 x 7 = 1 11x 2 5x x 4 + 2x 5 Pivot: Add x 2 to basis. (It has a lower subscript than x 3.) Remove x 6 from basis. (We had no choice; x 1 is unconstrained by x 2.) z = 29 2 x 3 98x x x 6 x 2 = 1 2 x 3 + 2x x x 6 x 1 = 1 2 x 3 + 4x x x 6 x 7 = x 3 4x x x 6

20 0/45 Bland s Rule: Pivot z = x3 98x4 2 4 x x6 x 2 = 1 2 x3 + 2x x5 1 4 x6 x 1 = 1 2 x3 + 2x x x6 x 7 = x3 4x4 3 4 x x6 Pivot: Add x 3 to basis. (No choice.) Remove x 1 from basis. (It has a lower subscript x 2.) z = 18x x 5 93x 6 29x 1 x 3 = 8x x x 6 2x 1 x 2 = 2x x x 6 + x 1 x 7 = 1 x 1

21 21/45 Bland s Rule: Pivot 4 z = 18x x 5 93x 6 29x 1 x 3 = 8x x x6 9x1 2 x 2 = 2x x5 + 5 x6 + x1 2 x 7 = 1 x 1 Pivot: Add x 4 to basis. (It has a lower subscript than x 5.) Remove x 2 from basis. (No choice as x 3 unconstrained by x 4.) 21 z = 2 x x 6 20x 1 9x 2 x 4 = 1 4 x x x x 2 x 3 = 1 2 x x 6 + 2x 1 4x 2 x 7 = 1 x 1

22 22/45 Bland s Rule: Pivot z = x 4 = 1 4 x x x1 1 2 x2 141 x5 x6 20x1 9x2 2 x 3 = 1 2 x x 7 = 1 x 1 x6 + 2x1 4x2 Pivot: Add x 5 to basis. (No choice.) Remove x 3 from basis. (It has a lower subscript than x 4.) z = 24x x 1 93x 2 21x 3 x 5 = 9x 6 + 4x 1 8x 2 2x 3 x 4 = x x x 2 + x 7 = 1 x x 3

23 23/45 Bland s Rule: Pivot 6 z = 24x x 1 93x 2 21x 3 x 5 = 9x 6 + 4x 1 8x 2 2x 3 x 4 = x x x2 + x 7 = 1 x x3 So far all our pivots has been the same as before, but now... Pivot: Add x 1 to basis. (It has a lower subscript than x 6.) Remove x 4 from basis. (No choice as x 5 unconstrained by x 6.) z = 24x ( 2x 6 + 3x 2 + x 3 2x 4) 93x 2 21x 3 x 1 = 2x 6 + 3x 2 + x 3 2x 4 x 5 = 9x 6 + 4( 2x 6 + 3x 2 + x 3 2x 4) 8x 2 2x 3 x 7 = 1 ( 2x 6 + 3x 2 + x 3 2x 4) z = 20x 6 27x 2 + x 3 44x 4 x 1 = 2x 6 + 3x 2 + x 3 2x 4 x 5 = x 6 + 4x 2 + 2x 3 8x 4 x 7 = 1 + 2x 6 3x 2 x 3 2x 4

24 24/45 Bland s Rule: Pivot 7 z = 20x 6 27x 2 + x 3 44x 4 x 1 = 2x 6 + 3x 2 + x 3 2x 4 x 5 = x 6 + 4x 2 + 2x 3 8x 4 x 7 = 1 + 2x 6 3x 2 x 3 2x 4 Pivot: Add x 3 to basis. (No choice.) Remove x 7 from basis. (No choice as x 1, x 5 unconstrained by x 3.) z = 20x 6 27x 2 + (1 + 2x 6 3x 2 2x 4 x 7) 44x 4 x 3 = 1 + 2x 6 3x 2 2x 4 x 7 x 1 = 2x 6 + 3x 2 + (1 + 2x 6 3x 2 2x 4 x 7) 2x 4 x 5 = x 6 + 4x 2 + 2(1 + 2x 6 3x 2 2x 4 x 7) 8x 4 z = 1 18x 6 30x 2 46x 4 x 7 x 3 = 1 + 2x 6 3x 2 2x 4 x 7 x 1 = 1 4x 4 x 7 x 5 = 2 + 3x 6 2x 2 12x 4 2x 7

25 25/45 Bland s Rule: Breaking the Cycle z = 1 18x 6 30x 2 46x 4 x 7 x 3 = 1 + 2x 6 3x 2 2x 4 x 7 x 1 = 1 4x 4 x 7 x 5 = 2 + 3x 6 2x 2 12x 4 2x 7 All the coefficients in the top row are now negative. Thus, we break out of the degeneracy and obtain an optimal solution (x 1, x 2, x 3, x 4 ) = (1, 0, 1, 0) and z = 1.

26 26/45 Remarks Bland s Rule always works: use it and you obtain an optimal solution. There are other methods, e.g. Perturbation Methods, that also work. For proofs and discussions on these issues see Chvatal s book.

27 27/45 Part III The Starting Point?

28 28/45 Is the All-Zero Solution Feasible? Suppose we want to solve the linear program maximise subject to n j=1 c jx j n j=1 a ijx j b j i [m] x j 0 j [n] To run the simplex algorithm we need to start with a feasible solution. So far we have used the all-zero solution. But if some b j are negative then the all-zero solution is not feasible! E.g. maximise x 1 x 2 + x 3 subject to 2x 1 x 2 + 2x 3 4 2x 1 3x 2 + x 3 5 x 1 + x 2 2x 3 1 x 1, x 2, x 3 0

29 29/45 An Auxiliary Problem maximise subject to n j=1 c jx j n j=1 a ijx j b j i [m] x j 0 j [n] But our LP has a feasible solution if and only if the following auxiliary linear program has an optimal solution of value zero. minimise x 0 subject to n j=1 a ijx j x 0 b j i [m] x j 0 j {0, 1,..., n} So can we use an optimal solution to this auxiliary problem to find a feasible solution (and starting dictionary) for our LP? YES.

30 30/45 Finding a Starting Feasible Solution Let s see how this works on the problem maximise z = x 1 x 2 + x 3 subject to 2x 1 x 2 + 2x 3 4 2x 1 3x 2 + x 3 5 x 1 + x 2 2x 3 1 x 1, x 2, x 3 0 The auxiliary problem is then maximise w = x 0 subject to 2x 1 x 2 + 2x 3 x 0 4 2x 1 3x 2 + x 3 x 0 5 x 1 + x 2 2x 3 x 0 1 x 0, x 1, x 2, x 3 0

31 31/45 Solving the Auxiliary Problem: a Dictionary maximise w = x 0 subject to 2x 1 x 2 + 2x 3 x 0 4 2x 1 3x 2 + x 3 x 0 5 x 1 + x 2 2x 3 x 0 1 x 0, x 1, x 2, x 3 0 Let s apply the simplex method to this auxiliary problem. First put it in dictionary form. w = x 0 x 4 = 4 2x 1 + x 2 2x 3 + x 0 x 5 = 5 2x 1 + 3x 2 x 3 + x 0 x 6 = 1 + x 1 x 2 + 2x 3 + x 0

32 32/45 Solving the Auxiliary Problem: an Infeasible Solution w = x 0 x 4 = 4 2x 1 + x 2 2x 3 + x 0 x 5 = 5 2x 1 + 3x 2 x 3 + x 0 x 6 = 1 + x 1 x 2 + 2x 3 + x 0 The only term, i.e. x 0, in the top row has a negative coefficient. But this solution is not feasible for the auxiliary problem. To see this observe that x 5, x 6 < 0. But if we increase x 0 these variables will become non-negative (at the expense of decreasing the objective value). Let s make this pivot and see what happens...

33 33/45 A Strange Pivot: Pivot 0 w = x 0 x 4 = 4 2x 1 + x 2 2x 3 + x 0 x 5 = 5 2x 1 + 3x 2 x 3 + x 0 x 6 = 1 + x 1 x 2 + 2x 3 + x 0 Pivot: Add x 0 to basis. Remove x 5 from basis. (As x 5 was the most negative basic variable.) w = (5 + 2x 1 3x 2 + x 3 + x 5) x 0 = 5 + 2x 1 3x 2 + x 3 + x 5 x 4 = 4 2x 1 + x 2 2x 3 + (5 + 2x 1 3x 2 + x 3 + x 5) x 6 = 1 + x 1 x 2 + 2x 3 + (5 + 2x 1 3x 2 + x 3 + x 5) w = 5 2x 1 + 3x 2 x 3 x 5 x 0 = 5 + 2x 1 3x 2 + x 3 + x 5 x 4 = 9 2x 2 x 3 + x 5 x 6 = 4 + 3x 1 4x 2 + 3x 3 + x 5

34 34/45 Solving the Auxiliary Problem: Pivot 1 w = 5 2x 1 + 3x 2 x 3 x 5 x 0 = 5 + 2x 1 3x 2 + x 3 + x 5 x 4 = 9 2x 2 x 3 + x 5 x 6 = 4 + 3x 1 4x 2 + 3x 3 + x 5 Hooray: this is feasible for the auxiliary problem! Pivot: Add x 2 to basis. Remove x 6 from basis. w = 5 2x 1 + 3( x x x5 1 x6) x3 x5 4 x 2 = x x x5 1 4 x6 x 0 = 5 + 2x 1 3( x x x5 1 x6) + x3 + x5 4 x 4 = 9 2( x x x5 1 x6) x3 + x5 4 w = x x x x 6 x 2 = x x x x 6 x 0 = x x x x 6 x 4 = x x x x 6

35 35/45 Solving the Auxiliary Problem: Pivot 2 w = x x3 1 4 x5 3 4 x6 x 2 = x x x5 1 4 x6 x 0 = x1 5 4 x x x6 x 4 = x1 5 2 x x x6 Pivot: Add x 3 to basis. [Note: here it is quicker not to use Bland s rule.] Remove x 0 from basis. w = x1 + 5 ( x1 1 5 x x6 4 x0) x5 3 4 x6 x 2 = x1 + 3 ( x1 1 5 x x6 4 x0) x5 1 x6 x 3 = x1 1 5 x x6 4 5 x0 x 4 = x1 5 ( x1 1 5 x x6 4 x0) x x6 w = x 0 x 3 = x x x x 0 x 2 = x x x x 0 x 4 = 3 x 1 x 6 + 2x 0

36 36/45 The Auxiliary Problem: an Optimal Solution w = x 0 x 3 = x1 1 5 x x6 4 5 x0 x 2 = x x x6 3 5 x0 x 4 = 3 x 1 x 6 + 2x 0 All coefficients in the top row are now negative. So we have an optimal solution for the auxiliary problem. (x 0, x 1, x 2, x 3, x 4, x 5, x 6 ) = (0, 0, 11 5, 8 5, 3, 0, 0). The objective value is w = x 0 = 0. So this corresponds to a feasible solution to the original problem.

37 37/45 A Feasible Solution to the Original Problem maximise x 1 x 2 + x 3 subject to 2x 1 x 2 + 2x 3 4 2x 1 3x 2 + x 3 5 x 1 + x 2 2x 3 1 x 1, x 2, x 3 0 So we have an optimal solution for the auxiliary problem. (x 0, x 1, x 2, x 3, x 4, x 5, x 6 ) = (0, 0, 11 5, 8 5, 3, 0, 0). This gives the solution (x 1, x 2, x 3 ) = (0, 11 5, 8 5 ) to the original problem. This is feasible. [Check it!]

38 38/45 A Feasible Dictionary for the Original Problem maximise x 1 x 2 + x 3 subject to 2x 1 x 2 + 2x 3 4 2x 1 3x 2 + x 3 5 x 1 + x 2 2x 3 1 x 1, x 2, x 3 0 So we have a feasible solution for the original LP. How do we find a feasible starting dictionary? Consider the final dictionary for the auxiliary LP. w = x 0 x 2 = x x x x 0 x 3 = x x x x 0 x 4 = 3 x 1 x 6 + 2x 0 Remove the column for x 0 and add back the original objective...

39 39/45 A Feasible Dictionary for the Original Problem (cont.) maximise x 1 x 2 + x 3 subject to 2x 1 x 2 + 2x 3 4 2x 1 3x 2 + x 3 5 x 1 + x 2 2x 3 1 x 1, x 2, x 3 0 Remove the column for x 0 and add back the original objective. z = x 1 x 2 + x 3 x 2 = x x x6 x 3 = x1 1 5 x x6 x 4 = 3 x 1 x 6 z = x 1 ( x x5 + 1 x6) + ( x1 1 5 x5 + 3 x6) 5 x 2 = x x x6 x 3 = x1 1 5 x x6 x 4 = 3 x 1 x 6 This gives a feasible dictionary for the original LP. z = x1 3 5 x x6 x 2 = x x x6 8 x 3 = x1 1 5 x x6 x 4 = 3 x 1 x 6

40 40/45 The Two Phase Simplex Method So we use a two phase approach to solve the linear program. First we solve the auxiliary problem: Case I. If the optimal value is zero we have a feasible solution for the original. We then run the simplex algorithm for the second time. Case II. If the optimal value is less than zero the original problem is infeasible.

41 41/45 Part IV Efficiency

42 42/45 Termination With Bland s Rule the algorithm will terminate. To see this, observe that there are ( ) m+n m bases. The dictionary corresponding to each basis can appear only once. So there are at most ( ) m+n m iterations. But ( ) m+n m >> 2 m+n. Does the algorithm always make an exponential # pivots?

43 43/45 Typical Running Times The simplex method typically makes O(m) pivots, where m is the number of constraints. Each pivot takes time O(mn) with the dictionary method. [But there are actually faster ways to implement pivots.] So typically the algorithm is fast. On the other hand...

44 44/45 Exponential Running Times...all known pivot rules have pathological examples on which they make an exponential number of pivots. So the simple algorithm is a fast practical algorithm but has exponential worst case running time. In some sense the simplex algorithm is the exception that proves the rule: Polynomial algorithms good; exponential algorithms bad. In fact, recent theoretical results show the simplex algorithm isn t really an exception to this rule after all. [But that research is beyond the scope of this course...]

45 45/45 Polynomial Time Algorithms There are polynomial time algorithms for solving linear programs. The ellipsoid method and the interior point method are polytime algorithms. Conjecture. The simplex algorithm is polynomial time if, given a choice, it chooses the pivot variables at random.

The Strong Duality Theorem 1

The Strong Duality Theorem 1 1/39 The Strong Duality Theorem 1 Adrian Vetta 1 This presentation is based upon the book Linear Programming by Vasek Chvatal 2/39 Part I Weak Duality 3/39 Primal and Dual Recall we have a primal linear

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

CO350 Linear Programming Chapter 8: Degeneracy and Finite Termination

CO350 Linear Programming Chapter 8: Degeneracy and Finite Termination CO350 Linear Programming Chapter 8: Degeneracy and Finite Termination 27th June 2005 Chapter 8: Finite Termination 1 The perturbation method Recap max c T x (P ) s.t. Ax = b x 0 Assumption: B is a feasible

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

LP. Lecture 3. Chapter 3: degeneracy. degeneracy example cycling the lexicographic method other pivot rules the fundamental theorem of LP

LP. Lecture 3. Chapter 3: degeneracy. degeneracy example cycling the lexicographic method other pivot rules the fundamental theorem of LP LP. Lecture 3. Chapter 3: degeneracy. degeneracy example cycling the lexicographic method other pivot rules the fundamental theorem of LP 1 / 23 Repetition the simplex algorithm: sequence of pivots starting

More information

Standard Form An LP is in standard form when: All variables are non-negativenegative All constraints are equalities Putting an LP formulation into sta

Standard Form An LP is in standard form when: All variables are non-negativenegative All constraints are equalities Putting an LP formulation into sta Chapter 4 Linear Programming: The Simplex Method An Overview of the Simplex Method Standard Form Tableau Form Setting Up the Initial Simplex Tableau Improving the Solution Calculating the Next Tableau

More information

Simplex method(s) for solving LPs in standard form

Simplex method(s) for solving LPs in standard form Simplex method: outline I The Simplex Method is a family of algorithms for solving LPs in standard form (and their duals) I Goal: identify an optimal basis, as in Definition 3.3 I Versions we will consider:

More information

3 Does the Simplex Algorithm Work?

3 Does the Simplex Algorithm Work? Does the Simplex Algorithm Work? In this section we carefully examine the simplex algorithm introduced in the previous chapter. Our goal is to either prove that it works, or to determine those circumstances

More information

Linear Programming, Lecture 4

Linear Programming, Lecture 4 Linear Programming, Lecture 4 Corbett Redden October 3, 2016 Simplex Form Conventions Examples Simplex Method To run the simplex method, we start from a Linear Program (LP) in the following standard simplex

More information

Discrete Optimization. Guyslain Naves

Discrete Optimization. Guyslain Naves Discrete Optimization Guyslain Naves Fall 2010 Contents 1 The simplex method 5 1.1 The simplex method....................... 5 1.1.1 Standard linear program................. 9 1.1.2 Dictionaries........................

More information

Dual Basic Solutions. Observation 5.7. Consider LP in standard form with A 2 R m n,rank(a) =m, and dual LP:

Dual Basic Solutions. Observation 5.7. Consider LP in standard form with A 2 R m n,rank(a) =m, and dual LP: Dual Basic Solutions Consider LP in standard form with A 2 R m n,rank(a) =m, and dual LP: Observation 5.7. AbasisB yields min c T x max p T b s.t. A x = b s.t. p T A apple c T x 0 aprimalbasicsolutiongivenbyx

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

Dr. Maddah ENMG 500 Engineering Management I 10/21/07

Dr. Maddah ENMG 500 Engineering Management I 10/21/07 Dr. Maddah ENMG 500 Engineering Management I 10/21/07 Computational Procedure of the Simplex Method The optimal solution of a general LP problem is obtained in the following steps: Step 1. Express the

More information

Example. 1 Rows 1,..., m of the simplex tableau remain lexicographically positive

Example. 1 Rows 1,..., m of the simplex tableau remain lexicographically positive 3.4 Anticycling Lexicographic order In this section we discuss two pivoting rules that are guaranteed to avoid cycling. These are the lexicographic rule and Bland s rule. Definition A vector u R n is lexicographically

More information

Week 2. The Simplex method was developed by Dantzig in the late 40-ties.

Week 2. The Simplex method was developed by Dantzig in the late 40-ties. 1 The Simplex method Week 2 The Simplex method was developed by Dantzig in the late 40-ties. 1.1 The standard form The simplex method is a general description algorithm that solves any LPproblem instance.

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

min 4x 1 5x 2 + 3x 3 s.t. x 1 + 2x 2 + x 3 = 10 x 1 x 2 6 x 1 + 3x 2 + x 3 14

min 4x 1 5x 2 + 3x 3 s.t. x 1 + 2x 2 + x 3 = 10 x 1 x 2 6 x 1 + 3x 2 + x 3 14 The exam is three hours long and consists of 4 exercises. The exam is graded on a scale 0-25 points, and the points assigned to each question are indicated in parenthesis within the text. If necessary,

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

ORF 522. Linear Programming and Convex Analysis

ORF 522. Linear Programming and Convex Analysis ORF 5 Linear Programming and Convex Analysis Initial solution and particular cases Marco Cuturi Princeton ORF-5 Reminder: Tableaux At each iteration, a tableau for an LP in standard form keeps track of....................

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

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

IE 400: Principles of Engineering Management. Simplex Method Continued

IE 400: Principles of Engineering Management. Simplex Method Continued IE 400: Principles of Engineering Management Simplex Method Continued 1 Agenda Simplex for min problems Alternative optimal solutions Unboundedness Degeneracy Big M method Two phase method 2 Simplex for

More information

3 The Simplex Method. 3.1 Basic Solutions

3 The Simplex Method. 3.1 Basic Solutions 3 The Simplex Method 3.1 Basic Solutions In the LP of Example 2.3, the optimal solution happened to lie at an extreme point of the feasible set. This was not a coincidence. Consider an LP in general form,

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

A primal-simplex based Tardos algorithm

A primal-simplex based Tardos algorithm A primal-simplex based Tardos algorithm Shinji Mizuno a, Noriyoshi Sukegawa a, and Antoine Deza b a Graduate School of Decision Science and Technology, Tokyo Institute of Technology, 2-12-1-W9-58, Oo-Okayama,

More information

Ann-Brith Strömberg. Lecture 4 Linear and Integer Optimization with Applications 1/10

Ann-Brith Strömberg. Lecture 4 Linear and Integer Optimization with Applications 1/10 MVE165/MMG631 Linear and Integer Optimization with Applications Lecture 4 Linear programming: degeneracy; unbounded solution; infeasibility; starting solutions Ann-Brith Strömberg 2017 03 28 Lecture 4

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

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

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 4: Algebra, Geometry, and Complexity of the Simplex Method. Reading: Sections 2.6.4, 3.5,

Lecture 4: Algebra, Geometry, and Complexity of the Simplex Method. Reading: Sections 2.6.4, 3.5, Lecture 4: Algebra, Geometry, and Complexity of the Simplex Method Reading: Sections 2.6.4, 3.5, 10.2 10.5 1 Summary of the Phase I/Phase II Simplex Method We write a typical simplex tableau as z x 1 x

More information

CO 602/CM 740: Fundamentals of Optimization Problem Set 4

CO 602/CM 740: Fundamentals of Optimization Problem Set 4 CO 602/CM 740: Fundamentals of Optimization Problem Set 4 H. Wolkowicz Fall 2014. Handed out: Wednesday 2014-Oct-15. Due: Wednesday 2014-Oct-22 in class before lecture starts. Contents 1 Unique Optimum

More information

CO350 Linear Programming Chapter 6: The Simplex Method

CO350 Linear Programming Chapter 6: The Simplex Method CO350 Linear Programming Chapter 6: The Simplex Method 8th June 2005 Chapter 6: The Simplex Method 1 Minimization Problem ( 6.5) We can solve minimization problems by transforming it into a maximization

More information

15-780: LinearProgramming

15-780: LinearProgramming 15-780: LinearProgramming J. Zico Kolter February 1-3, 2016 1 Outline Introduction Some linear algebra review Linear programming Simplex algorithm Duality and dual simplex 2 Outline Introduction Some linear

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

Introduction to Linear Programming

Introduction to Linear Programming Nanjing University October 27, 2011 What is LP The Linear Programming Problem Definition Decision variables Objective Function x j, j = 1, 2,..., n ζ = n c i x i i=1 We will primarily discuss maxizming

More information

Introduce the idea of a nondegenerate tableau and its analogy with nondenegerate vertices.

Introduce the idea of a nondegenerate tableau and its analogy with nondenegerate vertices. 2 JORDAN EXCHANGE REVIEW 1 Lecture Outline The following lecture covers Section 3.5 of the textbook [?] Review a labeled Jordan exchange with pivoting. Introduce the idea of a nondegenerate tableau and

More information

ORF 307: Lecture 4. Linear Programming: Chapter 3 Degeneracy

ORF 307: Lecture 4. Linear Programming: Chapter 3 Degeneracy ORF 307: Lecture 4 Linear Programming: Chapter 3 Degeneracy Robert Vanderbei February 15, 2018 Slides last edited on February 16, 2018 http://www.princeton.edu/ rvdb Solve This... maximize 2x 1 + 3x 2

More information

Lecture 11: Post-Optimal Analysis. September 23, 2009

Lecture 11: Post-Optimal Analysis. September 23, 2009 Lecture : Post-Optimal Analysis September 23, 2009 Today Lecture Dual-Simplex Algorithm Post-Optimal Analysis Chapters 4.4 and 4.5. IE 30/GE 330 Lecture Dual Simplex Method The dual simplex method will

More information

GETTING STARTED INITIALIZATION

GETTING STARTED INITIALIZATION GETTING STARTED INITIALIZATION 1. Introduction Linear programs come in many different forms. Traditionally, one develops the theory for a few special formats. These formats are equivalent to one another

More information

1 Overview. 2 Extreme Points. AM 221: Advanced Optimization Spring 2016

1 Overview. 2 Extreme Points. AM 221: Advanced Optimization Spring 2016 AM 22: Advanced Optimization Spring 206 Prof. Yaron Singer Lecture 7 February 7th Overview In the previous lectures we saw applications of duality to game theory and later to learning theory. In this lecture

More information

Lecture 2: The Simplex method

Lecture 2: The Simplex method Lecture 2 1 Linear and Combinatorial Optimization Lecture 2: The Simplex method Basic solution. The Simplex method (standardform, b>0). 1. Repetition of basic solution. 2. One step in the Simplex algorithm.

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

MATH 445/545 Homework 2: Due March 3rd, 2016

MATH 445/545 Homework 2: Due March 3rd, 2016 MATH 445/545 Homework 2: Due March 3rd, 216 Answer the following questions. Please include the question with the solution (write or type them out doing this will help you digest the problem). I do not

More information

CSCI5654 (Linear Programming, Fall 2013) Lecture-8. Lecture 8 Slide# 1

CSCI5654 (Linear Programming, Fall 2013) Lecture-8. Lecture 8 Slide# 1 CSCI5654 (Linear Programming, Fall 2013) Lecture-8 Lecture 8 Slide# 1 Today s Lecture 1. Recap of dual variables and strong duality. 2. Complementary Slackness Theorem. 3. Interpretation of dual variables.

More information

Summary of the simplex method

Summary of the simplex method MVE165/MMG630, The simplex method; degeneracy; unbounded solutions; infeasibility; starting solutions; duality; interpretation Ann-Brith Strömberg 2012 03 16 Summary of the simplex method Optimality condition:

More information

The Simplex Algorithm

The Simplex Algorithm 8.433 Combinatorial Optimization The Simplex Algorithm October 6, 8 Lecturer: Santosh Vempala We proved the following: Lemma (Farkas). Let A R m n, b R m. Exactly one of the following conditions is true:.

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

Section Notes 9. IP: Cutting Planes. Applied Math 121. Week of April 12, 2010

Section Notes 9. IP: Cutting Planes. Applied Math 121. Week of April 12, 2010 Section Notes 9 IP: Cutting Planes Applied Math 121 Week of April 12, 2010 Goals for the week understand what a strong formulations is. be familiar with the cutting planes algorithm and the types of cuts

More information

CO350 Linear Programming Chapter 8: Degeneracy and Finite Termination

CO350 Linear Programming Chapter 8: Degeneracy and Finite Termination CO350 Linear Programming Chapter 8: Degeneracy and Finite Termination 22th June 2005 Chapter 8: Finite Termination Recap On Monday, we established In the absence of degeneracy, the simplex method will

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

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

Math 16 - Practice Final

Math 16 - Practice Final Math 16 - Practice Final May 28th 2007 Name: Instructions 1. In Part A, attempt every question. In Part B, attempt two of the five questions. If you attempt more you will only receive credit for your best

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

MATH 445/545 Test 1 Spring 2016

MATH 445/545 Test 1 Spring 2016 MATH 445/545 Test Spring 06 Note the problems are separated into two sections a set for all students and an additional set for those taking the course at the 545 level. Please read and follow all of these

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

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

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

ORF 307: Lecture 2. Linear Programming: Chapter 2 Simplex Methods

ORF 307: Lecture 2. Linear Programming: Chapter 2 Simplex Methods ORF 307: Lecture 2 Linear Programming: Chapter 2 Simplex Methods Robert Vanderbei February 8, 2018 Slides last edited on February 8, 2018 http://www.princeton.edu/ rvdb Simplex Method for LP An Example.

More information

The augmented form of this LP is the following linear system of equations:

The augmented form of this LP is the following linear system of equations: 1 Consider the following LP given in standard form: max z = 5 x_1 + 2 x_2 Subject to 3 x_1 + 2 x_2 2400 x_2 800 2 x_1 1200 x_1, x_2 >= 0 The augmented form of this LP is the following linear system of

More information

Linear Programming. Jie Wang. University of Massachusetts Lowell Department of Computer Science. J. Wang (UMass Lowell) Linear Programming 1 / 47

Linear Programming. Jie Wang. University of Massachusetts Lowell Department of Computer Science. J. Wang (UMass Lowell) Linear Programming 1 / 47 Linear Programming Jie Wang University of Massachusetts Lowell Department of Computer Science J. Wang (UMass Lowell) Linear Programming 1 / 47 Linear function: f (x 1, x 2,..., x n ) = n a i x i, i=1 where

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

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

December 2014 MATH 340 Name Page 2 of 10 pages

December 2014 MATH 340 Name Page 2 of 10 pages December 2014 MATH 340 Name Page 2 of 10 pages Marks [8] 1. Find the value of Alice announces a pure strategy and Betty announces a pure strategy for the matrix game [ ] 1 4 A =. 5 2 Find the value of

More information

Simplex Method: More Details

Simplex Method: More Details Chapter 4 Simplex Method: More Details 4. How to Start Simplex? Two Phases Our simplex algorithm is constructed for solving the following standard form of linear programs: min c T x s.t. Ax = b x 0 where

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

Metode Kuantitatif Bisnis. Week 4 Linear Programming Simplex Method - Minimize

Metode Kuantitatif Bisnis. Week 4 Linear Programming Simplex Method - Minimize Metode Kuantitatif Bisnis Week 4 Linear Programming Simplex Method - Minimize Outlines Solve Linear Programming Model Using Graphic Solution Solve Linear Programming Model Using Simplex Method (Maximize)

More information

2.098/6.255/ Optimization Methods Practice True/False Questions

2.098/6.255/ Optimization Methods Practice True/False Questions 2.098/6.255/15.093 Optimization Methods Practice True/False Questions December 11, 2009 Part I For each one of the statements below, state whether it is true or false. Include a 1-3 line supporting sentence

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: Simplex

Linear Programming: Simplex Linear Programming: Simplex Stephen J. Wright 1 2 Computer Sciences Department, University of Wisconsin-Madison. IMA, August 2016 Stephen Wright (UW-Madison) Linear Programming: Simplex IMA, August 2016

More information

MAT016: Optimization

MAT016: Optimization MAT016: Optimization M.El Ghami e-mail: melghami@ii.uib.no URL: http://www.ii.uib.no/ melghami/ March 29, 2011 Outline for today The Simplex method in matrix notation Managing a production facility The

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

The Avis-Kalunzy Algorithm is designed to find a basic feasible solution (BFS) of a given set of constraints. Its input: A R m n and b R m such that

The Avis-Kalunzy Algorithm is designed to find a basic feasible solution (BFS) of a given set of constraints. Its input: A R m n and b R m such that Lecture 4 Avis-Kaluzny and the Simplex Method Last time, we discussed some applications of Linear Programming, such as Max-Flow, Matching, and Vertex-Cover. The broad range of applications to Linear Programming

More information

LOWER BOUNDS FOR THE MAXIMUM NUMBER OF SOLUTIONS GENERATED BY THE SIMPLEX METHOD

LOWER BOUNDS FOR THE MAXIMUM NUMBER OF SOLUTIONS GENERATED BY THE SIMPLEX METHOD Journal of the Operations Research Society of Japan Vol 54, No 4, December 2011, pp 191 200 c The Operations Research Society of Japan LOWER BOUNDS FOR THE MAXIMUM NUMBER OF SOLUTIONS GENERATED BY THE

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

Introduction to Operations Research

Introduction to Operations Research Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) José Rui Figueira Instituto Superior Técnico Universidade de Lisboa (figueira@tecnico.ulisboa.pt) March

More information

The use of shadow price is an example of sensitivity analysis. Duality theory can be applied to do other kind of sensitivity analysis:

The use of shadow price is an example of sensitivity analysis. Duality theory can be applied to do other kind of sensitivity analysis: Sensitivity analysis The use of shadow price is an example of sensitivity analysis. Duality theory can be applied to do other kind of sensitivity analysis: Changing the coefficient of a nonbasic variable

More information

Lecture Simplex Issues: Number of Pivots. ORIE 6300 Mathematical Programming I October 9, 2014

Lecture Simplex Issues: Number of Pivots. ORIE 6300 Mathematical Programming I October 9, 2014 ORIE 6300 Mathematical Programming I October 9, 2014 Lecturer: David P. Williamson Lecture 14 Scribe: Calvin Wylie 1 Simplex Issues: Number of Pivots Question: How many pivots does the simplex algorithm

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

Developing an Algorithm for LP Preamble to Section 3 (Simplex Method)

Developing an Algorithm for LP Preamble to Section 3 (Simplex Method) Moving from BFS to BFS Developing an Algorithm for LP Preamble to Section (Simplex Method) We consider LP given in standard form and let x 0 be a BFS. Let B ; B ; :::; B m be the columns of A corresponding

More information

Chapter 4 The Simplex Algorithm Part II

Chapter 4 The Simplex Algorithm Part II Chapter 4 The Simple Algorithm Part II Based on Introduction to Mathematical Programming: Operations Research, Volume 4th edition, by Wayne L Winston and Munirpallam Venkataramanan Lewis Ntaimo L Ntaimo

More information

Simplex Algorithm Using Canonical Tableaus

Simplex Algorithm Using Canonical Tableaus 41 Simplex Algorithm Using Canonical Tableaus Consider LP in standard form: Min z = cx + α subject to Ax = b where A m n has rank m and α is a constant In tableau form we record it as below Original Tableau

More information

Lecture 14: October 11

Lecture 14: October 11 10-725: Optimization Fall 2012 Lecture 14: October 11 Lecturer: Geoff Gordon/Ryan Tibshirani Scribes: Zitao Liu Note: LaTeX template courtesy of UC Berkeley EECS dept. Disclaimer: These notes have not

More information

Lecture 9 Tuesday, 4/20/10. Linear Programming

Lecture 9 Tuesday, 4/20/10. Linear Programming UMass Lowell Computer Science 91.503 Analysis of Algorithms Prof. Karen Daniels Spring, 2010 Lecture 9 Tuesday, 4/20/10 Linear Programming 1 Overview Motivation & Basics Standard & Slack Forms Formulating

More information

CS Algorithms and Complexity

CS Algorithms and Complexity CS 50 - Algorithms and Complexity Linear Programming, the Simplex Method, and Hard Problems Sean Anderson 2/15/18 Portland State University Table of contents 1. The Simplex Method 2. The Graph Problem

More information

CHAPTER 2. The Simplex Method

CHAPTER 2. The Simplex Method CHAPTER 2 The Simplex Method In this chapter we present the simplex method as it applies to linear programming problems in standard form. 1. An Example We first illustrate how the simplex method works

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

A Strongly Polynomial Simplex Method for Totally Unimodular LP

A Strongly Polynomial Simplex Method for Totally Unimodular LP A Strongly Polynomial Simplex Method for Totally Unimodular LP Shinji Mizuno July 19, 2014 Abstract Kitahara and Mizuno get new bounds for the number of distinct solutions generated by the simplex method

More information

Math 273a: Optimization The Simplex method

Math 273a: Optimization The Simplex method Math 273a: Optimization The Simplex method Instructor: Wotao Yin Department of Mathematics, UCLA Fall 2015 material taken from the textbook Chong-Zak, 4th Ed. Overview: idea and approach If a standard-form

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

Linear programming on Cell/BE

Linear programming on Cell/BE Norwegian University of Science and Technology Faculty of Information Technology, Mathematics and Electrical Engineering Department of Computer and Information Science Master Thesis Linear programming

More information

The Primal-Dual Algorithm P&S Chapter 5 Last Revised October 30, 2006

The Primal-Dual Algorithm P&S Chapter 5 Last Revised October 30, 2006 The Primal-Dual Algorithm P&S Chapter 5 Last Revised October 30, 2006 1 Simplex solves LP by starting at a Basic Feasible Solution (BFS) and moving from BFS to BFS, always improving the objective function,

More information

Lecture 5. x 1,x 2,x 3 0 (1)

Lecture 5. x 1,x 2,x 3 0 (1) Computational Intractability Revised 2011/6/6 Lecture 5 Professor: David Avis Scribe:Ma Jiangbo, Atsuki Nagao 1 Duality The purpose of this lecture is to introduce duality, which is an important concept

More information

1 date: February 23, 1998 le: papar1. coecient pivoting rule. a particular form of the simplex algorithm.

1 date: February 23, 1998 le: papar1. coecient pivoting rule. a particular form of the simplex algorithm. 1 date: February 23, 1998 le: papar1 KLEE - MINTY EAMPLES FOR (LP) Abstract : The problem of determining the worst case behavior of the simplex algorithm remained an outstanding open problem for more than

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

In Chapters 3 and 4 we introduced linear programming

In Chapters 3 and 4 we introduced linear programming SUPPLEMENT The Simplex Method CD3 In Chapters 3 and 4 we introduced linear programming and showed how models with two variables can be solved graphically. We relied on computer programs (WINQSB, Excel,

More information

Notes on Simplex Algorithm

Notes on Simplex Algorithm Notes on Simplex Algorithm CS 9 Staff October 8, 7 Until now, we have represented the problems geometrically, and solved by finding a corner and moving around Now we learn an algorithm to solve this without

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

Linear Programming: Chapter 5 Duality

Linear Programming: Chapter 5 Duality Linear Programming: Chapter 5 Duality Robert J. Vanderbei September 30, 2010 Slides last edited on October 5, 2010 Operations Research and Financial Engineering Princeton University Princeton, NJ 08544

More information

Example Problem. Linear Program (standard form) CSCI5654 (Linear Programming, Fall 2013) Lecture-7. Duality

Example Problem. Linear Program (standard form) CSCI5654 (Linear Programming, Fall 2013) Lecture-7. Duality CSCI5654 (Linear Programming, Fall 013) Lecture-7 Duality Lecture 7 Slide# 1 Lecture 7 Slide# Linear Program (standard form) Example Problem maximize c 1 x 1 + + c n x n s.t. a j1 x 1 + + a jn x n b j

More information

Introduction to Linear and Combinatorial Optimization (ADM I)

Introduction to Linear and Combinatorial Optimization (ADM I) Introduction to Linear and Combinatorial Optimization (ADM I) Rolf Möhring based on the 20011/12 course by Martin Skutella TU Berlin WS 2013/14 1 General Remarks new flavor of ADM I introduce linear and

More information