A Framework for Integrating Optimization and Constraint Programming

Size: px
Start display at page:

Download "A Framework for Integrating Optimization and Constraint Programming"

Transcription

1 A Framework for Integrating Optimization and Constraint Programming John Hooker Carnegie Mellon University SARA 2007 SARA 07 Slide

2 Underlying theme Model vs. solution method. How can we match the model with the solution method? Modeling for integrated methods forces the issue. We can t formulate the problem for a particular solution method. SARA 07 Slide 2

3 An Eercise in Synthesis Analysis takes things apart. Synthesis looks for commonality. Characteristic of 9 th century. I will provide an overview of several eamples. Look for common patterns, not details. SARA 07 Slide 3

4 Why unify CP and Operations Research methods? One-stop shopping. One solver does it all. SARA 07 Slide 4

5 Why unify CP and OR methods? One-stop shopping. One solver does it all. Richer modeling framework. Natural models, less debugging & development time. SARA 07 Slide 5

6 Why join CP and OR methods? One-stop shopping. One solver does it all. Richer modeling framework. Natural models, less debugging & development time. Computational speedup. A selection of results SARA 07 Slide 6

7 Computational Advantage of Integrating CP and OR Using CP + relaation from MILP Focacci, Lodi, Milano (999) Refalo (999) Hooker & Osorio (999) Thorsteinsson & Ottosson (200) Problem Lesson timetabling Piecewise linear costs Flow shop scheduling, etc. Product configuration Speedup 2 to 50 times faster than CP 2 to 200 times faster than MILP 4 to 50 times faster than MILP. 30 to 40 times faster than CP, MILP SARA 07 Slide 7

8 Computational Advantage of Integrating CP and MILP Using CP + relaation from MILP Sellmann & Fahle (200) Van Hoeve (200) Bollapragada, Ghattas & Hooker (200) Beck & Refalo (2003) SARA 07 Slide 8 Problem Automatic recording Stable set problem Structural design (nonlinear) Scheduling with earliness & tardiness costs Speedup to 0 times faster than CP, MILP Better than CP in less time Up to 600 times faster than MILP. 2 problems: <6 min vs >20 hrs for MILP Solved 67 of 90, CP solved only 2

9 Computational Advantage of Integrating CP and MILP Using CP-based Branch and Price Yunes, Moura & de Souza (999) Easton, Nemhauser & Trick (2002) Problem Urban transit crew scheduling Traveling tournament scheduling Speedup Optimal schedule for 20 trips, vs. 20 for traditional branch and price First to solve 8-team instance SARA 07 Slide 9

10 Computational Advantage of Integrating CP and MILP Using CP/MILP Benders methods Jain & Grossmann (200) Thorsteinsson (200) Timpe (2002) Problem Min-cost planning & scheduing Min-cost planning & scheduling Polypropylene batch scheduling at BASF Speedup 20 to 000 times faster than CP, MILP 0 times faster than Jain & Grossmann Solved previously insoluble problem in 0 min SARA 07 Slide 0

11 Computational Advantage of Integrating CP and MILP Using CP/MILP Benders methods Benoist, Gaudin, Rottembourg (2002) Hooker (2004) Hooker (2005) Problem Call center scheduling Min-cost, min-makespan planning & cumulative scheduling Min tardiness planning & cumulative scheduling Speedup Solved twice as many instances as traditional Benders times faster than CP, MILP times faster than CP, MILP SARA 07 Slide

12 Modeling is the key Models should be eplanatory. As in the natural sciences. CP/OR models eplain by revealing problem structure. Through metaconstraints. Based on CP s global constraints. The model structure drives the solution process. Each metaconstraint knows how to combine CP and OR to eploit its structure. SARA 07 Slide 2

13 The basic algorithm Search: Enumerate problem restrictions Tree search (branching) Constraint-based (nogood-based) search SARA 07 Slide 3

14 The basic algorithm Search: Enumerate problem restrictions Tree search (branching) Constraint-based (nogood-based) search Infer: Deduce constraints from current restriction SARA 07 Slide 4

15 The basic algorithm Search: Enumerate problem restrictions Tree search (branching) Constraint-based (nogood-based) search Infer: Deduce constraints from current restriction Rela: Solve relaation of current restriction SARA 07 Slide 5

16 Unifying framework Eisting methods are special cases of this framework. Integrated methods are also special cases. Select an overall search scheme. Select inference methods as needed from CP, OR. Select relaation methods as needed. SARA 07 Slide 6

17 Color code Techniques from CP Techniques from OR SARA 07 Slide 7

18 Some eisting methods Branching Constraint solvers (CP) Search: Branching on domains Inference: Constraint propagation, filtering Relaation: Domain store Mied integer programming (OR) Search: Branch and bound Inference: Cutting planes Relaation: Linear programming SARA 07 Slide 8

19 Some eisting methods Constraint-based search SAT solvers (CP) Search: Branching on variables Inference: Unit clause rule, clause learning (nogoods) Relaation: Conflict clauses Benders decomposition (OR) Search: Enumeration of subproblems Inference: Benders cuts (nogoods) Relaation: Master problem SARA 07 Slide 9

20 Outline Eample problems to illustrate integrated approach Branching search Freight transfer Product configuration Continuous global optimization Airline crew scheduling Constraint-based search Propositional satisfiability Machine scheduling SARA 07 Slide 20

21 Eample: Freight Transfer Branch-and-bound search with interval propagation and cutting planes SARA 07 Slide 2

22 This eample illustrates: Branching on variables, with pruning based on bounds. Propagation based on: Interval propagation. Cutting planes (knapsack cuts). Relaation based on linear programming. SARA 07 Slide 22

23 Freight Transfer Transport 42 tons of freight using 8 trucks, which come in 4 sizes Truck size Number available Capacity (tons) Cost per truck SARA 07 Slide

24 Number of trucks of type min {0,,2,3} i Truck type Number available Capacity (tons) Cost per truck SARA 07 Slide

25 Number of trucks of type Knapsack metaconstraint knows which inference and relaation techniques to use. SARA 07 Slide 25 min {0,,2,3} Truck type i Number available Capacity (tons) Cost per truck

26 Number of trucks of type Domain metaconstraint knows how to branch min {0,,2,3} i Truck type Number available Capacity (tons) Cost per truck SARA 07 Slide

27 Bounds propagation min {0,,2,3} i = 7 SARA 07 Slide 27

28 Bounds propagation Reduced domain min {,2,3},,, {0,,2,3} = 7 SARA 07 Slide 28

29 Continuous relaation min , i Replace domains with bounds This is a linear programming problem, which is easy to solve. Its optimal value provides a lower bound on optimal value of original problem. SARA 07 Slide 29

30 Cutting planes (valid inequalities) min , i We can create a tighter relaation (larger minimum value) with the addition of cutting planes. SARA 07 Slide 30

31 Cutting planes (valid inequalities) min , i Cutting plane Continuous relaation All feasible solutions of the original problem satisfy a cutting plane (i.e., it is valid). SARA 07 Slide 3 But a cutting plane may eclude ( cut off ) solutions of the continuous relaation. Feasible solutions

32 Cutting planes (valid inequalities) min , {,2} is a packing i because alone cannot satisfy the inequality, even with = 2 = 3. SARA 07 Slide 32

33 Cutting planes (valid inequalities) min , {,2} is a packing i So, ( ) 3 4 SARA 07 Slide 33

34 Cutting planes (valid inequalities) min , {,2} is a packing i So, ( ) 3 4 Knapsack cut which implies 42 ( ) + = ma{ 4,3} SARA 07 Slide 34

35 Cutting planes (valid inequalities) min , i Maimal Packings {,2} {,3} {,4} Knapsack cuts SARA 07 Slide 35 Knapsack cuts corresponding to nonmaimal packings can be nonredundant.

36 Continuous relaation with cuts min , i Knapsack cuts Optimal value of is a lower bound on optimal value of original problem. SARA 07 Slide 36

37 Branch-inferand-rela tree Propagate bounds and solve relaation of original problem. { 23} 2 {023} 3 {023} 4 {023} = (2⅓,3,2⅔,0) value = 523⅓ SARA 07 Slide 37

38 Branch-inferand-rela tree Branch on a variable with nonintegral value in the relaation. { 23} 2 {023} 3 {023} 4 {023} = (2⅓,3,2⅔,0) value = 523⅓ {,2} = 3 SARA 07 Slide 38

39 Branch-inferand-rela tree Propagate bounds and solve relaation. Since relaation is infeasible, backtrack. { 2 } 2 { 23} 3 { 23} 4 { 23} infeasible relaation { 23} 2 {023} 3 {023} 4 {023} = (2⅓,3,2⅔,0) value = 523⅓ {,2} = 3 SARA 07 Slide 39

