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

Slides:



Advertisements
Similar presentations
Chapter 7 Project Management
Advertisements

464 Lecture 09 CPM Revision. Scheduling Techniques r The scheduling techniques are î To plan, schedule, budget and control the many activities associated.
ECE 667 Synthesis and Verification of Digital Circuits
CHAPTER 10 Sup. (Acceptance Sampling) Statistical Process Control – “Sampling to determine if process is within acceptable limits” Learned previously Acceptance.
1 Lecture by Junaid Arshad Department of Engineering Management Abridged and adapted by A. M. Al-Araki, sept WBS: Lowest level OBS: Lowest level.
Terminology Project: Combination of activities that have to be carried out in a certain order Activity: Anything that uses up time and resources CPM: „Critical.
A simple set of tasks in “timeline-schedule” form Req. Gathering Req. Analysis High Level Design Detail Design & Code Test Case DevelopmentTest Execution.
IEOR Basic Project Scheduling. IEOR Project Scheduling zJobs subject to precedence constraints zJob on arc format (most common)
Project Scheduling Basic Approach. projectA project is a collection of tasks that must be completed in minimum time or at minimal cost. activitiesIt is.
1 1 Slide © 2004 Thomson/South-Western Chapter 12 Project Scheduling: PERT/CPM n Project Scheduling with Known Activity Times n Project Scheduling with.
1 1 Slide © 2000 South-Western College Publishing/ITP Slides Prepared by JOHN LOUCKS.
Project Management Operations -- Prof. Juran. 2 Outline Definition of Project Management –Work Breakdown Structure –Project Control Charts –Structuring.
Project Scheduling Basic Approach. projectA project is a collection of tasks that must be completed in minimum time or at minimal cost. activitiesIt is.
Network Optimization Models
Project Scheduling. SEEM Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,
PERT/CPM Models for Project Management
1 Project Scheduling Contents 1. Problem Statement 2. Critical Path Method 3. Extensions to the classical project scheduling problems Literature Operations.
MIT and James Orlin © Networks II Quick Review of Shortest Path Problem The Critical Path Method (CPM) Topological Sort.
1 IOE/MFG 543 Chapter 5: Parallel machine models (Sections )
1 Material Management Class Note # 5-A ( in review ) Project Scheduling & Management Prof. Yuan-Shyi Peter Chiu Feb
Chapter 2: Model of scheduling problem Components of any model: Decision variables –What we can change to optimize the system, i.e., model output Parameters.
CEM 510 Construction Planning and Scheduling Detailed Course Outline Dr Soliman Almohawis.
© J. Christopher Beck Lecture 4: Project Planning 1.
Project Management Dr. Everette S. Gardner, Jr.. Project Management2 PERT / CPM advantages 1. Disciplined planning 2. Realistic objectives 3. Unambiguous.
Project Scheduling The Critical Path Method (CPM).
1 Set # 4 Dr. LEE Heung Wing Joseph Phone: Office : HJ639.
Roberta Russell & Bernard W. Taylor, III
CEM 510 Construction Planning & Scheduling Dr Almohawis
1 IOE/MFG 543 Chapter 7: Job shops Sections 7.1 and 7.2 (skip section 7.3)
Iterative Flattening in Cumulative Scheduling. Cumulative Scheduling Problem Set of Jobs Each job consists of a sequence of activities Each activity has.
Network Problem CPM & PERT
Copyright 2006 John Wiley & Sons, Inc. Beni Asllani University of Tennessee at Chattanooga Project Management Operations Management - 5 th Edition Chapter.
Introduction to Job Shop Scheduling Problem Qianjun Xu Oct. 30, 2001.
© J. Christopher Beck Lecture 5: Project Planning 2.
1 Project Planning, Scheduling and Control Project – a set of partially ordered, interrelated activities that must be completed to achieve a goal.
9-1 Chapter 9 Project Scheduling Chapter 9 Project Scheduling McGraw-Hill/Irwin Copyright © 2005 by The McGraw-Hill Companies, Inc. All rights reserved.
1 Material Management Class Note # 6 Project Scheduling & Management Prof. Yuan-Shyi Peter Chiu Feb
Project Management - PERT/CPM What is project management? Consider building a house: Step A: Prepare site. (5 days) Step B: Build foundation. (8 days)
Operational Research & ManagementOperations Scheduling Project Scheduling 1.Project Planning (revisited) 2.Resource Constrained Project Scheduling 3.Parallel.
© J. Christopher Beck Lecture 6: Time/Cost Trade-off in Project Planning.
Outline Introduction Minimizing the makespan Minimizing total flowtime
Project Planning and Budgeting Recall the four stages Project Definition and Conceptualization Project Planning and Budgeting Project Execution and Control.
© J. Christopher Beck Lecture 4: Program Evaluation and Review Technique (PERT)
Session 25 University of Southern California ISE514 November 17, 2015 Geza P. Bottlik Page 1 Outline Questions? Exam results – very good 19 grades improved.
Network Flow Problems Example of Network Flow problems:
Resource-Constrained Project Scheduling Problem (RCPSP)
Chapter 8 - Project Management1 Lecture 2 Today’s lecture covers the followings: 1.To study “project crashing” concept 2.LP formulation for project management.
Copyright 2006 John Wiley & Sons, Inc. Beni Asllani University of Tennessee at Chattanooga Project Management Operations Management - 5 th Edition Chapter.
1 Job Shop Scheduling. 2 Job shop environment: m machines, n jobs objective function Each job follows a predetermined route Routes are not necessarily.
IE 366 Chapter 6, Section 10 Project Planning and Scheduling.
Scheduling Scheduling : is the process of converting a project action plan into an operating time table. Why scheduling ? To answer the following questions:
UNIT II Scheduling Procedures & Techniques FLOAT
Project Management: PERT/CPM
Project Scheduling Lecture # 1.
Basic Project Scheduling
Most commonly used methods for project management.
Project Planning & Scheduling
Project Management for Business
Project Scheduling Contents 1. Problem Statement
Basic Project Scheduling
UNIT II Scheduling Procedures & Techniques CRITICAL PATH ANALYSIS
Projects: Critical Paths
PROJECT MANAGEMENT WITH CPM/PERT.
Decision making and Organization Management
Project Management Operations -- Prof. Juran.
Chapter 6 Network-Based Scheduling
CEM 510 Construction Planning & Scheduling Dr Almohawis
Chapter 6 Activity Planning.
Operations Research Lecture 7.
Presentation transcript:

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: A complex and large scale one-of-a-kind product 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)

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

