Recent Developments in Integrated Methods for Optimization

Size: px
Start display at page:

Download "Recent Developments in Integrated Methods for Optimization"

Transcription

1 Recent Developments in Integrated Methods for Optimization John Hooker Carnegie Mellon University August 2012

2 Premise Constraint programming and mathematical programming can work together. There is underlying unity. Result: faster solution and more elegant models. August 2012 Slide 2

3 Premise Constraint programming and mathematical programming can work together. There is underlying unity. Result: faster solution and more elegant models. Math programming solvers constantly improve But they would reach a much higher level if this same effort were applied to integrated methods. Solvers are beginning to move in this direction. August 2012 Slide 3

4 Premise Constraint programming and mathematical programming can work together. There is underlying unity. Result: faster solution and more elegant models. Math programming solvers constantly improve But they would reach a much higher level if this same effort were applied to integrated methods. Solvers are beginning to move in this direction. The same integration principles apply more generally. Global optimization, exact/heuristic methods. August 2012 Slide 4

5 Outline What is constraint programming? Integrating OR and CP Constraint propagation + relaxation CP-based branch and price Decomposition Methods Software Some very recent work Caveat: This is a high-level overview. Don t worry about the technical details. August 2012 Slide 5

6 What Is Constraint Programming? Basic Idea Applications Examples CP and Math Programming Software

7 Basic Idea Each line of the model is both a constraint and a procedure. Constraint: often a high-level global constraint Different modeling paradigm than math programming Procedure: removes infeasible values from variable domains Filtering, domain consistency maintenance Passes reduced domains to next constraint (constraint propagation). August 2012 Slide 7

8 Early commercial successes Circuit design (Siemens) Container port scheduling (Hong Kong and Singapore) Real-time control (Siemens, Xerox) August 2012 Slide 8

9 Applications Job shop scheduling Assembly line smoothing and balancing Cellular frequency assignment Nurse scheduling Shift planning Maintenance planning Airline crew rostering and scheduling Airport gate allocation and stand planning August 2012 Slide 9

10 Applications Production scheduling chemicals aviation oil refining steel lumber photographic plates tires Transport scheduling (food, nuclear fuel) Warehouse management Course timetabling August 2012 Slide 10

11 Example: Employee scheduling Schedule four nurses in 8-hour shifts. A nurse works at most one shift a day, at least 5 days a week. Same schedule every week. No shift staffed by more than two different nurses in a week. A nurse cannot work different shifts on two consecutive days. A nurse who works shift 2 or 3 must do so at least two days in a row. August 2012 Slide 11

12 Two ways to view the problem Assign nurses to shifts Sun Mon Tue Wed Thu Fri Sat Shift 1 A B A A A A A Shift 2 C C C B B B B Shift 3 D D D D C C D Assign shifts to nurses Sun Mon Tue Wed Thu Fri Sat Nurse A Nurse B Nurse C Nurse D August 2012 Slide 12 0 = day off

13 Use both formulations in the same model! First, assign nurses to shifts. Let w sd = nurse assigned to shift s on day d ( ) alldiff w, w, w, all d 1d 2d 3d Schedule 3 different nurses on each day August 2012 Slide 13

14 Use both formulations in the same model! First, assign nurses to shifts. Let w sd = nurse assigned to shift s on day d ( w1 d w2d w3d ) d ( w A B C D ) alldiff,,, all cardinality (,,, ),(5,5,5,5),(6,6,6,6) Each nurse works at least 5 and at most 6 days a week August 2012 Slide 14

15 Use both formulations in the same model! First, assign nurses to shifts. Let w sd = nurse assigned to shift s on day d ( w1 d w2d w3d ) d ( w A B C D ) alldiff,,, all cardinality (,,, ),(5,5,5,5),(6,6,6,6) ( ) nvalues w,..., w 1,2, all s s,sun s,sat At least 1 and at most 2 nurses work any given shift. August 2012 Slide 15

16 Remaining constraints are not easily expressed in this notation. So, assign shifts to nurses. Let y id = shift assigned to nurse i on day d alldiff (,, ) y y y, all d 1d 2d 3d Assign a different nurse to each shift on each day. Redundant, but speeds solution. August 2012 Slide 16

17 Remaining constraints are not easily expressed in this notation. So, assign shifts to nurses. Let y id = shift assigned to nurse i on day d alldiff ( y, y, y ) 1d 2d 3d ( y y P ) i,sun, all stretch,, (2,3),(2,2),(6,6),, all i,sat d i Shift 2 or 3 must be worked at least 2 days in a row. August 2012 Slide 17

