Combining Optimization and Constraint Programming
|
|
- Garey Holt
- 6 years ago
- Views:
Transcription
1 Combining Optimization and Constraint Programming John Hooker Carnegie Mellon University GE Research Center 7 September 2007 GE 7 Sep 07 Slide 1
2 Optimization and Constraint Programming Optimization: focus on mathematical programming. 50+ years old Constraint programming 20 years old Developed in computer science/ai community Better known in Europe/Asia than USA GE 7 Sep 07 Slide 2
3 Math programming & Constraint programming Mathematical programming methods rely heavily on numerical calculation. Linear programming (LP) Mixed integer/linear programming (MILP) Nonlinear programming (NLP) Constraint programming relies heavily on constraint propagation A form of logical inference GE 7 Sep 07 Slide 3
4 CP: Early commercial successes Circuit design (Siemens) Container port scheduling (Hong Kong and Singapore) Real-time control (Siemens, Xerox) GE 7 Sep 07 Slide 4
5 CP: Applications Employee scheduling Shift planning Assembly line smoothing and balancing Cellular frequency assignment Maintenance planning Airline crew rostering and scheduling Airport gate allocation and stand planning GE 7 Sep 07 Slide 5
6 CP: Applications Production scheduling chemicals aviation oil refining steel lumber photographic plates tires Transport scheduling (food, nuclear fuel) Warehouse management Course timetabling GE 7 Sep 07 Slide 6
7 Math programming & Constraint programming In mathematical programming, equations (constraints) describe the problem but don t tell how to solve it. In constraint programming, each constraint invokes a procedure that screens out unacceptable solutions. GE 7 Sep 07 Slide 7
8 Math programming & Constraint programming Mathematical programming Linear, nonlinear and mixed integer programming, global optimization CPLEX, OSL, Xpress-MP, Excel solver, MINTO, BARON Constraint programming Constraint propagation, domain reduction, interval arithmetic ILOG Scheduler, OPL Studio, CHIP, Mozart, ECLiPSe, Newton GE 7 Sep 07 Slide 8
9 Why unify math programming and constraint programming? One-stop shopping. One solver does it all. GE 7 Sep 07 Slide 9
10 Why unify math programming and constraint programming? One-stop shopping. One solver does it all. Richer modeling framework. Natural models, less debugging & development time. GE 7 Sep 07 Slide 10
11 Why unify math programming and constraint programming? One-stop shopping. One solver does it all. Richer modeling framework. Natural models, less debugging & development time. Computational speedup. A selection of results GE 7 Sep 07 Slide 11
12 Computational Advantage of Integrating MP and CP Using CP + relaxation from MILP Problem Speedup Focacci, Lodi, Milano (1999) Lesson timetabling 2 to 50 times faster than CP Refalo (1999) Piecewise linear costs 2 to 200 times faster than MILP Hooker & Osorio (1999) Flow shop scheduling, etc. 4 to 150 times faster than MILP. Thorsteinsson & Ottosson (2001) Product configuration 30 to 40 times faster than CP, MILP GE 7 Sep 07 Slide 12
13 Computational Advantage of Integrating MP and CP Using CP + relaxation from MILP Problem Speedup Sellmann & Fahle (2001) Automatic recording 1 to 10 times faster than CP, MILP Van Hoeve (2001) Stable set problem Better than CP in less time Bollapragada, Ghattas & Hooker (2001) Beck & Refalo (2003) Structural design (nonlinear) Scheduling with earliness & tardiness costs Up to 600 times faster than MILP. 2 problems: <6 min vs >20 hrs for MILP Solved 67 of 90, CP solved only 12 GE 7 Sep 07 Slide 13
14 Computational Advantage of Integrating MP and CP Using CP-based Branch and Price Problem Speedup Yunes, Moura & de Souza (1999) Easton, Nemhauser & Trick (2002) Urban transit crew scheduling Traveling tournament scheduling Optimal schedule for 210 trips, vs. 120 for traditional branch and price First to solve 8-team instance GE 7 Sep 07 Slide 14
15 Computational Advantage of Integrating MP and CP Using CP/MILP Benders methods Problem Speedup Jain & Grossmann (2001) Thorsteinsson (2001) Min-cost planning & scheduing Min-cost planning & scheduling Timpe (2002) Polypropylene batch scheduling at BASF 20 to 1000 times faster than CP, MILP 10 times faster than Jain & Grossmann Solved previously insoluble problem in 10 min GE 7 Sep 07 Slide 15
16 Computational Advantage of Integrating MP and CP Using CP/MILP Benders methods Problem Speedup Benoist, Gaudin, Rottembourg (2002) Call center scheduling Solved twice as many instances as traditional Benders Hooker (2004) Min-cost, min-makespan planning & cumulative scheduling Hooker (2005) Min tardiness planning & cumulative scheduling times faster than CP, MILP times faster than CP, MILP GE 7 Sep 07 Slide 16
17 Modeling is key CP models explain by revealing problem structure. Through global constraints. This can be extended to a unified framework. Global constraints become metaconstraints. Each metaconstraint knows how to combine MP and CP to exploit its structure. GE 7 Sep 07 Slide 17
18 The basic algorithm Search: Enumerate problem restrictions Tree search (branching) Constraint-based (nogood-based) search GE 7 Sep 07 Slide 18
19 The basic algorithm Search: Enumerate problem restrictions Tree search (branching) Constraint-based (nogood-based) search Infer: Deduce constraints from current restriction GE 7 Sep 07 Slide 19
20 The basic algorithm Search: Enumerate problem restrictions Tree search (branching) Constraint-based (nogood-based) search Infer: Deduce constraints from current restriction Relax: Solve relaxation of current restriction GE 7 Sep 07 Slide 20
21 Unifying framework Existing 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 relaxation methods as needed. GE 7 Sep 07 Slide 21
22 Some existing methods Branching Constraint solvers (CP) Search: Branching on domains Inference: Constraint propagation, filtering Relaxation: Domain store Mixed integer programming (OR) Search: Branch and bound Inference: Cutting planes Relaxation: Linear programming GE 7 Sep 07 Slide 22
23 Some existing methods Constraint-based search SAT solvers (CP) Search: Branching on variables Inference: Unit clause rule, clause learning (nogoods) Relaxation: Conflict clauses Benders decomposition (OR) Search: Enumeration of subproblems Inference: Benders cuts (nogoods) Relaxation: Master problem GE 7 Sep 07 Slide 23
24 Software for integrated methods Cooperating solvers: ILOG s OPL Studio ECLiPSe Integration with low-level modeling: Dash Optimization s Mosel. Integration with high-level modeling: SIMPL (CMU). GE 7 Sep 07 Slide 24
25 Outline Example problems to illustrate integrated approach Simpler modeling Lot sizing and scheduling Branching search Freight transfer Product configuration Continuous global optimization Airline crew scheduling Constraint-based search Machine scheduling Success stories from BASF, Barbot, Peugeot-Citroën GE 7 Sep 07 Slide 25
26 Example: Lot sizing and scheduling Simplified modeling GE 7 Sep 07 Slide 26
27 Lot sizing and scheduling Day: A B A Product At most one product manufactured on each day. Demands for each product on each day. Minimize setup + holding cost. GE 7 Sep 07 Slide 27
28 GE 7 Sep 07 Slide 28 0, {0,1},, all 1,, all,, all,, all,, all 1,, all, 1, all,, all,, all, s.t. min 1, 1, 1, 1, 1,, = + + = + + it it ijt it it i it it it jt ijt t i ijt jt t i ijt t i it it it t i it it it it it t i i t i j ijt ij it it s x z y t y t i Cy x t i y t i y t i y y t i y z t i y z t i y y z t i s d x s q s h δ δ δ δ δ Integer programming model (Wolsey) Many variables
29 Integrated model Minimize holding and setup costs min s.t. s q y + t i i 0, t x x d C, s h s + s, all i, t all i, t ( y i ) ( x = 0 ), all i, t t 1 + it y t 1 t it = it it it i it it 0, Inventory balance Production capacity GE 7 Sep 07 Slide 29
30 Example: Freight Transfer Branch-and-bound search with interval propagation and cutting planes GE 7 Sep 07 Slide 30
31 This example illustrates: Branching on variables, with pruning based on bounds. Propagation based on: Interval propagation. Cutting planes (knapsack cuts). Relaxation based on linear programming. GE 7 Sep 07 Slide 31
32 Freight Transfer Transport 42 tons of freight using 8 trucks, which come in 4 sizes GE 7 Sep 07 Slide 32 Truck size Number available Capacity (tons) Cost per truck
33 Number of trucks of type 1 min 90 x + 60 x + 50 x + 40 x 7 x + 5 x + 4 x + 3 x 42 x + x + x + x x i {0,1,2,3} 8 GE 7 Sep 07 Slide 33 Truck type Number available Capacity (tons) Cost per truck
34 Number of trucks of type 1 Knapsack metaconstraint knows which inference and relaxation techniques to use. GE 7 Sep 07 Slide 34 min 90 x + 60 x + 50 x + 40 x 7 x + 5 x + 4 x + 3 x 42 x + x + x + x x Truck type i {0,1,2,3} Number available Capacity (tons) Cost per truck
35 Number of trucks of type 1 Domain metaconstraint knows how to branch min 90 x + 60 x + 50 x + 40 x 7 x + 5 x + 4 x + 3 x 42 x + x + x + x x i {0,1,2,3} 8 GE 7 Sep 07 Slide 35 Truck type Number available Capacity (tons) Cost per truck
36 Bounds propagation min 90 x + 60 x + 50 x + 40 x 7 x + 5 x + 4 x + 3 x 42 x + x + x + x x i {0,1,2,3} 8 x = 7 1 GE 7 Sep 07 Slide 36
37 Bounds propagation Reduced domain min 90 x + 60 x + 50 x + 40 x x + 5 x + 4 x + 3 x x + x + x + x x {1,2,3}, x, x, x {0,1,2,3} x = 7 1 GE 7 Sep 07 Slide 37
38 Continuous relaxation min 90 x + 60 x + 50 x + 40 x x + 5 x + 4 x + 3 x x + x + x + x x 3, x 1 i 1 8 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. GE 7 Sep 07 Slide 38
39 Cutting planes (valid inequalities) min 90 x + 60 x + 50 x + 40 x x + 5 x + 4 x + 3 x x + x + x + x x 3, x 1 i 1 8 We can create a tighter relaxation (larger minimum value) with the addition of cutting planes. GE 7 Sep 07 Slide 39
40 Cutting planes (valid inequalities) min 90 x + 60 x + 50 x + 40 x x + 5 x + 4 x + 3 x x + x + x + x x 3, x 1 i 1 8 Cutting plane All feasible solutions of the original problem satisfy a cutting plane (i.e., it is valid). But a cutting plane may exclude ( cut off ) solutions of the continuous relaxation. Feasible solutions GE 7 Sep 07 Slide 40 Continuous relaxation
41 Cutting planes (valid inequalities) min 90 x + 60 x + 50 x + 40 x x + 5 x + 4 x + 3 x x + x + x + x x 3, x 1 i 1 8 {1,2} is a packing because 7x 1 + 5x 2 alone cannot satisfy the inequality, even with x 1 = x 2 = 3. GE 7 Sep 07 Slide 41
42 Cutting planes (valid inequalities) min 90 x + 60 x + 50 x + 40 x x + 5 x + 4 x + 3 x x + x + x + x x 3, x 1 i 1 8 {1,2} is a packing So, 4 x x 4 42 ( ) GE 7 Sep 07 Slide 42
43 Cutting planes (valid inequalities) min 90 x + 60 x + 50 x + 40 x x + 5 x + 4 x + 3 x x + x + x + x x 3, x 1 i 1 8 {1,2} is a packing So, 4 x x 4 42 ( ) which implies 42 ( ) x 3 + x 4 = max { 4,3 } GE 7 Sep 07 Slide 43 Knapsack cut 2
44 Cutting planes (valid inequalities) min 90 x + 60 x + 50 x + 40 x x + 5 x + 4 x + 3 x x + x + x + x x 3, x 1 i 1 8 Maximal Packings Knapsack cuts {1,2} x 3 + x 4 2 {1,3} x 2 + x 4 2 {1,4} x 2 + x 3 3 GE 7 Sep 07 Slide 44 Knapsack cuts corresponding to nonmaximal packings can be nonredundant.
45 Continuous relaxation with cuts min 90 x + 60 x + 50 x + 40 x 7 x + 5 x + 4 x + 3 x 42 x + x + x + x 1 0 x 3, x 1 x + x x + x x + x i Knapsack cuts Optimal value of is a lower bound on optimal value of original problem. GE 7 Sep 07 Slide 45
46 Branch-inferand-relax tree Propagate bounds and solve relaxation of original problem. GE 7 Sep 07 Slide 46 x 1 { 123} x 2 {0123} x 3 {0123} x 4 {0123} x = (2⅓,3,2⅔,0) value = 523⅓
47 Branch-inferand-relax tree Branch on a variable with nonintegral value in the relaxation. GE 7 Sep 07 Slide 47 x 1 { 123} x 2 {0123} x 3 {0123} x 4 {0123} x = (2⅓,3,2⅔,0) value = 523⅓ x 1 {1,2} x 1 = 3
48 Branch-inferand-relax tree Propagate bounds and solve relaxation. Since relaxation is infeasible, backtrack. GE 7 Sep 07 Slide 48 x 1 { 12 } x 2 { 23} x 3 { 123} x 4 { 123} infeasible relaxation x 1 { 123} x 2 {0123} x 3 {0123} x 4 {0123} x = (2⅓,3,2⅔,0) value = 523⅓ x 1 {1,2} x 1 = 3
49 Branch-inferand-relax tree Propagate bounds and solve relaxation. Branch on nonintegral variable. GE 7 Sep 07 Slide 49 x 1 { 12 } x 2 { 23} x 3 { 123} x 4 { 123} infeasible relaxation x 1 { 123} x 2 {0123} x 3 {0123} x 4 {0123} x = (2⅓,3,2⅔,0) value = 523⅓ x 1 {1,2} x 1 = 3 x 1 { 3} x 2 {0123} x 3 {0123} x 4 {0123} x = (3,2.6,2,0) value = 526 x 2 = 3 x 2 {0,1,2}
50 Branch-inferand-relax tree Branch again. GE 7 Sep 07 Slide 50 x 1 { 12 } x 2 { 23} x 3 { 123} x 4 { 123} infeasible relaxation x 1 { 123} x 2 {0123} x 3 {0123} x 4 {0123} x = (2⅓,3,2⅔,0) value = 523⅓ x 1 {1,2} x 1 = 3 x 1 { 3} x 2 {012 } x 3 { 123} x 4 {0123} x = (3,2,2¾,0) value = 527½ x 3 {1,2} x 3 = 3 x 1 { 3} x 2 {0123} x 3 {0123} x 4 {0123} x = (3,2.6,2,0) value = 526 x 2 = 3 x 2 {0,1,2}
51 Branch-inferand-relax tree Solution of relaxation is integral and therefore feasible in the original problem. This becomes the incumbent solution. GE 7 Sep 07 Slide 51 x 1 { 12 } x 2 { 23} x 3 { 123} x 4 { 123} infeasible relaxation x 1 { 123} x 2 {0123} x 3 {0123} x 4 {0123} x = (2⅓,3,2⅔,0) value = 523⅓ x 1 {1,2} x 1 = 3 x 1 { 3} x 2 {012 } x 3 { 123} x 4 {0123} x = (3,2,2¾,0) value = 527½ x 1 { 3} x 2 { 12 } x 3 { 12 } x 4 { 123} x = (3,2,2,1) value = 530 feasible solution x 3 {1,2} x 3 = 3 x 1 { 3} x 2 {0123} x 3 {0123} x 4 {0123} x = (3,2.6,2,0) value = 526 x 2 = 3 x 2 {0,1,2}
52 Branch-inferand-relax tree Solution is nonintegral, but we can backtrack because value of relaxation is no better than incumbent solution. GE 7 Sep 07 Slide 52 x 1 { 12 } x 2 { 23} x 3 { 123} x 4 { 123} infeasible relaxation x 1 { 123} x 2 {0123} x 3 {0123} x 4 {0123} x = (2⅓,3,2⅔,0) value = 523⅓ x 1 {1,2} x 1 = 3 x 1 { 3} x 2 {012 } x 3 { 123} x 4 {0123} x = (3,2,2¾,0) value = 527½ x 1 { 3} x 2 { 12 } x 3 { 12 } x 4 { 123} x = (3,2,2,1) value = 530 feasible solution x 3 {1,2} x 3 = 3 x 1 { 3} x 2 {0123} x 3 {0123} x 4 {0123} x = (3,2.6,2,0) value = 526 x 2 = 3 x 2 {0,1,2} x 1 { 3} x 2 {012 } x 3 { 3} x 4 {012 } x = (3,1½,3,½) value = 530 backtrack due to bound
53 Branch-inferand-relax tree Another feasible solution found. No better than incumbent solution, which is optimal because search has finished. GE 7 Sep 07 Slide 53 x 1 { 12 } x 2 { 23} x 3 { 123} x 4 { 123} infeasible relaxation x 1 { 123} x 2 {0123} x 3 {0123} x 4 {0123} x = (2⅓,3,2⅔,0) value = 523⅓ x 1 {1,2} x 1 = 3 x 1 { 3} x 2 {012 } x 3 { 123} x 4 {0123} x = (3,2,2¾,0) value = 527½ x 1 { 3} x 2 { 12 } x 3 { 12 } x 4 { 123} x = (3,2,2,1) value = 530 feasible solution x 3 {1,2} x 3 = 3 x 1 { 3} x 2 {0123} x 3 {0123} x 4 {0123} x = (3,2.6,2,0) value = 526 x 2 = 3 x 2 {0,1,2} x 1 { 3} x 2 {012 } x 3 { 3} x 4 {012 } x = (3,1½,3,½) value = 530 backtrack due to bound x 1 { 3} x 2 { 3} x 3 {012 } x 4 {012 } x = (3,3,0,2) value = 530 feasible solution
54 Branch-inferand-relax tree Two optimal solutions found. In general, not all optimal solutions are found, GE 7 Sep 07 Slide 54 x 1 { 12 } x 2 { 23} x 3 { 123} x 4 { 123} infeasible relaxation x 1 { 123} x 2 {0123} x 3 {0123} x 4 {0123} x = (2⅓,3,2⅔,0) value = 523⅓ x 1 {1,2} x 1 = 3 x 1 { 3} x 2 {012 } x 3 { 123} x 4 {0123} x = (3,2,2¾,0) value = 527½ x 1 { 3} x 2 { 12 } x 3 { 12 } x 4 { 123} x = (3,2,2,1) value = 530 optimal solution x 3 {1,2} x 3 = 3 x 1 { 3} x 2 {0123} x 3 {0123} x 4 {0123} x = (3,2.6,2,0) value = 526 x 2 = 3 x 2 {0,1,2} x 1 { 3} x 2 { 3} x 3 {012 } x 4 {012 } x = (3,3,0,2) value = 530 optimal solution x 1 { 3} x 2 {012 } x 3 { 3} x 4 {012 } x = (3,1½,3,½) value = 530 backtrack due to bound
55 Other types of cutting planes Lifted 0-1 knapsack inequalities Clique inequalities Gomory cuts Mixed integer rounding cuts Disjunctive cuts Specialized cuts Flow cuts (fixed charge network flow problem) Comb inequalities (traveling salesman problem) Many, many others GE 7 Sep 07 Slide 55
56 Example: Product Configuration Branch-and-bound search with propagation and relaxation of variable indices. From: Thorsteinsson and Ottosson (2001) GE 7 Sep 07 Slide 56
57 This example illustrates: Propagation of variable indices. Variable index is converted to a specially structured element constraint. Specially structured filtering for element. Valid knapsack cuts are derived and propagated. GE 7 Sep 07 Slide 57
58 This example illustrates: Propagation of variable indices. Variable index is converted to a specially structured element constraint. Specially structured filtering for element. Valid knapsack cuts are derived and propagated. Relaxation of variable indices. Element is interpreted as a disjunction of linear systems. Convex hull relaxation for disjunction is used. GE 7 Sep 07 Slide 58
59 The problem Choose what type of each component, and how many Personal computer Memory Memory Memory Memory Memory Disk drive Disk drive Memory Power supply Power supply Power supply Power supply GE 7 Sep 07 Slide 59 Disk drive Disk drive Disk drive
60 Problem data GE 7 Sep 07 Slide 60
61 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 j j v = q A, all j j i ijt ik L v U, all j j j j i Amount of attribute j produced by type t i of component i t i is a variable index Quantity of component i installed GE 7 Sep 07 Slide 61
62 Model of the problem Linear inequality metaconstraint min j c v j j v = q A, all j j i ijt ik L v U, all j j j j i GE 7 Sep 07 Slide 62
63 Model of the problem Indexed linear metaconstraint min j c v j j v = q A, all j j i ijt ik L v U, all j j j j i GE 7 Sep 07 Slide 63
64 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. Relax element. Convex hull relaxation for disjunction. GE 7 Sep 07 Slide 64
65 Propagation min j c v j j v = q A, all j j i ijt ik L v U, all j j j j i GE 7 Sep 07 Slide 65 This is propagated in the usual way
66 Propagation min j c v j j v = q A, all j j i ijt ik L v U, all j j j j i GE 7 Sep 07 Slide 66 = v z, all j j i i ( ) element t,( q, A,, q A ), z, all i, j i i ij 1 i ijn i This is rewritten as This is propagated in the usual way
67 Propagation = v z, all j j i i ( ) element t,( q, A,, q A ), z, all i, j i i ij 1 i ijn i This can be propagated by (a) using specialized filters for element constraints of this form GE 7 Sep 07 Slide 67
68 Propagation = v z, all j j i i ( ) element t,( q, A,, q A ), z, all i, j i i ij 1 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: i i { } max A q v, all j k D t i { } min A q v, all j k D t i ijk i ijk i j and (c) propagating the knapsack cuts. j [ v j, v j ] is current domain of v j GE 7 Sep 07 Slide 68
69 Relaxation min j c v j j v = q A, all j j i ijt ik L v U, all j j j j i GE 7 Sep 07 Slide 69 This is relaxed as v j v j v j
70 Relaxation min j c v j j v = q A, all j j i ijt ik L v U, all j j j j i GE 7 Sep 07 Slide 70 = v z, all j j i i ( ) element t,( q, A,, q A ), z, all i, j i i ij 1 i ijn i This is relaxed by relaxing this and adding the knapsack cuts. This is relaxed as v j v j v j
71 Relaxation = v z, all j j i i ( ) element t,( q, A,, q A ), z, all i, j i i ij 1 i ijn i This is relaxed by writing each element constraint as a disjunction of linear systems and writing a convex hull relaxation of the disjunction: z = A q, q = q i ijk ik i ik k D k D t i t i GE 7 Sep 07 Slide 71
72 Relaxation So the following LP relaxation is solved at each node of the search tree to obtain a lower bound: min j v = A q, all j q = q, all i v v v, all j q q q, all i { } knapsack cuts for max A q v, all j { } knapsack cuts for min A q v, all j q 0, all i, k t i j j j ijk ik i k D t i j ik k D j j j i i i ik c v i i k D k D t i t i ijk i j ijk i j GE 7 Sep 07 Slide 72
73 Solution of the example After propagation, the solution of the relaxation is feasible at the root node. No branching needed. min j v = A q, all j q = q, all i v v v, all j q q q, all i { } knapsack cuts for max A q v, all j { } knapsack cuts for min A q v, all j q 0, all i, k t i j j j ijk ik i k D t i j ik k D j j j i i i ik c v i i k D k D t i t i q 1, q 1C = 1 t 1 = C q 2, q 2A = 2 t 2 = A q 3, q 3B = 3 t 3 = B ijk i j ijk i j GE 7 Sep 07 Slide 73
74 Solution of the example After propagation, the solution of the relaxation is feasible at the root node. No branching needed. GE 7 Sep 07 Slide 74 min j v = A q, all j q = q, all i v v v, all j q q q, all i { } knapsack cuts for max A q v, all j { } knapsack cuts for min A q v, all j q 0, all i, k t i j j j ijk ik i k D t i j ik k D j j j i i i ik c v i i k D k D t i t i q 1, q 1C = 1 t 1 = C q 2, q 2A = 2 t 2 = A q 3, q 3B = 3 t 3 = B ijk i j ijk i j q 1 is integral, only one q 1k is positive
75 Solution of the example After propagation, the solution of the relaxation is feasible at the root node. No branching needed. Personal computer Memory B Memory B Memory B Disk drive A Disk drive A q 1, q 1C = 1 t 1 = C q 2, q 2A = 2 t 2 = A q 3, q 3B = 3 t 3 = B Power supply C GE 7 Sep 07 Slide 75
76 Computational Results (Ottosson & Thorsteinsson) x10 16x20 20x24 20x30 CPLEX CLP Hybrid Seconds Problem GE 7 Sep 07 Slide 76
77 Example: Continuous Global Optimization Branching on continuous variables with Lagrangean-based bounds propagation and linear or convex nonlinear relaxation GE 7 Sep 07 Slide 77
78 This example illustrates: Branching by splitting boxes. Propagation based on: Interval arithmetic. Lagrange multipliers. Linear relaxation using McCormick factorization. The best continuous global solvers (e.g., BARON) combine these tecnniques from CP and OR. GE 7 Sep 07 Slide 78
79 Propagation using Lagrange multipliers Supposing min f ( x ) g ( x ) 0 x S has optimal value v*, and each constraint i has Lagrange multiplier λ i *, it can be shown that if constraint i is tight, g ( x ) i U v * λ i * Where U is an upper bound on the optimal value. GE 7 Sep 07 Slide 79
80 Propagation using Lagrange multipliers Supposing min f ( x ) g ( x ) 0 x S has optimal value v*, and each constraint i has Lagrange multiplier λ i *, it can be shown that if constraint i is tight, g ( x ) i U v * λ i * This inequality can be propagated. GE 7 Sep 07 Slide 80
81 Propagation using Lagrange multipliers Supposing min f ( x ) g ( x ) 0 x S has optimal value v*, and each constraint i has Lagrange multiplier λ i *, it can be shown that if constraint i is tight, g ( x ) i U v * λ i * This inequality can be propagated. When applied to bounds on variables, this technique yields bounds propagation. When the relaxation is linear, this becomes reduced cost variable fixing (widely used in integer programming) GE 7 Sep 07 Slide 81
82 The problem max x + x 4 x x = x + x 2 x [0,1], x [0,2] 1 2 Feasible set GE 7 Sep 07 Slide 82 x 2 Global optimum Local optimum x 1
83 The Problem max 4 x x = x + x x + x 2 x [0,1], x [0,2] 1 2 GE 7 Sep 07 Slide 83 Linear inequality metaconstraint
84 The Problem max 4 x x = x + x x + x 2 x [0,1], x [0,2] 1 2 GE 7 Sep 07 Slide 84 Bilinear (in)equality metaconstraint
85 To solve it: Search: split interval domains of x 1, x 2. Each node of search tree is a problem restriction. Propagation: Interval propagation, domain filtering. Use Lagrange multipliers to infer valid inequality for propagation. Relaxation: Use function factorization to obtain linear continuous relaxation. GE 7 Sep 07 Slide 85
86 Interval propagation Propagate intervals [0,1], [0,2] through constraints to obtain [1/8,7/8], [1/4,7/4] GE 7 Sep 07 Slide 86 x 2 x 1
87 Relaxation (function factorization) Factor complex functions into elementary functions that have known linear relaxations. Write 4x 1 x 2 = 1 as 4y = 1 where y = x 1 x 2. This factors 4x 1 x 2 into linear function 4y and bilinear function x 1 x 2. Linear function 4y is its own linear relaxation. GE 7 Sep 07 Slide 87
88 Relaxation (function factorization) Factor complex functions into elementary functions that have known linear relaxations. Write 4x 1 x 2 = 1 as 4y = 1 where y = x 1 x 2. This factors 4x 1 x 2 into linear function 4y and bilinear function x 1 x 2. Linear function 4y is its own linear relaxation. Bilinear function y = x 1 x 2 has relaxation: x x + x x x x y x x + x x x x x x + x x x x y x x + x x x x where domain of x j is [ x j, x j ] GE 7 Sep 07 Slide 88
89 Relaxation (function factorization) The linear relaxation becomes: min 4 y = x + x x + x 2 x x + x x x x y x x + x x x x x x + x x x x y x x + x x x x x x x, j = 1,2 j j j GE 7 Sep 07 Slide 89
90 Relaxation (function factorization) x 2 Solve linear relaxation. GE 7 Sep 07 Slide 90 x 1
91 Relaxation (function factorization) x 2 2 [1,1.75] x Solve linear relaxation. Since solution is infeasible, split an interval and branch. 2 [0.25,1] x GE 7 Sep 07 Slide 91 x 1
92 x 2 [1,1.75] x 2 [0.25,1] x 2 x 2 x 1 GE 7 Sep 07 Slide 92 x 1
93 x 2 [1,1.75] x 2 [0.25,1] x 2 Solution of relaxation is feasible, value = 1.25 x 2 This becomes incumbent solution x 1 GE 7 Sep 07 Slide 93 x 1
94 x 2 [1,1.75] x 2 [0.25,1] x 2 Solution of relaxation is feasible, value = 1.25 This becomes incumbent solution x 2 Solution of relaxation is not quite feasible, value = Also use Lagrange multipliers for domain filtering x 1 x 1 GE 7 Sep 07 Slide 94
95 Relaxation (function factorization) min 4 y = x + x x + x 2 x x + x x x x y x x + x x x x x x + x x x x y x x + x x x x x x x, j = 1,2 j j j Associated Lagrange multiplier in solution of relaxation is λ 2 = 1.1 GE 7 Sep 07 Slide 95
96 Relaxation (function factorization) min 4 y = x + x x + x 2 Associated Lagrange multiplier in solution of relaxation is λ 2 = 1.1 x x + x x x x y x x + x x x x x x + x x x x y x x + x x x x x x x, j = 1,2 j j j GE 7 Sep 07 Slide 96 This yields a valid inequality for propagation: x 1 + x 2 2 = Value of relaxation Lagrange multiplier Value of incumbent solution
97 Example: Airline Crew Scheduling Branch and price in which a linear relaxation of an MILP is solved by CP-based column generation From: Fahle et al. (2002) GE 7 Sep 07 Slide 97
98 This example illustrates: Overall mixed integer programming framework. Linear relaxation solved by CP-based column generation. GE 7 Sep 07 Slide 98
99 Solving an LP by column generation Suppose the LP relaxation of an integer programming problem has a huge number of variables: min 0 cx Ax = b x GE 7 Sep 07 Slide 99
100 Solving an LP by column generation Suppose the LP relaxation 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 GE 7 Sep 07 Slide 100 min 0 cx Ax = b x min j J x j 0 j J j j c x j j A x = b ( λ )
101 Solving an LP by column generation Suppose the LP relaxation of an integer programming problem has a huge number of variables: min 0 cx Ax = b x We will solve a restricted master problem, which has a small subset of the variables: Column j of A min j J x j 0 j J j j c x j j A x = b Adding x k to the problem would improve the solution if x k has a negative reduced cost: r k = c k λ A k < 0 GE 7 Sep 07 Slide 101 Row vector of dual (Lagrange) multipliers ( λ )
102 Column generation Adding x k to the problem would improve the solution if x k has a negative reduced cost: r k = c k λ A k < 0 Computing the reduced cost of x k is known as pricing x k. Cost of column y So we solve the pricing problem: min c y λ y y is a column of A GE 7 Sep 07 Slide 102
103 Column generation Adding x k to the problem would improve the solution if x k has a negative reduced cost: r k = c k λ A k < 0 Computing the reduced cost of x k is known as pricing x k. Cost of column y So we solve the pricing problem: min c y λ y y is a column of A This can often be solved by CP. We hope to find an optimal solution before generating too many columns. GE 7 Sep 07 Slide 103
104 Airline Crew Scheduling We want to assign crew members to flights to minimize cost while covering the flights and observing complex work rules. Flight data 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 10 hours. Start time Finish time GE 7 Sep 07 Slide 104 For example, flight 1 cannot immediately precede 6 flight 4 cannot immediately precede 5. The possible rosters are: (1,3,5), (1,4,6), (2,3,5), (2,4,6)
105 Airline Crew Scheduling There are 2 crew members, and the possible rosters are: (1,3,5), (1,4,6), (2,3,5), (2,4,6) The LP relaxation of the problem is: Cost of assigning crew member 1 to roster 2 = 1 if we assign crew member 1 to roster 2, = 0 otherwise. Each crew member is assigned to exactly 1 roster. Each flight is assigned at least 1 crew member. GE 7 Sep 07 Slide 105
106 Airline Crew Scheduling There are 2 crew members, and the possible rosters are: (1,3,5), (1,4,6), (2,3,5), (2,4,6) The LP relaxation of the problem is: Cost of assigning crew member 1 to roster 2 = 1 if we assign crew member 1 to roster 2, = 0 otherwise. Each crew member is assigned to exactly 1 roster. Each flight is assigned at least 1 crew member. Rosters that cover flight 1. GE 7 Sep 07 Slide 106
107 Airline Crew Scheduling There are 2 crew members, and the possible rosters are: (1,3,5), (1,4,6), (2,3,5), (2,4,6) The LP relaxation of the problem is: Cost of assigning crew member 1 to roster 2 = 1 if we assign crew member 1 to roster 2, = 0 otherwise. Each crew member is assigned to exactly 1 roster. Each flight is assigned at least 1 crew member. Rosters that cover flight 2. GE 7 Sep 07 Slide 107
108 Airline Crew Scheduling There are 2 crew members, and the possible rosters are: (1,3,5), (1,4,6), (2,3,5), (2,4,6) The LP relaxation of the problem is: Cost of assigning crew member 1 to roster 2 = 1 if we assign crew member 1 to roster 2, = 0 otherwise. Each crew member is assigned to exactly 1 roster. Each flight is assigned at least 1 crew member. Rosters that cover flight 3. GE 7 Sep 07 Slide 108
109 Airline Crew Scheduling There are 2 crew members, and the possible rosters are: (1,3,5), (1,4,6), (2,3,5), (2,4,6) The LP relaxation of the problem is: Cost of assigning crew member 1 to roster 2 = 1 if we assign crew member 1 to roster 2, = 0 otherwise. Each crew member is assigned to exactly 1 roster. Each flight is assigned at least 1 crew member. Rosters that cover flight 4. GE 7 Sep 07 Slide 109
110 Airline Crew Scheduling There are 2 crew members, and the possible rosters are: (1,3,5), (1,4,6), (2,3,5), (2,4,6) The LP relaxation of the problem is: Cost of assigning crew member 1 to roster 2 = 1 if we assign crew member 1 to roster 2, = 0 otherwise. Each crew member is assigned to exactly 1 roster. Each flight is assigned at least 1 crew member. Rosters that cover flight 5. GE 7 Sep 07 Slide 110
111 Airline Crew Scheduling There are 2 crew members, and the possible rosters are: (1,3,5), (1,4,6), (2,3,5), (2,4,6) The LP relaxation of the problem is: Cost of assigning crew member 1 to roster 2 = 1 if we assign crew member 1 to roster 2, = 0 otherwise. Each crew member is assigned to exactly 1 roster. Each flight is assigned at least 1 crew member. Rosters that cover flight 6. GE 7 Sep 07 Slide 111
112 Airline Crew Scheduling There are 2 crew members, and the possible rosters are: (1,3,5), (1,4,6), (2,3,5), (2,4,6) The LP relaxation of the problem is: Cost c 12 of assigning crew member 1 to roster 2 = 1 if we assign crew member 1 to roster 2, = 0 otherwise. Each crew member is assigned to exactly 1 roster. Each flight is assigned at least 1 crew member. GE 7 Sep 07 Slide 112 In a real problem, there can be millions of rosters.
113 Airline Crew Scheduling We start by solving the problem with a subset of the columns: Optimal dual solution u 1 u 2 v 1 v 2 v 3 v 4 v 5 v 6 GE 7 Sep 07 Slide 113
114 Airline Crew Scheduling We start by solving the problem with a subset of the columns: Dual variables u 1 u 2 v 1 v 2 v 3 v 4 v 5 v 6 GE 7 Sep 07 Slide 114
115 Airline Crew Scheduling We start by solving the problem with a subset of the columns: Dual variables u 1 u 2 v 1 v 2 v 3 v 4 v 5 v 6 GE 7 Sep 07 Slide 115 The reduced cost of an excluded roster k for crew member i is c ik u i v j j in roster k We will formulate the pricing problem as a shortest path problem.
116 Pricing problem Crew member 1 Crew member 2 GE 7 Sep 07 Slide 116 2
117 Pricing problem Crew member 1 Crew member 2 GE 7 Sep 07 Slide 117 Each s-t path corresponds to a roster, provided the flight time is within bounds. 2
118 Pricing problem Crew member 1 Crew member 2 GE 7 Sep 07 Slide 118 Cost of flight 3 if it immediately follows flight 1, offset by dual multiplier for flight 1 2
119 Pricing problem Crew member 1 Dual multiplier omitted to break symmetry Crew member 2 GE 7 Sep 07 Slide 119 Cost of transferring from home to flight 1, offset by dual multiplier for crew member 1 2
120 Pricing problem Crew member 1 Crew member 2 GE 7 Sep 07 Slide 120 Length of a path is reduced cost of the corresponding roster. 2
121 Pricing problem 10 Crew member 1 0 Crew member 2 GE 7 Sep 07 Slide Arc lengths using dual solution of LP relaxation
122 Pricing problem 10 Crew member 1 Reduced cost = 1 Add x 12 to problem. 0 Crew member 2 Reduced cost = 2 Add x 23 to problem. GE 7 Sep 07 Slide Solution of shortest path problems After x 12 and x 23 are added to the problem, no remaining variable has negative reduced cost.
123 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 i i ( j j ) T f s T min max j X i { } X flights, z < 0, all i i i Duration of flight j GE 7 Sep 07 Slide 123
124 Example: Machine Scheduling Constraint-directed search using logic-based Benders decomposition GE 7 Sep 07 Slide 124
125 This example 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 GE 7 Sep 07 Slide 125
126 Benders decomposition Constraint-directed search in which the master problem contains a fixed set of variables x. Applied to problems of the form min f ( x, y ) S ( x, y ) x D y D x, y When x is fixed to some value, the resulting subproblem is much easier: min f ( x, y ) S ( x, y ) y D y perhaps because it decouples into smaller problems. GE 7 Sep 07 Slide 126
127 Benders decomposition Constraint-directed search in which the master problem contains a fixed set of variables x. Applied to problems of the form min f ( x, y ) S ( x, y ) x D y D x, y When x is fixed to some value, the resulting subproblem is much easier: min f ( x, y ) S ( x, y ) y D y perhaps because it decouples into smaller problems. Nogoods are Benders cuts and exclude solutions no better than x. The Benders cut is obtained by solving the inference dual of the subproblem (classically, the linear programming dual). GE 7 Sep 07 Slide 127
128 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. GE 7 Sep 07 Slide 128
129 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 GE 7 Sep 07 Slide 129
130 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 1, 2, 3, 5 on machine A GE 7 Sep 07 Slide 130
131 Machine Scheduling The problem is min M M s + p, all j j x j r s d p, all j j j j x j Start time of job j ( j j = ij j = ) disjunctive ( s x i ),( p x i ), all i Time windows Jobs cannot overlap GE 7 Sep 07 Slide 131 j j
132 Machine Scheduling The problem is min M M s + p, all j j x j r s d p, all j j j j x j ( j j = ij j = ) Indexed linear metaconstraint disjunctive ( s x i ),( p x i ), all i GE 7 Sep 07 Slide 132 j j
133 Machine Scheduling The problem is min M M s + p, all j j x j r s d p, all j j j j x j ( j j = ij j = ) disjunctive ( s x i ),( p x i ), all i Specially-structured indexed linear metaconstraint Disjunctive scheduling metaconstraint GE 7 Sep 07 Slide 133 j j
134 Machine Scheduling The problem is min M M s + p, all j j x j r s d p, all j j j j x j Start time of job j ( j j = ij j = ) disjunctive ( s x i ),( p x i ), all i Time windows Jobs cannot overlap For a fixed assignment x the subproblem on each machine i is GE 7 Sep 07 Slide 134 min M M s + p, all j with x = i j x j j r s d p, all j with x = i j j j x j j ( s j x j = i p ij x j = i ) disjunctive ( ),( ) j j j j
135 Benders cuts Suppose we assign jobs 1,2,3,5 to machine A in iteration k. We can prove that 10 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 10. So we have a Benders cut v B k + 1 ( x ) = 10 if x = x = x = A otherwise GE 7 Sep 07 Slide 135
136 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 x k + 1 ( ) = 10 if x = x = x = A otherwise Using 0-1 variables: 10 ( ) A A A v x x x v = 1 if job 5 is assigned to machine A GE 7 Sep 07 Slide 136
137 Master problem The master problem is an MILP: min v j j 5 = 5 1 = 1 p x Aj Aj p x Bj Bj Constraints derived from time windows 10, etc. Constraints derived from release times 10, etc. 5 5 v p x, v 2 + p x, etc., i = A, B ij ij ij ij j = 1 j = 3 v 10( x + x + x 2) v 8 x x ij B 4 { 0,1 } A 2 A 3 A 5 Benders cut from machine A Benders cut from machine B GE 7 Sep 07 Slide 137
138 Computational Results (Jain & Grossmann) Seconds Problem sizes (jobs, machines) 1 - (3,2) 2 - (7,3) 3 - (12,3) 4 - (15,5) 5 - (20,5) Each data point represents an average of 2 instances MILP and CP ran out of memory on 1 of the largest instances Problem size GE 7 Sep 07 Slide 138 MILP CP OPL Hybrid
139 Enhancement Using Branch and Check (Thorsteinsson) Computation times in seconds. Problems have 30 jobs, 7 machines Hybrid Branch & check Seconds Problem GE 7 Sep 07 Slide 139
140 Stronger Benders cuts If all release times are the same, we can strengthen the Benders cuts. We are now using the cut v M ik x ij J ik + 1 j J ik Min makespan on machine i in iteration k 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 (1 x ) p ik ij ij j J ik These results can be generalized to cumulative scheduling. GE 7 Sep 07 Slide 140
141 Three success stories These are chosen because: They illustrate how scheduling interacts with other aspects of supply chain. And thus how CP can interact with other methods. Since they were part of a government (EU) supported project (LISCOS), a fair amount of detail was released to public. All were solved with help of Dash s Mosel system. GE 7 Sep 07 Slide 141
142 Process scheduling and lot sizing at BASF Manufacture of polypropylenes in 3 stages polymerization intermediate storage extrusion GE 7 Sep 07 Slide 142
143 Process scheduling and lot sizing at BASF Manual planning (old method) Required 3 days Limited flexibility and quality control 24/7 continuous production Variable batch size. Sequence-dependent changeover times. GE 7 Sep 07 Slide 143
144 Process scheduling and lot sizing at BASF Intermediate storage Limited capacity One product per silo Extrusion Production rate depends on product and machine GE 7 Sep 07 Slide 144
145 Process scheduling and lot sizing at BASF Three problems in one Lot sizing based on customer demand forecasts Assignment put each batch on a particular machine Sequencing decide the order in which each machine processes batches assigned to it GE 7 Sep 07 Slide 145
146 Process scheduling and lot sizing at BASF The problems are interdependent Lot sizing depends on assignment, since machines run at different speeds Assignment depends on sequencing, due to restrictions on changeovers Sequencing depends on lot sizing, due to limited intermediate storage GE 7 Sep 07 Slide 146
147 Process scheduling and lot sizing at BASF Solve the problems simultaneously Lot sizing: solve with MIP (using XPRESS-MP) Assignment: solve with MIP Sequencing: solve with CP (using CHIP) The MIP and CP are linked mathematically. Use logic-based Benders decomposition, developed only in the last few years. GE 7 Sep 07 Slide 147
148 Sample schedule, illustrated with Visual Scheduler (AviS/3) Source: BASF GE 7 Sep 07 Slide 148
149 Process scheduling and lot sizing at BASF Benefits Optimal solution obtained in 10 mins. Entire planning process (data gathering, etc.) requires a few hours. More flexibility Faster response to customers Better quality control GE 7 Sep 07 Slide 149
150 Paint production at Barbot Two problems to solve simultaneously Lot sizing Machine scheduling Focus on solvent-based paints, for which there are fewer stages. Barbot is a Portuguese paint manufacturer. Several machines of each type GE 7 Sep 07 Slide 150
151 Paint production at Barbot Solution method similar to BASF case (MIP + CP). Benefits Optimal solution obtained in a few minutes for 20 machines and 80 products. Product shortages eliminated. 10% increase in output. Fewer cleanup materials. Customer lead time reduced. GE 7 Sep 07 Slide 151
152 Production line sequencing at Peugeot-Citroën The Peugeot 206 can be manufactured with 12,000 option combinations. Planning horizon is 5 days GE 7 Sep 07 Slide 152
153 Production line sequencing at Peugeot-Citroën Each car passes through 3 shops. Objectives Group similar cars (e.g. in paint shop). Reduce setups. GE 7 Sep 07 Slide 153 Balance work station loads.
154 Production line sequencing at Peugeot-Citroën Special constraints Cars with a sun roof should be grouped together in assembly. Air-conditioned cars should not be assembled consecutively. Etc. GE 7 Sep 07 Slide 154
155 Production line sequencing at Peugeot-Citroën Problem has two parts Determine number of cars of each type assigned to each line on each day. Determine sequencing for each line on each day. Problems are solved simultaneously. Again by MIP + CP. GE 7 Sep 07 Slide 155
156 Source: Peugeot/Citroën GE 7 Sep 07 Slide 156 Sample schedule
157 Production line sequencing at Peugeot-Citroën Benefits Greater ability to balance such incompatible benefits as fewer setups and faster customer service. Better schedules. GE 7 Sep 07 Slide 157
158 Line balancing at Peugeot-Citroën A classic production sequencing problem Source: Peugeot/Citroën GE 7 Sep 07 Slide 158
159 Line balancing at Peugeot-Citroën Objective Equalize load at work stations. Keep each worker on one side of the car Constraints Precedence constraints between some operations. Ergonomic requirements. Right equipment at stations (e.g. air socket) GE 7 Sep 07 Slide 159
160 Line balancing at Peugeot-Citroën Solution again obtained by an integrated method. MIP: obtain solution without regard to precedence constraints. CP: Reschedule to enforce precedence constraints. The two methods interact. GE 7 Sep 07 Slide 160
161 Source: Peugeot/Citroën GE 7 Sep 07 Slide 161
162 Line balancing at Peugeot-Citroën Benefits Better equalization of load. Some stations could be closed, reducing labor. Improvements needed Reduce trackside clutter. Equalize space requirements. Keep workers on one side of car. GE 7 Sep 07 Slide 162
163 Background Reading Much 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) 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) E. Thorsteinsson and G. Ottosson, Linear relaxation and reducedcost based propagation of continuous variable subscripts, Annals of Operations Research 115 (2001) GE 7 Sep 07 Slide 163
164 GE 7 Sep 07 Slide 164
A Framework for Integrating Optimization and Constraint Programming
A Framework for Integrating Optimization and Constraint Programming John Hooker Carnegie Mellon University SARA 2007 SARA 07 Slide Underlying theme Model vs. solution method. How can we match the model
More informationOperations 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 informationAn 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 informationTutorial: 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 informationA 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 informationLogic, 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 informationRecent 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 informationScheduling 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 informationIntegrating 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 informationIntegrating 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 informationProjection 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 informationSingle-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 informationAn 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 informationProjection, 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 informationAn 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 informationLessons 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 informationHow 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 informationLogic-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 informationConsistency 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 informationDecision 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 informationDecision 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 informationProjection, 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 informationPlanning 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 informationAlternative 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 informationThe 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 informationA 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 informationChapter 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 informationChapter 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 informationDuality 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 informationOrbital 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 informationMVE165/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 informationis 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 informationBenders 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 informationSolving 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 informationStochastic 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 informationComputational 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 informationMultiperiod 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 informationMINLP: Theory, Algorithms, Applications: Lecture 3, Basics of Algorothms
MINLP: Theory, Algorithms, Applications: Lecture 3, Basics of Algorothms Jeff Linderoth Industrial and Systems Engineering University of Wisconsin-Madison Jonas Schweiger Friedrich-Alexander-Universität
More informationarxiv: 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 informationScheduling 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 informationResource 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 information21. 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 informationMixed Integer Programming Solvers: from Where to Where. Andrea Lodi University of Bologna, Italy
Mixed Integer Programming Solvers: from Where to Where Andrea Lodi University of Bologna, Italy andrea.lodi@unibo.it November 30, 2011 @ Explanatory Workshop on Locational Analysis, Sevilla A. Lodi, MIP
More informationIntroduction 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 informationOutline. 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 informationRobust 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 information18 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 informationLecture 8: Column Generation
Lecture 8: Column Generation (3 units) Outline Cutting stock problem Classical IP formulation Set covering formulation Column generation A dual perspective Vehicle routing problem 1 / 33 Cutting stock
More informationInteger 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 informationNetwork 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 informationLogic-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 informationInteger 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 informationDecision 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 informationInteger 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 informationSection 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 informationColumn 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 informationarxiv: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 informationOptimization 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 informationPractical Tips for Modelling Lot-Sizing and Scheduling Problems. Waldemar Kaczmarczyk
Decision Making in Manufacturing and Services Vol. 3 2009 No. 1 2 pp. 37 48 Practical Tips for Modelling Lot-Sizing and Scheduling Problems Waldemar Kaczmarczyk Abstract. This paper presents some important
More informationExtended 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 informationOutline. 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 informationWorkforce Scheduling. Outline DM87 SCHEDULING, TIMETABLING AND ROUTING. Outline. Workforce Scheduling. 1. Workforce Scheduling.
Outline DM87 SCHEDULING, TIMETABLING AND ROUTING Lecture 17 Workforce Scheduling 2. Crew Scheduling and Roering Marco Chiarandini DM87 Scheduling, Timetabling and Routing 2 Outline Workforce Scheduling
More informationINTEGER PROGRAMMING. In many problems the decision variables must have integer values.
INTEGER PROGRAMMING Integer Programming In many problems the decision variables must have integer values. Example:assign people, machines, and vehicles to activities in integer quantities. If this is the
More informationDecision 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 informationA 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 informationIntroduction 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 informationA Principled Approach to Mixed Integer/Linear Problem Formulation
A Principled Approach to Mixed Integer/Linear Problem Formulation J N Hooker September 9, 2008 Abstract We view mixed integer/linear problem formulation as a process of identifying disjunctive and knapsack
More information5 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 informationMDD-based Postoptimality Analysis for Mixed-integer Programs
MDD-based Postoptimality Analysis for Mixed-integer Programs John Hooker, Ryo Kimura Carnegie Mellon University Thiago Serra Mitsubishi Electric Research Laboratories Symposium on Decision Diagrams for
More informationOn 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 informationA 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 informationAnalyzing the computational impact of individual MINLP solver components
Analyzing the computational impact of individual MINLP solver components Ambros M. Gleixner joint work with Stefan Vigerske Zuse Institute Berlin MATHEON Berlin Mathematical School MINLP 2014, June 4,
More informationColumn 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 informationCHAPTER 3: INTEGER PROGRAMMING
CHAPTER 3: INTEGER PROGRAMMING Overview To this point, we have considered optimization problems with continuous design variables. That is, the design variables can take any value within a continuous feasible
More informationInteger Linear Programming Modeling
DM554/DM545 Linear and Lecture 9 Integer Linear Programming Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark Outline 1. 2. Assignment Problem Knapsack Problem
More informationOptimization 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 informationRecoverable 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 informationA 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 informationIntroduction 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 informationLecture 8: Column Generation
Lecture 8: Column Generation (3 units) Outline Cutting stock problem Classical IP formulation Set covering formulation Column generation A dual perspective 1 / 24 Cutting stock problem 2 / 24 Problem description
More informationIntroduction 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 informationSection 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 informationDisconnecting 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 informationOptimization 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 informationDecomposition-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 informationPlanning and Scheduling of batch processes. Prof. Cesar de Prada ISA-UVA
Planning and Scheduling of batch processes Prof. Cesar de Prada ISA-UVA prada@autom.uva.es Outline Batch processes and batch plants Basic concepts of scheduling How to formulate scheduling problems Solution
More informationSection #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 informationSection 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 informationOptimization 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 informationCutting 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 informationInteger Linear Programming (ILP)
Integer Linear Programming (ILP) Zdeněk Hanzálek, Přemysl Šůcha hanzalek@fel.cvut.cz CTU in Prague March 8, 2017 Z. Hanzálek (CTU) Integer Linear Programming (ILP) March 8, 2017 1 / 43 Table of contents
More informationLarge-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 information3.10 Column generation method
3.10 Column generation method Many relevant decision-making (discrete optimization) problems can be formulated as ILP problems with a very large (exponential) number of variables. Examples: cutting stock,
More informationBranch-and-Price-and-Cut for the Split Delivery Vehicle Routing Problem with Time Windows
Branch-and-Price-and-Cut for the Split Delivery Vehicle Routing Problem with Time Windows Guy Desaulniers École Polytechnique de Montréal and GERAD Column Generation 2008 Aussois, France Outline Introduction
More information3.10 Column generation method
3.10 Column generation method Many relevant decision-making problems can be formulated as ILP problems with a very large (exponential) number of variables. Examples: cutting stock, crew scheduling, vehicle
More informationSoftware for Integer and Nonlinear Optimization
Software for Integer and Nonlinear Optimization Sven Leyffer, leyffer@mcs.anl.gov Mathematics & Computer Science Division Argonne National Laboratory Roger Fletcher & Jeff Linderoth Advanced Methods and
More informationColumn 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 informationSolving LP and MIP Models with Piecewise Linear Objective Functions
Solving LP and MIP Models with Piecewise Linear Obective Functions Zonghao Gu Gurobi Optimization Inc. Columbus, July 23, 2014 Overview } Introduction } Piecewise linear (PWL) function Convex and convex
More informationModels and Cuts for the Two-Echelon Vehicle Routing Problem
Models and Cuts for the Two-Echelon Vehicle Routing Problem Guido Perboli Roberto Tadei Francesco Masoero Department of Control and Computer Engineering, Politecnico di Torino Corso Duca degli Abruzzi,
More information1 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