1 / 77

Planning and Scheduling to Minimize Tardiness

Planning and Scheduling to Minimize Tardiness. John Hooker Carnegie Mellon University September 2005. The Problem. Given a set of tasks, each with a deadline…. The Problem. Given a set of tasks, each with a deadline…. …and processing facilities that run at different speeds. The Problem.

issac
Download Presentation

Planning and Scheduling to Minimize Tardiness

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Planning and Scheduling to Minimize Tardiness John HookerCarnegie Mellon University September 2005

  2. The Problem Given a set of tasks, each with a deadline…

  3. The Problem Given a set of tasks, each with a deadline… …and processing facilities that run at different speeds.

  4. The Problem Allocate tasks to facilities.

  5. The Problem Allocate tasks to facilities. Schedule tasks on each facility(cumulative scheduling)

  6. The Problem Allocate tasks to facilities. Schedule tasks on each facility(cumulative scheduling) Each task has a given processing time on each facility.

  7. The Problem Allocate tasks to facilities. Schedule tasks on each facility(cumulative scheduling) Each task has a given processing time on each facility. Each task consumes resources at a given rate on each facility.

  8. The Problem Allocate tasks to facilities. Schedule tasks on each facility(cumulative scheduling) Each task has a given processing time on each facility. Each task consumes resources at a given rate on each facility. Each facility has a resource limit.

  9. The Problem Allocate tasks to facilities. Schedule tasks on each facility(cumulative scheduling) • Objectives: • Minimize number of late tasks. • Minimize total tardiness

  10. Approach • In practice, problem is often solved by give-and-take. Planner Planner allocates tasks to facilities Schedulers

  11. Approach • In practice, problem is often solved by give-and-take. Planner If there are problems, schedulers telephone planners and ask for a different allocation. Schedulers

  12. Approach • In practice, problem is often solved by give-and-take. Planner Planner allocates tasks differently Schedulers

  13. Approach • In practice, problem is often solved by give-and-take. Planner And so forth until agreement is reached. Schedulers

  14. Approach • In practice, problem is often solved by give-and-take. Planner And so forth until agreement is reached. Schedulers • Benders decomposition is a mathematical formulation of this process. • Planning is the master problem. • Scheduling is the subproblem. • Telephone calls are Benders cuts.

  15. Approach • Use logic-based Benders. • Since classical Benders requires that the subproblem be a linear or nonlinear programming problem. • Decomposition permits hybrid solution: • Apply MILP to planning master problem. • MILP is generally better at resource allocation. • Apply CP to scheduling subproblem. • CP is generally better at scheduling.

  16. Related Work • 1995 (JH & Yan) – Logic-based Benders. • Applied to logic circuit verification. • 2000 (JH) – Theory of logic-based Benders. • Branch-and-check proposed. • 2000 (JH) – Application to planning & scheduling proposed. • Combine CP & MILP. • Application to integer programming, SAT. • 2001 (Jain & Grossmann) – Application to machine assignment and disjunctive scheduling. • Simple Benders cuts, since subproblem is a feasibility problem.

  17. Related Work • 2001 (Thorsteinsson) – Branch and check applied to Jain & Grossmann problems. • Update solution of master problem. • 2002 (Harjunkowski & Grossmann) – Generalization of Jain & Grossmann to multistage. • 2002 (Timpe) – Polypropylene batch scheduling at BASF. • Similar approach applied to automobile assembly (Peugeot/Citroën), paint mixing (Barbot). • 2003 (JH, Ottosson) – Integer programming. • Benders cuts less obvious, since subproblem is an optimization problem. • Suitable for stochastic integer programming.

  18. Related Work • 2004 (JH) – Min-cost and min-makespan planning & cumulative scheduling. • Benders cuts less obvious in min makespan, since subproblem is optimization problem. • 2004 (Cambazard et al.) –Real-time scheduling of computer processes. • CP master problem. • 2004 (Chiu & Xia) – Integer programming. • Used min-conflict + classical Benders cuts. • 2004 (Maravelias and Grossmann) –Batch scheduling in chemical plants. • 2004 (Correa, Langevin & Rousseau) –Automated guided vehicles.

  19. Today’s Presentation • Planning and cumulative scheduling to minimize tardiness. • Number of late jobs. • Total tardiness. • Main contribution: • Analysis of cumulative constraint to provide linear relaxation of the scheduling subproblem. • This is most difficult when minimizing total tardiness. • Add relaxation to master problem. • The relaxation is essential to computational performance.

  20. Benders cuts for all iterations h Logic-Based Benders Decomposition Basic idea: Search over values of x in master problem. For each examined, solve subproblem for y. Solution of master problem Subproblem Master Problem

  21. Logic-Based Benders Decomposition Subproblem After solving the subproblem, generate a Benders cutwhere is the optimal value of the subproblem. The Benders cut is based on a logical analysis of subproblem solution. Re-solve the master problem and continue until it has the same optimal value as the subproblem.

  22. Applying Benders to Planning & Scheduling • Decompose problem into • assignment + resource-constrained assign tasks scheduling • to facilities schedule tasks on each facility • Use logic-based Benders to link these. • Solve: master problem with MILP -- good at resource allocation subproblem with Constraint Programming -- good at scheduling • We will use Benders cuts that require no internal information from the CP solver.

  23. Notation pij = processing time of task j on facility i cij = resource consumption of task j on facility i Ci = resources available on facility i Facility 1 Facility 2 C1 C2 c11 task 1 task 3 task 4 c22 task 2 task 5 p11 p22 Total resource consumption  Ci at all times.

  24. Objective functions Minimize # late tasks = facility assigned to task j start time of task j Minimize tardiness = deadline for task j

  25. Minimize # Late Tasks: MILP Model = 1 if task j is late

  26. Minimize # Late Tasks: MILP Model = 1 if task j is late = 1 if task j starts at time t on facility i Number of discrete times t

  27. Minimize # Late Tasks: MILP Model = 1 if task j is late = 1 if task j starts at time t on facility i Task j starts at one time on one facility Number of discrete times t

  28. Minimize # Late Tasks: MILP Model = 1 if task j is late = 1 if task j starts at time t on facility i Task j starts at one time on one facility Number of discrete times t Tasks underway at time t consume  Ciin resources

  29. Minimize # Late Tasks: MILP Model = 1 if task j is late = 1 if task j starts at time t on facility i Task j starts at one time on one facility Number of discrete times t Tasks underway at time t consume  Ciin resources Tasks observe time windows

  30. Minimize # Late Tasks: CP Model start time of task j yj = facility assigned to task j

  31. Minimize # Late Tasks: CP Model start time of task j yj = facility assigned to task j start times of tasksassigned to facility i

  32. Minimize # Late Tasks: CP Model start time of task j yj = facility assigned to task j start times of tasksassigned to facility i Observe resource limit on each facility

  33. Minimize # Late Tasks: CP Model start time of task j yj = facility assigned to task j start times of tasksassigned to facility i Observe resource limit on each facility Observe time windows

  34. Minimize # Late Tasks: Logic-Based Benders Master Problem: Assign tasks to facilities Iteration h = 1 if task j is assigned to facility i

  35. Subproblem: Schedule tasks assigned to each facility Separates into an independent scheduling problem on each facility i.Solve by constraint programming. Set of tasks assigned to facility i by solution of master problem.

  36. Benders Cuts Lower bound on # late tasks on facility i Min # late tasks on facility i (solution of subproblem)

  37. Benders Cuts Lower bound on # late tasks on facility i Min # late tasks on facility i (solution of subproblem) subset of Jhi for which min # late tasks is still Lhi* (found by heuristic that repeatedly solves subproblem on facility i )

  38. Benders Cuts Min # late tasks on facility i (solution of subproblem) To reduce # late tasks, must remove one of the tasks in from facility i.

  39. Benders Cuts Min # late tasks on facility i (solution of subproblem) subset of Jhi for which min # late tasks is still Lhi* (found by heuristic that repeatedly solves subproblem on facility i ) Smaller subset of Jhi for which min # late tasks is Lhi*  1(found while running same heuristic)

  40. Benders Cuts Min # late tasks on facility i (solution of subproblem) To reduce # late tasks by more than 1, must remove one of the tasks infrom facility i.

  41. Benders Cuts These Benders cuts are added to the master problem in each iteration h.

  42. Relaxation of Subproblem Lower bound on # late tasks on facility i

  43. Relaxation of Subproblem Lower bound on # late tasks on facility i Set of tasks assigned to facility i with deadline at or before dj Ci task1 task 3 task 2

  44. Relaxation of Subproblem Lower bound on # late tasks on facility i Set of tasks assigned to facility i with deadline at or before dj Ci task1 task 3 task 2 Area = pi1ci1

  45. Relaxation of Subproblem Lower bound on # late tasks on facility i Area of tasks assigned to facility i with deadline at or before dj Ci task1 task 3 task 2 Area = pi1ci1

  46. Relaxation of Subproblem Lower bound on (makespan  latest deadline) Ci task1 task 3 task 2

  47. Relaxation of Subproblem Lower bound on (makespan  latest deadline) Ci task1 task 3 task 2 Max processing time

  48. Relaxation of Subproblem Min # of late jobs on facility i

  49. Relaxation of Subproblem Min # of late jobs on facility i This relaxation is added to the master problem at the outset.

  50. Minimize Total Tardiness: MILP Model tardiness of task j

More Related