18 Remaining constraints are not easily expressed in this notation. So, assign shifts to nurses. Let y id = shift assigned to nurse i on day d alldiff ( y, y, y ) 1d 2d 3d ( y y P ) i,sun, all stretch,, (2,3),(2,2),(6,6),, all i,sat d i Pattern constraint: P = {(s,0),(0,s) s = 1,2,3} Don t switch shifts without taking at least one day off. August 2012 Slide 18

19 Connect the w sd variables to the y id variables. Use channeling constraints: w y y w id sd d d = = i, all i, d s, all s, d Channeling constraints increase propagation and make the problem easier to solve. August 2012 Slide 19

20 The complete model is: ( w1 d w2d w3d ) d ( w A B C D ) alldiff,,, all cardinality (,,, ),(5,5,5,5),(6,6,6,6) ( ) nvalues w,..., w 1,2, all s alldiff s,sun ( y, y, y ) 1d 2d 3d s,sat ( y y P ) i,sun, all stretch,, (2,3),(2,2),(6,6),, all i,sat d i w y y w id sd d d = = i, all i, d s, all s, d August 2012 Slide 20

21 Example: Resource-Constrained Scheduling Use the cumulative scheduling constraint. Total resources consumed by jobs at any one time must not exceed L. ( t t p p c c C) cumulative (,, ),(,, ),(,, ), 1 n 1 n 1 n Job start times (variables) Job processing times Job resource requirements August 2012 Slide 21

22 Ship loading The problem Load 34 items on the ship in minimum time (min makespan) Each item i requires p i minutes and c i workers. Total of 8 workers available. From IBM OPL Studio manual August 2012 Slide 22

23 Precedence constraints 1 2, , , , ,30,31, August 2012 Slide 23

24 Use the cumulative scheduling constraint. min z s.t. z t + p, i = 1,,34 i i ( t t p p c c ) cumulative (,, ),(,, ),(,, ), t t + 3, t t + 3, etc. (precedence constraints) Note that there are no integer variables. The solver may treat the t i s as integers, but this is an implementation decision. August 2012 Slide 24

25 Edge finding for cumulative scheduling Consider a cumulative scheduling constraint: ( s s s p p p c c c C) cumulative (,, ),(,, ),(,, ), A feasible solution: August 2012 Slide 25

26 Edge finding for cumulative scheduling We can deduce that job 3 must finish after the others finish: 3 > { 1,2 } Because the total energy required exceeds the area between the earliest release time and the later deadline of jobs 1,2: ( ) e + e > C L E 3 {1,2} {1,2} {1,2,3} August 2012 Slide 26

27 Edge finding for cumulative scheduling We can deduce that job 3 must finish after the others finish: 3 > { 1,2 } Because the total energy required exceeds the area between the earliest release time and the later deadline of jobs 1,2: ( ) e + e > C L E 3 {1,2} {1,2} {1,2,3} Total energy required = August 2012 Slide 27

28 Edge finding for cumulative scheduling We can deduce that job 3 must finish after the others finish: 3 > { 1,2 } Because the total energy required exceeds the area between the earliest release time and the later deadline of jobs 1,2: ( ) e + e > C L E 3 {1,2} {1,2} {1,2,3} Total energy required = 22 Area available = August 2012 Slide 28

29 Edge finding for cumulative scheduling We can deduce that job 3 must finish after the others finish: 3 > { 1,2 } We can update the release time of job 3 to E {1,2} + e ( C c )( L E ) J 3 {1,2} {1,2} c 3 Energy available for jobs 1,2 if space is left for job 3 to start anytime = August 2012 Slide 29

30 Edge finding for cumulative scheduling We can deduce that job 3 must finish after the others finish: 3 > { 1,2 } We can update the release time of job 3 to E {1,2} + e ( C c )( L E ) J 3 {1,2} {1,2} c 3 Energy available for jobs 1,2 if space is left for job 3 to start anytime = 10 Excess energy required by jobs 1,2 = 4 August 2012 Slide

31 Edge finding for cumulative scheduling We can deduce that job 3 must finish after the others finish: 3 > { 1,2 } We can update the release time of job 3 to E {1,2} + e ( C c )( L E ) J 3 {1,2} {1,2} c 3 Energy available for jobs 1,2 if space is left for job 3 to start anytime = 10 Excess energy required by jobs 1,2 = 4 August 2012 Slide 31 4 Move up job 3 release time 4/2 = 2 units beyond E 10 {1,2} E 3