40 Branch-inferand-rela tree { 23} 2 {023} 3 {023} 4 {023} = (2⅓,3,2⅔,0) value = 523⅓ Propagate bounds and solve relaation. Branch on nonintegral variable. { 2 } 2 { 23} 3 { 23} 4 { 23} infeasible relaation {,2} = 3 { 3} 2 {023} 3 {023} 4 {023} = (3,2.6,2,0) value = {0,,2} 2 = 3 SARA 07 Slide 40

41 Branch-inferand-rela tree { 23} 2 {023} 3 {023} 4 {023} = (2⅓,3,2⅔,0) value = 523⅓ Branch again. { 2 } 2 { 23} 3 { 23} 4 { 23} infeasible relaation {,2} = 3 { 3} 2 {023} 3 {023} 4 {023} = (3,2.6,2,0) value = 526 { 3} 2 {02 } 3 { 23} 4 {023} = (3,2,2¾,0) value = 527½ 2 {0,,2} 2 = 3 3 {,2} 3 = 3 SARA 07 Slide 4

42 Branch-inferand-rela tree Solution of relaation is integral and therefore feasible in the original problem. This becomes the incumbent solution. SARA 07 Slide 42 { 2 } 2 { 23} 3 { 23} 4 { 23} infeasible relaation { 23} 2 {023} 3 {023} 4 {023} = (2⅓,3,2⅔,0) value = 523⅓ {,2} { 3} 2 {02 } 3 { 23} 4 {023} = (3,2,2¾,0) value = 527½ { 3} 3 {,2} 2 { 2 } 3 { 2 } 4 { 23} = (3,2,2,) value = 530 feasible solution = 3 3 = 3 { 3} 2 {023} 3 {023} 4 {023} = (3,2.6,2,0) value = {0,,2} 2 = 3

43 Branch-inferand-rela tree { 23} 2 {023} 3 {023} 4 {023} = (2⅓,3,2⅔,0) value = 523⅓ Solution is nonintegral, but we can backtrack because value of relaation is no better than incumbent solution. { 2 } 2 { 23} 3 { 23} 4 { 23} infeasible relaation {,2} = 3 { 3} 2 {02 } 3 { 23} 4 {023} = (3,2,2¾,0) value = 527½ { 3} 2 {023} 3 {023} 4 {023} = (3,2.6,2,0) value = {0,,2} 2 = 3 SARA 07 Slide 43 { 3} 3 {,2} 2 { 2 } 3 { 2 } 4 { 23} = (3,2,2,) value = 530 feasible solution 3 = 3 { 3} 2 {02 } 3 { 3} 4 {02 } = (3,½,3,½) value = 530 backtrack due to bound

44 Branch-inferand-rela tree { 23} 2 {023} 3 {023} 4 {023} = (2⅓,3,2⅔,0) value = 523⅓ Another feasible solution found. No better than incumbent solution, which is optimal because search has finished. SARA 07 Slide 44 { 2 } 2 { 23} 3 { 23} 4 { 23} infeasible relaation {,2} { 3} 2 {02 } 3 { 23} 4 {023} = (3,2,2¾,0) value = 527½ { 3} 3 {,2} 2 { 2 } 3 { 2 } 4 { 23} = (3,2,2,) value = 530 feasible solution = 3 3 = 3 { 3} 2 {023} 3 {023} 4 {023} = (3,2.6,2,0) value = {0,,2} 2 = 3 { 3} 2 {02 } 3 { 3} 4 {02 } = (3,½,3,½) value = 530 backtrack due to bound { 3} 2 { 3} 3 {02 } 4 {02 } = (3,3,0,2) value = 530 feasible solution

45 Branch-inferand-rela tree Two optimal solutions found. In general, not all optimal solutions are found, SARA 07 Slide 45 { 2 } 2 { 23} 3 { 23} 4 { 23} infeasible relaation { 23} 2 {023} 3 {023} 4 {023} = (2⅓,3,2⅔,0) value = 523⅓ {,2} { 3} 2 {02 } 3 { 23} 4 {023} = (3,2,2¾,0) value = 527½ { 3} 3 {,2} 2 { 2 } 3 { 2 } 4 { 23} = (3,2,2,) value = 530 optimal solution = 3 3 = 3 { 3} 2 {023} 3 {023} 4 {023} = (3,2.6,2,0) value = {0,,2} 2 = 3 { 3} 2 {02 } 3 { 3} 4 {02 } = (3,½,3,½) value = 530 backtrack due to bound { 3} 2 { 3} 3 {02 } 4 {02 } = (3,3,0,2) value = 530 optimal solution

46 Other types of cutting planes Lifted 0- knapsack inequalities Clique inequalities Gomory cuts Mied integer rounding cuts Disjunctive cuts Specialized cuts Flow cuts (fied charge network flow problem) Comb inequalities (traveling salesman problem) Many, many others SARA 07 Slide 46

47 Eample: Product Configuration Branch-and-bound search with propagation and relaation of variable indices. From: Thorsteinsson and Ottosson (200) SARA 07 Slide 47

48 This eample illustrates: Propagation of variable indices. Variable inde is converted to a specially structured element constraint. Specially structured filtering for element. Valid knapsack cuts are derived and propagated. SARA 07 Slide 48

49 This eample illustrates: Propagation of variable indices. Variable inde is converted to a specially structured element constraint. Specially structured filtering for element. Valid knapsack cuts are derived and propagated. Relaation of variable indices. Element is interpreted as a disjunction of linear systems. Conve hull relaation for disjunction is used. SARA 07 Slide 49

50 The problem Choose what type of each component, and how many Memory Memory Memory Memory Memory Memory Personal computer Power supply Disk drive Disk drive Disk drive Disk drive Disk drive Power supply Power supply Power supply SARA 07 Slide 50

51 Problem data SARA 07 Slide 5

52 Model of the problem Unit cost of producing attribute j Amount of attribute j produced (< 0 if consumed): memory, heat, power, weight, etc. min j c v v = q A, all j j i ijt ik L v U, all j j j j j j i Amount of attribute j produced by type t i of component i t i is a variable inde Quantity of component i installed SARA 07 Slide 52

53 Model of the problem Linear inequality metaconstraint min j c v v = q A, all j j i ijt ik L v U, all j j j j j j i SARA 07 Slide 53

54 Model of the problem Indeed linear metaconstraint min j c v v = q A, all j j i ijt ik L v U, all j j j j j j i SARA 07 Slide 54

55 To solve it: Branch on domains of t i and q i. Propagate element constraints and bounds on v j. Derive and propagate knapsack cuts. Rela element. Conve hull relaation for disjunction. SARA 07 Slide 55

56 Propagation min j c v v = q A, all j j i ijt ik L v U, all j j j j j j i This is propagated in the usual way SARA 07 Slide 56

57 Propagation v z, all j j = i i ( ) element t,( q, A,, q A ), z, all i, j i i ij i ijn i min j c v v = q A, all j j i ijt ik L v U, all j j j j j j i This is rewritten as This is propagated in the usual way SARA 07 Slide 57

58 Propagation v z, all j j = i i ( ) element t,( q, A,, q A ), z, all i, j i i ij i ijn i This can be propagated by (a) using specialized filters for element constraints of this form SARA 07 Slide 58

59 Propagation v z, all j j = i i ( ) element t,( q, A,, q A ), z, all i, j i i ij i ijn i This is propagated by (a) using specialized filters for element constraints of this form, (b) adding knapsack cuts for the valid inequalities: SARA 07 Slide 59 i i ma k D t i min k D t i { } A q v, all j ijk { } i A q v, all j ijk i j and (c) propagating the knapsack cuts. j [ v, v ] j j is current domain of v j

60 Relaation min j c v v = q A, all j j i ijt ik L v U, all j j j j j j i This is relaed as v j v j v j SARA 07 Slide 60

61 Relaation v z, all j j = i i ( ) element t,( q, A,, q A ), z, all i, j i i ij i ijn i min j c v v = q A, all j j i ijt ik L v U, all j j j j j j i This is relaed by relaing this and adding the knapsack cuts. This is relaed as v j v j v j SARA 07 Slide 6

62 Relaation v z, all j j = i i ( ) element t,( q, A,, q A ), z, all i, j i i ij i ijn i This is relaed by writing each element constraint as a disjunction of linear systems and writing a conve hull relaation of the disjunction: z = A q, q = q i ijk ik i ik k D k D ti ti SARA 07 Slide 62

63 Relaation So the following LP relaation is solved at each node of the search tree to obtain a lower bound: min j v = A q, all j j ijk ik i k D q = q, all i j k D t i v v v, all j q q q, all i { } knapsack cuts for ma A q v, all j { } knapsack cuts for min A q v, all j q 0, all i, k j t i ik j j j i i i ik c v j i i k D k D t i t i ijk i j ijk i j SARA 07 Slide 63

