SOLVING INTEGER LINEAR PROGRAMS. 1. Solving the LP relaxation. 2. How to deal with fractional solutions?

Size: px
Start display at page:

Download "SOLVING INTEGER LINEAR PROGRAMS. 1. Solving the LP relaxation. 2. How to deal with fractional solutions?"

Transcription

1 SOLVING INTEGER LINEAR PROGRAMS 1. Solving the LP relaxation. 2. How to deal with fractional solutions?

2 Integer Linear Program: Example max x 1 2x 2 0.5x 3 0.2x 4 x x 6 s.t. x 1 +2x 2 1 x 1 + x 2 +3x 6 1 x 1 + x 2 + x 6 1 x 3 3x 4 1 x 3 2x 4 5x 5 1 x 4 +3x 5 4x 6 1 x 2 + x 5 + x apple x 1,x 2,,x 6 apple 10 x 1,...,x 6 2 Z

3 Solving ILPs var x1 integer >= 0, <= 10; var x2 integer >= 0, <= 10; var x3 integer >= 0, <= 10; var x4 integer >= 0, <= 10; var x5 integer >= 0, <= 10; var x6 integer >= 0, <= 10; maximize obj: -x1-2* x2-0.5*x3-0.2* x4 - x5 +0.5* x6; c1: x1 + 2 * x2 >= 1; c2: x1 + x2 + 3* x6 >= 1; c3: x1 + x2 + x6 >= 1; c4: x3-3* x4 >= 1; c5: x3-2* x4-5* x5 >= 1; c6: x4 + 3* x5-4 *x6 >= 1; c7: x2 + x5 + x6 >= 1; solve; display x1, x2,x3, x4, x5, x6; end;

4 Solution Original ILP x1.val = 0 x2.val = 1 x3.val = 4 x4.val = 1 x5.val = 0 x6.val = 0 Optimal Value: -4.2 LP Relaxation x1.val = x2.val = x3.val = x4.val = 0 x5.val = x6.val = 0 Optimal Value:

5 Case-1: Both LP and ILP are feasible. Opt. Solution of LP relaxation Opt. Solution of ILP

6 Solving ILPs Solve LP relaxation of the ILP. Case-1: LP relaxation solution satisfies integrality constraint. Case-2: LP relaxation solution does not satisfy the integrality constraint.

7 Dealing with Case-2 Branch and Bound Cutting Plane Method. 1 2

8 BRANCH-AND-BOUND: BASIC IDEA

9 Integer Linear Program: Example max x 1 2x 2 0.5x 3 0.2x 4 x x 6 s.t. x 1 +2x 2 1 x 1 + x 2 +3x 6 1 x 1 + x 2 + x 6 1 x 3 3x 4 1 x 3 2x 4 5x 5 1 x 4 +3x 5 4x 6 1 x 2 + x 5 + x apple x 1,x 2,,x 6 apple 10 x 1,...,x 6 2 Z

10 Step #1: Solve the LP relaxation Solving the LP relaxation. x1.val = x2.val = x3.val = x4.val = 0 x5.val = x6.val = 0 Optimal Value (LP relaxation):

11 Step #2: Choose a branch variable x1.val = x2.val = x3.val = x4.val = 0 x5.val = x6.val = 0 Choose a variable that should be integer Optimal Value (LP relaxation):

12 Step #3: Branching Constraints b1 max x 1 2x 2 0.5x 3 0.2x 4 x x 6 s.t. x 1 +2x 2 1 x 1 + x 2 +3x 6 1 x 1 + x 2 + x 6 1 x 3 3x 4 1 x 3 2x 4 5x 5 1 x 4 +3x 5 4x 6 1 x 2 + x 5 + x apple x 1,x 2,,x 6 apple 10 Original Problem b2 Original Problem Constr. + ( x 3 <= 2 ) Original Problem Constr. + ( x 3 >= 3 )

13 Visualization x 3 <= 2 x 3 >= 3

14 Branch-and-Bound P0 Original Problem (LP Relaxation) x j : s j P1 Orig. Problem + x j applebs j c x k : s k P3 P4 Orig. Problem x j applebs j c x k applebt k c Orig. Problem x j applebs j c x k dt k e Non Integral Solution P2 Orig. Problem + x j ds j e

15 Branch-And-Bound: Operations Branch-And-Bound Tree: Nodes are ILP instances. P0 P Regular Node P1 P2 P3 P4 P5 P6 Leaves P7 P8

16 Branch-And-Bound Tree 7 Regular Node (to be explored) P0 P0 P3 Leaf node P1 P2 P4 Leaf node P3 P4 P5 P6 m P5 Leaf node Leaves P7 P8 Expand Node

17 Expanding a Node 1. Solve the LP relaxation for the node ILP. Regular Node (unexplored) LP relaxation solution 2. Three cases: 1. Infeasible. 2. Integral Solution. 3. Fractional Solution.

18 Case-1: Infeasible LP relaxation. LP relaxation is infeasible. Regular Node (unexplored) Infeasible Leaf Node

19 Case-2: LP relaxation yields integral solution LP relaxation solution is integral: ILP solution = LP solution. Regular Node (unexplored) Integral Leaf Node bestobjective := max (lpoptimum, bestobjective)

20 Case-3: LP relaxation yields a fractional solution LP relaxation yields a fractional solution. Regular Node (unexplored) Regular Node Regular (unexplored) Node (explored) x j applebs j c x j ds j e Regular Node (unexplored) LP relaxation solution: x1: x2: x3: Opt. Solution: optsolution

21 Optimal Pruning Regular Node (explored) optsolution <= bestobjective? LP relaxation solution: x1: x2: x3: Opt. Solution: optsolution

22 Optimal Pruning P0 bestobjective P1 P2 P3 P4 P5 P6 P7 P8 optsolution <= bestobjective

23 Branch-And-Bound Initial Node Original ILP (unexplored node) bestobjective := -Infinity

24 BRANCH-AND-BOUND (EXAMPLE)