32 Edge finding for cumulative scheduling In general, if e ( ) J { k } > C LJ EJ { k } then k > J, and update E k to max J J e ( C c )( L E ) > 0 J k J J E J ej ( C ck )( LJ EJ ) + ck In general, if e ( ) J { k } > C LJ { k } EJ then k < J, and update L k to min J J e ( C c )( L E ) > 0 J k J J L J ej ( C ck )( LJ EJ ) ck August 2012 Slide 32

33 Edge finding for cumulative scheduling There is an O(n 2 ) algorithm that finds all applications of the edge finding rules. August 2012 Slide 33

34 Other propagation rules for cumulative scheduling Extended edge finding. Timetabling. Not-first/not-last rules. Energetic reasoning. August 2012 Slide 34

35 CP and Mathematical Programming Comparison CP Logic processing Inference (filtering, constraint propagation) High-level modeling (global constraints) Branching Constraint-based processing MP Numerical calculation Relaxation Atomistic modeling (linear inequalities) Branching Independence of model and algorithm August 2012 Slide 35

36 Software for Constraint Programming ECLiPSe (NICTA), open source Early CP (and hybrid) solver, still maintained CHIP (Cosytec), commercial State-of-the-art solver OPL CP Optimizer (IBM), commercial State-of-the-art solver, originally developed by ILOG Gecode (Schulte & Tack), free download State-of-the-art toolkit for building CP solvers Frontline MIP/CP solver (Frontline Systems), commercial Add-in for Excel spreadsheets G12 (NICTA), under development Major CP and hybrid system Google OR-tools (Google), open source Includes CP solver August 2012 Slide 36

37 Integrating OR and CP Complementary strengths How to integrate Constraint propagation + relaxation CP-based branch and price Decomposition methods

38 Complementary Strengths CP: Inference methods Modeling Exploits local structure Good at scheduling OR: Relaxation methods Duality theory More robust Good with continuous variables Let s bring them together! August 2012 Slide 38

39 How to Integrate Constraint propagation + relaxation Propagation reduces search space. Relaxation bounds prune the search CP-based column generation In branch-and-price methods CP accommodates complex constraints on columns Decomposition methods Distinguish master problem and subproblem MILP solves one, CP the other. Use CP-style modeling August 2012 Slide 39

40 Constraint propagation + relaxation Combine MIP-style bounding with CP-style propagation. At each node of search tree: Solve linear relaxation to get bound, as in MIP. Filter variable domains and propagate constraints, as in CP. August 2012 Slide 40

41 Search tree for an IP problem min 90x + 60x + 50x + 40x 7x + 5x + 4x + 3x 42 x + x + x + x 8 x x x x 1 i { 1,2 } + x 2 + x 2 + x , 3, x 1 3 CP Summer School June 2011 Slide 41 1 Knapsack cuts x 1 { } x 2 { } x 3 { } x 4 { } infeasible 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 2 {012 } x 3 { 123} x 4 {0123} x = (3,2,2¾,0) value = 527½ x 1 { 3} x 3 {1,2} x 2 { 12 } x 3 { 12 } x 4 { 123} x = (3,2,2,1) value = 530 feasible solution x 1 = 3 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

42 Search tree for an IP problem min 90x + 60x + 50x + 40x 7x + 5x + 4x + 3x 42 x + x + x + x 8 x x x x 1 i { 1,2 } + x 2 + x 2 + x , 3, x 1 3 CP Summer School June 2011 Slide 42 1 Knapsack cuts x 1 { } x 2 { } x 3 { } x 4 { } infeasible Prune tree due to propagation alone. 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 2 {012 } x 3 { 123} x 4 {0123} x = (3,2,2¾,0) value = 527½ x 1 { 3} x 3 {1,2} x 2 { 12 } x 3 { 12 } x 4 { 123} x = (3,2,2,1) value = 530 feasible solution x 1 = 3 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 Filtered domains x 1 { 3} x 2 { 3} x 3 {012 } x 4 {012 } x = (3,3,0,2) value = 530 feasible solution Relaxation bound

43 Constraint propagation + relaxation Example: Relaxation of cumulative constraint Use discrete-time MILP model Total resource consumption at time t z = z 1 + c x c x,, all t t t j jt j j t p j j j t jt z C, all t t x 0 x 1, all j, t jt = 1, all j Add this to linear relaxation of problem while propagating the cumulative constraint. 0-1 variables x jt appear only in the relaxation = 1 when job j starts at time t August 2012 Slide 43

