DM545 Linear and Integer Programming. Lecture 13 Branch and Bound. Marco Chiarandini

Size: px
Start display at page:

Download "DM545 Linear and Integer Programming. Lecture 13 Branch and Bound. Marco Chiarandini"

Transcription

1 DM545 Linear and Integer Programming Lecture 13 Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark

2 Outline

3 Exam Tilladt Håndscanner/digital pen og ordbogsprogrammet fra ordbogen.com Ikke tilladt at anvende digitalt kamera eller webcam o. lign. metoder for at digitalisere sin besvarelse Du afleverer efter fristen og kun en gang Exam Monitor er et lille program, som logger, hvilke programmer du afvikler på din computer under eksamen, samtidig med at din skærm optages. Internet Internet er ikke tilladt ved eksamener på NAT, men undtagelsesvis til denne eksamen er det tilladt, at benytte følgende webside http: // www. imada. sdu. dk/ ~marco/ DM545/ og siderne linket derfra. Det er ikke tilladt at benytte andre sider Vejledning og templates snart tilgænglig fra kurset web siden ved afsnittet Assessment Kom vel forberedet, bring noget at drikke og spise 3

4 To come Two weeks left This week: two lectures + joint training class on Wednesday Next week: two exercise classes + one lecture. Question time? Thursday 31st at 9:00? 4

5 Outline

6 Consider the problem z = max{c T x : x S} Divide and conquer: let S = S 1... S k be a decomposition of S into smaller sets, and let z k = max{c T x : x S k } for k = 1,..., K. Then z = max k z k 6

7 Consider the problem z = max{c T x : x S} Divide and conquer: let S = S 1... S k be a decomposition of S into smaller sets, and let z k = max{c T x : x S k } for k = 1,..., K. Then z = max k z k For instance if S {0, 1} 3 the enumeration tree is: x 1 = 0 S x 1 = 1 x 2 = 0 S 0 S 1 x 3 = 0 S 00 S 01 S 10 S 11 S 000 S 001 S 010 S 011 S 100 S 101 S 110 S 111 6

8 Bounding Let s consider a maximization problem (gurobi s default is minimization) Let z k be an upper bound on z k (dual bound) Let z k be a lower bound on z k (primal bound) (z k z k z k ) 7

9 Bounding Let s consider a maximization problem (gurobi s default is minimization) Let z k be an upper bound on z k (dual bound) Let z k be a lower bound on z k (primal bound) (z k z k z k ) z = 7

10 Bounding Let s consider a maximization problem (gurobi s default is minimization) Let z k be an upper bound on z k (dual bound) Let z k be a lower bound on z k (primal bound) (z k z k z k ) z = max k z k is a lower bound on z z = 7

11 Bounding Let s consider a maximization problem (gurobi s default is minimization) Let z k be an upper bound on z k (dual bound) Let z k be a lower bound on z k (primal bound) (z k z k z k ) z = max k z k is a lower bound on z z = max k z k is an upper bound on z 7

12 Pruning z = z =

13 Pruning z = 25 z = 20 pruned by optimality 8

14 Pruning z = 25 z = 20 pruned by optimality z = z =

15 Pruning z = 25 z = 20 pruned by optimality z = 26 z = 21 pruned by bounding 8

16 Pruning z = 25 z = 20 pruned by optimality z = 26 z = 21 pruned by bounding 40 z = z =

17 Pruning z = 25 z = 20 pruned by optimality z = 26 z = 21 pruned by bounding z = 37 z = 13 nothing to prune 8

18 Pruning infeas. z = 26 z = 14 pruned by infeasibility 9

19 Example max x 1 + 2x 2 x 1 + 4x 2 8 4x 1 + x 2 8 x 1, x 2 0, integer Solve LP x1 x2 x3 x4 -z b x 2 x 1 + 4x 2 = 8 x 1 x 1 + 2x 2 = 1 4x 1 + x 2 = 8 10

20 Example max x 1 + 2x 2 x 1 + 4x 2 8 4x 1 + x 2 8 x 1, x 2 0, integer Solve LP x1 x2 x3 x4 -z b x1 x2 x3 x4 -z b I =I-II 0 15/4 1-1/4 0 6 II =1/4II 1 1/4 0 1/ III =III-II 0 7/4 0-1/4 0-2 x 2 x 1 + 4x 2 = 8 x 1 x 1 + 2x 2 = 1 4x 1 + x 2 = 8 10

21 continuing x1 x2 x3 x4 -z b I =4/15I 0 1 4/15-1/ /15 II =II-1/4I 1 0-1/15 4/ / III =III-7/4I 0 0-7/15-3/ /5 x 2 = 1 + 3/5 = 1.6 x 1 = 8/5 The optimal solution will not be more than /5 =

22 continuing x1 x2 x3 x4 -z b I =4/15I 0 1 4/15-1/ /15 II =II-1/4I 1 0-1/15 4/ / III =III-7/4I 0 0-7/15-3/ /5 x 2 = 1 + 3/5 = 1.6 x 1 = 8/5 The optimal solution will not be more than /5 = 4.8 Both variables are fractional, we pick one of the two: 4.8 x 1 1 x

