Lecture 7: From Project Planning to Scheduling © J. Christopher Beck 2008 1 Outline Reasoning about Resources Job Shop Scheduling Resource Constrained Project Scheduling Alternative Resources Parallel Machines Introduction to Solution Techniques LEKIN Demo © J. Christopher Beck 2008 2 Readings P Ch 2.2, 5.1 © J. Christopher Beck 2008 3 Resource Capacity Most of the project planning problems we looked at are easy e.g., finding makespan by CPM, linear time/cost trade-off What makes scheduling hard is resource capacities © J. Christopher Beck 2008 4 Resource Capacity Examples Machine can only do one thing at a time Call-centre staff member can only talk to one caller at a time Classroom can only seat 50 students Planes can only take-off once per minute © J. Christopher Beck 2008 5 Job Shop Scheduling (JSP) Operation/Task/ Activity Each operation requires one unit of one resource Each resource has a capacity of 1 © J. Christopher Beck 2008 Job Precedence Constraint 6 Job Shop Scheduling (JSP) Need to decide the order of each operation on each resource JSP is Hard makespan © J. Christopher Beck 2008 7 Job Shop Scheduling (JSP) Can you schedule this? min. Makespan? Jobs Processing times 0 J0R0[15] J0R1[50] J0R2[60] 1 J1R1[50] J1R0[50] J1R2[15] 2 J2R0[30] J2R1[15] J2R2[20] © J. Christopher Beck 2008 8 Beyond the JSP #1 Resource have a capacity ≥ 1 Operations can require more than 1 unit of a resource Resource Constraint Project Scheduling Problem (RCPSP) RCPSP is a generalization of JSP © J. Christopher Beck 2008 9 RCPSP Example (1 Machine) Is this the minimum makespan? Capacity of R = 6 Job p(j) Predecessors S' C'' R(1,j) 1 2 0 3 3 2 3 0 3 1 3 1 0 6 2 4 4 1,2 3 7 2 5 2 2,3 3 8 3 6 1 4 7 8 3 Resource requirements 6 5 4 3 2 1 3 2 5 1 1 2 3 4 © J. Christopher Beck 2008 4 5 6 6 7 8 10 What if the Capacity of R = 4? Capacity of R = 4 Job p(j) Pred. S' 1 2 0 2 3 0 3 1 0 4 4 1,2 3 5 2 2,3 3 6 1 4 7 C'' R(1,j) 6 3 3 5 3 1 4 6 2 3 7 2 8 3 2 8 3 1 2 1 3 1 2 3 4 © J. Christopher Beck 2008 4 5 6 5 7 8 6 9 10 11 RCPSP Example Job p(j) P(j) S' C'' R(1,j) R(2,j) 1 2 - 0 3 3 2 2 3 - 0 3 1 1 3 1 - 0 6 2 1 4 4 1,2 3 7 2 1 5 2 2,3 3 8 3 2 6 1 4 7 8 3 1 A good question for a test or exam R1 4 R2 2 Each operation requires both resources! © J. Christopher Beck 2008 12 Scheduling Game http://www.otsys.com/onTimeGame.htm © J. Christopher Beck 2008 13 Beyond the JSP #2 What if each operation has a choice of resources? Identical resources: “parallel machines” an operation can go on any resource Non-identical an operation might have different processing time depending on resource only a subset of resources are possible for an operation 14 © J. Christopher Beck 2008 From a previous midterm Parallel Machines Consider the 6 parallel machine scheduling problem in the table Release dates on all jobs are 0 There are no precedence constraints Find the minimum makespan Jobs 1 2 3 4 5 6 7 8 9 10 11 12 13 pj 6 6 6 7 7 8 8 9 9 10 10 11 11 © J. Christopher Beck 2008 15 Beyond the JSP #3 Optimize something other than makespan Minimize maximum lateness Due date for Weight for each job each job Min Lmax Lmax = max(C1 – d1, … Cn – dn) Minimize total weighted tardiness Min ΣwjTj Tj = max(Cj – dj, 0) © J. Christopher Beck 2008 16 Next 10 Lectures Solving scheduling problems Heuristics Dispatch Rules Shifting Bottleneck Search Tree Search constraint programming, integer programming Local Search © J. Christopher Beck 2008 17 LEKIN Demo © J. Christopher Beck 2008 18
© Copyright 2025 Paperzz