64 Solution of the eample After propagation, the solution of the relaation is feasible at the root node. No branching needed. min j v = A q, all j j ijk ik i k D q = q, all i j k D t i v v v, all j q q q, all i { } knapsack cuts for ma A q v, all j { } knapsack cuts for min A q v, all j q 0, all i, k j t i ik j j j i i i ik c v j i i k D k D t i t i q, q C = t = C q 2, q 2A = 2 t 2 = A q 3, q 3B = 3 t 3 = B ijk i j ijk i j SARA 07 Slide 64

65 After propagation, the solution of the relaation is feasible at the root node. No branching needed. SARA 07 Slide 65 Solution of the eample min j v = A q, all j j ijk ik i k D q = q, all i j k D t i v v v, all j q q q, all i { } knapsack cuts for ma A q v, all j { } knapsack cuts for min A q v, all j q 0, all i, k j t i ik j j j i i i ik c v j i i k D k D t i t i q, q C = t = C q 2, q 2A = 2 t 2 = A q 3, q 3B = 3 t 3 = B ijk i j ijk i j q is integral, only one q k is positive

66 Solution of the eample After propagation, the solution of the relaation is feasible at the root node. No branching needed. Personal computer Memory B Memory B Memory B Disk drive A Disk drive A q, q C = t = C q 2, q 2A = 2 t 2 = A q 3, q 3B = 3 t 3 = B Power supply C SARA 07 Slide 66

67 Eample: Continuous Global Optimization Branching on continuous variables with Lagrangean-based bounds propagation and linear or conve nonlinear relaation SARA 07 Slide 67

68 This eample illustrates: Branching by splitting boes. Propagation based on: Interval arithmetic. Lagrange multipliers. Linear relaation using McCormick factorization. The best continuous global solvers (e.g., BARON) combine these tecnniques from CP and OR. SARA 07 Slide 68

69 Propagation using Lagrange multipliers Supposing min f ( ) g( ) 0 S has optimal value v*, and each constraint i has Lagrange multiplier λ i *, it can be shown that if constraint i is tight, g ( ) i U v λ Where U is an upper bound on the optimal value. * i * SARA 07 Slide 69

70 Propagation using Lagrange multipliers Supposing min f ( ) g( ) 0 S has optimal value v*, and each constraint i has Lagrange multiplier λ i *, it can be shown that if constraint i is tight, g ( ) i U v λ This inequality can be propagated. * i * SARA 07 Slide 70

71 Propagation using Lagrange multipliers Supposing min f ( ) g( ) 0 S has optimal value v*, and each constraint i has Lagrange multiplier λ i *, it can be shown that if constraint i is tight, g ( ) i U v λ This inequality can be propagated. * i * When applied to bounds on variables, this technique yields bounds propagation. When the relaation is linear, this becomes reduced cost variable fiing (widely used in integer programming) SARA 07 Slide 7

72 The problem ma 2 4 = [0,], [0,2] 2 2 Global optimum Local optimum Feasible set SARA 07 Slide 72

73 The Problem ma 4 = [0,], [0,2] 2 Linear inequality metaconstraint SARA 07 Slide 73

74 The Problem ma 4 = [0,], [0,2] 2 Bilinear (in)equality metaconstraint SARA 07 Slide 74

75 To solve it: Search: split interval domains of, 2. Each node of search tree is a problem restriction. Propagation: Interval propagation, domain filtering. Use Lagrange multipliers to infer valid inequality for propagation. Relaation: Use function factorization to obtain linear continuous relaation. SARA 07 Slide 75

76 Interval propagation 2 Propagate intervals [0,], [0,2] through constraints to obtain [/8,7/8], [/4,7/4] SARA 07 Slide 76

77 Relaation (function factorization) Factor comple functions into elementary functions that have known linear relaations. Write 4 2 = as 4y = where y = 2. This factors 4 2 into linear function 4y and bilinear function 2. Linear function 4y is its own linear relaation. SARA 07 Slide 77

78 Relaation (function factorization) Factor comple functions into elementary functions that have known linear relaations. Write 4 2 = as 4y = where y = 2. This factors 4 2 into linear function 4y and bilinear function 2. Linear function 4y is its own linear relaation. Bilinear function y = 2 has relaation: + y y where domain of j is [, ] j j SARA 07 Slide 78

79 Relaation (function factorization) The linear relaation becomes: min 4y = y y , j =,2 j j j SARA 07 Slide 79

80 Relaation (function factorization) 2 Solve linear relaation. SARA 07 Slide 80

81 Relaation (function factorization) 2 Solve linear relaation. 2 [,.75] Since solution is infeasible, split an interval and branch. 2 [0.25,] SARA 07 Slide 8

82 2 [,.75] 2 [0.25,] 2 2 SARA 07 Slide 82

83 2 [,.75] 2 [0.25,] 2 Solution of relaation is feasible, value =.25 This becomes incumbent solution 2 SARA 07 Slide 83

84 2 [,.75] 2 [0.25,] 2 Solution of relaation is feasible, value =.25 This becomes incumbent solution 2 Solution of relaation is not quite feasible, value =.854 Also use Lagrange multipliers for domain filtering SARA 07 Slide 84

85 Relaation (function factorization) min 4y = y y , j =,2 j j j Associated Lagrange multiplier in solution of relaation is λ 2 =. SARA 07 Slide 85

86 Relaation (function factorization) min 4y = Associated Lagrange multiplier in solution of relaation is λ 2 =. + y y , j =,2 j j j SARA 07 Slide 86 This yields a valid inequality for propagation: =.45. Value of relaation Lagrange multiplier Value of incumbent solution

87 Eample: Airline Crew Scheduling Branch and price in which a linear relaation of an MILP is solved by CP-based column generation From: Fahle et al. (2002) SARA 07 Slide 87

88 This eample illustrates: Overall mied integer programming framework. Linear relaation solved by CP-based column generation. SARA 07 Slide 88

89 Solving an LP by column generation Suppose the LP relaation of an integer programming problem has a huge number of variables: min c A = b 0 SARA 07 Slide 89

90 Solving an LP by column generation Suppose the LP relaation of an integer programming problem has a huge number of variables: We will solve a restricted master problem, which has a small subset of the variables: Column j of A min c A = b 0 min j J j j 0 j J A j c j = b j ( λ) SARA 07 Slide 90

91 Solving an LP by column generation Suppose the LP relaation of an integer programming problem has a huge number of variables: We will solve a restricted master problem, which has a small subset of the variables: Column j of A min c A = b 0 min j J j j 0 j J A j c j = b j ( λ) Adding k to the problem would improve the solution if k has a negative reduced cost: r = c λa < k k k 0 SARA 07 Slide 9 Row vector of dual (Lagrange) multipliers

92 Column generation Adding k to the problem would improve the solution if k has a negative reduced cost: r = c λa < k k k 0 Computing the reduced cost of k is known as pricing k. Cost of column y So we solve the pricing problem: min y cy λy is a column of A SARA 07 Slide 92

93 Column generation Adding k to the problem would improve the solution if k has a negative reduced cost: r = c λa < k k k 0 Computing the reduced cost of k is known as pricing k. Cost of column y So we solve the pricing problem: This can often be solved by CP. min y cy λy is a column of A We hope to find an optimal solution before generating too many columns. SARA 07 Slide 93

94 Airline Crew Scheduling We want to assign crew members to flights to minimize cost while covering the flights and observing comple work rules. Flight data Start time Finish time SARA 07 Slide 94 A roster is the sequence of flights assigned to a single crew member. The gap between two consecutive flights in a roster must be from 2 to 3 hours. Total flight time for a roster must be between 6 and 0 hours. For eample, flight cannot immediately precede 6 flight 4 cannot immediately precede 5. The possible rosters are: (,3,5), (,4,6), (2,3,5), (2,4,6)

95 Airline Crew Scheduling There are 2 crew members, and the possible rosters are: (,3,5), (,4,6), (2,3,5), (2,4,6) The LP relaation of the problem is: Cost of assigning crew member to roster 2 = if we assign crew member to roster 2, = 0 otherwise. Each crew member is assigned to eactly roster. Each flight is assigned at least crew member. SARA 07 Slide 95

96 Airline Crew Scheduling There are 2 crew members, and the possible rosters are: (,3,5), (,4,6), (2,3,5), (2,4,6) The LP relaation of the problem is: Cost of assigning crew member to roster 2 = if we assign crew member to roster 2, = 0 otherwise. Each crew member is assigned to eactly roster. Each flight is assigned at least crew member. Rosters that cover flight. SARA 07 Slide 96

97 Airline Crew Scheduling There are 2 crew members, and the possible rosters are: (,3,5), (,4,6), (2,3,5), (2,4,6) The LP relaation of the problem is: Cost of assigning crew member to roster 2 = if we assign crew member to roster 2, = 0 otherwise. Each crew member is assigned to eactly roster. Each flight is assigned at least crew member. Rosters that cover flight 2. SARA 07 Slide 97