25 Original Problem var x1 integer >= 0, <= 10; var x2 integer >= 0, <= 10; var x3 integer >= 0, <= 10; var x4 integer >= 0, <= 10; var x5 integer >= 0, <= 10; var x6 integer >= 0, <= 10; maximize obj: -x1-2* x2-0.5 * x3-0.2* x4 - x5 +0.5* x6; c1: x1 + 2 * x2 >= 1; c2: x1 + x2 + 3* x6 >= 1; c3: x1 + x2 + x6 >= 1; c4: x3-3* x4 >= 1; c5: x3-2* x4-5* x5 >= 1; c6: x4 + 3* x5-4 *x6 >= 1; c7: x2 + x5 + x6 >= 1; solve; display x1, x2,x3, x4, x5, x6; end;

26 Original ILP integer solution x1.val = 0 x2.val = 1 x3.val = 4 x4.val = 1 x5.val = 0 x6.val = 0 Optimal Value: LP relaxation x1.val = x2.val = x3.val = x4.val = 0 x5.val = x6.val = 0 Optimal Value:

27 Initial Node bestobjective := - Infinity x1.val = x2.val = Original Problem (p0.ampl) x3 <= 2 x3 >= 3 p1.ampl p2.ampl x3.val = x4.val = 0 x5.val = x6.val = 0 Optimal Value:

28 Tree #1 bestobjective := - Infinity Infeasible! p1.ampl Original Problem (p0.ampl) x3 <= 2 x3 >= 3 p2.ampl p2.ampl x1.val = 0.4 x2.val = 0.55 x3.val = 3 x4.val = 0 x5.val = 0.4 x6.val = 0.05

29 p3.ampl BnB Tree x1.val = 1 x2.val = 0 x3.val = x4.val = 0 x5.val = x6.val = Optimal Value: p1 p0 p3 p2 p4 p5 p6 p6.ampl p7 p8 p8.ampl x1.val = 1 x2.val = 0 x3.val = 6 x4.val = 0 x5.val = 1 x6.val = 0.5 Optimal Value: x1.val = 1 x2.val = 0 x3.val = 5 x4.val = x5.val = x6.val = Optimal Value:

30 BnB Tree p0 bestobjective = -4.2 p9.ampl x1.val = 0 p4.ampl x1.val = 0 x2.val x2.val = 1 = 1 x3.val = 3 = 4 x4.val = = 1 x5.val = x5.val = 0 x6.val = 0 Optimal x6.val Value: = Optimal Value: -4.2 p1 p3 p5 p8.ampl x1.val = 1 x2.val = 0 p7 x3.val = 6 x4.val = 0 x5.val = 1 x6.val = 0.5 Optimal Value: p2 p6 p8 p9 p4 p10

31 BnB Tree p0 bestobjective = -4.2 p1 p2 p10.ampl p12.ampl x1.val = 0 p3 x2.val = 1 x3.val = 36 p4 x4.val = 0 p5 p6 p9 p10 x5.val = x6.val = 0.5 Optimal Value: p7 p8 p11 p12

32 BnB Final Tree p0 bestobjective = -4.2 x1.val = 0 x2.val = 1 x3.val = 4 x4.val = 1 x5.val = 0 x6.val = 0 Optimal Value: p1 p5 p3 p7 p2 p6 p4 p9 p10 p8 p11 p12

33 BRANCH-AND-BOUND METHOD Heuristics

34 BnB choices to be made Which unexplored regular leaf node should I expand? How to choose the branching variables? Other tricks: Randomized rounding to find an integer solution? Carrying out BnB at the dictionary level.

35 BRANCH-AND-BOUND Choice of unexplored node to expand

36 General Situation Which node should I examine first? Unexplored frontier

37 Branch-and-bound p0 Q: Which one should we examine first? p1 p5 p3 p2 p6 p4 Unexplored Nodes p7 p8

38 Goal Minimize the number of nodes explored in the tree. Which node should I expand first: Yield integral solutions. Improve the value of bestobjective.

39 Unexplored Node Selection Heuristic Deepest node first. Select the node that has largest depth in the tree to explore first. Best LP relaxation solution. Select the node whose LP relaxation has the best answer. Breadth First Search breadth-first.

40 In Practice ILPs come from some problem domain: eg., We are converting a minimum cost vertex cover computation to ILP. Selection heuristics are best found by experimenting with a large set of problems from the domain. There is no general rule, unfortunately.

41 BRANCH-AND-BOUND Choosing the branch variable

42 p3.ampl BnB Tree x1.val = 1 x2.val = 0 x3.val = x4.val = 0 x5.val = x6.val = Optimal Value: p1 p0 p3 p2 p4 p5 p6 p6.ampl p7 p8 p8.ampl x1.val = 1 x2.val = 0 x3.val = 6 x4.val = 0 x5.val = 1 x6.val = 0.5 Optimal Value: x1.val = 1 x2.val = 0 x3.val = 5 x4.val = x5.val = x6.val = Optimal Value:

43 Original Problem var x1 integer >= 0, <= 10; var x2 integer >= 0, <= 10; var x3 integer >= 0, <= 10; var x4 integer >= 0, <= 10; var x5 integer >= 0, <= 10; var x6 integer >= 0, <= 10; maximize obj: -x1-2* x2-0.5 * x3-0.2* x4 - x5 +0.5* x6; c1: x1 + 2 * x2 >= 1; c2: x1 + x2 + 3* x6 >= 1; c3: x1 + x2 + x6 >= 1; c4: x3-3* x4 >= 1; c5: x3-2* x4-5* x5 >= 1; c6: x4 + 3* x5-4 *x6 >= 1; c7: x2 + x5 + x6 >= 1; solve; display x1, x2,x3, x4, x5, x6; end;

44 BnB Final Tree p0 bestobjective = -4.2 x1.val = 0 x2.val = 1 x3.val = 4 x4.val = 1 x5.val = 0 x6.val = 0 Optimal Value: p1 p5 p3 p7 p2 p6 p4 p9 p10 p8 p11 p12