23 continuing x1 x2 x3 x4 -z b I =4/15I 0 1 4/15-1/ /15 II =II-1/4I 1 0-1/15 4/ / III =III-7/4I 0 0-7/15-3/ /5 x 2 = 1 + 3/5 = 1.6 x 1 = 8/5 The optimal solution will not be more than /5 = 4.8 Both variables are fractional, we pick one of the two: 4.8 x 1 1 x 1 2 x 2 x 1 = 1 x 1 + 4x 2 = 8 x 1 x 1 + 2x 2 = 1 4x 1 + x 2 = 8 11

24 Let s consider first the left branch: 12

25 Let s consider first the left branch: x1 x2 x3 x4 x5 -z b /15-1/ / /15 4/ / /15-3/ /5 12

26 Let s consider first the left branch: x1 x2 x3 x4 x5 -z b /15-1/ / /15 4/ / /15-3/ /5 x1 x2 x3 x4 x5 b -z I =I-III 0 0 1/15-4/ / /15-1/ / /15 4/ / /15-3/ /5 12

27 Let s consider first the left branch: x1 x2 x3 x4 x5 -z b /15-1/ / /15 4/ / /15-3/ /5 x1 x2 x3 x4 x5 b -z I =I-III 0 0 1/15-4/ / /15-1/ / /15 4/ / /15-3/ /5 x1 x2 x3 x4 x5 b -z I =-15/4I 0 0-1/4 1-15/4 0 9/4 II =II-1/4I /60 0-1/4 0 7/4 III =III+I /60 0-9/4 1-90/20 always a b term negative after branching: b 1 = b 3 b 1 = b 3 b 3 < 0 Dual simplex: min j { c j a ij : a ij < 0} 12

28 Let s branch again 4.8 x 1 1 x x 2 1 x

29 Let s branch again 4.8 x 1 1 x 1 2 x x 2 1 x 2 2 x 1 + 4x 2 = 8 x 1 x 1 + 2x 2 = 1 4x 1 + x 2 = 8 13

30 Let s branch again x x 1 2 x 2 x 2 1 B 4.5 x 2 2 A C x 1 + 4x 2 = 8 x 1 x 1 + 2x 2 = 1 4x 1 + x 2 = 8 We have three open problems. Which one we choose next? Let s take A. 13

31 x1 x2 x3 x4 x5 x6 b -z /4 1-15/4 0 9/ /60 0-1/4 0 7/ /60 0-9/4 1-9/2 14

32 x1 x2 x3 x4 x5 x6 b -z /4 1-15/4 0 9/ /60 0-1/4 0 7/ /60 0-9/4 1-9/2 x1 x2 x3 x4 x5 x6 b -z III+I 0 0 1/4 0-1/ / /4 1-15/4 0 9/ /60 0-1/4 0 7/ /60 0-9/4 1-9/2 continuing we find: x 1 = 0 x 2 = 2 OPT = 4 14

33 The final tree: x x 1 2 x x x 1 =2 x 2 =0 x 1 =1 x 2 = x 1 =0 x 2 =2 The optimal solution is 4. 15

34 Pruning Pruning: 1. by optimality: z k = max{c T x : x S k } 2. by bound z k z Example: by infeasibility S k = 16

35 B&B Components Bounding: 1. LP relaxation 2. Lagrangian relaxation 3. Combinatorial relaxation 4. Duality 17

36 B&B Components Bounding: 1. LP relaxation 2. Lagrangian relaxation 3. Combinatorial relaxation 4. Duality Branching: S 1 = S {x : x j x j } S 2 = S {x : x j x j } thus the current optimum is not feasible either in S 1 or in S 2. 17

37 B&B Components Bounding: 1. LP relaxation 2. Lagrangian relaxation 3. Combinatorial relaxation 4. Duality Branching: S 1 = S {x : x j x j } S 2 = S {x : x j x j } thus the current optimum is not feasible either in S 1 or in S 2. Which variable to choose? Eg: Most fractional variable arg max j C min{f j, 1 f j } 17

38 B&B Components Bounding: 1. LP relaxation 2. Lagrangian relaxation 3. Combinatorial relaxation 4. Duality Branching: S 1 = S {x : x j x j } S 2 = S {x : x j x j } thus the current optimum is not feasible either in S 1 or in S 2. Which variable to choose? Eg: Most fractional variable arg max j C min{f j, 1 f j } Choosing Node for Examination from the list of active (or open): Depth First Search (a good primal sol. is good for pruning + easier to reoptimize by just adding a new constraint) Best Bound First: (eg. largest upper: z s = max k z k or largest lower - to die fast) Mixed strategies 17

39 Reoptimizing: dual simplex Updating the Incumbent: when new best feasible solution is found: z = max{z, 4} Store the active nodes: bounds + optimal basis (remember the revised simplex!) 18

40 Enhancements Preprocessor: constraint/problem/structure specific tightening bounds redundant constraints variable fixing: eg: max{c T x : Ax b, l x u} fix x j = l j if c j < 0 and a ij > 0 for all i fix x j = u j if c j > 0 and a ij < 0 for all i 19

41 Enhancements Preprocessor: constraint/problem/structure specific tightening bounds redundant constraints variable fixing: eg: max{c T x : Ax b, l x u} fix x j = l j if c j < 0 and a ij > 0 for all i fix x j = u j if c j > 0 and a ij < 0 for all i Priorities: establish the next variable to branch 19

