1 Logic-Based Benders Methods for Planning and Scheduling John Hooker Carnegie Mellon University August 2003.

Slides:



Advertisements
Similar presentations
1 LP, extended maxflow, TRW OR: How to understand Vladimirs most recent work Ramin Zabih Cornell University.
Advertisements

Primal Dual Combinatorial Algorithms Qihui Zhu May 11, 2009.
1 LP Duality Lecture 13: Feb Min-Max Theorems In bipartite graph, Maximum matching = Minimum Vertex Cover In every graph, Maximum Flow = Minimum.
Introduction to Algorithms
EE 553 Integer Programming
1 of 56 Linear Programming-Based Approximation Algorithms Shoshana Neuburger Graduate Center, CUNY May 13, 2009.
Lecture 10: Integer Programming & Branch-and-Bound
1 Logic-Based Methods for Global Optimization J. N. Hooker Carnegie Mellon University, USA November 2003.
Instructor Neelima Gupta Table of Contents Lp –rounding Dual Fitting LP-Duality.
1 IOE/MFG 543 Chapter 5: Parallel machine models (Sections )
Integer Programming – based Decomposition Approaches for Solving Machine Scheduling Problems Ruslan SADYKOV Ecole Polytechnique, Laboratoire d’Informatique.
Unifying Local and Exhaustive Search John Hooker Carnegie Mellon University September 2005.
Duality in Optimization and Constraint Satisfaction J. N. Hooker Carnegie Mellon Univ. Pittsburgh, USA September 2006.
Approximation Algorithms
Computational Methods for Management and Economics Carla Gomes
Integrating Constraint Programming and Mathematical Programming John Hooker Carnegie Mellon University.
Job Scheduling Lecture 19: March 19. Job Scheduling: Unrelated Multiple Machines There are n jobs, each job has: a processing time p(i,j) (the time to.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy under contract.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy under contract.
Branch and Bound Algorithm for Solving Integer Linear Programming
Distributed Combinatorial Optimization
Linear Programming – Max Flow – Min Cut Orgad Keller.
1 Planning and Scheduling to Minimize Tardiness John Hooker Carnegie Mellon University September 2005.
1 Contents college 3 en 4 Book: Appendix A.1, A.3, A.4, §3.4, §3.5, §4.1, §4.2, §4.4, §4.6 (not: §3.6 - §3.8, §4.2 - §4.3) Extra literature on resource.
Merging Constraint Programming Techniques with Mathematical Programming Tutorial John Hooker Carnegie Mellon University INFORMS 02 November 2002.
LP formulation of Economic Dispatch
15.082J and 6.855J and ESD.78J November 2, 2010 Network Flow Duality and Applications of Network Flows.
C&O 355 Mathematical Programming Fall 2010 Lecture 17 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A.
1 Outline:  Outline of the algorithm  MILP formulation  Experimental Results  Conclusions and Remarks Advances in solving scheduling problems with.
Approximation schemes Bin packing problem. Bin Packing problem Given n items with sizes a 1,…,a n  (0,1]. Find a packing in unit-sized bins that minimizes.
C&O 355 Mathematical Programming Fall 2010 Lecture 4 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A.
1 EL736 Communications Networks II: Design and Algorithms Class5: Optimization Methods Yong Liu 10/10/2007.
Approximation Algorithms Department of Mathematics and Computer Science Drexel University.
Decision Diagrams for Sequencing and Scheduling Andre Augusto Cire Joint work with David Bergman, Willem-Jan van Hoeve, and John Hooker Tepper School of.
1 Short Term Scheduling. 2  Planning horizon is short  Multiple unique jobs (tasks) with varying processing times and due dates  Multiple unique jobs.
Outline Introduction Minimizing the makespan Minimizing total flowtime
1 Outline:  Optimization of Timed Systems  TA-Modeling of Scheduling Tasks  Transformation of TA into Mixed-Integer Programs  Tree Search for TA using.
Maximum Flow Problem (Thanks to Jim Orlin & MIT OCW)
Linear Program Set Cover. Given a universe U of n elements, a collection of subsets of U, S = {S 1,…, S k }, and a cost function c: S → Q +. Find a minimum.
X y x-y · 4 -y-2x · 5 -3x+y · 6 x+y · 3 Given x, for what values of y is (x,y) feasible? Need: y · 3x+6, y · -x+3, y ¸ -2x-5, and y ¸ x-4 Consider the.
C&O 355 Mathematical Programming Fall 2010 Lecture 5 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A.
15.082J and 6.855J March 4, 2003 Introduction to Maximum Flows.
Approximation Algorithms Department of Mathematics and Computer Science Drexel University.
Hon Wai Leong, NUS (CS6234, Spring 2009) Page 1 Copyright © 2009 by Leong Hon Wai CS6234: Lecture 4  Linear Programming  LP and Simplex Algorithm [PS82]-Ch2.
C&O 355 Lecture 7 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A.
CPSC 536N Sparse Approximations Winter 2013 Lecture 1 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAA.
1/74 Lagrangian Relaxation and Network Optimization Cheng-Ta Lee Department of Information Management National Taiwan University September 29, 2005.
Lecture.6. Table of Contents Lp –rounding Dual Fitting LP-Duality.
Linear Programming Chapter 9. Interior Point Methods  Three major variants  Affine scaling algorithm - easy concept, good performance  Potential.
C&O 355 Lecture 19 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A A A A A A A A.
Approximation Algorithms Duality My T. UF.
MS&E 348 The L-Shaped Method: Theory and Example 2/5/04 Lecture.
Approximation Algorithms based on linear programming.
1 Chapter 6 Reformulation-Linearization Technique and Applications.
1 Chapter 5 Branch-and-bound Framework and Its Applications.
Linear program Separation Oracle. Rounding We consider a single-machine scheduling problem, and see another way of rounding fractional solutions to integer.
Scheduling with Constraint Programming
6.5 Stochastic Prog. and Benders’ decomposition
Georgina Hall Princeton, ORFE Joint work with Amir Ali Ahmadi
Nonnegative polynomials and applications to learning
Polynomial DC decompositions
Chap 9. General LP problems: Duality and Infeasibility
Chapter 6. Large Scale Optimization
1.206J/16.77J/ESD.215J Airline Schedule Planning
Chapter 6. Large Scale Optimization
2. Generating All Valid Inequalities
Matteo Fischetti, University of Padova
CONSTRAINT GENERATION (BENDERS DECOMPOSITION)
6.5 Stochastic Prog. and Benders’ decomposition
Chapter 6. Large Scale Optimization
Presentation transcript:

1 Logic-Based Benders Methods for Planning and Scheduling John Hooker Carnegie Mellon University August 2003

2 Schedule jobs on several machines. Each job consumes some resource at a given rate. Resource consumption rate on each machine must not exceed capacity. Special case: jobs do not overlap. The Problem: Multiple-machine resource-constrained scheduling Apply logic-based Benders decomposition Generalizes Benders to any subproblem (not just LP, NLP). Solve with MILP and CP (constraint programming).

3 Decompose problem into assignment + resource-constrained assign jobs scheduling to machines schedule jobs on each machine Basic Idea Use logic-based Benders scheme to link these. Solve: master problem with MILP -- good at resource allocation subproblem with CP -- good at scheduling Applications in manufacturing/supply chain planning & scheduling.

4 Previous Work 1989 (Jeroslow & Wang) – View Horn SAT dual as inference problem (JH & Yan) – Apply logic-based Benders to circuit verification. Better than BDDs when circuit contains error. 1995, 2000 (JH) – Formulate general logic-based Benders. Specialized Benders cuts must be designed for each problem class. Branch-and-check proposed (Jain & Grossmann) – Apply logic-based Benders to multiple- machine scheduling using CP/MILP. Several orders of magnitude speedup wrt CPLEX, ILOG Scheduler. But… easy problem for Benders approach (min cost).

(Thorsteinsson) – Apply branch-and-check to CP/MILP. 1-2 orders of magnitude speedup on multiple machine scheduling (JH, Ottosson) – Apply logic-based Benders to SAT, IP (JH, Yan) – Relaxation for resource-constrained scheduling ( cumulative constraint). Not useful computationally for planning and scheduling. A simpler relaxation works better. Today – Apply logic-based Benders to resource-constrained planning/scheduling problems. Multiple machines, parallel processing with resource constraint on each machine Min cost and min makespan.

6 Single-machine resource-constrained scheduling d j = duration of job j r j = rate of resource consumption of job j L = resources available [ a j,b j ] = time window for job j Makespan L job 1 job 2 job 3 job 4 job 5 resources time d1d1 r1r1 Total resource consumption  L at all times.

7 Multiple-machine resource-constrained scheduling d ij = duration of job j on machine i r ij = resource consumption of job j on machine i L i = resources available on machine i L1L1 job 1 job 2 job 3 job 4 job 5 d 11 r 11 Total resource consumption  L i at all times. L2L2 d 22 r 22 Machine 1 Machine 2

8 Some Possible Objectives Minimize cost = Cost of assigning job j to machine i = 1 if job j assigned to machine i Minimize makespan = Start time of job j Minimize tardiness = Deadline for job j

9 Minimize Cost: Discrete Time MILP Model Job j starts at one time on one machine Jobs underway at time t consume  L i in resources Jobs observe time windows = 1 if job j starts at time point t on machine i ( t = 1,…,N)

10 Minimize Cost: Discrete Event MILP Model = 1 if event k is start of job j on machine i ( k = 1,…,2N) = 1 if event k is end of job Each job is assigned to one machine and starts once and ends once Events in chronological order Start time of event k (disaggregated by machine)

11 Release date and deadline Definition of finish time Finish time of job j (disaggregated by machine) Resource limit Calculation of resource consumption on machine i at time of each event

12 CP: The Cumulative Constraint is equivalent to Schedules jobs at times t 1, …, t n so as to observe resource constraint. Edge-finding algorithms, etc., reduce domains of t j.

13 Minimize Cost: CP Model Observe time windows Observe resource limit on each machine y j = machine assigned to job j start times of jobs assigned to machine i

14 [Declarations] DiscreteResource machine [i in Machines] (Limit [i ]); AlternativeResources mset(machine); Activity sched [ j in Jobs]; minimize sum( j in Jobs) cost [ j ] subject to { forall( j in Jobs) { sched [ j ] requires(jobm[i,j ].resource) mset; forall(i in Machines) activityHasSelectedResource(sched [ j ],mset,machine[ j ]) sched [ j ].duration = jobm[i,j ].duration & cost [ j ] = jobm[i,j ].cost; sched [ j ].start >= job[ j ].release; sched [ j ].end <= job[ j ].deadline; }; search { assignAlternatives; setTimes; }; This is how it looks in OPL Studio… enforces cumulative assigns jobs to machines defines resource requirements determines cost and durations on the assigned machine time windows invokes specialized search procedure (needed for good performance)

15 Inference Duality PrimalDual Solution is a value for x. Solution is a proof that deduces f(x)  z from x  S. Duality theorem based on completeness proof for inference method. domain feasible set

16 Example of Inference Duality: Linear Programming PrimalDual Solution is a proof that deduces cx  z from Ax  b, encoded as a vector of multipliers u. Farkas Lemma (Completeness theorem for nonnegative linear combination as an inference method) Ax  b  cx  z iff uA  c, ub  z for some u  0 (provided primal or dual is feasible). Farkas Lemma provides basis for classical LP duality theorem. Since u has polynomial size, LP belongs to NP and co-NP.

17 Logic-Based Benders Decomposition Master Problem Subproblem Benders cuts for all iterations k Solution of subproblem’s inference dual is a proof of bound that is valid when Benders cut is based on bound obtained from the same proof schema for other values of x. Solution of master problem

18 Example: Classical Benders Master Problem Subproblem Benders cuts Solution of subproblem’s inference dual is a proof (encoded by u ) of bound Benders cut is based on bound obtained from u, which remains dual feasible (i.e., proof remains valid) for other values of x.

19 Minimize Cost: Logic-Based Benders Master Problem: Assign jobs to machines Relaxation of subproblem: “Area” d ij r ij of jobs assigned to a machine fit in the space available before latest deadline. L1L1 job1 job 4 job 5

20 Subproblem: Schedule jobs assigned to each machine Solve by constraint programming solution of master problem Let J ik = set of jobs assigned to machine i in iteration k. If subproblem i is infeasible, solution of subproblem dual is a proof that not all jobs in J ik can be assigned to machine i. This provides the basis for a (trivial) Benders cut.

21 Master Problem with Benders Cuts Solve by MILP Benders cuts

22 Important observation: Putting a relaxation of subproblem in the master problem is essential for success. Min costMin makespan Objective function Computed in master problem, which yields tighter bounds for MILP Available only thru Benders cuts. Subproblem Feasibility problem, simple Benders cuts Optimization problem (harder for CP), more interesting cuts Relaxation TrivialMore interesting, nice duality with cuts Min cost problem is particularly easy for logic-based decomposition:

23 Minimize Makespan: Logic-Based Benders Relaxation of subproblem: “Area” of jobs provides lower bound on makespan. L1L1 job1 job 4 job 5 Master Problem: Assign jobs to machines makespan

24 Subproblem: Schedule jobs assigned to each machine Solve by constraint programming Let J ik = set of jobs assigned to machine i in iteration k. We get a Benders cut even when subproblem is feasible.

25 Duality of Linear Relaxation and Linear Benders Cuts L1L1 job1 job 4 job 5 Relaxation: Lower bound on makespan job 1 job 4 job 5 Benders cut: Lower bounds on makespan as jobs are removed from machine Minimum makespan for machine i in subproblem

26 Master Problem: Assign jobs to machines Solve by MILP Benders cuts Relaxation

27 Experimental Design 2 Machines 3 Machines 4 Machines CP (ILOG Scheduler) 6, 8, 10, … jobs* 6, 8, 10, … jobs MILP (Discrete time model**) 6, 8, 10, … jobs Hybrid 6, 8, 10, … jobs *1 problem instance each ** Discrete event model solved none of the problems

28 = computation terminated

29

30

31

32

33

34

35 ?