44 Constraint propagation + relaxation Example: Relaxation of cumulative constraint Or use valid inequalities in original variables t j Earliest release time in set J k k 1 t kr + ( k i + 1) p c p j J j j j j J C i = 1 i = 1 k 1 t kr ( k i + 1) p c j J ji j j J C i = 1 { } i i i where J = i 1,, i k is any subset of jobs. i August 2012 Slide 44

45 Constraint propagation + relaxation Example: Piecewise linear functions Use convex hull relaxation in original variables. Add these cuts to linear relaxation Reduced by bounds propagation August 2012 Slide 45 No need for 0-1 variables

46 Constraint propagation + relaxation Example: Piecewise linear functions Branch on original variables & tighten relaxation. Branch here August 2012 Slide 46 Solution value of x in current linear relaxation

47 Computational Advantage of Integrating CP and OR Using CP + relaxation from OR Problem Lesson timetabling (LP + red. cost var. fixing) Piecewise linear costs (LP relaxation) Flow shop scheduling, etc. (LP relaxation + cuts) Speedup 2 to 50 times faster than CP 2 to 120 times faster than MILP 4 to 150 times faster than MILP. Focacci, Lodi, Milano (1999) Refalo (1999), Yunes, Aron & Hooker (2010) Hooker & Osorio (1999) August 2012 Slide 47

48 Computational Advantage of Integrating CP and OR Using CP + relaxation from OR Problem Product configuration (LP relaxation + cuts) Automatic recording (Lagrangean relaxation) Stable set problem (semidefinite relaxation) Speedup 30 to 40 times faster than CP, MILP 1 to 10 times faster than CP, MILP Better than CP in less time Thorsteinsson & Ottosson (2001) Sellmann & Fahle (2001) Van Hoeve (2001) August 2012 Slide 48

49 Computational Advantage of Integrating CP and OR Using CP + relaxation from OR Problem Structural design (nonlinear) (LP quasi-relaxation + logic cuts) Radiation therapy planning (Lagrangean relaxation) Speedup Up to 600 times faster than MILP. 10 times faster than CP, MILP Bollapragada, Ghattas & Hooker (2001) Cambazard, O Mahony and O Sullivan (2010) August 2012 Slide 49

50 Applications of Integrated CP and OR Using CP + relaxation from OR Application Orthogonal Latin squares Appa, Magos & Mourtos (2002) Truss structure design Bollapragada, Gattas & Hooker (2001) Chemical processing network design Vehicle routing Sadykov (2004) Grossmann et al. (1994), Hooker & Osorio (1999) Resource-constrained scheduling Demassy, Artiques & Michelon (2002), Berthold et al. (2010) Multiple machine scheduling Bockmayr & Pisaruk (2003) Shuttle transit routing Quadrifoglio, Dessouky & Ordóñez (2008) Boat party scheduling Hooker & Osorio (1999) August 2012 Slide 50

51 Applications of Integrated CP and OR Using CP + relaxation from OR Application Multidimensional knapsack problem Osorio & Glover (2001) Factory retrofit planning Sawaya & Grossmann (2005) Strip packing Sawaya & Grossmann (2005) Chemical process engineering Transport & production problems with piecewise linear costs Lee & Grossmann (2003), Vecchietti et al (2001), Swaya & Grossmann (2007) Refalo (1999), Ottosson et al. (1999) TSP with time windows Milano & van Hoeve (2002) Product configuration Milano & van Hoeve (2002) August 2012 Slide 51

52 Applications of Integrated CP and OR Using CP + relaxation from OR Application Network design Cronholm & Ajili (2004) Automatic digital recording Sellmann & Fahle (2001) Traveling tournament problem Resource-constrained shortest path problem Radiation therapy planning CP domain filtering Benoist, Laburthe & Rottembourg (2001) Gellermann, Sellmann & Wright (2005) Cambazard, O Mahony & O Sullivan (2010) Khemmoudj, Bennaceur & Nagih (2005) August 2012 Slide 52

53 CP-Based Branch and Price Same as traditional branch and price Except that CP generates the columns. Introduce an integer variable for each combinatorial possibility. Removes most or all of symmetry. Filter variable domains and propagate constraints, as in CP. At each node of MIP search tree: Solve linear relaxation using column generation. Generate improving columns with CP (pricing problem). Start with these columns at child nodes. August 2012 Slide 53