42 Enhancements Preprocessor: constraint/problem/structure specific tightening bounds redundant constraints variable fixing: eg: max{c T x : Ax b, l x u} fix x j = l j if c j < 0 and a ij > 0 for all i fix x j = u j if c j > 0 and a ij < 0 for all i Priorities: establish the next variable to branch Special ordered sets SOS (or generalized upper bound GUB) k x j = 1 x j {0, 1} j=1 instead of: S 0 = S {x : x j = 0} and S 1 = S {x : x j = 1} {x : x j = 0} leaves k 1 possibilities {x : x j = 1} leaves only 1 possibility hence tree unbalanced here: S 1 = S {x : x ji = 0, i = 1..r} and S 2 = S {x : x ji = 0, i = r + 1,.., k}, r = min{t : t i=1 x j i 1 2 } 19

43 Cutoff value: a user-defined primal bound to pass to the system. Simplex strategies: simplex is good for reoptimizing but for large models interior points methods may work best. 20

44 Cutoff value: a user-defined primal bound to pass to the system. Simplex strategies: simplex is good for reoptimizing but for large models interior points methods may work best. Strong branching: extra work to decide more accurately on which variable to branch: 1. choose a set C of fractional variables 2. reoptimize for each of them (in case for limited iterations) 3. z j, z j (dual bound of down and up branch) j = arg min j C max{z j, z j } ie, choose variable with largest decrease of dual bound, eg UB for max 20

45 There are four common reasons because integer programs can require a significant amount of solution time: 1. There is lack of node throughput due to troublesome linear programming node solves. 2. There is lack of progress in the best integer solution, i.e., the upper bound. 3. There is lack of progress in the best lower bound. 4. There is insufficient node throughput due to numerical instability in the problem data or excessive memory usage. 21

46 There are four common reasons because integer programs can require a significant amount of solution time: 1. There is lack of node throughput due to troublesome linear programming node solves. 2. There is lack of progress in the best integer solution, i.e., the upper bound. 3. There is lack of progress in the best lower bound. 4. There is insufficient node throughput due to numerical instability in the problem data or excessive memory usage. For 2) or 3) the gap best feasible-dual bound is large: gap = Primal bound Dual bound Primal bound + ɛ

47 heuristics for finding feasible solutions (generally NP-complete problem) find better lower bounds if they are weak: addition of cuts, stronger formulation, branch and cut Branch and cut: a B&B algorithm with cut generation at all nodes of the tree. (instead of reoptimizing, do as much work as possible to tighten) Cut pool: stores all cuts centrally Store for active node: bounds, basis, pointers to constraints in the cut pool that apply at the node 22

48 Relative Optimality Gap In CPLEX: gap = best dual bound best integer best integer In SCIP and MIPLIB standard: gap = pb db inf{ z, z [db, pb]} 100 for a minimization problem (if pb 0 and db 0 then pb db db ) if db = pb = 0 then gap = 0 if no feasible sol found or db 0 pb then the gap is not computed. 23

49 Last standard avoids problem of non decreasing gap if we go through zero % % % Elapsed real time = sec. (tree size = MB, solutions = 2) * % % % % 24

50 Advanced Techniques We did not treat: LP: Dantzig Wolfe decomposition LP: Column generation LP: Delayed column generation IP: Branch and Price LP: Benders decompositions LP: Lagrangian relaxation 25

51 Outline

52 rules Consider S = {x : a 0 x 0 + n j=1 a jx j b, l j x j u j, j = 0..n} Bounds on variables. If a 0 > 0 then: x 0 b a j l j a j u j /a 0 j:a j >0 j:a j >0 j:a j <0 and if a 0 < 0 then x 0 b a j l j a j u j /a 0 j:a j <0 28

53 rules Consider S = {x : a 0 x 0 + n j=1 a jx j b, l j x j u j, j = 0..n} Bounds on variables. If a 0 > 0 then: x 0 b a j l j a j u j /a 0 j:a j >0 j:a j >0 j:a j <0 and if a 0 < 0 then x 0 b a j l j a j u j /a 0 j:a j <0 Redundancy. The constraint n j=0 a jx j b is redundant if a j u j + a j l j b j:a j >0 j:a j <0 28

54 Infeasibility: S = if (swapping lower and upper bounds from previous case) a j l j + a j u j > b j:a j >0 j:a j <0 29

55 Infeasibility: S = if (swapping lower and upper bounds from previous case) a j l j + a j u j > b j:a j >0 j:a j <0 Variable fixing. For a max problem in the form max{c T x : Ax b, l x u} if i = 1..m : a ij 0, c j < 0 then fix x j = l j if i = 1..m : a ij < 0, c j > 0 then fix x j = u j 29

56 Infeasibility: S = if (swapping lower and upper bounds from previous case) a j l j + a j u j > b j:a j >0 j:a j <0 Variable fixing. For a max problem in the form max{c T x : Ax b, l x u} if i = 1..m : a ij 0, c j < 0 then fix x j = l j if i = 1..m : a ij < 0, c j > 0 then fix x j = u j Integer variables: l j x j u j 29

57 Infeasibility: S = if (swapping lower and upper bounds from previous case) a j l j + a j u j > b j:a j >0 j:a j <0 Variable fixing. For a max problem in the form max{c T x : Ax b, l x u} if i = 1..m : a ij 0, c j < 0 then fix x j = l j if i = 1..m : a ij < 0, c j > 0 then fix x j = u j Integer variables: l j x j u j Binary variables. Probing: add a constraint, eg, x 2 = 0 and check what happens 29