98 Airline Crew Scheduling There are 2 crew members, and the possible rosters are: (,3,5), (,4,6), (2,3,5), (2,4,6) The LP relaation of the problem is: Cost of assigning crew member to roster 2 = if we assign crew member to roster 2, = 0 otherwise. Each crew member is assigned to eactly roster. Each flight is assigned at least crew member. Rosters that cover flight 3. SARA 07 Slide 98

99 Airline Crew Scheduling There are 2 crew members, and the possible rosters are: (,3,5), (,4,6), (2,3,5), (2,4,6) The LP relaation of the problem is: Cost of assigning crew member to roster 2 = if we assign crew member to roster 2, = 0 otherwise. Each crew member is assigned to eactly roster. Each flight is assigned at least crew member. Rosters that cover flight 4. SARA 07 Slide 99

100 Airline Crew Scheduling There are 2 crew members, and the possible rosters are: (,3,5), (,4,6), (2,3,5), (2,4,6) The LP relaation of the problem is: Cost of assigning crew member to roster 2 = if we assign crew member to roster 2, = 0 otherwise. Each crew member is assigned to eactly roster. Each flight is assigned at least crew member. Rosters that cover flight 5. SARA 07 Slide 00

101 Airline Crew Scheduling There are 2 crew members, and the possible rosters are: (,3,5), (,4,6), (2,3,5), (2,4,6) The LP relaation of the problem is: Cost of assigning crew member to roster 2 = if we assign crew member to roster 2, = 0 otherwise. Each crew member is assigned to eactly roster. Each flight is assigned at least crew member. Rosters that cover flight 6. SARA 07 Slide 0

102 Airline Crew Scheduling There are 2 crew members, and the possible rosters are: (,3,5), (,4,6), (2,3,5), (2,4,6) The LP relaation of the problem is: Cost c 2 of assigning crew member to roster 2 = if we assign crew member to roster 2, = 0 otherwise. Each crew member is assigned to eactly roster. Each flight is assigned at least crew member. SARA 07 Slide 02 In a real problem, there can be millions of rosters.

103 Airline Crew Scheduling We start by solving the problem with a subset of the columns: Optimal dual solution u u 2 v v 2 v 3 v 4 v 5 v 6 SARA 07 Slide 03

104 Airline Crew Scheduling We start by solving the problem with a subset of the columns: Dual variables u u 2 v v 2 v 3 v 4 v 5 v 6 SARA 07 Slide 04

105 Airline Crew Scheduling We start by solving the problem with a subset of the columns: Dual variables u u 2 v v 2 v 3 v 4 v 5 v 6 The reduced cost of an ecluded roster k for crew member i is c u v ik i j j in roster k We will formulate the pricing problem as a shortest path problem. SARA 07 Slide 05

106 Pricing problem 2 Crew member Crew member 2 SARA 07 Slide 06

107 Pricing problem Each s-t path corresponds to a roster, provided the flight time is within bounds. 2 Crew member Crew member 2 SARA 07 Slide 07

108 Pricing problem Cost of flight 3 if it immediately follows flight, offset by dual multiplier for flight 2 Crew member Crew member 2 SARA 07 Slide 08

109 Pricing problem Cost of transferring from home to flight, offset by dual multiplier for crew member 2 Crew member Dual multiplier omitted to break symmetry Crew member 2 SARA 07 Slide 09

110 Pricing problem Length of a path is reduced cost of the corresponding roster. 2 Crew member Crew member 2 SARA 07 Slide 0

111 Pricing problem Arc lengths using dual solution of LP relaation Crew member Crew member SARA 07 Slide

112 Pricing problem Solution of shortest path problems Crew member Reduced cost = Add 2 to problem Crew member 2 Reduced cost = 2 Add 23 to problem. SARA 07 Slide After 2 and 23 are added to the problem, no remaining variable has negative reduced cost.

113 Pricing problem The shortest path problem cannot be solved by traditional shortest path algorithms, due to the bounds on total path length. It can be solved by CP: Set of flights assigned to crew member i Path length Graph Path global constraint Setsum global constraint Path( X, z, G), all flights i min i j X i { } i T f s T ma X flights, z < 0, all i i ( j j ) i Duration of flight j SARA 07 Slide 3

114 Eample: Propositional Satisfiability Constraint-directed search using conflict clauses as nogoods SARA 07 Slide 4

115 This eample illustrates: Constraint-based search Branching in Davis-Putnam-Loveland (DPL) method is reinterpreted as constraint-based search. Propagation based on unit clause rule, inference of nogoods. Nogoods are conflict clauses. Relaation that consists of current nogood set. SARA 07 Slide 5

116 Constraint-directed search Search over partial assignments to variables. Net partial assignment must satisfy nogoods so far accumulated (the master problem). Generate nogood for current partial assignment. Try to solve for the values of the remaining variables (i.e., solve the subproblem). If there is no solution, the nogood should eclude this partial assignment and perhaps others. Terminate when the subproblem has a solution. Or in an optimization problem, when the subproblem has the same value as the master problem. SARA 07 Slide 6

117 SARA 07 Slide Find a satisfying solution. The problem

118 SARA 07 Slide Find a satisfying solution. The problem CNF metaconstraint

119 To solve it by branching (DPL): Search: branch on j. Each node of search tree is a problem restriction. SARA 07 Slide 9

120 To solve it by branching (DPL): Search: branch on j. Each node of search tree is a problem restriction. Infer: clause learning, unit clause rule. SARA 07 Slide 20

121 To solve it by branching (DPL): Search: branch on j. Each node of search tree is a problem restriction. Infer: clause learning, unit clause rule. Rela: not used. SARA 07 Slide 2

122 Branching = 0 2 = 0 3 = 0 4 = 0 5 = 0 Branch to here. Unit clause rule proves infeasibility. (, 5 ) = (0,0) creates the conflict. SARA 07 Slide 22

123 Branching = 0 2 = 0 3 = 0 4 = 0 5 = 0 5 Branch to here. Unit clause rule proves infeasibility. (, 5 ) = (0,0) creates the conflict. Add conflict clause to constraint set. SARA 07 Slide 23

124 Branching = 0 2 = 0 3 = 0 4 = 0 = 0 = Backtrack and branch to here. (, 5 ) = (0,) creates the conflict. Generate conflict clause SARA 07 Slide 24

125 Branching = 0 2 = 0 4 = 0 3 = 0 = 0 = Backtrack to here and note that (, 2 ) = (0,0) is enough to create conflict. Generate new conflict clause Backtrack and branch to here. (, 5 ) = (0,) creates the conflict. Generate conflict clause SARA 07 Slide 25

126 Branching = 0 = 0 = = 0 3 = 0 2 Backtrack and branch to here and generate conflict clause = 0 = SARA 07 Slide 26

127 Branching = 0 = 0 = 2 2 Backtrack to here and generate new conflict clause 4 = 0 3 = 0 2 Backtrack and branch to here and generate conflict clause = 0 = SARA 07 Slide 27

128 Branching 2 = 0 = 0 = Backtrack and branch to here and generate final conflict clause 4 = 0 3 = 0 2 = 0 = SARA 07 Slide 28

129 To solve it by constraint-directed search: Search: generate partial assignments. Each leaf node of search tree corresponds to a partial assignment. SARA 07 Slide 29

130 To solve it by constraint-directed search: Search: generate partial assignments. Each leaf node of search tree is a partial assignment. Infer: generate nogoods (conflict clauses). Process nogoods in current relaation with parallel resolution. SARA 07 Slide 30

131 To solve it by constraint-directed search: Search: generate partial assignments. Each leaf node of search tree is a problem restriction. Infer: generate nogoods (conflict clauses). Process nogoods in current relaation with parallel resolution. Rela: Relaation R k consists of current processed nogoods. SARA 07 Slide 3

132 To solve it by constraint-directed search: Search: generate partial assignments. Each leaf node of search tree is a problem restriction. Infer: generate nogoods (conflict clauses). Process nogoods in current relaation with parallel resolution. Rela: Relaation R k consists of current processed nogoods. Select solution of relaation as in chronological backtracking. SARA 07 Slide 32

133 Constraint-Directed Search = 0 3 = 0 2 = 0 k 0 Relaation 5 R k Solution of R (0,0,0,0,0, ) k Nogoods 5 4 = 0 5 = 0 Conflict clause appears as nogood induced by solution of R k. 5 SARA 07 Slide 33

134 Constraint-Directed Search = 0 Consists of processed nogoods 3 = 0 2 = 0 k 0 Relaation 5 R k Solution of R (0,0,0,0,0, ) (0,0,0,0,, ) k Nogoods = 0 = 0 = SARA 07 Slide 34

135 Constraint-Directed Search = 0 Consists of processed nogoods 4 = 0 3 = 0 2 = 0 = 0 = k Relaation R k Solution of R (0,0,0,0,0, ) (0,0,0,0,, ) k Nogoods parallel-resolve to yield 2 parallel-absorbs SARA 07 Slide 35