54 Airline Crew Scheduling Assign crew members to flights to minimize cost while covering the flights and observing complex work rules. Flight data Start time Finish time 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. The possible rosters are: (1,3,5), (1,4,6), (2,3,5), (2,4,6) August 2012 Slide 54

55 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. August 2012 Slide 55

56 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. August 2012 Slide 56 Rosters that cover flight 1.

57 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. August 2012 Slide 57 In a real problem, there can be millions of rosters.

58 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 August 2012 Slide 58

59 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 August 2012 Slide 59

60 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 The reduced cost of an excluded 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. August 2012 Slide 60

61 Pricing problem Crew member 1 Crew member 2 August 2012 Slide 61

62 Pricing problem Each s-t path corresponds to a roster, provided the flight time is within bounds. Crew member 1 Crew member 2 August 2012 Slide 62

63 Pricing problem Cost of flight 3 if it immediately follows flight 1, offset by dual multiplier for flight 1 Crew member 1 Crew member 2 August 2012 Slide 63

64 Pricing problem Cost of transferring from home to flight 1, offset by dual multiplier for crew member 1 Crew member 1 Dual multiplier omitted to break symmetry Crew member 2 August 2012 Slide 64

65 Pricing problem Length of a path is reduced cost of the corresponding roster. Crew member 1 Crew member 2 August 2012 Slide 65

66 Pricing problem 10 Arc lengths using dual solution of LP relaxation Crew member Crew member August 2012 Slide 66

67 Crew member 1 Reduced cost = 1 Add x 12 to problem. Crew member 2 Reduced cost = 2 Add x 23 to problem. August 2012 Slide Pricing problem Solution of shortest path problems After x 12 and x 23 are added to the problem, no remaining variable has negative reduced cost. 2 2

68 Pricing problem The shortest path problem cannot be solved by traditional shortest path algorithms, due to the bounds on total duration of flights. 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 max X flights, z < 0, all i i ( j j ) i Duration of flight j August 2012 Slide 68

69 Process Scheduling Assign batches to processing-unit/start-time combinations while observing time constraints. A schedule is the sequence of unit/start-time combinations assigned to a batch. The time gap between two consecutive processes in a schedule is bounded. Total time for a schedule is bounded. August 2012 Slide 69

70 Process Scheduling The integer programming model is = 1 if we assign batch i to schedule j = 1 if schedule j includes unit/start-time k min j ij x ij ij x = 1, all i ( u ) ij c x a x 1, all k ( v ) {0,1}, all i, j ij ij jk ij k i Cost of assigning batch i to schedule j Each batch is assigned to exactly 1 schedule. Each unit/start-time is assigned at most one batch. August 2012 Slide 70

71 Pricing problem Each s-t path corresponds to a schedule, provided the total processing time is within bounds. Batch 1 Unit/start-time combination Batch 2 August 2012 Slide 71 Everything else is the same as before, except network generation.

72 Computational Advantage of Integrating CP and OR Using CP-based Branch and Price Problem Urban transit crew scheduling Speedup Schedules 210 trips, vs. 120 for traditional branch and price Yunes, Moura & de Souza (1999) Airline crew rostering Traveling tournament scheduling Incorporates complicated work rules First to solve 8-team instance Fahle et al. (2002) Easton, Nemhauser & Trick (2002) August 2012 Slide 72

73 Applications of Integrated CP and OR Using CP-based branch and price Application Airline crew rostering Junker et al. (1999), Kohl (2000), Chabrier (2000), Fahle et al. (2002), Sellmann et al. (2002) Aircraft scheduling Grönqvist (2003) Bus crew scheduling Yunes, Moura & de Souza (2005) Vehicle routing Rousseau, Gendreau & Pesant (2002) Network design Chabrier (2003) Employee timetabling Demassey, Pesant & Rousseau (2005) Physician scheduling Gendron, Lebbah & Pesant (2005) Radiation therapy planning Cambazard, O Mahony & O Sullivan (2010) Traveling tournament problem Easton, Nemhauser & Trick (2002), Trick & Yildiz (2007) August 2012 Slide 73

74 Decomposition Methods Can be applied to planning and scheduling problems. MILP solves planning (master) problem. CP solves scheduling subproblem. Link master and subproblem with logic-based Benders cuts. August 2012 Slide 74