45 Initial Node bestobjective := - Infinity x1.val = x2.val = Original Problem (p0.ampl) x3 <= 2 x3 >= 3 p1.ampl p2.ampl x3.val = x4.val = 0 x5.val = x6.val = 0 Optimal Value:

46 What if we chose a different branch variable..? bestobjective := - Infinity Original Problem (p0.ampl) x5 <= 0 x5 >= 1 q1.ampl (integer feasible) q2.ampl x1.val = x1.val = 0 x2.val x2.val = = x3.val = = x4.val = = 00 x5.val = = x6.val = = 00.5 Optimal Value: bestobjective := -4.2

47 How to select a branch variable? There are heuristics The But choice it is a hard of a problem, branch variable in general. is very important. User specifies a variable ordering or priority. There is no single best heuristic. Solver heuristics: Often, Choose some fractional expertise solution with closest the to problem an integer domain value? informs the heuristic. Choose binary (0-1) variables preferentially? Random choice?

48 BRANCH-AND-BOUND At the dictionary level

49 Thus far Use LP solver as a black box. This lecture: Consider how to fold branch-and-bound in a dictionary setup. Final dictionary BnB Node (Solve LP relaxation) Can I reuse the final dictionary? Child # 1 Child # 2

50 View from the dictionary x B b z c 0 +c N x N Final dictionary BnB Node (Solve LP relaxation) x j applebs j c Claim: Dictionary D is always infeasible. Child # 1 x B b w z c 0 +c N x N

51 Proof (Pictorial) Solution represented by dictionary D and D x 3 <= 2 x 3 >= 3

52 Example (ILP) var x1 >= 0, <= 10; var x2 >= 0, <= 10; var x3 >= 0, <= 10; maximize obj: x1 + x2-5* x3 ; c1: -2* x1 + 7 *x2 <= 1; c2: x1-2 *x2 + 5* x3 <= 3; c3: x1 + x2-3 * x3 <= 7; solve; display x1, x2, x3; end; x 4 : 10 x 1 x 5 : 10 x 2 x 6 : 10 x 3 x 7 : 1+2x 1 7x 2 x 8 : 3 x 1 +2x 2 5x 3 x 9 : 7 x 1 x 2 +3x 3 Slack variables are also integers.

53 Final Dictionary x x x x 3 x x x x 3 x 6 10 x 3 x 7 3 3x 8 +x 9 18x 3 x x x x 3 x x x x 3 z x 8 x 9 2x 3 x 1 6 x 10 : 6 + x 1

54 Dictionary After Branch x 10 : 6 + x 1 x x x x 3 x x x x 3 x 6 10 x 3 x 7 3 3x 8 +x 9 18x 3 x x x x 3 x x x x 3 x x x x 3 z x 8 x 9 2x 3 Dictionary becomes primal infeasible. Back to initialization phase Simplex?

55 Dictionary After Branch x x x x 3 x x x x 3 x 6 10 x 3 x 7 3 3x 8 +x 9 18x 3 x x x x 3 x x x x 3 x x x x 3 z x 8 x 9 2x 3 Dictionary becomes primal infeasible. Dual Feasible Dictionary!! But not dual final.

56 How to update after branch? add branch constraint Parent Node (Final Dictionary) Child Node: 1. Add new row. 2. Primal Infeasible but Dual Feasible Consider dual complement dictionary. (Feasible + but non-final) Final dual dictionary (also final primal) Opt. Phase on dual dictionaries LP relaxation solved for child node!

57 General Form Simplex add branch constraint Parent Node (Final Dictionary) Child Node: 1. Add new row. 2. Primal Infeasible but Dual Feasible Consider dual complement dictionary. (Feasible + but non-final) Final dual dictionary (also final primal) Opt. Phase on dual dictionaries LP relaxation solved for child node!

58 General Form Dictionary Give special treatment to bounds on variables. l apple x apple u Modify the Simplex algorithm in two ways: Dictionaries now have special ways to track bounds. Pivoting is modified.

59 Branch-and-Bound with General Form Parent Node (Final Dictionary) Simply update Child Node: variable bound. 1. Add new row. 2. Primal Infeasible but Dual Feasible

60 CUTTING PLANE METHOD

61 LP Relaxation for ILP Opt. Solution of LP relaxation Opt. Solution of ILP

62 Removing a Fractional Solution Branch and Bound Cutting Plane Method. 1 2

63 Cutting Plane How do we find a cutting plane?

64 GOMORY-CHVATAL CUTTING PLANE Part 1: Setting up the problem.

65 ILP in Standard Form max c x s.t. Ax apple b x 0 x 2 Z A, b, c are all assumed to be integers.

66 Conversion to standard from Recap from LP formulations lectures: Equality constraints into two inequalities. Rewrite in case x i 0 is missing: x i 7! x + i x i Convert to by negating both sides. How do we make sure A, b, c are integers? Reasonable assumption: original problem coefficients are rationals.

67 Integer Coefficients. Scale constraints + Objective max 2x x 2 0.1x 3 s.t. 0.1x 1 2x 2 x 3 apple x 1 2.6x x 3 apple 0.15 x 1, x 2, x 3 0 x 1, x 2, x 43 2 Z max 2x x 2 0.1x 3 10 s.t. 0.1x 1 2x 2 x 3 apple x 1 2.6x x 3 apple x 1, x 2, x 3 0 x 1, x 2, x 4 2 Z

68 Conversion to Integer Coefficients. max 2x x 2 0.1x 3 s.t. 0.1x 1 2x 2 x 3 apple x 1 2.6x x 3 apple 0.15 x 1, x 2, x 3 0 x 1, x 2, x 4 2 Z Divide result by 10 max 20x 1 +3x 2 x 3 s.t. 2x 1 40x 2 20x 3 apple 5 50x 1 260x x 3 apple 15 x 1, x 2, x 3 0 x 1, x 2, x 4 2 Z