136 Constraint-Directed Search = 0 = 0 = = 0 3 = 0 = 0 = SARA 07 Slide k Relaation R k Solution of (0,0,0,0,0, ) (0,0,0,0,, ) (0,,,,, ) R parallel-resolve to yield k Nogoods

137 Constraint-Directed Search = 0 = 2 = 0 3 = = 0 = 0 = k Relaation 5 2 R k Solution of R (0,0,0,0,0, ) (0,0,0,0,, ) (0,,,,, ) (,,,,, ) k Nogoods SARA 07 Slide 37 Search terminates

138 Partial-order dynamic backtracking Slight variation of previous algorithm Select solution of relaation that conforms to current nogood set. More freedom than in branching. SARA 07 Slide 38

139 Partial Order Dynamic Backtracking k 0 Relaation 5 R k Solution of R (0,0,0,0,0, ) k Nogoods 5 Arbitrarily choose one variable to be last SARA 07 Slide 39

140 Partial Order Dynamic Backtracking k 0 Relaation 5 R k Solution of R (0,0,0,0,0, ) k Nogoods 5 Other variables are penultimate Arbitrarily choose one variable to be last SARA 07 Slide 40

141 Partial Order Dynamic Backtracking k 0 2 Relaation 5 R k Solution of R (0,0,0,0,0, ) (,,,,0, ) k Nogoods 5 Since 5 is penultimate in at least one nogood, it must conform to nogoods. It must take value opposite its sign in the nogoods. 5 will have the same sign in all nogoods where it is penultimate. SARA 07 Slide 4 This allows more freedom than chronological backtracking.

142 Partial Order Dynamic Backtracking k 0 2 Relaation 5 R k Solution of R (0,0,0,0,0, ) (,,,,0, ) k Nogoods 5 5 Choice of last variable is arbitrary but must be consistent with partial order implied by previous choices. Since 5 is penultimate in at least one nogood, it must conform to nogoods. It must take value opposite its sign in the nogoods. 5 will have the same sign in all nogoods where it is penultimate. SARA 07 Slide 42 This allows more freedom than chronological backtracking.

143 Partial Order Dynamic Backtracking k 0 2 Relaation 5 5 R k Solution of R (0,0,0,0,0, ) (,,,,0, ) k Nogoods 5 5 Choice of last variable is arbitrary but must be consistent with partial order implied by previous choices. 5 5 Parallel-resolve to yield 5 SARA 07 Slide 43 Since 5 is penultimate in at least one nogood, it must conform to nogoods. It must take value opposite its sign in the nogoods. 5 will have the same sign in all nogoods where it is penultimate. This allows more freedom than chronological backtracking.