75 Facility assignment and scheduling Assign jobs to facilities, and schedule them, to minimize makespan. Master problem assigns jobs, using MILP. Subproblem decomposes into a separate scheduling problem for each facility, solved by CP. Start time of job j min M M t + p, all j j x j r t d p, all j j j j x j j j ( j j = ij j = ij j = ) cumulative ( t x i),( p x i),( c x i), all i August 2012 Slide 75 Facility assigned to job j

76 Facility assignment and scheduling Subproblem for each facility i, given an assignment x from master min M M t + p, all j j x j r t d p, all j j j j x j j j ( t j x j = i pij x j = i cij x j = i ) cumulative ( ),( ),( ) Sample Benders cut (all release times the same): Min makespan on facility i in iteration k M M p (1 y ) + max d min d ik ik ik { } { } ik ij ij j j j J j J j J =1 if job j assigned to facility i (x j = i ) Deadline for job j Set of jobs assigned to facility i in iteration k

77 Facility assignment and scheduling The master problem is min M M Mik pij (1 yij ) + max{ d j} min { d j}, all i, k j J ik j Jik j J ik Relaxation of subproblem y ij {0,1} Benders cuts August 2012 Slide 77

78 Computational Advantage of Integrating CP and OR Using CP/MILP Benders methods Problem Min-cost planning & scheduing Min-cost planning & scheduling Polypropylene batch scheduling at BASF Speedup 20 to 1000 times faster than CP, MILP Solved some MIP-intractable instances in <1 sec Solved previously insoluble problem in 10 min Jain & Grossmann (2001), Thorsteinsson (2001) Yunes, Aron & Hooker (2010) Timpe (2002) August 2012 Slide 78

79 Computational Advantage of Integrating CP and OR Using CP/MILP Benders methods 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 Benoist, Gaudin, Rottembourg (2002) Hooker (2004) Hooker (2005) August 2012 Slide 79

80 Computational Advantage of Integrating CP and OR Using CP/MILP Benders methods Problem Sports scheduling Single-facility scheduling Speedup Several orders of magnitude speedup vs MILP Schedules several times as many jobs as MILP. Faster and/or more robust than CP. Rasmussen & Trick (2007) Coban & Hooker (2012) August 2012 Slide 80

81 Applications of Integrated CP and OR Using CP/MILP Benders methods Application Logic circuit verification Hooker & Yan (1995) Propositional satisfiability Planning & scheduling Hooker (2000), Hooker & Ottosson (2003) Jain & Grossmann (2001), Hooker (2000,2004,2005), Harjunkoski & Grossmann (2002), Chu & Xia (2005) Dispatch of automated vehicles Corréa, Langevin & Rousseau (2004) Steel production scheduling Harjunkoski & Grossmann (2001) Chemical batch scheduling Computer processor scheduling Timpe (2002), Maravelias & Grossmann (2004) Cambazard et al. (2004), Benini et al. (2005,2008), August 2012 Slide 81

82 Applications of Integrated CP and OR Using CP/MILP Benders methods Application Location-allocation Fazel-Zarandi & Beck (2009) Traffic diversion Xia, Eremin & Wallace (2004) Transport network design Peterson & Trick (2009) Queuing design & control Terekhov, Beck & Brown (2007) Sports scheduling Rasmussen & Trick (2007), Cheung (2009) August 2012 Slide 82

83 Software for Integrated Methods ECLiPSe (NICTA), open source Exchanges information between ECLiPSEe solver, Xpress-MP IBM OPL Studio (IBM), commercial Combines CPLEX and ILOG CP Optimizer with script language Mosel (FICO), commercial Combines Xpress-MP, Xpress-Kalis with low-level modeling SIMPL (CMU), free download Full integration with high-level modeling (prototype) SCIP (ZIB), free download, commercial users asked to buy license Combines MILP and CP-based propagation G12 (NICTA), under development Converts generic model to one that invokes cooperating solvers BARON (global optimization), commercial Combines convexification and interval propagation August 2012 Slide 83

84 Some Very Recent Work Benders for scheduling Cutting planes from CP model BDDs as constraint store BDDs for relaxation bounds

85 Recent work Benders for Scheduling Joint work with Elvin Coban. Apply logic-based Benders to single-facility scheduling with long time horizons and many jobs. Decompose the problem by assigning jobs to segments of time horizon. Segmented problem Jobs cannot cross segment boundaries (e.g., weekends). Unsegmented problem Jobs can cross segment boundaries. August 2012 Slide 85

86 Recent work Benders for Scheduling Segmented instances, tight time windows August 2012 Slide 86