69 Adding Slack Variables max c x s.t. Ax apple b x 0 x 2 Z max c x s.t. Ax + x s = b x, x s 0 x, x s 2 Z

70 Summary We assume problem is in LP standard form. Assume coefficients are rational. ILP standard form: coefficients (A,b,c) are integers. Scale the original rational problem. Make sure that result is divided by scale factor for objective. Advantage of ILP standard form: Slack variables are naturally integers. No need for separate treatment of decision and slack variables.

71 CUTTING PLANE METHOD Part 2: Gomory-Chvatal Cuts

72 Overall method Solve LP relaxation of the problem. Is the solution Integral? Yes Done. Guarantee: No integer point is lost. Add a new cutting plane constraint. No

73 Cutting Plane Visualization First optimum Second Optimum 2 1 Cutting Plane Third 2 Optimum Idea: cutting plane attempts to successively expose an integer optimal vertex.

74 Cutting Plane Method Deriving the Cutting Plane Gomory-Chvatal Cuts Integrating the method inside Simplex. Using the dual dictionary to avoid initialization phase Simplex.

75 GOMORY-CHVATAL CUTS

76 Overall Idea max c x s.t. Ax + x s = b x, x s 0 x, x s 2 Z 1. Solve the LP relaxation using Simplex algorithm. LP Relax Initialization Phase Optimization Phase Final Dictionary

77 Final Dictionary Optimal solution to ILP found!! x B b + Ãx N z z 0 + c N x N fractional entries Derive a cutting plane

78 Example: Final Dictionary x x x 3 0.5x 5 x 4 1 x 2 +x 3 x 5 x x 2 2.1x 3 +x 5 z x 2 2.3x 3 2.1x 5 x 1 =1.2, x 2 =0, x 3 =0, x 4 =1, x 5 =0, x 6 =2.5

79 Cutting Plane Derivation: Step 1 Step 1 Identify row with fractional constant. x x x 3 0.5x 5 x 4 1 x 2 +x 3 x 5 x x 2 2.1x 3 +x 5 z x 2 2.3x 3 2.1x 5 x 1 = x x 3 0.5x x 2 4.3x x 5 =1.2 5

80 Cutting Plane Derivation: Step 2 x x 2 4.3x x 5 =1.2 (x 1 +3x 2 5x 3 +0x 5 ) {z } A +(0.1x x x 5 ) {z } B A: integer B: integer + fraction B 0 A + B = 1.2 =1+0.2

81 Claim (x 1 +3x 2 5x 3 +0x 5 ) Conclusion: {z } A +(0.1x x x 5 ) {z } B =1+0.2 A is 1. integer Fractional part of B is B 0.2 B has a fractional part. B 0 In other words, A + B = B 0.2 is an integer. 2. B A B A+B Possible YES No No No Yes Yes

82 Cutting Plane x x x 3 0.5x 5 x 4 1 x 2 +x 3 x 5 x x 2 2.1x 3 +x 5 z x 2 2.3x 3 2.1x 5 Cutting Plane: 0.1x x x 5 0.2

83 Cutting Plane: Definition. Final Dictionary (LP Relax) x B1 = b 1 +a 11 x I1 + +a 1j x Ij + +a 1n x In.. x Bk = b k +a k1 x I1 + +a kj x Ij + +a kn x In. x Bm = b m +a m1 x I1 + +a mj x Ij + +a mn x In z = c 0 +c 1 x I1 + +c j x Ij + +c n x In b k 62 Z Cutting Plane frac( a k1 )x I1 + + frac( a kn )x In frac(b k ) frac(x) =x bxc

84 b k 62 Z Cutting Plane x B1 = b 1 +a 11 x I1 + +a 1j x Ij + +a 1n x In.. x Bk = b k +a k1 x I1 + +a kj x Ij + +a kn x In. x Bm = b m +a m1 x I1 + +a mj x Ij + +a mn x In z = c 0 +c 1 x I1 + +c j x Ij + +c n x In frac( a k1 )x I1 + + frac( a kn )x In frac(b k ) Claim: Every (integer) feasible point of the ILP satisfies the cutting plane constraint.

85 We have nx x Bk + ( a kj )x Ij = b k (1) j=1 Since a kj b a kj c and x Ij 0, we obtain nx X n ( a kj )x Ij b a kj cx Ij j=1 j=1 x B1 = b 1 +a 11 x I1 + +a 1j x Ij + +a 1n x In.. x Bk = b k +a k1 x I1 + +a kj x Ij + +a kn x In. x Bm = b m +a m1 x I1 + +a mj x Ij + +a mn x In z = c 0 +c 1 x I1 + +c j x Ij + +c n x In b k 62 Z Applying this to Eq.(1) we obtain: Therefore, we get x Bk + nx ( a kj )x Ij x Bk + j=1 b k x Bk + nx b a kj cx Ij (2) j=1 nx b a kj cx Ij (3) j=1 The RHS of (3) is an integer, therefore, we conclude: bb k c x Bk + Combining (4) with (1), we have, b k nx b a kj cx Ij (4) j=1 bb k capple P n j=1 ( a kj b a kj c)x Ij In other words, P n j=1 frac( a kj)x Ij frac(b k )

86 Example x x x 3 0.5x 5 x 4 1 x 2 +x 3 x 5 x x 2 2.1x 3 +x 5 z x 2 2.3x 3 2.1x 5 0.7x x 3 +0x x x x 5 0.7

87 CUTTING PLANE METHOD Updating the dictionary Setup for subsequent iterations.

88 Overall method Solve LP relaxation of the problem. Is the solution Integral? Yes Done. Guarantee: No integer point is lost. Add a new cutting plane constraint. No

89 Cutting Plane Example x x x 3 0.5x 5 x 4 1 x 2 +x 3 x 5 x x 2 2.1x 3 +x 5 z x 2 2.3x 3 2.1x 5 Cutting Plane: 0.1x x x 5 0.2