144 SARA 07 Slide ),,,,0, ( 2 ),0,,, (, ) (0,0,0,0,0, 0 Nogoods Solution of Relaation R R k k k does not parallel-resolve with Partial Order Dynamic Backtracking because 5 is not last in both clauses

145 SARA 07 Slide 45 4 ),,,,, ( 3 ),,,,0, ( 2 ),0,,, (, ) (0,0,0,0,0, 0 Nogoods Solution of Relaation R R k k k Partial Order Dynamic Backtracking Must conform Search terminates

146 SARA 07 Slide 46

147 Eample: Machine Scheduling Constraint-directed search using logic-based Benders decomposition SARA 07 Slide 47

148 This eample illustrates: Constraint-based search as Benders decomposition Nogoods are Benders cuts. Solution of the master problem by MILP. Allocate jobs to machines. Solution of the subproblem by CP. Schedule jobs on each machine SARA 07 Slide 48

149 Benders decomposition Constraint-directed search in which the master problem contains a fied set of variables. Applied to problems of the form min f (, y) S(, y) D, y D y When is fied to some value, the resulting subproblem is much easier: min f (, y ) S(, y) y D y perhaps because it decouples into smaller problems. SARA 07 Slide 49

150 Benders decomposition Constraint-directed search in which the master problem contains a fied set of variables. Applied to problems of the form min f (, y) S(, y) D, y D SARA 07 Slide 50 y When is fied to some value, the resulting subproblem is much easier: min f (, y ) S(, y) y D y perhaps because it decouples into smaller problems. Nogoods are Benders cuts and eclude solutions no better than. The Benders cut is obtained by solving the inference dual of the subproblem (classically, the linear programming dual).

151 Machine Scheduling Assign 5 jobs to 2 machines (A and B), and schedule the machines assigned to each machine within time windows. The objective is to minimize makespan. Time lapse between start of first job and end of last job. Assign the jobs in the master problem, to be solved by MILP. Schedule the jobs in the subproblem, to be solved by CP. SARA 07 Slide 5

152 Machine Scheduling Job Data Once jobs are assigned, we can minimize overall makespan by minimizing makespan on each machine individually. So the subproblem decouples. Machine A Machine B SARA 07 Slide 52

153 Machine Scheduling Job Data Once jobs are assigned, we can minimize overall makespan by minimizing makespan on each machine individually. So the subproblem decouples. Minimum makespan schedule for jobs, 2, 3, 5 on machine A SARA 07 Slide 53

154 Machine Scheduling The problem is min M M s + p, all j j j r s d p, all j j j j j j Start time of job j j ( j j = ij j = ) disjunctive ( s i ),( p i ), all i Time windows Jobs cannot overlap SARA 07 Slide 54

155 Machine Scheduling The problem is min M M s + p, all j j j r s d p, all j j j j j j j ( j j = ij j = ) Indeed linear metaconstraint disjunctive ( s i ),( p i ), all i SARA 07 Slide 55

156 Machine Scheduling The problem is min M M s + p, all j j j r s d p, all j j j j j j j ( j j = ij j = ) disjunctive ( s i ),( p i ), all i Specially-structured indeed linear metaconstraint Disjunctive scheduling metaconstraint SARA 07 Slide 56

157 Machine Scheduling The problem is min M M s + p, all j j j r s d p, all j j j j j j Start time of job j j ( j j = ij j = ) disjunctive ( s i ),( p i ), all i Time windows Jobs cannot overlap For a fied assignment the subproblem on each machine i is SARA 07 Slide 57 min M M s + p, all j with = i j j j j r s d p, all j with = i j j j j j j ( s j j = i pij j = i ) disjunctive ( ),( )

158 Benders cuts Suppose we assign jobs,2,3,5 to machine A in iteration k. We can prove that 0 is the optimal makespan by proving that the schedule is infeasible with makespan 9. Edge finding derives infeasibility by reasoning only with jobs 2,3,5. So these jobs alone create a minimum makespan of 0. So we have a Benders cut SARA 07 Slide 58 0 if 2 = 3 = 4 = A v Bk + ( ) = 0 otherwise

159 Benders cuts We want the master problem to be an MILP, which is good for assignment problems. So we write the Benders cut v B ( ) k + 0 if 2 = 3 = 4 = A = 0 otherwise Using 0- variables: v 0( + + 2) v 0 A2 A3 A5 = if job 5 is assigned to machine A SARA 07 Slide 59

160 Master problem The master problem is an MILP: min v 5 j = 5 j = Aj Bj 5 5 ij ij ij ij j = j = 3 B4 { 0,} Constraints derived from time windows 0, etc. Constraints derived from release times 0, etc. v p, v 2 + p, etc., i = A, B v 0( + + 2) v ij p p 8 Aj Bj A2 A3 A5 Benders cut from machine A Benders cut from machine B SARA 07 Slide 60

161 Stronger Benders cuts If all release times are the same, we can strengthen the Benders cuts. We are now using the cut SARA 07 Slide 6 Min makespan on machine i in iteration k v Mik ij Jik + j J ik Set of jobs assigned to machine i in iteration k A stronger cut provides a useful bound even if only some of the jobs in J ik are assigned to machine i: v M ( ) p ik ij ij j J These results can be generalized to cumulative scheduling. ik

162 Background Reading Most of this talk is based on: J. N. Hooker, Integrated Methods for Optimization, Springer (2007). J. N. Hooker, Operations research methods in constraint programming, in F. Rossi, P. van Beek and T. Walsh, eds., Handbook of Constraint Programming, Elsevier (2006) SARA 07 Slide 62 Cited references: T. Fahle, U. Junker, S. E. Karish, N. Kohn, M. Sellmann, B. Vaaben. Constraint programming based column generation for crew assignment, Journal of Heuristics 8 (2002) 59-8 E. Thorsteinsson and G. Ottosson, Linear relaation and reducedcost based propagation of continuous variable subscripts, Annals of Operations Research 5 (200) 5-29.

163 SARA 07 Slide 63

Combining Optimization and Constraint Programming

Combining Optimization and Constraint Programming Combining Optimization and Constraint Programming John Hooker Carnegie Mellon University GE Research Center 7 September 2007 GE 7 Sep 07 Slide 1 Optimization and Constraint Programming Optimization: focus

More information

Operations Research Methods in Constraint Programming

Operations Research Methods in Constraint Programming Operations Research Methods in Constraint Programming John Hooker Carnegie Mellon University Prepared for Lloret de Mar, Spain June 2007 2007 Slide 1 CP and OR Have Complementary Strengths CP: Inference

More information

A Scheme for Integrated Optimization

A Scheme for Integrated Optimization A Scheme for Integrated Optimization John Hooker ZIB November 2009 Slide 1 Outline Overview of integrated methods A taste of the underlying theory Eamples, with results from SIMPL Proposal for SCIP/SIMPL

More information

Integrating Solution Methods. through Duality. US-Mexico Workshop on Optimization. Oaxaca, January John Hooker

Integrating Solution Methods. through Duality. US-Mexico Workshop on Optimization. Oaxaca, January John Hooker Integrating Solution Methods through Duality John Hooker US-Meico Workshop on Optimization Oaaca, January 2011 Zapotec Duality mask Late classical period Represents life/death, day/night, heat/cold See

More information

An Integrated Approach to Truss Structure Design

An Integrated Approach to Truss Structure Design Slide 1 An Integrated Approach to Truss Structure Design J. N. Hooker Tallys Yunes CPAIOR Workshop on Hybrid Methods for Nonlinear Combinatorial Problems Bologna, June 2010 How to Solve Nonlinear Combinatorial

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

Tutorial: Operations Research in Constraint Programming

Tutorial: Operations Research in Constraint Programming Tutorial: Operations Research in Constraint Programming John Hooker Carnegie Mellon University May 2009 Revised June 2009 May 2009 Slide 1 Why Integrate OR and CP? Complementary strengths Computational

More information

Projection, Consistency, and George Boole

Projection, Consistency, and George Boole Projection, Consistency, and George Boole John Hooker Carnegie Mellon University CP 2015, Cork, Ireland Projection as a Unifying Concept Projection underlies both optimization and logical inference. Optimization

More information

Projection in Logic, CP, and Optimization

Projection in Logic, CP, and Optimization Projection in Logic, CP, and Optimization John Hooker Carnegie Mellon University Workshop on Logic and Search Melbourne, 2017 Projection as a Unifying Concept Projection is a fundamental concept in logic,

More information

Projection, Inference, and Consistency

Projection, Inference, and Consistency Projection, Inference, and Consistency John Hooker Carnegie Mellon University IJCAI 2016, New York City A high-level presentation. Don t worry about the details. 2 Projection as a Unifying Concept Projection

More information

Consistency as Projection

Consistency as Projection Consistency as Projection John Hooker Carnegie Mellon University INFORMS 2015, Philadelphia USA Consistency as Projection Reconceive consistency in constraint programming as a form of projection. For eample,

More information

Recent Developments in Integrated Methods for Optimization

Recent Developments in Integrated Methods for Optimization Recent Developments in Integrated Methods for Optimization John Hooker Carnegie Mellon University August 2012 Premise Constraint programming and mathematical programming can work together. There is underlying

More information

A Search-Infer-and-Relax Framework for Integrating Solution Methods

A Search-Infer-and-Relax Framework for Integrating Solution Methods Carnegie Mellon University Research Showcase @ CMU Tepper School of Business 2005 A Search-Infer-and-Relax Framework for Integrating Solution Methods John N. Hooker Carnegie Mellon University, john@hooker.tepper.cmu.edu

More information

Logic, Optimization and Data Analytics

Logic, Optimization and Data Analytics Logic, Optimization and Data Analytics John Hooker Carnegie Mellon University United Technologies Research Center, Cork, Ireland August 2015 Thesis Logic and optimization have an underlying unity. Ideas

More information

An Integrated Solver for Optimization Problems

An Integrated Solver for Optimization Problems WORKING PAPER WPS-MAS-08-01 Department of Management Science School of Business Administration, University of Miami Coral Gables, FL 33124-8237 Created: December 2005 Last update: July 2008 An Integrated

More information

Single-Facility Scheduling by Logic-Based Benders Decomposition

Single-Facility Scheduling by Logic-Based Benders Decomposition Single-Facility Scheduling by Logic-Based Benders Decomposition Elvin Coban J. N. Hooker Tepper School of Business Carnegie Mellon University ecoban@andrew.cmu.edu john@hooker.tepper.cmu.edu September

More information

Scheduling Home Hospice Care with Logic-Based Benders Decomposition

Scheduling Home Hospice Care with Logic-Based Benders Decomposition Scheduling Home Hospice Care with Logic-Based Benders Decomposition John Hooker Carnegie Mellon University Joint work with Aliza Heching Ryo Kimura Compassionate Care Hospice CMU Lehigh University October

More information

A Framework for Integrating Exact and Heuristic Optimization Methods

A Framework for Integrating Exact and Heuristic Optimization Methods A Framework for Integrating Eact and Heuristic Optimization Methods John Hooker Carnegie Mellon University Matheuristics 2012 Eact and Heuristic Methods Generally regarded as very different. Eact methods

More information

Logic-Based Benders Decomposition

Logic-Based Benders Decomposition Logic-Based Benders Decomposition J. N. Hooker Graduate School of Industrial Administration Carnegie Mellon University, Pittsburgh, PA 15213 USA G. Ottosson Department of Information Technology Computing

More information

Integrating CP and Mathematical Programming

Integrating CP and Mathematical Programming Integrating CP and Mathematical Programming John Hooker Carnegie Mellon University June 2011 June 2011 Slide 1 Why Integrate CP and MP? Complementary strengths Computational advantages Outline of the Tutorial

More information

An Integrated Method for Planning and Scheduling to Minimize Tardiness

An Integrated Method for Planning and Scheduling to Minimize Tardiness An Integrated Method for Planning and Scheduling to Minimize Tardiness J N Hooker Carnegie Mellon University john@hookerteppercmuedu Abstract We combine mixed integer linear programming (MILP) and constraint

More information

Duality in Optimization and Constraint Satisfaction

Duality in Optimization and Constraint Satisfaction Duality in Optimization and Constraint Satisfaction J. N. Hooker Carnegie Mellon University, Pittsburgh, USA john@hooker.tepper.cmu.edu Abstract. We show that various duals that occur in optimization and

More information

How to Relax. CP 2008 Slide 1. John Hooker Carnegie Mellon University September 2008

How to Relax. CP 2008 Slide 1. John Hooker Carnegie Mellon University September 2008 How to Relax Slide 1 John Hooker Carnegie Mellon University September 2008 Two ways to relax Relax your mind and body. Relax your problem formulations. Slide 2 Relaxing a problem Feasible set of original

More information

Decision Diagrams: Tutorial

Decision Diagrams: Tutorial Decision Diagrams: Tutorial John Hooker Carnegie Mellon University CP Summer School Cork, Ireland, June 2016 Decision Diagrams Used in computer science and AI for decades Logic circuit design Product configuration

More information

Optimization in Process Systems Engineering

Optimization in Process Systems Engineering Optimization in Process Systems Engineering M.Sc. Jan Kronqvist Process Design & Systems Engineering Laboratory Faculty of Science and Engineering Åbo Akademi University Most optimization problems in production

More information

Logic-based Benders Decomposition

Logic-based Benders Decomposition Logic-based Benders Decomposition A short Introduction Martin Riedler AC Retreat Contents 1 Introduction 2 Motivation 3 Further Notes MR Logic-based Benders Decomposition June 29 July 1 2 / 15 Basic idea

More information

Optimization Methods in Logic

Optimization Methods in Logic Optimization Methods in Logic John Hooker Carnegie Mellon University February 2003, Revised December 2008 1 Numerical Semantics for Logic Optimization can make at least two contributions to boolean logic.

More information

The Separation Problem for Binary Decision Diagrams

The Separation Problem for Binary Decision Diagrams The Separation Problem for Binary Decision Diagrams J. N. Hooker Joint work with André Ciré Carnegie Mellon University ISAIM 2014 Separation Problem in Optimization Given a relaxation of an optimization

More information

Planning and Scheduling by Logic-Based Benders Decomposition

Planning and Scheduling by Logic-Based Benders Decomposition Planning and Scheduling by Logic-Based Benders Decomposition J. N. Hooker Carnegie Mellon University john@hooker.tepper.cmu.edu July 2004, Revised October 2005 Abstract We combine mixed integer linear

More information

Benders decomposition [7, 17] uses a problem-solving strategy that can be generalized to a larger context. It assigns some of the variables trial valu

Benders decomposition [7, 17] uses a problem-solving strategy that can be generalized to a larger context. It assigns some of the variables trial valu Logic-Based Benders Decomposition Λ J. N. Hooker Graduate School of Industrial Administration Carnegie Mellon University, Pittsburgh, PA 15213 USA G. Ottosson Department of Information Technology Computing

More information

Decision Diagrams for Discrete Optimization

Decision Diagrams for Discrete Optimization Decision Diagrams for Discrete Optimization Willem Jan van Hoeve Tepper School of Business Carnegie Mellon University www.andrew.cmu.edu/user/vanhoeve/mdd/ Acknowledgments: David Bergman, Andre Cire, Samid

More information

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

Introduction to Mathematical Programming IE406. Lecture 21. Dr. Ted Ralphs Introduction to Mathematical Programming IE406 Lecture 21 Dr. Ted Ralphs IE406 Lecture 21 1 Reading for This Lecture Bertsimas Sections 10.2, 10.3, 11.1, 11.2 IE406 Lecture 21 2 Branch and Bound Branch

More information

arxiv: v1 [cs.cc] 5 Dec 2018

arxiv: v1 [cs.cc] 5 Dec 2018 Consistency for 0 1 Programming Danial Davarnia 1 and J. N. Hooker 2 1 Iowa state University davarnia@iastate.edu 2 Carnegie Mellon University jh38@andrew.cmu.edu arxiv:1812.02215v1 [cs.cc] 5 Dec 2018

More information

Integer Programming Part II

Integer Programming Part II Be the first in your neighborhood to master this delightful little algorithm. Integer Programming Part II The Branch and Bound Algorithm learn about fathoming, bounding, branching, pruning, and much more!

More information

Solving Mixed-Integer Nonlinear Programs

Solving Mixed-Integer Nonlinear Programs Solving Mixed-Integer Nonlinear Programs (with SCIP) Ambros M. Gleixner Zuse Institute Berlin MATHEON Berlin Mathematical School 5th Porto Meeting on Mathematics for Industry, April 10 11, 2014, Porto

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

Orbital Shrinking: A New Tool for Hybrid MIP/CP Methods

Orbital Shrinking: A New Tool for Hybrid MIP/CP Methods Orbital Shrinking: A New Tool for Hybrid MIP/CP Methods Domenico Salvagnin DEI, University of Padova salvagni@dei.unipd.it Abstract. Orbital shrinking is a newly developed technique in the MIP community

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

Lift-and-Project cuts: an efficient solution method for mixed-integer programs

Lift-and-Project cuts: an efficient solution method for mixed-integer programs Lift-and-Project cuts: an efficient solution method for mied-integer programs Sebastian Ceria Graduate School of Business and Computational Optimization Research Center http://www.columbia.edu/~sc44 Columbia

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

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

Alternative Methods for Obtaining. Optimization Bounds. AFOSR Program Review, April Carnegie Mellon University. Grant FA

Alternative Methods for Obtaining. Optimization Bounds. AFOSR Program Review, April Carnegie Mellon University. Grant FA Alternative Methods for Obtaining Optimization Bounds J. N. Hooker Carnegie Mellon University AFOSR Program Review, April 2012 Grant FA9550-11-1-0180 Integrating OR and CP/AI Early support by AFOSR First

More information

Scheduling with Constraint Programming. Job Shop Cumulative Job Shop

Scheduling with Constraint Programming. Job Shop Cumulative Job Shop Scheduling with Constraint Programming Job Shop Cumulative Job Shop CP vs MIP: Task Sequencing We need to sequence a set of tasks on a machine Each task i has a specific fixed processing time p i Each

More information

Computational Integer Programming. Lecture 2: Modeling and Formulation. Dr. Ted Ralphs

Computational Integer Programming. Lecture 2: Modeling and Formulation. Dr. Ted Ralphs Computational Integer Programming Lecture 2: Modeling and Formulation Dr. Ted Ralphs Computational MILP Lecture 2 1 Reading for This Lecture N&W Sections I.1.1-I.1.6 Wolsey Chapter 1 CCZ Chapter 2 Computational

More information

On the exact solution of a large class of parallel machine scheduling problems

On the exact solution of a large class of parallel machine scheduling problems 1 / 23 On the exact solution of a large class of parallel machine scheduling problems Teobaldo Bulhões 2 Ruslan Sadykov 1 Eduardo Uchoa 2 Anand Subramanian 3 1 Inria Bordeaux and Univ. Bordeaux, France

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

4/12/2011. Chapter 8. NP and Computational Intractability. Directed Hamiltonian Cycle. Traveling Salesman Problem. Directed Hamiltonian Cycle

4/12/2011. Chapter 8. NP and Computational Intractability. Directed Hamiltonian Cycle. Traveling Salesman Problem. Directed Hamiltonian Cycle Directed Hamiltonian Cycle Chapter 8 NP and Computational Intractability Claim. G has a Hamiltonian cycle iff G' does. Pf. Suppose G has a directed Hamiltonian cycle Γ. Then G' has an undirected Hamiltonian

More information

Chapter 3: Discrete Optimization Integer Programming

Chapter 3: Discrete Optimization Integer Programming Chapter 3: Discrete Optimization Integer Programming Edoardo Amaldi DEIB Politecnico di Milano edoardo.amaldi@polimi.it Website: http://home.deib.polimi.it/amaldi/opt-16-17.shtml Academic year 2016-17

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

Stochastic Decision Diagrams

Stochastic Decision Diagrams Stochastic Decision Diagrams John Hooker CORS/INFORMS Montréal June 2015 Objective Relaxed decision diagrams provide an generalpurpose method for discrete optimization. When the problem has a dynamic programming

More information

Integer Programming and Branch and Bound

Integer Programming and Branch and Bound Courtesy of Sommer Gentry. Used with permission. Integer Programming and Branch and Bound Sommer Gentry November 4 th, 003 Adapted from slides by Eric Feron and Brian Williams, 6.40, 00. Integer Programming

More information

Multiperiod Blend Scheduling Problem

Multiperiod Blend Scheduling Problem ExxonMobil Multiperiod Blend Scheduling Problem Juan Pablo Ruiz Ignacio E. Grossmann Department of Chemical Engineering Center for Advanced Process Decision-making University Pittsburgh, PA 15213 1 Motivation

More information

arxiv:cs/ v2 [cs.dm] 21 Aug 2001

arxiv:cs/ v2 [cs.dm] 21 Aug 2001 Solving Assembly Line Balancing Problems by Combining IP and CP Alexander Bockmayr and Nicolai Pisaruk arxiv:cs/0106002v2 [cs.dm] 21 Aug 2001 Université Henri Poincaré, LORIA B.P. 239, F-54506 Vandœuvre-lès-Nancy,

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

Chapter 3: Discrete Optimization Integer Programming

Chapter 3: Discrete Optimization Integer Programming Chapter 3: Discrete Optimization Integer Programming Edoardo Amaldi DEIB Politecnico di Milano edoardo.amaldi@polimi.it Sito web: http://home.deib.polimi.it/amaldi/ott-13-14.shtml A.A. 2013-14 Edoardo

More information

A Hub Location Problem with Fully Interconnected Backbone and Access Networks

A Hub Location Problem with Fully Interconnected Backbone and Access Networks A Hub Location Problem with Fully Interconnected Backbone and Access Networks Tommy Thomadsen Informatics and Mathematical Modelling Technical University of Denmark 2800 Kgs. Lyngby Denmark tt@imm.dtu.dk

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

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

EXACT ALGORITHMS FOR THE ATSP

EXACT ALGORITHMS FOR THE ATSP EXACT ALGORITHMS FOR THE ATSP Branch-and-Bound Algorithms: Little-Murty-Sweeney-Karel (Operations Research, ); Bellmore-Malone (Operations Research, ); Garfinkel (Operations Research, ); Smith-Srinivasan-Thompson

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

Introduction to Bin Packing Problems

Introduction to Bin Packing Problems Introduction to Bin Packing Problems Fabio Furini March 13, 2015 Outline Origins and applications Applications: Definition: Bin Packing Problem (BPP) Solution techniques for the BPP Heuristic Algorithms

More information

Recoverable Robustness in Scheduling Problems

Recoverable Robustness in Scheduling Problems Master Thesis Computing Science Recoverable Robustness in Scheduling Problems Author: J.M.J. Stoef (3470997) J.M.J.Stoef@uu.nl Supervisors: dr. J.A. Hoogeveen J.A.Hoogeveen@uu.nl dr. ir. J.M. van den Akker

More information

A First Look at Picking Dual Variables for Maximizing Reduced Cost Fixing

A First Look at Picking Dual Variables for Maximizing Reduced Cost Fixing TSpace Research Repository tspace.library.utoronto.ca A First Look at Picking Dual Variables for Maximizing Reduced Cost Fixing Omid Sanei Bajgiran, Andre A. Cire, and Louis-Martin Rousseau Version Post-print/accepted

More information

Decomposition-based Methods for Large-scale Discrete Optimization p.1

Decomposition-based Methods for Large-scale Discrete Optimization p.1 Decomposition-based Methods for Large-scale Discrete Optimization Matthew V Galati Ted K Ralphs Department of Industrial and Systems Engineering Lehigh University, Bethlehem, PA, USA Départment de Mathématiques

More information

Robust Scheduling with Logic-Based Benders Decomposition

Robust Scheduling with Logic-Based Benders Decomposition Robust Scheduling with Logic-Based Benders Decomposition Elvin Çoban and Aliza Heching and J N Hooker and Alan Scheller-Wolf Abstract We study project scheduling at a large IT services delivery center

More information

IS703: Decision Support and Optimization. Week 5: Mathematical Programming. Lau Hoong Chuin School of Information Systems

IS703: Decision Support and Optimization. Week 5: Mathematical Programming. Lau Hoong Chuin School of Information Systems IS703: Decision Support and Optimization Week 5: Mathematical Programming Lau Hoong Chuin School of Information Systems 1 Mathematical Programming - Scope Linear Programming Integer Programming Network

More information

Optimization Bounds from Binary Decision Diagrams

Optimization Bounds from Binary Decision Diagrams Optimization Bounds from Binary Decision Diagrams J. N. Hooker Joint work with David Bergman, André Ciré, Willem van Hoeve Carnegie Mellon University ICS 203 Binary Decision Diagrams BDDs historically

More information

Column Generation. ORLAB - Operations Research Laboratory. Stefano Gualandi. June 14, Politecnico di Milano, Italy

Column Generation. ORLAB - Operations Research Laboratory. Stefano Gualandi. June 14, Politecnico di Milano, Italy ORLAB - Operations Research Laboratory Politecnico di Milano, Italy June 14, 2011 Cutting Stock Problem (from wikipedia) Imagine that you work in a paper mill and you have a number of rolls of paper of

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

Solvers for the Problem of Boolean Satisfiability (SAT) Will Klieber Aug 31, 2011

Solvers for the Problem of Boolean Satisfiability (SAT) Will Klieber Aug 31, 2011 Solvers for the Problem of Boolean Satisfiability (SAT) Will Klieber 15-414 Aug 31, 2011 Why study SAT solvers? Many problems reduce to SAT. Formal verification CAD, VLSI Optimization AI, planning, automated

More information

Disconnecting Networks via Node Deletions

Disconnecting Networks via Node Deletions 1 / 27 Disconnecting Networks via Node Deletions Exact Interdiction Models and Algorithms Siqian Shen 1 J. Cole Smith 2 R. Goli 2 1 IOE, University of Michigan 2 ISE, University of Florida 2012 INFORMS

More information

Decision Diagrams for Sequencing and Scheduling

Decision Diagrams for Sequencing and Scheduling Decision Diagrams for Sequencing and Scheduling Willem-Jan van Hoeve Tepper School of Business Carnegie Mellon University www.andrew.cmu.edu/user/vanhoeve/mdd/ Plan What can MDDs do for Combinatorial Optimization?

More information

Constraint Programming Overview based on Examples

Constraint Programming Overview based on Examples DM841 Discrete Optimization Part I Lecture 2 Constraint Programming Overview based on Examples Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark Outline 1. An

More information

Introduction to optimization and operations research

Introduction to optimization and operations research Introduction to optimization and operations research David Pisinger, Fall 2002 1 Smoked ham (Chvatal 1.6, adapted from Greene et al. (1957)) A meat packing plant produces 480 hams, 400 pork bellies, and

More information

Partial Path Column Generation for the Vehicle Routing Problem with Time Windows

Partial Path Column Generation for the Vehicle Routing Problem with Time Windows Partial Path Column Generation for the Vehicle Routing Problem with Time Windows Bjørn Petersen & Mads Kehlet Jepsen } DIKU Department of Computer Science, University of Copenhagen Universitetsparken 1,