87 Recent work Benders for Scheduling Segmented instances, wide time windows August 2012 Slide 87

88 Recent work Benders for Scheduling Unsegmented instances CP solves it quickly (< 1 sec) or blows up, in which case Benders solves it in 6 seconds (average). So: try CP for 1 sec, then switch to Benders August 2012 Slide 88

89 Recent work Cutting Planes from CP Model Joint work with David Bergman. Polyhedral analysis of overlapping all-different constraints (equivalent to graph coloring). Used in many scheduling problems, sudoku puzzles, etc. etc. Derive cutting planes from CP alldiff formulation and map them into 0-1 model. Provides tighter bounds than all CPLEX cuts in a small fraction of the time (e.g., 1%). August 2012 Slide 89

90 Recent work BDDs as Constraint Store Joint work with Henrik Andersen, David Bergman, Andre Cire, Tarik Hadzic, Willem van Hoeve, Barry O Sullivan, Peter Tiedemann Replace variable domains in CP with relaxed binary decision diagrams (BDDs). BDDs have long been used for circuit design, configuration, etc. We use them to represent relaxation of feasible set. Replace domain filtering with BDD-based propagation. Reduces search tree for multiple alldiffs from 1 million nodes to 1 node, time speedup factor of 100. Speedups on other problems. Now being incorporated into Google CP solver. August 2012 Slide 90

91 Recent work BDDs for Relaxation Bounding Joint work with David Bergman, Andre Cire, Willem van Hoeve Replace LP relaxation with a relaxed binary decision diagram (BDD). Shortest path in BDD provides a lower bound on optimal value. For most instances of independent set problem, we get tighter bounds than full cutting plane technology in CPLEX. Bound is normally obtained in very small fraction of the time. August 2012 Slide 91

92 Further Reading J. N. Hooker, Integrated Methods for Optimization, 2 nd ed., Springer, M. Milano and P. van Hentenryck, eds., Hybrid Optimization: The Ten Years of CPAIOR, Springer, J. N. Hooker, Operations research methods in constraint programming, in F. Rossi, P. van Beek and T. Walsh, eds., Handbook of Constraint Programming, Elsevier, August 2012 Slide 92

A Framework for Integrating Optimization and Constraint Programming

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 information

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Workforce Scheduling. Outline DM87 SCHEDULING, TIMETABLING AND ROUTING. Outline. Workforce Scheduling. 1. Workforce Scheduling.

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

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

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

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

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

Operations Research as Empirical Modeling

Operations Research as Empirical Modeling Operations Research as Empirical Modeling John Hooker Carnegie Mellon University June 2009 June 2009 Slide 1 OR as Modeling Current practice: research in OR is primarily about algorithms. Computational

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

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

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

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

A cutting plane approach for integrated planning and scheduling

A cutting plane approach for integrated planning and scheduling A cutting plane approach for integrated planning and scheduling T. Kis a,, A. Kovács a a Computer and Automation Institute, Kende str. 13-17, H-1111 Budapest, Hungary Abstract In this paper we propose

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

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

Column Generation for Extended Formulations

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

More information

DETERMINISTIC AND STOCHASTIC MODELS FOR PRACTICAL SCHEDULING PROBLEMS. Elvin Coban

DETERMINISTIC AND STOCHASTIC MODELS FOR PRACTICAL SCHEDULING PROBLEMS. Elvin Coban DETERMINISTIC AND STOCHASTIC MODELS FOR PRACTICAL SCHEDULING PROBLEMS by Elvin Coban Submitted to the Tepper School of Business in Partial Fulfillment of the Requirements for the Degree of Doctor of Philosophy

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

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

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

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

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

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

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

More information

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

The core of solving constraint problems using Constraint Programming (CP), with emphasis on:

The core of solving constraint problems using Constraint Programming (CP), with emphasis on: What is it about? l Theory The core of solving constraint problems using Constraint Programming (CP), with emphasis on: l Modeling l Solving: Local consistency and propagation; Backtracking search + heuristics.

More information

A Benders Approach for Computing Improved Lower Bounds for the Mirrored Traveling Tournament Problem

A Benders Approach for Computing Improved Lower Bounds for the Mirrored Traveling Tournament Problem A Benders Approach for Computing Improved Lower Bounds for the Mirrored Traveling Tournament Problem Kevin K. H. Cheung School of Mathematics and Statistics Carleton University 1125 Colonel By Drive Ottawa,

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

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

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

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