90 Adding cutting plane to dictionary x x x 3 0.5x 5 x 4 1 x 2 +x 3 x 5 x x 2 2.1x 3 +x 5 w x x x 5 z x 2 2.3x 3 2.1x 5 x x x 3 0.5x 5 x 4 1 x 2 +x 3 x 5 x x 2 2.1x 3 +x 5 z x 2 2.3x 3 2.1x 5 0.1x x x 5 0.2

91 Cutting Plane Method Claim: Resulting dictionary after adding cutting plane is primal infeasible. Cutting Plane Dictionary Solution

92 Cutting Plane: Example x x x 3 0.5x 5 x 4 1 x 2 +x 3 x 5 x x 2 2.1x 3 +x 5 w x x x 5 z x 2 2.3x 3 2.1x 5 Dual dictionary is feasible but non-final. Naïve Approach: Re-solve initialization phase Simplex.

93 Cutting Plane: Solving again after cut. Also final for primal Final Dictionary LP relaxation. Cut Primal Infeasible Dual Feasible Final dictionary for Dual Optimize the dual problem dictionary.

Decision Procedures An Algorithmic Point of View

Decision Procedures An Algorithmic Point of View An Algorithmic Point of View ILP References: Integer Programming / Laurence Wolsey Deciding ILPs with Branch & Bound Intro. To mathematical programming / Hillier, Lieberman Daniel Kroening and Ofer Strichman

More information

IP Cut Homework from J and B Chapter 9: 14, 15, 16, 23, 24, You wish to solve the IP below with a cutting plane technique.

IP Cut Homework from J and B Chapter 9: 14, 15, 16, 23, 24, You wish to solve the IP below with a cutting plane technique. IP Cut Homework from J and B Chapter 9: 14, 15, 16, 23, 24, 31 14. You wish to solve the IP below with a cutting plane technique. Maximize 4x 1 + 2x 2 + x 3 subject to 14x 1 + 10x 2 + 11x 3 32 10x 1 +

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

Section Notes 9. Midterm 2 Review. Applied Math / Engineering Sciences 121. Week of December 3, 2018

Section Notes 9. Midterm 2 Review. Applied Math / Engineering Sciences 121. Week of December 3, 2018 Section Notes 9 Midterm 2 Review Applied Math / Engineering Sciences 121 Week of December 3, 2018 The following list of topics is an overview of the material that was covered in the lectures and sections

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

maxz = 3x 1 +4x 2 2x 1 +x 2 6 2x 1 +3x 2 9 x 1,x 2

maxz = 3x 1 +4x 2 2x 1 +x 2 6 2x 1 +3x 2 9 x 1,x 2 ex-5.-5. Foundations of Operations Research Prof. E. Amaldi 5. Branch-and-Bound Given the integer linear program maxz = x +x x +x 6 x +x 9 x,x integer solve it via the Branch-and-Bound method (solving

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

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

to work with) can be solved by solving their LP relaxations with the Simplex method I Cutting plane algorithms, e.g., Gomory s fractional cutting

to work with) can be solved by solving their LP relaxations with the Simplex method I Cutting plane algorithms, e.g., Gomory s fractional cutting Summary so far z =max{c T x : Ax apple b, x 2 Z n +} I Modeling with IP (and MIP, and BIP) problems I Formulation for a discrete set that is a feasible region of an IP I Alternative formulations for the

More information

Lecture 23 Branch-and-Bound Algorithm. November 3, 2009

Lecture 23 Branch-and-Bound Algorithm. November 3, 2009 Branch-and-Bound Algorithm November 3, 2009 Outline Lecture 23 Modeling aspect: Either-Or requirement Special ILPs: Totally unimodular matrices Branch-and-Bound Algorithm Underlying idea Terminology Formal

More information

AM 121: Intro to Optimization! Models and Methods! Fall 2018!

AM 121: Intro to Optimization! Models and Methods! Fall 2018! AM 121: Intro to Optimization Models and Methods Fall 2018 Lecture 13: Branch and Bound (I) Yiling Chen SEAS Example: max 5x 1 + 8x 2 s.t. x 1 + x 2 6 5x 1 + 9x 2 45 x 1, x 2 0, integer 1 x 2 6 5 x 1 +x

More information

IE418 Integer Programming

IE418 Integer Programming IE418: Integer Programming Department of Industrial and Systems Engineering Lehigh University 2nd February 2005 Boring Stuff Extra Linux Class: 8AM 11AM, Wednesday February 9. Room??? Accounts and Passwords

More information

23. Cutting planes and branch & bound

23. Cutting planes and branch & bound CS/ECE/ISyE 524 Introduction to Optimization Spring 207 8 23. Cutting planes and branch & bound ˆ Algorithms for solving MIPs ˆ Cutting plane methods ˆ Branch and bound methods Laurent Lessard (www.laurentlessard.com)

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

MVE165/MMG631 Linear and integer optimization with applications Lecture 8 Discrete optimization: theory and algorithms

MVE165/MMG631 Linear and integer optimization with applications Lecture 8 Discrete optimization: theory and algorithms MVE165/MMG631 Linear and integer optimization with applications Lecture 8 Discrete optimization: theory and algorithms Ann-Brith Strömberg 2017 04 07 Lecture 8 Linear and integer optimization with applications

More information

Section Notes 8. Integer Programming II. Applied Math 121. Week of April 5, expand your knowledge of big M s and logical constraints.

Section Notes 8. Integer Programming II. Applied Math 121. Week of April 5, expand your knowledge of big M s and logical constraints. Section Notes 8 Integer Programming II Applied Math 121 Week of April 5, 2010 Goals for the week understand IP relaxations be able to determine the relative strength of formulations understand the branch

More information

min3x 1 + 4x 2 + 5x 3 2x 1 + 2x 2 + x 3 6 x 1 + 2x 2 + 3x 3 5 x 1, x 2, x 3 0.

min3x 1 + 4x 2 + 5x 3 2x 1 + 2x 2 + x 3 6 x 1 + 2x 2 + 3x 3 5 x 1, x 2, x 3 0. ex-.-. Foundations of Operations Research Prof. E. Amaldi. Dual simplex algorithm Given the linear program minx + x + x x + x + x 6 x + x + x x, x, x. solve it via the dual simplex algorithm. Describe