58 Example max 2x 1 + x 2 x 3 R1 : 5x 1 2x 2 + 8x 3 15 R2 : 8x 1 + 3x 2 x 3 9 R3 : x 1 + x 2 + x x x 2 1 x

59 Example max 2x 1 + x 2 x 3 R1 : 5x 1 2x 2 + 8x 3 15 R2 : 8x 1 + 3x 2 x 3 9 R3 : x 1 + x 2 + x x x 2 1 x 3 1 {}}{ R1 :5x x 2 8x u 2 l 3 {}}{ 1 = 9 x 1 9/5 8x x 2 5x = 17 x 3 17/8 2x 2 5x 1 + 8x = 7 x 2 7/2, x 2 0 R2 :8x 1 9 3x 2 + x = 7 x 1 7/8 R1 :8x x 2 5x /8 = 101/8 x 3 101/64 R3 : x 1 + x 2 + x 3 9/ /64 < 6 Hence R3 is redundant

60 Example max 2x 1 + x 2 x 3 R1 : 5x 1 2x 2 + 8x 3 15 R2 : 8x 1 + 3x 2 x 3 9 R3 : x 1 + x 2 + x x x 2 1 x 3 1 {}}{ R1 :5x x 2 8x u 2 l 3 {}}{ 1 = 9 x 1 9/5 8x x 2 5x = 17 x 3 17/8 2x 2 5x 1 + 8x = 7 x 2 7/2, x

61 Example max 2x 1 + x 2 x 3 R1 : 5x 1 2x 2 + 8x 3 15 R2 : 8x 1 + 3x 2 x 3 9 R3 : x 1 + x 2 + x x x 2 1 x 3 1 {}}{ R1 :5x x 2 8x u 2 l 3 {}}{ 1 = 9 x 1 9/5 8x x 2 5x = 17 x 3 17/8 2x 2 5x 1 + 8x = 7 x 2 7/2, x 2 0 R2 :8x 1 9 3x 2 + x = 7 x 1 7/8 R1 :8x x 2 5x /8 = 101/8 x 3 101/64 30

62 Example max 2x 1 + x 2 x 3 R1 : 5x 1 2x 2 + 8x 3 15 R2 : 8x 1 + 3x 2 x 3 9 R3 : x 1 + x 2 + x x x 2 1 x 3 1 {}}{ R1 :5x x 2 8x u 2 l 3 {}}{ 1 = 9 x 1 9/5 8x x 2 5x = 17 x 3 17/8 2x 2 5x 1 + 8x = 7 x 2 7/2, x 2 0 R2 :8x 1 9 3x 2 + x = 7 x 1 7/8 R1 :8x x 2 5x /8 = 101/8 x 3 101/64 R3 : x 1 + x 2 + x 3 9/ /64 < 6 Hence R3 is redundant 30

63 Example max 2x 1 + x 2 x 3 R1 : 5x 1 2x 2 + 8x 3 15 R2 : 8x 1 + 3x 2 x 3 9 7/8 x 1 9/5 0 x x 3 101/64 31

64 Example max 2x 1 + x 2 x 3 R1 : 5x 1 2x 2 + 8x 3 15 R2 : 8x 1 + 3x 2 x 3 9 7/8 x 1 9/5 0 x x 3 101/64 Increasing x 2 makes constraints satisfied x 2 = 1 Decreasing x 3 makes constraints satisfied x 3 = 1 31

65 Example max 2x 1 + x 2 x 3 R1 : 5x 1 2x 2 + 8x 3 15 R2 : 8x 1 + 3x 2 x 3 9 7/8 x 1 9/5 0 x x 3 101/64 Increasing x 2 makes constraints satisfied x 2 = 1 Decreasing x 3 makes constraints satisfied x 3 = 1 We are left with: max{2x 1 : 7/8 x 1 9/5} 31

66 for Set Covering/Partitioning 1. if e T i A = 0 then the ith row can never be satisfied [ ] =

67 for Set Covering/Partitioning 1. if e T i A = 0 then the ith row can never be satisfied [ ] = if e T i A = e k then x k = 1 in every feasible solution [ ] =

68 for Set Covering/Partitioning 1. if e T i A = 0 then the ith row can never be satisfied [ ] = if e T i A = e k then x k = 1 in every feasible solution [ ] = In SPP can remove all rows t with a tk = 1 and set x j = 0 (ie, remove cols) for all cols that cover t 32

69 3. if e T t A e T p A then we can remove row t, row p dominates row t (by covering p we cover t) t p 1 1

70 3. if e T t A e T p A then we can remove row t, row p dominates row t (by covering p we cover t) t p 1 1 In SPP we can remove all cols j: a tj = 1, a pj = 0 4. if j S Ae j = Ae k and j S c j c k then we can cover the rows by Ae k more cheaply with S and set x k = 0 (Note, we cannot remove S if j S c j c k )

71 Summary

Returning to Open Threads

Returning to Open Threads DM545 Linear and Integer Programming Lecture 14 Returning to Open Threads Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark Outline 1. 2. 2 Assignments I corrected

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

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

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

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

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

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

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

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

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

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

Integer Programming ISE 418. Lecture 8. Dr. Ted Ralphs Integer Programming ISE 418 Lecture 8 Dr. Ted Ralphs ISE 418 Lecture 8 1 Reading for This Lecture Wolsey Chapter 2 Nemhauser and Wolsey Sections II.3.1, II.3.6, II.4.1, II.4.2, II.5.4 Duality for Mixed-Integer

More information

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

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

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

Resource Constrained Project Scheduling Linear and Integer Programming (1)

Resource Constrained Project Scheduling Linear and Integer Programming (1) DM204, 2010 SCHEDULING, TIMETABLING AND ROUTING Lecture 3 Resource Constrained Project Linear and Integer Programming (1) Marco Chiarandini Department of Mathematics & Computer Science University of Southern

More information

If the above problem is hard to solve, we might try to break it into smaller problems which are easier to solve.

If the above problem is hard to solve, we might try to break it into smaller problems which are easier to solve. 8 Branch and Bound 8.1 Divide and Conquer uppose that we would like to solve the problem { z = max c T x : x. If the above problem is hard to solve, we might try to break it into smaller problems which

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

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

(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

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

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

SOLVING INTEGER LINEAR PROGRAMS. 1. Solving the LP relaxation. 2. How to deal with fractional solutions? SOLVING INTEGER LINEAR PROGRAMS 1. Solving the LP relaxation. 2. How to deal with fractional solutions? Integer Linear Program: Example max x 1 2x 2 0.5x 3 0.2x 4 x 5 +0.6x 6 s.t. x 1 +2x 2 1 x 1 + x 2

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

DM545 Linear and Integer Programming. Lecture 7 Revised Simplex Method. Marco Chiarandini

DM545 Linear and Integer Programming. Lecture 7 Revised Simplex Method. Marco Chiarandini DM545 Linear and Integer Programming Lecture 7 Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark Outline 1. 2. 2 Motivation Complexity of single pivot operation

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

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

Branch-and-Bound. Leo Liberti. LIX, École Polytechnique, France. INF , Lecture p. 1

Branch-and-Bound. Leo Liberti. LIX, École Polytechnique, France. INF , Lecture p. 1 Branch-and-Bound Leo Liberti LIX, École Polytechnique, France INF431 2011, Lecture p. 1 Reminders INF431 2011, Lecture p. 2 Problems Decision problem: a question admitting a YES/NO answer Example HAMILTONIAN

More information

Network Flows. 6. Lagrangian Relaxation. Programming. Fall 2010 Instructor: Dr. Masoud Yaghini

Network Flows. 6. Lagrangian Relaxation. Programming. Fall 2010 Instructor: Dr. Masoud Yaghini In the name of God Network Flows 6. Lagrangian Relaxation 6.3 Lagrangian Relaxation and Integer Programming Fall 2010 Instructor: Dr. Masoud Yaghini Integer Programming Outline Branch-and-Bound Technique

More information

18 hours nodes, first feasible 3.7% gap Time: 92 days!! LP relaxation at root node: Branch and bound

18 hours nodes, first feasible 3.7% gap Time: 92 days!! LP relaxation at root node: Branch and bound The MIP Landscape 1 Example 1: LP still can be HARD SGM: Schedule Generation Model Example 157323 1: LP rows, still can 182812 be HARD columns, 6348437 nzs LP relaxation at root node: 18 hours Branch and

More information

Column Generation. MTech Seminar Report. Soumitra Pal Roll No: under the guidance of

Column Generation. MTech Seminar Report. Soumitra Pal Roll No: under the guidance of Column Generation MTech Seminar Report by Soumitra Pal Roll No: 05305015 under the guidance of Prof. A. G. Ranade Computer Science and Engineering IIT-Bombay a Department of Computer Science and Engineering

More information

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

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

More information

Multivalued Decision Diagrams. Postoptimality Analysis Using. J. N. Hooker. Tarik Hadzic. Cork Constraint Computation Centre

Multivalued Decision Diagrams. Postoptimality Analysis Using. J. N. Hooker. Tarik Hadzic. Cork Constraint Computation Centre Postoptimality Analysis Using Multivalued Decision Diagrams Tarik Hadzic Cork Constraint Computation Centre J. N. Hooker Carnegie Mellon University London School of Economics June 2008 Postoptimality Analysis

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

Revised Simplex Method

Revised Simplex Method DM545 Linear and Integer Programming Lecture 7 Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark Outline 1. 2. 2 Motivation Complexity of single pivot operation

More information

Written Exam Linear and Integer Programming (DM554)

Written Exam Linear and Integer Programming (DM554) Written Exam Linear and Integer Programming (DM554) 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

Outline. Relaxation. Outline DMP204 SCHEDULING, TIMETABLING AND ROUTING. 1. Lagrangian Relaxation. Lecture 12 Single Machine Models, Column Generation

Outline. Relaxation. Outline DMP204 SCHEDULING, TIMETABLING AND ROUTING. 1. Lagrangian Relaxation. Lecture 12 Single Machine Models, Column Generation Outline DMP204 SCHEDULING, TIMETABLING AND ROUTING 1. Lagrangian Relaxation Lecture 12 Single Machine Models, Column Generation 2. Dantzig-Wolfe Decomposition Dantzig-Wolfe Decomposition Delayed Column

More information

Interior-Point versus Simplex methods for Integer Programming Branch-and-Bound

Interior-Point versus Simplex methods for Integer Programming Branch-and-Bound Interior-Point versus Simplex methods for Integer Programming Branch-and-Bound Samir Elhedhli elhedhli@uwaterloo.ca Department of Management Sciences, University of Waterloo, Canada Page of 4 McMaster

More information

Outline. Outline. Outline DMP204 SCHEDULING, TIMETABLING AND ROUTING. 1. Scheduling CPM/PERT Resource Constrained Project Scheduling Model

Outline. Outline. Outline DMP204 SCHEDULING, TIMETABLING AND ROUTING. 1. Scheduling CPM/PERT Resource Constrained Project Scheduling Model Outline DMP204 SCHEDULING, TIMETABLING AND ROUTING Lecture 3 and Mixed Integer Programg Marco Chiarandini 1. Resource Constrained Project Model 2. Mathematical Programg 2 Outline Outline 1. Resource Constrained

More information

Introduction to optimization

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

More information

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

Integer Linear Programming

Integer Linear Programming Integer Linear Programming Solution : cutting planes and Branch and Bound Hugues Talbot Laboratoire CVN April 13, 2018 IP Resolution Gomory s cutting planes Solution branch-and-bound General method Resolution

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

From structures to heuristics to global solvers

From structures to heuristics to global solvers From structures to heuristics to global solvers Timo Berthold Zuse Institute Berlin DFG Research Center MATHEON Mathematics for key technologies OR2013, 04/Sep/13, Rotterdam Outline From structures to

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

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

IE 5531: Engineering Optimization I

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

More information

Section #2: Linear and Integer Programming

Section #2: Linear and Integer Programming Section #2: Linear and Integer Programming Prof. Dr. Sven Seuken 8.3.2012 (with most slides borrowed from David Parkes) Housekeeping Game Theory homework submitted? HW-00 and HW-01 returned Feedback on

More information

Notes on Dantzig-Wolfe decomposition and column generation

Notes on Dantzig-Wolfe decomposition and column generation Notes on Dantzig-Wolfe decomposition and column generation Mette Gamst November 11, 2010 1 Introduction This note introduces an exact solution method for mathematical programming problems. The method is

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

Advanced Topics in Operations Research

Advanced Topics in Operations Research Advanced Topics in Operations Research jla@imm.dtu.dk Informatics and Mathematical Modelling Technical University of Denmark 1 Why look at the Set Partitioning Problem? The Set Partitioning Problem has

More information

Probabilistic Graphical Models

Probabilistic Graphical Models Probabilistic Graphical Models David Sontag New York University Lecture 6, March 7, 2013 David Sontag (NYU) Graphical Models Lecture 6, March 7, 2013 1 / 25 Today s lecture 1 Dual decomposition 2 MAP inference

More information

Lecture 10: Linear programming duality and sensitivity 0-0

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

More information

Linear and Combinatorial Optimization

Linear and Combinatorial Optimization Linear and Combinatorial Optimization The dual of an LP-problem. Connections between primal and dual. Duality theorems and complementary slack. Philipp Birken (Ctr. for the Math. Sc.) Lecture 3: Duality

More information

Introduction column generation

Introduction column generation Introduction column generation Han Hoogeveen Institute of Information and Computing Sciences University Utrecht The Netherlands May 28, 2018 Contents Shadow prices Reduced cost Column generation Example:

More information

Integer Programming Reformulations: Dantzig-Wolfe & Benders Decomposition the Coluna Software Platform

Integer Programming Reformulations: Dantzig-Wolfe & Benders Decomposition the Coluna Software Platform Integer Programming Reformulations: Dantzig-Wolfe & Benders Decomposition the Coluna Software Platform François Vanderbeck B. Detienne, F. Clautiaux, R. Griset, T. Leite, G. Marques, V. Nesello, A. Pessoa,

More information

Lecture 9: Dantzig-Wolfe Decomposition

Lecture 9: Dantzig-Wolfe Decomposition Lecture 9: Dantzig-Wolfe Decomposition (3 units) Outline Dantzig-Wolfe decomposition Column generation algorithm Relation to Lagrangian dual Branch-and-price method Generated assignment problem and multi-commodity

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

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

Weighted Acyclic Di-Graph Partitioning by Balanced Disjoint Paths

Weighted Acyclic Di-Graph Partitioning by Balanced Disjoint Paths Weighted Acyclic Di-Graph Partitioning by Balanced Disjoint Paths H. Murat AFSAR Olivier BRIANT Murat.Afsar@g-scop.inpg.fr Olivier.Briant@g-scop.inpg.fr G-SCOP Laboratory Grenoble Institute of Technology

More information

Dual bounds: can t get any better than...

Dual bounds: can t get any better than... Bounds, relaxations and duality Given an optimization problem z max{c(x) x 2 }, how does one find z, or prove that a feasible solution x? is optimal or close to optimal? I Search for a lower and upper

More information

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

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

More information

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

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

Advanced linear programming

Advanced linear programming Advanced linear programming http://www.staff.science.uu.nl/~akker103/alp/ Chapter 10: Integer linear programming models Marjan van den Akker 1 Intro. Marjan van den Akker Master Mathematics TU/e PhD Mathematics

More information

Advances in Bayesian Network Learning using Integer Programming

Advances in Bayesian Network Learning using Integer Programming Advances in Bayesian Network Learning using Integer Programming Mark Bartlett and James Cussens UAI-13, 2013-07-12 Supported by the UK Medical Research Council (Project Grant G1002312) Mark Bartlett and

More information

Linear Programming Duality P&S Chapter 3 Last Revised Nov 1, 2004

Linear Programming Duality P&S Chapter 3 Last Revised Nov 1, 2004 Linear Programming Duality P&S Chapter 3 Last Revised Nov 1, 2004 1 In this section we lean about duality, which is another way to approach linear programming. In particular, we will see: How to define

More information

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

Integer Programming ISE 418. Lecture 16. Dr. Ted Ralphs Integer Programming ISE 418 Lecture 16 Dr. Ted Ralphs ISE 418 Lecture 16 1 Reading for This Lecture Wolsey, Chapters 10 and 11 Nemhauser and Wolsey Sections II.3.1, II.3.6, II.3.7, II.5.4 CCZ Chapter 8

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

4. Duality and Sensitivity

4. Duality and Sensitivity 4. Duality and Sensitivity For every instance of an LP, there is an associated LP known as the dual problem. The original problem is known as the primal problem. There are two de nitions of the dual pair

More information

Integer Programming for Bayesian Network Structure Learning

Integer Programming for Bayesian Network Structure Learning Integer Programming for Bayesian Network Structure Learning James Cussens Prague, 2013-09-02 Supported by the UK Medical Research Council (Project Grant G1002312) James Cussens IP for BNs Prague, 2013-09-02

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

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

Discrete Optimization 2010 Lecture 8 Lagrangian Relaxation / P, N P and co-n P

Discrete Optimization 2010 Lecture 8 Lagrangian Relaxation / P, N P and co-n P Discrete Optimization 2010 Lecture 8 Lagrangian Relaxation / P, N P and co-n P Marc Uetz University of Twente m.uetz@utwente.nl Lecture 8: sheet 1 / 32 Marc Uetz Discrete Optimization Outline 1 Lagrangian

More information

Overview of course. Introduction to Optimization, DIKU Monday 12 November David Pisinger

Overview of course. Introduction to Optimization, DIKU Monday 12 November David Pisinger Introduction to Optimization, DIKU 007-08 Monday November David Pisinger Lecture What is OR, linear models, standard form, slack form, simplex repetition, graphical interpretation, extreme points, basic

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

Thermal Unit Commitment Problem

Thermal Unit Commitment Problem Thermal Unit Commitment Problem Moshe Potsane, Luyanda Ndlovu, Simphiwe Simelane Christiana Obagbuwa, Jesal Kika, Nadine Padayachi, Luke O. Joel Lady Kokela, Michael Olusanya, Martins Arasomwa, Sunday

More information

MVE165/MMG630, Applied Optimization Lecture 6 Integer linear programming: models and applications; complexity. Ann-Brith Strömberg

MVE165/MMG630, Applied Optimization Lecture 6 Integer linear programming: models and applications; complexity. Ann-Brith Strömberg MVE165/MMG630, Integer linear programming: models and applications; complexity Ann-Brith Strömberg 2011 04 01 Modelling with integer variables (Ch. 13.1) Variables Linear programming (LP) uses continuous

More information

is called an integer programming (IP) problem. model is called a mixed integer programming (MIP)

is called an integer programming (IP) problem. model is called a mixed integer programming (MIP) INTEGER PROGRAMMING Integer Programming g In many problems the decision variables must have integer values. Example: assign people, machines, and vehicles to activities in integer quantities. If this is

More information

APPLIED MECHANISM DESIGN FOR SOCIAL GOOD

APPLIED MECHANISM DESIGN FOR SOCIAL GOOD APPLIED MECHANISM DESIGN FOR SOCIAL GOOD JOHN P DICKERSON Lecture #4 09/08/2016 CMSC828M Tuesdays & Thursdays 12:30pm 1:45pm PRESENTATION LIST IS ONLINE! SCRIBE LIST COMING SOON 2 THIS CLASS: (COMBINATORIAL)

More information

Applications. Stephen J. Stoyan, Maged M. Dessouky*, and Xiaoqing Wang

Applications. Stephen J. Stoyan, Maged M. Dessouky*, and Xiaoqing Wang Introduction to Large-Scale Linear Programming and Applications Stephen J. Stoyan, Maged M. Dessouky*, and Xiaoqing Wang Daniel J. Epstein Department of Industrial and Systems Engineering, University of

More information

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

Introduction to Mathematical Programming IE406. Lecture 13. Dr. Ted Ralphs Introduction to Mathematical Programming IE406 Lecture 13 Dr. Ted Ralphs IE406 Lecture 13 1 Reading for This Lecture Bertsimas Chapter 5 IE406 Lecture 13 2 Sensitivity Analysis In many real-world problems,

More information

PART 4 INTEGER PROGRAMMING

PART 4 INTEGER PROGRAMMING PART 4 INTEGER PROGRAMMING 102 Read Chapters 11 and 12 in textbook 103 A capital budgeting problem We want to invest $19 000 Four investment opportunities which cannot be split (take it or leave it) 1.

More information

4. The Dual Simplex Method

4. The Dual Simplex Method 4. The Dual Simplex Method Javier Larrosa Albert Oliveras Enric Rodríguez-Carbonell Problem Solving and Constraint Programming (RPAR) Session 4 p.1/34 Basic Idea (1) Algorithm as explained so far known

More information

Decomposition Methods for Integer Programming

Decomposition Methods for Integer Programming Decomposition Methods for Integer Programming J.M. Valério de Carvalho vc@dps.uminho.pt Departamento de Produção e Sistemas Escola de Engenharia, Universidade do Minho Portugal PhD Course Programa Doutoral

More information

Feasibility Pump Heuristics for Column Generation Approaches

Feasibility Pump Heuristics for Column Generation Approaches 1 / 29 Feasibility Pump Heuristics for Column Generation Approaches Ruslan Sadykov 2 Pierre Pesneau 1,2 Francois Vanderbeck 1,2 1 University Bordeaux I 2 INRIA Bordeaux Sud-Ouest SEA 2012 Bordeaux, France,

More information

DM559/DM545 Linear and integer programming

DM559/DM545 Linear and integer programming Department of Mathematics and Computer Science University of Southern Denmark, Odense April, 208 Marco Chiarandini DM559/DM545 Linear and integer programming Sheet 3, Spring 208 [pdf format] Included.

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

Course Notes for MS4315 Operations Research 2

Course Notes for MS4315 Operations Research 2 Course Notes for MS4315 Operations Research 2 J. Kinsella October 29, 2015 0-0 MS4315 Operations Research 2 0-1 Contents 1 Integer Programs; Examples & Formulations 4 1.1 Linear Programs A Reminder..............

More information

Column Generation for Extended Formulations

Column Generation for Extended Formulations 1 / 28 Column Generation for Extended Formulations Ruslan Sadykov 1 François Vanderbeck 2,1 1 INRIA Bordeaux Sud-Ouest, France 2 University Bordeaux I, France ISMP 2012 Berlin, August 23 2 / 28 Contents

More information

Convex Optimization and Support Vector Machine

Convex Optimization and Support Vector Machine Convex Optimization and Support Vector Machine Problem 0. Consider a two-class classification problem. The training data is L n = {(x 1, t 1 ),..., (x n, t n )}, where each t i { 1, 1} and x i R p. We

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

Large-scale optimization and decomposition methods: outline. Column Generation and Cutting Plane methods: a unified view

Large-scale optimization and decomposition methods: outline. Column Generation and Cutting Plane methods: a unified view Large-scale optimization and decomposition methods: outline I Solution approaches for large-scaled problems: I Delayed column generation I Cutting plane methods (delayed constraint generation) 7 I Problems

More information

Lagrangian Relaxation in MIP

Lagrangian Relaxation in MIP Lagrangian Relaxation in MIP Bernard Gendron May 28, 2016 Master Class on Decomposition, CPAIOR2016, Banff, Canada CIRRELT and Département d informatique et de recherche opérationnelle, Université de Montréal,

More information

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

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

More information

In the original knapsack problem, the value of the contents of the knapsack is maximized subject to a single capacity constraint, for example weight.

In the original knapsack problem, the value of the contents of the knapsack is maximized subject to a single capacity constraint, for example weight. In the original knapsack problem, the value of the contents of the knapsack is maximized subject to a single capacity constraint, for example weight. In the multi-dimensional knapsack problem, additional

More information

Lagrangean relaxation

Lagrangean relaxation Lagrangean relaxation Giovanni Righini Corso di Complementi di Ricerca Operativa Joseph Louis de la Grange (Torino 1736 - Paris 1813) Relaxations Given a problem P, such as: minimize z P (x) s.t. x X P

More information

Lessons from MIP Search. John Hooker Carnegie Mellon University November 2009

Lessons from MIP Search. John Hooker Carnegie Mellon University November 2009 Lessons from MIP Search John Hooker Carnegie Mellon University November 2009 Outline MIP search The main ideas Duality and nogoods From MIP to AI (and back) Binary decision diagrams From MIP to constraint

More information

CS 6820 Fall 2014 Lectures, October 3-20, 2014

CS 6820 Fall 2014 Lectures, October 3-20, 2014 Analysis of Algorithms Linear Programming Notes CS 6820 Fall 2014 Lectures, October 3-20, 2014 1 Linear programming The linear programming (LP) problem is the following optimization problem. We are given

More information

Stochastic Integer Programming

Stochastic Integer Programming IE 495 Lecture 20 Stochastic Integer Programming Prof. Jeff Linderoth April 14, 2003 April 14, 2002 Stochastic Programming Lecture 20 Slide 1 Outline Stochastic Integer Programming Integer LShaped Method

More information

Parallel PIPS-SBB Multi-level parallelism for 2-stage SMIPS. Lluís-Miquel Munguia, Geoffrey M. Oxberry, Deepak Rajan, Yuji Shinano

Parallel PIPS-SBB Multi-level parallelism for 2-stage SMIPS. Lluís-Miquel Munguia, Geoffrey M. Oxberry, Deepak Rajan, Yuji Shinano Parallel PIPS-SBB Multi-level parallelism for 2-stage SMIPS Lluís-Miquel Munguia, Geoffrey M. Oxberry, Deepak Rajan, Yuji Shinano ... Our contribution PIPS-PSBB*: Multi-level parallelism for Stochastic

More information

Multicommodity Flows and Column Generation

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

More information