More information

Single Machine Problems Polynomial Cases

Single Machine Problems Polynomial Cases DM204, 2011 SCHEDULING, TIMETABLING AND ROUTING Lecture 2 Single Machine Problems Polynomial Cases Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark Outline

More information

Integer Programming, Constraint Programming, and their Combination

Integer Programming, Constraint Programming, and their Combination Integer Programming, Constraint Programming, and their Combination Alexander Bockmayr Freie Universität Berlin & DFG Research Center Matheon Eindhoven, 27 January 2006 Discrete Optimization General framework

More information

5 Integer Linear Programming (ILP) E. Amaldi Foundations of Operations Research Politecnico di Milano 1

5 Integer Linear Programming (ILP) E. Amaldi Foundations of Operations Research Politecnico di Milano 1 5 Integer Linear Programming (ILP) E. Amaldi Foundations of Operations Research Politecnico di Milano 1 Definition: An Integer Linear Programming problem is an optimization problem of the form (ILP) min

More information

Optimization Exercise Set n.5 :

Optimization Exercise Set n.5 : Optimization Exercise Set n.5 : Prepared by S. Coniglio translated by O. Jabali 2016/2017 1 5.1 Airport location In air transportation, usually there is not a direct connection between every pair of airports.

More information

1 Solution of a Large-Scale Traveling-Salesman Problem... 7 George B. Dantzig, Delbert R. Fulkerson, and Selmer M. Johnson