More information

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

- Well-characterized problems, min-max relations, approximate certificates. - LP problems in the standard form, primal and dual linear programs

- Well-characterized problems, min-max relations, approximate certificates. - LP problems in the standard form, primal and dual linear programs LP-Duality ( Approximation Algorithms by V. Vazirani, Chapter 12) - Well-characterized problems, min-max relations, approximate certificates - LP problems in the standard form, primal and dual linear programs

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

Slack Variable. Max Z= 3x 1 + 4x 2 + 5X 3. Subject to: X 1 + X 2 + X x 1 + 4x 2 + X X 1 + X 2 + 4X 3 10 X 1 0, X 2 0, X 3 0

Slack Variable. Max Z= 3x 1 + 4x 2 + 5X 3. Subject to: X 1 + X 2 + X x 1 + 4x 2 + X X 1 + X 2 + 4X 3 10 X 1 0, X 2 0, X 3 0 Simplex Method Slack Variable Max Z= 3x 1 + 4x 2 + 5X 3 Subject to: X 1 + X 2 + X 3 20 3x 1 + 4x 2 + X 3 15 2X 1 + X 2 + 4X 3 10 X 1 0, X 2 0, X 3 0 Standard Form Max Z= 3x 1 +4x 2 +5X 3 + 0S 1 + 0S 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

AM 121: Intro to Optimization! Models and Methods! Fall 2018!

AM 121: Intro to Optimization! Models and Methods! Fall 2018! AM 121: Intro to Optimization Models and Methods Fall 2018 Lecture 15: Cutting plane methods Yiling Chen SEAS Lesson Plan Cut generation and the separation problem Cutting plane methods Chvatal-Gomory

More information

The CPLEX Library: Mixed Integer Programming

The CPLEX Library: Mixed Integer Programming The CPLEX Library: Mixed Programming Ed Rothberg, ILOG, Inc. 1 The Diet Problem Revisited Nutritional values Bob considered the following foods: Food Serving Size Energy (kcal) Protein (g) Calcium (mg)

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

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

Linear Programming. Scheduling problems

Linear Programming. Scheduling problems Linear Programming Scheduling problems Linear programming (LP) ( )., 1, for 0 min 1 1 1 1 1 11 1 1 n i x b x a x a b x a x a x c x c x z i m n mn m n n n n! = + + + + + + = Extreme points x ={x 1,,x n

More information

BBM402-Lecture 20: LP Duality

BBM402-Lecture 20: LP Duality BBM402-Lecture 20: LP Duality Lecturer: Lale Özkahya Resources for the presentation: https://courses.engr.illinois.edu/cs473/fa2016/lectures.html An easy LP? which is compact form for max cx subject to

More information

A Review of Linear Programming

A Review of Linear Programming A Review of Linear Programming Instructor: Farid Alizadeh IEOR 4600y Spring 2001 February 14, 2001 1 Overview In this note we review the basic properties of linear programming including the primal simplex

More information

1 Column Generation and the Cutting Stock Problem

1 Column Generation and the Cutting Stock Problem 1 Column Generation and the Cutting Stock Problem In the linear programming approach to the traveling salesman problem we used the cutting plane approach. The cutting plane approach is appropriate when

More information

Introduction to Integer Linear Programming

Introduction to Integer Linear Programming Lecture 7/12/2006 p. 1/30 Introduction to Integer Linear Programming Leo Liberti, Ruslan Sadykov LIX, École Polytechnique liberti@lix.polytechnique.fr sadykov@lix.polytechnique.fr Lecture 7/12/2006 p.

More information

Gestion de la production. Book: Linear Programming, Vasek Chvatal, McGill University, W.H. Freeman and Company, New York, USA

Gestion de la production. Book: Linear Programming, Vasek Chvatal, McGill University, W.H. Freeman and Company, New York, USA Gestion de la production Book: Linear Programming, Vasek Chvatal, McGill University, W.H. Freeman and Company, New York, USA 1 Contents 1 Integer Linear Programming 3 1.1 Definitions and notations......................................

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

Foundations of Operations Research

Foundations of Operations Research Solved exercises for the course of Foundations of Operations Research Roberto Cordone Gomory cuts Given the ILP problem maxf = 4x 1 +3x 2 2x 1 +x 2 11 x 1 +2x 2 6 x 1,x 2 N solve it with the Gomory cutting

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

Integer Programming. The focus of this chapter is on solution techniques for integer programming models.

Integer Programming. The focus of this chapter is on solution techniques for integer programming models. Integer Programming Introduction The general linear programming model depends on the assumption of divisibility. In other words, the decision variables are allowed to take non-negative integer as well

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

Systems Analysis in Construction

Systems Analysis in Construction Systems Analysis in Construction CB312 Construction & Building Engineering Department- AASTMT by A h m e d E l h a k e e m & M o h a m e d S a i e d 3. Linear Programming Optimization Simplex Method 135

More information

21. Solve the LP given in Exercise 19 using the big-m method discussed in Exercise 20.

21. Solve the LP given in Exercise 19 using the big-m method discussed in Exercise 20. Extra Problems for Chapter 3. Linear Programming Methods 20. (Big-M Method) An alternative to the two-phase method of finding an initial basic feasible solution by minimizing the sum of the artificial

More information

Foundations of Operations Research

Foundations of Operations Research Solved exercises for the course of Foundations of Operations Research Roberto Cordone The dual simplex method Given the following LP problem: maxz = 5x 1 +8x 2 x 1 +x 2 6 5x 1 +9x 2 45 x 1,x 2 0 1. solve

More information

Integer programming: an introduction. Alessandro Astolfi

Integer programming: an introduction. Alessandro Astolfi Integer programming: an introduction Alessandro Astolfi Outline Introduction Examples Methods for solving ILP Optimization on graphs LP problems with integer solutions Summary Introduction Integer programming

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

Farkas Lemma, Dual Simplex and Sensitivity Analysis

Farkas Lemma, Dual Simplex and Sensitivity Analysis Summer 2011 Optimization I Lecture 10 Farkas Lemma, Dual Simplex and Sensitivity Analysis 1 Farkas Lemma Theorem 1. Let A R m n, b R m. Then exactly one of the following two alternatives is true: (i) x

More information

Cutting Plane Separators in SCIP

Cutting Plane Separators in SCIP Cutting Plane Separators in SCIP Kati Wolter Zuse Institute Berlin DFG Research Center MATHEON Mathematics for key technologies 1 / 36 General Cutting Plane Method MIP min{c T x : x X MIP }, X MIP := {x

More information

Lecture #21. c T x Ax b. maximize subject to

Lecture #21. c T x Ax b. maximize subject to COMPSCI 330: Design and Analysis of Algorithms 11/11/2014 Lecture #21 Lecturer: Debmalya Panigrahi Scribe: Samuel Haney 1 Overview In this lecture, we discuss linear programming. We first show that the

More information

Cutting Planes in SCIP

Cutting Planes in SCIP Cutting Planes in SCIP Kati Wolter Zuse-Institute Berlin Department Optimization Berlin, 6th June 2007 Outline 1 Cutting Planes in SCIP 2 Cutting Planes for the 0-1 Knapsack Problem 2.1 Cover Cuts 2.2

More information

Operations Research Lecture 6: Integer Programming

Operations Research Lecture 6: Integer Programming Operations Research Lecture 6: Integer Programming Notes taken by Kaiquan Xu@Business School, Nanjing University May 12th 2016 1 Integer programming (IP) formulations The integer programming (IP) is the

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

MVE165/MMG631 Linear and integer optimization with applications Lecture 5 Linear programming duality and sensitivity analysis

MVE165/MMG631 Linear and integer optimization with applications Lecture 5 Linear programming duality and sensitivity analysis MVE165/MMG631 Linear and integer optimization with applications Lecture 5 Linear programming duality and sensitivity analysis Ann-Brith Strömberg 2017 03 29 Lecture 4 Linear and integer optimization with

More information

Integer Linear Programming (ILP)

Integer Linear Programming (ILP) Integer Linear Programming (ILP) Zdeněk Hanzálek, Přemysl Šůcha hanzalek@fel.cvut.cz CTU in Prague March 8, 2017 Z. Hanzálek (CTU) Integer Linear Programming (ILP) March 8, 2017 1 / 43 Table of contents

More information

Lesson 27 Linear Programming; The Simplex Method

Lesson 27 Linear Programming; The Simplex Method Lesson Linear Programming; The Simplex Method Math 0 April 9, 006 Setup A standard linear programming problem is to maximize the quantity c x + c x +... c n x n = c T x subject to constraints a x + a x

More information

Understanding the Simplex algorithm. Standard Optimization Problems.

Understanding the Simplex algorithm. Standard Optimization Problems. Understanding the Simplex algorithm. Ma 162 Spring 2011 Ma 162 Spring 2011 February 28, 2011 Standard Optimization Problems. A standard maximization problem can be conveniently described in matrix form

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

where X is the feasible region, i.e., the set of the feasible solutions.

where X is the feasible region, i.e., the set of the feasible solutions. 3.5 Branch and Bound Consider a generic Discrete Optimization problem (P) z = max{c(x) : x X }, where X is the feasible region, i.e., the set of the feasible solutions. Branch and Bound is a general semi-enumerative

More information

F 1 F 2 Daily Requirement Cost N N N

F 1 F 2 Daily Requirement Cost N N N Chapter 5 DUALITY 5. The Dual Problems Every linear programming problem has associated with it another linear programming problem and that the two problems have such a close relationship that whenever

More information

Integer Programming. Wolfram Wiesemann. December 6, 2007

Integer Programming. Wolfram Wiesemann. December 6, 2007 Integer Programming Wolfram Wiesemann December 6, 2007 Contents of this Lecture Revision: Mixed Integer Programming Problems Branch & Bound Algorithms: The Big Picture Solving MIP s: Complete Enumeration

More information

Linear Programming and the Simplex method

Linear Programming and the Simplex method Linear Programming and the Simplex method Harald Enzinger, Michael Rath Signal Processing and Speech Communication Laboratory Jan 9, 2012 Harald Enzinger, Michael Rath Jan 9, 2012 page 1/37 Outline Introduction

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

Algorithmic Game Theory and Applications. Lecture 7: The LP Duality Theorem

Algorithmic Game Theory and Applications. Lecture 7: The LP Duality Theorem Algorithmic Game Theory and Applications Lecture 7: The LP Duality Theorem Kousha Etessami recall LP s in Primal Form 1 Maximize c 1 x 1 + c 2 x 2 +... + c n x n a 1,1 x 1 + a 1,2 x 2 +... + a 1,n x n

More information

Chap6 Duality Theory and Sensitivity Analysis

Chap6 Duality Theory and Sensitivity Analysis Chap6 Duality Theory and Sensitivity Analysis The rationale of duality theory Max 4x 1 + x 2 + 5x 3 + 3x 4 S.T. x 1 x 2 x 3 + 3x 4 1 5x 1 + x 2 + 3x 3 + 8x 4 55 x 1 + 2x 2 + 3x 3 5x 4 3 x 1 ~x 4 0 If we

More information

Structured Problems and Algorithms

Structured Problems and Algorithms Integer and quadratic optimization problems Dept. of Engg. and Comp. Sci., Univ. of Cal., Davis Aug. 13, 2010 Table of contents Outline 1 2 3 Benefits of Structured Problems Optimization problems may become

More information

Discrete Optimization 2010 Lecture 7 Introduction to Integer Programming

Discrete Optimization 2010 Lecture 7 Introduction to Integer Programming Discrete Optimization 2010 Lecture 7 Introduction to Integer Programming Marc Uetz University of Twente m.uetz@utwente.nl Lecture 8: sheet 1 / 32 Marc Uetz Discrete Optimization Outline 1 Intro: The Matching

More information

Improving Branch-And-Price Algorithms For Solving One Dimensional Cutting Stock Problem

Improving Branch-And-Price Algorithms For Solving One Dimensional Cutting Stock Problem Improving Branch-And-Price Algorithms For Solving One Dimensional Cutting Stock Problem M. Tech. Dissertation Submitted in partial fulfillment of the requirements for the degree of Master of Technology

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

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

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

Linear and Integer Programming - ideas

Linear and Integer Programming - ideas Linear and Integer Programming - ideas Paweł Zieliński Institute of Mathematics and Computer Science, Wrocław University of Technology, Poland http://www.im.pwr.wroc.pl/ pziel/ Toulouse, France 2012 Literature

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

3.7 Cutting plane methods

3.7 Cutting plane methods 3.7 Cutting plane methods Generic ILP problem min{ c t x : x X = {x Z n + : Ax b} } with m n matrix A and n 1 vector b of rationals. According to Meyer s theorem: There exists an ideal formulation: conv(x

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

Points: The first problem is worth 10 points, the others are worth 15. Maximize z = x y subject to 3x y 19 x + 7y 10 x + y = 100.

Points: The first problem is worth 10 points, the others are worth 15. Maximize z = x y subject to 3x y 19 x + 7y 10 x + y = 100. Math 5 Summer Points: The first problem is worth points, the others are worth 5. Midterm # Solutions Find the dual of the following linear programming problem. Maximize z = x y x y 9 x + y x + y = x, y

More information

(P ) Minimize 4x 1 + 6x 2 + 5x 3 s.t. 2x 1 3x 3 3 3x 2 2x 3 6

(P ) Minimize 4x 1 + 6x 2 + 5x 3 s.t. 2x 1 3x 3 3 3x 2 2x 3 6 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. Problem 1 Consider

More information

AM 121: Intro to Optimization Models and Methods

AM 121: Intro to Optimization Models and Methods AM 121: Intro to Optimization Models and Methods Fall 2017 Lecture 2: Intro to LP, Linear algebra review. Yiling Chen SEAS Lecture 2: Lesson Plan What is an LP? Graphical and algebraic correspondence Problems

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

4.6 Linear Programming duality

4.6 Linear Programming duality 4.6 Linear Programming duality To any minimization (maximization) LP we can associate a closely related maximization (minimization) LP Different spaces and objective functions but in general same optimal

More information

Introduction to integer programming II

Introduction to integer programming II Introduction to integer programming II Martin Branda Charles University in Prague Faculty of Mathematics and Physics Department of Probability and Mathematical Statistics Computational Aspects of Optimization

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

"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

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

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

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

Duality of LPs and Applications

Duality of LPs and Applications Lecture 6 Duality of LPs and Applications Last lecture we introduced duality of linear programs. We saw how to form duals, and proved both the weak and strong duality theorems. In this lecture we will

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

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

Duality Theory, Optimality Conditions

Duality Theory, Optimality Conditions 5.1 Duality Theory, Optimality Conditions Katta G. Murty, IOE 510, LP, U. Of Michigan, Ann Arbor We only consider single objective LPs here. Concept of duality not defined for multiobjective LPs. Every

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

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

Linear Programming Inverse Projection Theory Chapter 3

Linear Programming Inverse Projection Theory Chapter 3 1 Linear Programming Inverse Projection Theory Chapter 3 University of Chicago Booth School of Business Kipp Martin September 26, 2017 2 Where We Are Headed We want to solve problems with special structure!

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

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

Part 1. The Review of Linear Programming

Part 1. The Review of Linear Programming In the name of God Part 1. The Review of Linear Programming 1.5. Spring 2010 Instructor: Dr. Masoud Yaghini Outline Introduction Formulation of the Dual Problem Primal-Dual Relationship Economic Interpretation

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

Written Exam Linear and Integer Programming (DM545)

Written Exam Linear and Integer Programming (DM545) Written Exam Linear and Integer Programming (DM545) Department of Mathematics and Computer Science University of Southern Denmark Monday, June 22, 2015, 10:00 14:00, Festsalen, Niels Bohr Allé 1 The exam

More information

Sensitivity Analysis and Duality in LP

Sensitivity Analysis and Duality in LP Sensitivity Analysis and Duality in LP Xiaoxi Li EMS & IAS, Wuhan University Oct. 13th, 2016 (week vi) Operations Research (Li, X.) Sensitivity Analysis and Duality in LP Oct. 13th, 2016 (week vi) 1 /

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

Generating Gomory's Cuts for linear integer programming problems: the HOW and WHY

Generating Gomory's Cuts for linear integer programming problems: the HOW and WHY Page 1 of 7 Generating Gomory's Cuts for linear integer programming problems: the HOW and WHY A Gomory's Cut is a linear constraint with the property that it is strictly stronger than its Parent, but it

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

M340(921) Solutions Problem Set 6 (c) 2013, Philip D Loewen. g = 35y y y 3.

M340(921) Solutions Problem Set 6 (c) 2013, Philip D Loewen. g = 35y y y 3. M340(92) Solutions Problem Set 6 (c) 203, Philip D Loewen. (a) If each pig is fed y kilograms of corn, y 2 kilos of tankage, and y 3 kilos of alfalfa, the cost per pig is g = 35y + 30y 2 + 25y 3. The nutritional

More information

Linear programming. Saad Mneimneh. maximize x 1 + x 2 subject to 4x 1 x 2 8 2x 1 + x x 1 2x 2 2

Linear programming. Saad Mneimneh. maximize x 1 + x 2 subject to 4x 1 x 2 8 2x 1 + x x 1 2x 2 2 Linear programming Saad Mneimneh 1 Introduction Consider the following problem: x 1 + x x 1 x 8 x 1 + x 10 5x 1 x x 1, x 0 The feasible solution is a point (x 1, x ) that lies within the region defined

More information