Project examples Construction Production Management Research Maintenance Installation, implementation

Hierarchical planning Strategic resource planning Strategic Rough-cut process planning Rough-cut capacity planning Tactical Engineering & process planning Project scheduling Tactical/ operational RCCP: Order acceptance Detailed scheduling: van de individuele mensen Detailed scheduling Operational

Project breakdown structure Main Activity Main Activity Main Activity RCCP Activity Activity Activity Activity Activity Activity Project Scheduling Main Activity = werkpakket: RCCP Activity: Project scheduling RCCP: grove werkvoorbereiding Project scheduling: gedetailleerde werkvoorbereiding

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

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

Project representation example 1 “job on node”-representation: 1 2 4 6 3 5 7 1 2 4 6 JON: knoop = job pijl = relatie JOA: knoop = begin of einde van een job pijl = job kenmerken JOA: geen overbodige pijlen geen cykels lastig niet unieke netwerken (alleen interpretatie, niet afleiding??) LINEAIRE vs. NETWERK precedentie relaties “job on arc”-representation: 3 7 5

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

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

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

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

Critical path method Forward CPM procedure Backward CPM procedure STEP1: For each job that has no predecessors: STEP2: compute for each job j: STEP3: STEP1: For each job that has no successors: STEP2: compute for each job j: STEP3: Verify that: Bij AON netwerk kun je de jobs op volgorde afwerken