1 Solution of a Large-Scale Traveling-Salesman Problem... 7 George B. Dantzig, Delbert R. Fulkerson, and Selmer M. Johnson Part I The Early Years 1 Solution of a Large-Scale Traveling-Salesman Problem............ 7 George B. Dantzig, Delbert R. Fulkerson, and Selmer M. Johnson 2 The Hungarian Method for the Assignment Problem..............

More information

RCPSP Single Machine Problems

RCPSP Single Machine Problems DM204 Spring 2011 Scheduling, Timetabling and Routing Lecture 3 Single Machine Problems Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark Outline 1. Resource

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

Part 4. Decomposition Algorithms

Part 4. Decomposition Algorithms In the name of God Part 4. 4.4. Column Generation for the Constrained Shortest Path Problem Spring 2010 Instructor: Dr. Masoud Yaghini Constrained Shortest Path Problem Constrained Shortest Path Problem

More information

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

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

More information

Lecture : Lovász Theta Body. Introduction to hierarchies.

Lecture : Lovász Theta Body. Introduction to hierarchies. Strong Relaations for Discrete Optimization Problems 20-27/05/6 Lecture : Lovász Theta Body. Introduction to hierarchies. Lecturer: Yuri Faenza Scribes: Yuri Faenza Recall: stable sets and perfect graphs

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

Decision Diagram Relaxations for Integer Programming

Decision Diagram Relaxations for Integer Programming Decision Diagram Relaxations for Integer Programming Christian Tjandraatmadja April, 2018 Tepper School of Business Carnegie Mellon University Submitted to the Tepper School of Business in Partial Fulfillment

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

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

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

Discrete (and Continuous) Optimization WI4 131

Discrete (and Continuous) Optimization WI4 131 Discrete (and Continuous) Optimization WI4 131 Kees Roos Technische Universiteit Delft Faculteit Electrotechniek, Wiskunde en Informatica Afdeling Informatie, Systemen en Algoritmiek e-mail: C.Roos@ewi.tudelft.nl

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

CMSC 722, AI Planning. Planning and Scheduling

CMSC 722, AI Planning. Planning and Scheduling CMSC 722, AI Planning Planning and Scheduling Dana S. Nau University of Maryland 1:26 PM April 24, 2012 1 Scheduling Given: actions to perform set of resources to use time constraints» e.g., the ones computed

More information

Integer program reformulation for robust branch-and-cut-and-price

Integer program reformulation for robust branch-and-cut-and-price Integer program reformulation for robust branch-and-cut-and-price Marcus Poggi de Aragão Informática PUC-Rio Eduardo Uchoa Engenharia de Produção Universidade Federal Fluminense Outline of the talk Robust

More information

A Note on Symmetry Reduction for Circular Traveling Tournament Problems

A Note on Symmetry Reduction for Circular Traveling Tournament Problems Mainz School of Management and Economics Discussion Paper Series A Note on Symmetry Reduction for Circular Traveling Tournament Problems Timo Gschwind and Stefan Irnich April 2010 Discussion paper number

More information

Algorithms. NP -Complete Problems. Dong Kyue Kim Hanyang University

Algorithms. NP -Complete Problems. Dong Kyue Kim Hanyang University Algorithms NP -Complete Problems Dong Kyue Kim Hanyang University dqkim@hanyang.ac.kr The Class P Definition 13.2 Polynomially bounded An algorithm is said to be polynomially bounded if its worst-case

More information

Extended Formulations, Lagrangian Relaxation, & Column Generation: tackling large scale applications

Extended Formulations, Lagrangian Relaxation, & Column Generation: tackling large scale applications Extended Formulations, Lagrangian Relaxation, & Column Generation: tackling large scale applications François Vanderbeck University of Bordeaux INRIA Bordeaux-Sud-Ouest part : Defining Extended Formulations

More information

21. Set cover and TSP

21. Set cover and TSP CS/ECE/ISyE 524 Introduction to Optimization Spring 2017 18 21. Set cover and TSP ˆ Set covering ˆ Cutting problems and column generation ˆ Traveling salesman problem Laurent Lessard (www.laurentlessard.com)

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

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