1 / 56

Contents College 4

Contents College 4. §4.1, §4.2, §4.4, §4.6 Extra literature on resource constrained project scheduling (will be handed out). Project Scheduling. Project definition:

adriel
Télécharger la présentation

Contents College 4

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. Contents College 4 • §4.1, §4.2, §4.4, §4.6 • Extra literature on resource constrained project scheduling (will be handed out)

  2. Project Scheduling • Project definition: A complex and large scaleone-of-a-kindproduct or service, made up by a number of component activities (jobs), that entails a considerable financial effort and must be time-phased, i.e. scheduled, according to specified precedence and resource requirements (Hax and Candea, 1984)

  3. Project properties • Project goals: quality, time, costs, customer satisfaction • Network of activities/jobs • Limited resource capacity • Project life-cycle: • Order acceptance • Engineering and process planning • Material and resource scheduling • Project execution • Evaluation & service

  4. Project examples • Construction • Production • Management • Research • Maintenance • Installation, implementation

  5. Hierarchical planning Strategic resource planning Strategic Rough-cut process planning Rough-cut capacity planning Tactical Engineering & process planning Project scheduling Tactical/ operational Detailed scheduling Operational

  6. Project breakdown structure Project Main Activity Main Activity Main Activity RCCP Project Scheduling Activity Activity Activity Activity Activity Activity

  7. Project scheduling topics • Project representation (precedence graph) • Critical Path Method (CPM) • Resource-constrained project scheduling • standard problem • methods • extensions

  8. Project representation / precedence graph “job on node”-representation: Rules for “job on node” networks: • network contains no directed cycles • event numbering • network contains no redundant arcs 1 2 4 6 3 5 7

  9. Project representation example 1 “job on node”-representation: 1 2 4 6 3 5 7 1 2 4 6 “job on arc”-representation: 3 7 5

  10. Project representation example 2 “job on node”-representation: 1 2 4 6 3 5 “job on arc”-representation: 6 1 4 2 5 3

  11. Project scheduling • Without resource constraints relatively easy • With resource constraints very complex: when jobs share resources with limited availability, these jobs cannot be processed simultaneously  draw disjunctive arcs Example 4.6.1: 1 4 2 5 3

  12. Project scheduling without resource constraints: critical path method (CPM) • Critical job: job without slack • Critical path = chain of critical jobs • Forward procedure • Backward procedure

  13. Project scheduling without resource constraints: critical path method (CPM) • Critical path method initialization: • determine earliest starting time for all jobs • determine latest completion time for all jobs • determine which jobs have no slack • 2 CPM solution methods: • Forward procedure • Backward procedure

  14. Critical path method STEP1: For each job that has no predecessors: STEP2: compute for each job j: STEP3: • Forward CPM procedure • Backward CPM procedure STEP1: For each job that has no successors: STEP2: compute for each job j: STEP3: Verify that:

  15. Critical path method example Sink (project start) 2 1 3 0 4 0 1 S 2 4 6 T 1 2 Source (project start) 3 5

  16. Critical path method example (cont.) Critical job: C’’ = C’ = S’+p 2 1 0 3 3 0 4 0 1 Legend: S 2 4 6 T duration 7 8 0 0 3 7 0 3 8 8 j 1 2 3 5 S’ C’’ 3 8 0 6

  17. 3 5 2 1 6 4 Resource constraints • Suppose jobs require a resource: resource requirements 6 5 4 3 2 1 1 2 3 4 5 6 7 8

  18. Resource constraints (cont.) • Suppose : Cmax increases by 2 6 5 4 2 3 1 5 6 2 3 4 1 1 2 3 4 5 6 7 8 9 10

  19. Resource-Constrained Project Scheduling Problem (RCPSP) • n jobs j=1,…,n • N resources i=1,…,N • Rk: availability of resource k • pj: duration of job j • Rkj:requirement of resource k for job j • Pj: (immediate) predecessors of job j

  20. RCPSP • Goal: minimize makespan: • Restrictions: • no job may start before T=0 • precedence relations • finite resource capacity

  21. RCPSP example 4 1 2 6 5 2 3 4 0 2 4 6 8 10 12 2 1 3 5 2 4 6 0 2 4 6 8 10 12

  22. Disjunctive arcs Suppose R1=4. These jobs cannot be performed simultaneously: • job 1 & 3 • job 3 & 6 • job 4 & 5 • job 5 & 6 1 2 4 6 disjunctive arcs 3 5

  23. Priority-rule-based scheduling • Generation scheme • serial • parallel • Priority rule • latest finish time • minimum slack • Sampling procedure

  24. Serial scheduling method Each stage represents a job  n stages • completed set of jobs: scheduled jobs • decision set: jobs of which all predecessors have been scheduled • remaining set: other jobs procedure: 1. Start with an empty schedule 2. Select job from decision set with highest priority, and schedule it as early as possible 3. Repeat step 2 if the decision set is not empty

  25. Serial scheduling method example (1) Decision set 1 3 2 2 0 2 4 6 8

  26. Serial scheduling method example (2) Decision set 1 3 2 1 2 0 2 4 6 8

  27. Serial scheduling method example (3) Decision set 1 3 2 3 1 2 0 2 4 6 8

  28. Serial scheduling method example (4) 1 3 2 3 1 2 2 0 2 4 6 8

  29. Parallel scheduling method • At most n stages • Each stage n represents: 1. partial schedule 2. schedule time tn 3. four disjoint sets of jobs: • completed set: scheduled jobs, completed at tn • active set: scheduled jobs, not completed yet • decision set: all unscheduled jobs, that could be scheduled • remaining set: all unscheduled jobs, that cannot be scheduled

  30. Parallel scheduling method procedure: 1. Start with an empty schedule. 2. Let T be the first time in which an unscheduled job may start. Let D be the collection of jobs that may be started on T, and of which all predecessors are scheduled 3. Select the job from D with the highest priority, and schedule it from time T 4. Repeat step 2 if there remain jobs to be scheduled

  31. Parallel scheduling method example (1) Decision set 1 3 2 2 0 2 4 6 8

  32. Parallel scheduling method example (2) Decision set 1 3 2 1 2 0 2 4 6 8

  33. Parallel scheduling method example (3) Decision set 1 3 2 2 1 2 0 2 4 6 8

  34. Parallel scheduling method example (4) 1 3 2 2 3 1 2 0 2 4 6 8

  35. Priority-rule-based scheduling • Generation scheme • serial • parallel • Priority rule • latest finish time • minimum slack • Sampling procedure

  36. Priority-rule-based scheduling: priority rules • Latest finish time (LFT) priority rule: • Minimum slack (MS) priority rule current earliest starting time

  37. MS priority rule example (1) serial scheduling scheme 1 3 2 1 2 0 2 4 6 8

  38. MS priority rule example (2) 1 3 2 3 1 2 0 2 4 6 8

  39. MS priority rule example (3) 1 3 2 3 2 1 2 0 2 4 6 8

  40. Priority-rule-based scheduling • Generation scheme • serial • parallel • Priority rule • latest finish time • minimum slack • Sampling procedure

  41. Priority-rule-based scheduling • Multi-pass priority-rule-based heuristics • multi-priority rule procedures 1 scheduling scheme, x priority rules  generate x schedules, keep the best found • sampling procedures 1 scheduling scheme, 1 priority rule jobs are randomly selected from the decision set

  42. Sampling procedure • Random sampling • all jobs have the same probability: • Biased random sampling • job with highest priority has highest probability, however not proportionally • Regret-based random sampling • job with highest priority proportionally has the highest probability

  43. Biased random sampling Probability that job j is selected (Pj): first sort jobs on non-increasing priority [j] is the position of job j in the list  random sampling deterministic

  44. Biased random sampling(example)

  45. Regret-based random sampling • Regret of job = difference between priority value and lowest overall priority value: • Probability that job is selected: random sampling; deterministic

  46. Regret-based random sampling(example)

  47. Time/costs trade-off (§4.4) • Assumptions: • by allocating money (for additional resources) to jobs their processing time (pj) can be reduced • linear relation between allocated money and pj • minimum and maximum processing time • cj = marginal costs of reducing pj:

  48. Time/costs trade-off heuristic Definitions: • source and sink in precedence graph • critical path: longest path from source to sink • Gcp = sub-graph of critical path(s) • cut set: set of nodes in sub-graph Gcp whose removal results in disconnecting the source from the sink in the precedence graph • minimal cut set: if putting back 1 node in the graph connects the source to the sink

  49. Time/costs trade-off heuristic STEP 1: Set . Determine Gcp . STEP 2: Determine all minimum cut sets mcs in Gcp. Consider only those minimum cut sets of which all processing times . If there is no such set: STOP STEP 3: For each mcs compute the costs of reducing all pj in mcs with one time unit Let mcs* be the mcs with the lowest costs If the lowest costs are <c0 apply the changes, revise Gcp and go to STEP 1

  50. processing time Time/costs trade-off heuristic example 4.4.1 6 12 10 9 2 4 7 10 8 5 12 5 12 10 S 1 14 T 6 9 9 7 7 3 11 13 6 7 5 8

More Related