with Binary Decision Diagrams Integer Programming J. N. Hooker Tarik Hadzic IT University of Copenhagen Carnegie Mellon University ICS 2007, January

with Binary Decision Diagrams Integer Programming J. N. Hooker Tarik Hadzic IT University of Copenhagen Carnegie Mellon University ICS 2007, January Integer Programming with Binary Decision Diagrams Tarik Hadzic IT University of Copenhagen J. N. Hooker Carnegie Mellon University ICS 2007, January Integer Programming with BDDs Goal: Use binary decision

More information

Integer and Constraint Programming for Batch Annealing Process Planning

Integer and Constraint Programming for Batch Annealing Process Planning Integer and Constraint Programming for Batch Annealing Process Planning Willem-Jan van Hoeve and Sridhar Tayur Tepper School of Business, Carnegie Mellon University 5000 Forbes Avenue, Pittsburgh, PA 15213,

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

Job Sequencing Bounds from Decision Diagrams

Job Sequencing Bounds from Decision Diagrams Job Sequencing Bounds from Decision Diagrams J. N. Hooker Carnegie Mellon University June 2017 Abstract. In recent research, decision diagrams have proved useful for the solution of discrete optimization

More information

Integer Linear Programming Modeling

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

Column Generation. i = 1,, 255;

Column Generation. i = 1,, 255; Column Generation The idea of the column generation can be motivated by the trim-loss problem: We receive an order to cut 50 pieces of.5-meter (pipe) segments, 250 pieces of 2-meter segments, and 200 pieces

More information

Lecture 8: Column Generation

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

MINLP: Theory, Algorithms, Applications: Lecture 3, Basics of Algorothms

MINLP: 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 information

A comparison of sequencing formulations in a constraint generation procedure for avionics scheduling

A comparison of sequencing formulations in a constraint generation procedure for avionics scheduling A comparison of sequencing formulations in a constraint generation procedure for avionics scheduling Department of Mathematics, Linköping University Jessika Boberg LiTH-MAT-EX 2017/18 SE Credits: Level:

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

CHAPTER 3: INTEGER PROGRAMMING

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

INTEGER PROGRAMMING. In many problems the decision variables must have integer values.

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

16.410/413 Principles of Autonomy and Decision Making

16.410/413 Principles of Autonomy and Decision Making 6.4/43 Principles of Autonomy and Decision Making Lecture 8: (Mixed-Integer) Linear Programming for Vehicle Routing and Motion Planning Emilio Frazzoli Aeronautics and Astronautics Massachusetts Institute

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

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

MDD-based Postoptimality Analysis for Mixed-integer Programs

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

IE418 Integer Programming

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

More information

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

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

Analyzing the computational impact of individual MINLP solver components

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

Graph Coloring Inequalities from All-different Systems

Graph Coloring Inequalities from All-different Systems Constraints manuscript No (will be inserted by the editor) Graph Coloring Inequalities from All-different Systems David Bergman J N Hooker Received: date / Accepted: date Abstract We explore the idea of

More information

On mathematical programming with indicator constraints

On mathematical programming with indicator constraints On mathematical programming with indicator constraints Andrea Lodi joint work with P. Bonami & A. Tramontani (IBM), S. Wiese (Unibo) University of Bologna, Italy École Polytechnique de Montréal, Québec,

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

Section #2: Linear and Integer Programming

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

More information

Indicator Constraints in Mixed-Integer Programming

Indicator Constraints in Mixed-Integer Programming Indicator Constraints in Mixed-Integer Programming Andrea Lodi University of Bologna, Italy - andrea.lodi@unibo.it Amaya Nogales-Gómez, Universidad de Sevilla, Spain Pietro Belotti, FICO, UK Matteo Fischetti,

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

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

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

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

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

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

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

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

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

Scheduling an Aircraft Repair Shop

Scheduling an Aircraft Repair Shop Proceedings of the Twenty-First International Conference on Automated Planning and Scheduling Scheduling an Aircraft Repair Shop Maliheh Aramon Bajestani and J. Christopher Bec Department of Mechanical

More information

Boosting Set Constraint Propagation for Network Design

Boosting Set Constraint Propagation for Network Design Boosting Set Constraint Propagation for Network Design Justin Yip 1, Pascal Van Hentenryck 1, and Carmen Gervet 2 1 Brown University, Box 1910, Providence, RI 02912, USA 2 German University in Cairo, New

More information

Operations Research Lecture 6: Integer Programming

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

More information

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

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