Critical path method example Sink (project start) 2 1 3 4 1 Earliest completion time = earliest starting time + p(j) !!! S 2 4 6 T Source (project start) 1 2 3 5

Critical path method example (cont.) Critical job: C’’ = C’ = S’+p 2 1 3 3 4 1 Legend: Earliest completion time = earliest starting time + p(j) !!! S 2 4 6 T duration 3 3 7 7 8 8 8 j 1 2 S’ C’’ 3 5 6 3 8

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

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

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

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

RCPSP example 4 1 2 6 5 2 3 4 Op ieder moment voor alle resources genoeg beschikbaar 2 4 6 8 10 12 2 1 3 5 2 4 6 2 4 6 8 10 12

Disjunctive arcs Suppose R1=4. These jobs cannot be performed simultaneously: job 1 & 3 job 3 & 6 job 4 & 5 job 5 & 6 1 CPM werkt nu niet meer! 2 4 6 disjunctive arcs 3 5

Priority-rule-based scheduling Generation scheme serial parallel Priority rule latest finish time minimum slack Sampling procedure Generation scheme: hoe bouw ik een schedule op Priority: welke job ga ik aan het schedule toevoegen

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

Serial scheduling method example (1) Decision set 2 1 3 Prioriteiten zijn gegeven (niet volgens bekende prioriteitsregel) 2 2 4 6 8

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

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

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

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

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

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

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

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

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

Priority-rule-based scheduling Generation scheme serial parallel Priority rule latest finish time minimum slack Sampling procedure Generation scheme: hoe bouw ik een schedule op Priority: welke job ga ik aan het schedule toevoegen

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

MS priority rule example (1) serial scheduling scheme 2 1 3 Serial scheduling scheme 1 2 2 4 6 8

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

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

Priority-rule-based scheduling Generation scheme serial parallel Priority rule latest finish time minimum slack Sampling procedure Generation scheme: hoe bouw ik een schedule op Priority: welke job ga ik aan het schedule toevoegen

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

Sampling procedure Random sampling Biased 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 Dit is extra stof uitgedeeld bij 2e college. Ook op webpage!!

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 C = normaliserende constante deterministic

Biased random sampling (example) C = normaliserende constante

Regret-based random sampling Regret of job = difference between priority value and lowest overall priority value: Probability that job is selected: random sampling; deterministic Nadeel biased sampling is dat het geen rekening houdt met relatieve verschil in de prioriteiten P(j) altijd >0!! C = normaliserende constante

Regret-based random sampling (example)

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: Paragraaf 4.4

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

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

Time/costs trade-off heuristic example 4.4.1 processing time 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 7 6 5 8 Slightly different solution path (correct!!)

Time/costs trade-off heuristic example 4.4.1 processing time 6 12 10 9 2 4 7 10 7 5 12 5 12 10 S 1 14 T 6 9 9 7 7 3 11 13 7 6 5 8 Here I alter the solution path of the book: the book alters job 6 (costs 3), and I alter job 11

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

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

Time/costs trade-off heuristic example 4.4.1 processing time 5min 11 10 9 2 4 7 10 7 5 12 5 12 10 S 1 14 T 6 9 9 4min 7 3 11 13 7 6 5 8 Makespan can still be reduced with the same cost: for example {12,13} OPTIMALITY CONDITION: when no P(j) can be increased without enlarging the makespan

Time/costs trade-off LP model Decision variables: xj = earliest starting time of job j pj = processing time of job j Total cost: Constraints: precedence relations: max/min processing times: Cmax determination: all variables : Cmax = auxiliary variable

Time/costs trade-off: nonlinear costs Discrete time-framework: decreasing convex cost-function non-decreasing overhead cost-function c0(t) use the same heuristic as for the linear costs Continuous time-framework: non-linear model with the same constraints as the LP-model, but with the objective: