Transcript PowerPoint Sunusu - Bilkent University
Robust and Reactive Project Scheduling: A review and classification of procedures Willy Herroelen Roel Leus
OUTLINE
• • • • • Introduction Deterministic Baseline Scheduling Generating Predictive and Reactive Schedules Different approaches to multi-project scheduling Conclusions
Introduction
Procedures that yields workable BASELINE SCHEDULES
Introduction
Procedures that yields workable BASELINE SCHEDULES
Min/Max
Regular/Nonregular Objectives Subject to Precedence Constraints Resource Constraints
Introduction
• Baseline Schedules serves very important functions
A B C D E
0 2 4 6 8 10 12 14 16
F
18 20 22 time • 0 2 Identifies 4 6 peak & 8 low time 10 12 14 16 18 20 22 capacity requirement periods
Introduction
Basis for planning External Activities
Material Procurement Preventive Maintenance Committment to due dates
Introduction
• Enables – visibility of future – agreement among all parties • • • • producer clients suppliers subcontractors and etc.
Introduction
• Enables Just In Time material delivery Supplier C Supplier B Supplier A Producer
Introduction
• Baseline Schedule – Vital for cash flow projections – Measures the perfomance • Managers, • Shop floor personel
Introduction
• During execution, project is subject to considerable uncertainty More or Less execution times Unavailable resources Modified Release and due dates New Activities
P R O J E C T
Late arrival of materials
Introduction
• Recognition of uncertainty – Proactive baseline schedule • • Protected against disruptions Minimize the total weighted instability – Reactive scheduling • Doesn’t directly consider the uncertainty during the generation of the initial schedule • Revises or re-optimizes the schedule when unexpected events or disruptions occur – Predictive – Reactive scheduling • • Generation of a predictive schedule Re-optimize by rescheduling policies
Deterministic Baseline Scheduling
• Development of a workable schedule – Defines the scheduled start times – Satisfies; • Precedence contstraints • Resource constraints – Optimizes the scheduling objective; • most often project duration
Deterministic Baseline Scheduling
0 0
1
4
2
9 2
3
3 2
4
6 2
5
4 3
6
8 2
7
7 3
8
2 4
9
1 0
10
0
Deterministic Baseline Scheduling
10 5 0
5 4
1
3 6 2 7
2 3 4 5
8
6 7 8 Minimum Duration Schedule with constant resource level
9
9 10 11 time
Deterministic Baseline Scheduling
10 5 0
5 4
1
3 6 2 7
2 3 4 5
8
6 7 8 Minimum Duration Schedule with constant resource level
9
9 10 11 time Critical Path <1, 4, 7, 8, 9, 10>
Deterministic Baseline Scheduling
10 5 0
5 4
1
3 6 2 7
2 3 4 5
8
6 7 8 Minimum Duration Schedule with constant resource level
9
9 10 11 time Critical Path <1, 4, 7, 8, 9, 10> <1, 5, 3, 6, 2, 10>
Deterministic Baseline Scheduling
10 5 0
5 4
1
3 6 2 7
2 3 4 5
8
6 7 8 Minimum Duration Schedule with constant resource level
9
9 10 11 time Critical Path <1, 4, 7, 8, 9, 10> <1, 5, 3, 6, 2, 10> <1, 4, 3, 6, 9, 10>
Deterministic Baseline Scheduling
10 5 0
5 4
1
3 6 2 7
2 3 4 5
8
6 7 8 Minimum Duration Schedule with constant resource level
9
9 10 11 time Critical Path <1, 4, 7, 8, 9, 10> <1, 5, 3, 6, 2, 10> <1, 4, 3, 6, 9, 10> 16
Deterministic Baseline Scheduling
Optimal for setting deterministic 10 5
5 3 6 4 7
0 1 2 3 4 5
8
6
2
7 8
9
9 10 11 time
Deterministic Baseline Scheduling
Optimal for setting Extremely uncertainty deterministic vulnerable to 10
5 3 3’
5
4 7
0 1 2 3 4 5
8
6
6 2
7 8
9
9 10 11 time
Deterministic Baseline Scheduling
Optimal for setting Extremely uncertainty deterministic vulnerable to True optimality can only be ascertained in real world 10 5
5 3 6 4 7
0 1 2 3 4 5
8
6
2
7 8
9
9 10 11 time
Deterministic Baseline Scheduling
10 5
5 3 6 4 7
0 1 2 3 4 5
8
6
2
7 8
9
9 10 11 Optimal for setting Extremely uncertainty deterministic vulnerable to True optimality can only be ascertained in real world Has insufficient slack or flexibility built-in
Not ROBUST
time
Deterministic Baseline Scheduling
Lack of Robustness Lack of Stability : Not Solution Robust
Flexibility
Lack of Quality : Not Quality Robust
Generating Predictive and Reactive Project Schedules • Dynamic Scheduling – No baseline schedule – Decide which activity to start as time evolves – Stochastic Project Scheduling • • • Precedence and resource constraints Multi stage decision process Scheduling strategies – Minimize the expected project duration ?
?
?
?
?
?
Generation of a Baseline Schedule
• • • No anticipation of variability Proactive (robust) baseline scheduling – CC/BM – Robust precednce feasible schedules • Solution robust • Quality robust – S&Q Robust with resource constraints Reactive Scheduling – Schedule Reapir – – – – Rescheduling Contingent scheduling Activity Crashing Sensitivity Analysis
Generation of a Baseline Schedule
• • • No anticipation of variability Proactive (robust) baseline scheduling – CC/BM – Robust precedence feasible schedules • Solution robust • Quality robust – S&Q Robust with resource constraints Reactive Scheduling – Schedule Reapir – – – – Rescheduling Contingent scheduling Activity Crashing Sensitivity Analysis
Generation of a Baseline Schedule
• • • No anticipation of variability Proactive (robust) baseline scheduling – CC/BM – Robust precednce feasible schedules • Solution robust • Quality robust – S&Q Robust with resource constraints Reactive Scheduling – Schedule Reapir – – – – Rescheduling Contingent scheduling Activity Crashing Sensitivity Analysis
Generation of a Baseline Schedule
• • • No anticipation of variability Proactive (robust) baseline scheduling – CC/BM – Robust precednce feasible schedules • Solution robust • Quality robust – S&Q Robust with resource constraints Reactive Scheduling – Schedule Reapir – – – – Rescheduling Contingent scheduling Activity Crashing Sensitivity Analysis
Critical Chain Scheduling/Buffer Management • CC/BM – Direct application of the theory of constraints to project management Identify Exploit Subordinate Elevate Repeat
Critical Chain Scheduling/Buffer Management • Builds a baseline schedule – Aggressive median or Average activity duration estimates – Activity due dates are eliminated – Multi tasking is avoided Aggressive Median
Critical Chain Scheduling/Buffer Management • • Create a precendence feasible schedule – – – Consider the precedence constraints Schedule the activities at their latest start times Resolve the resource conflicts by moving activities earlier in time Indentify the critical chain – Determines the overall duration of the project
Critical Chain Scheduling/Buffer Management
1
0 Precedence Feasible Schedule
5 4
1 2
3 7
3 4 5
6 8
6 7 8 Activity Precedence Duration 2 3 4 2
2 10
4 5 2 2 6 3 3 7 4 2
9
9 10 11 8 7, 5 12 13 14 15 16 17 18 19 20 3 9 6, 8 4
Critical Chain Scheduling/Buffer Management
1 2 3 6 10 5 4 7 8 9
PB 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
Critical Chain Scheduling/Buffer Management
1 2
FB
3 6 10 5 4 7 8 9
PB 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
Critical Chain Scheduling/Buffer Management
1 3 6
FB
2
FB
5 4 7 8 9
PB 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
10
Critical Chain Scheduling/Buffer Management
1 5 3
FB
6
FB
2
FB
4 7 8 9
PB 0 1 2 RB 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
10
Critical Chain Scheduling/Buffer Management •
During Execution in CC/BM
– Do not rely on buffered schedule , – but on projected schedule • Precedence and Resource feasible • Contains no buffers • Executed by roadrunner mentality
Critical Chain Scheduling/Buffer Management Buffered Schedule
1 5 3
FB
6
FB
2
FB
4 7 8 9
PB 0 1 2 RB 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
10
Critical Chain Scheduling/Buffer Management
1 2 3 6 5 4 7 8 9
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
10
Critical Chain Scheduling/Buffer Management
1 2 3 6 5 4 7 8 9
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
10
Critical Chain Scheduling/Buffer Management Projected Schedule
1 2 3 6 5 4 7 8 9
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
10
Critical Chain Scheduling/Buffer Management • Conclusion after 110 Patterson test problem; – Updating the baseline schedule and critical chain at each decision point • Best estimate of final project duration • Yields smallest project duration – %50 buffer sizing, seriously overestimates – Using root-square-error method for buffer sizing is more beneficial as the problem size increases – Do not keep the critical chain activities in series – Recompute the baseline schedule at each decision point
Critical Chain Scheduling/Buffer Management • In a multi-project environment 1. Prioritize the organization’s projects • Avoid multi tasking 2. Plan the individual projects according to CC/BM • Identify the bottleneck resource 3. Stagger the projects 4. Insert drum buffers 5. Measure and report the buffers 6. Manage the buffers
Generation of a Baseline Schedule
• • • No anticipation of variability Proactive (robust) baseline scheduling – CC/BM – Robust precedence feasible schedules • Solution robust • Quality robust – S&Q Robust with resource constraints Reactive Scheduling – Schedule Reapir – – – – Rescheduling Contingent scheduling Activity Crashing Sensitivity Analysis
Robust Precedence Feasible Schedules • • Solution Robust Schedules – Activity start times are insensitive to disruptions – Stable Quality Robust Schedules – Overall project duration is insensitive to disruptions – Robustnes in the objective function value
Solution Robust Schedules Herroelen & Leus (2003) Mathematical Programming Model • • Assumptions Resource can be booked in advanvence Single activity disruption 𝑴𝒊𝒏 𝑬 𝑊𝑒𝑖𝑔ℎ𝑡𝑒𝑑 𝐷𝑒𝑣𝑖𝑎𝑡𝑖𝑜𝑛 𝑜𝑓 𝐴𝑐𝑡𝑖𝑣𝑖𝑡𝑦 𝑆𝑡𝑎𝑟𝑡 𝑇𝑖𝑚𝑒𝑠 Stable Baseline Schedules
Solution Robust Schedules • • • • Deadline = 14 Equal disruption probability P(duration of disruption=1) = 0,5 P(duration of disruption=2) = 0,5
1 3 5 6 2 4 7 8 9
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14
10
• Solution Robust • Weighted Expected Deviation is minimized
Solution Robust Schedules
1 3 5 6 2 4 7 8 9
20 15 10 5 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14
10
Solution Robust Schedules • Stable Schedules, spread out the activities 𝑬 𝑊𝑒𝑖𝑔ℎ𝑡𝑒𝑑 𝐷𝑒𝑣𝑖𝑎𝑡𝑖𝑜𝑛 𝑜𝑓 𝐴𝑐𝑡𝑖𝑣𝑖𝑡𝑦 𝑆𝑡𝑎𝑟𝑡 𝑇𝑖𝑚𝑒𝑠 𝑪𝑪/𝑩𝑴 ≥ 𝟐 𝑬 𝑊𝑒𝑖𝑔ℎ𝑡𝑒𝑑 𝐷𝑒𝑣𝑖𝑎𝑡𝑖𝑜𝑛 𝑜𝑓 𝐴𝑐𝑡𝑖𝑣𝑖𝑡𝑦 𝑆𝑡𝑎𝑟𝑡 𝑇𝑖𝑚𝑒𝑠 𝑹𝑶𝑩𝑼𝑺𝑻
Solution Robust Schedules
0,04 0,035 0,03 0,025 0,020 0,015 0,01 0,005 0 5 Density Function of the Makespan Solution Robust CC/BM (proj) • • • • Resource Constraints are disregarded Activity durations are stochastic (triangular) Min =10, Max =22 STABLE has HIGHER MAKESPAN 10 15 20 25
Solution Robust Schedules
𝑬 𝑊𝑒𝑖𝑔ℎ𝑡𝑒𝑑 𝐷𝑒𝑣𝑖𝑎𝑡𝑖𝑜𝑛 𝑜𝑓 𝐴𝑐𝑡𝑖𝑣𝑖𝑡𝑦 𝑆𝑡𝑎𝑟𝑡 𝑇𝑖𝑚𝑒𝑠 𝑪𝑪/𝑩𝑴 ≥ 𝟐 𝑬 𝑊𝑒𝑖𝑔ℎ𝑡𝑒𝑑 𝐷𝑒𝑣𝑖𝑎𝑡𝑖𝑜𝑛 𝑜𝑓 𝐴𝑐𝑡𝑖𝑣𝑖𝑡𝑦 𝑆𝑡𝑎𝑟𝑡 𝑇𝑖𝑚𝑒𝑠 𝑹𝑶𝑩𝑼𝑺𝑻 𝑴𝒂𝒌𝒆𝒔𝒑𝒂𝒏 𝑪𝑪/𝑩𝑴 < 𝑴𝒂𝒌𝒆𝒔𝒑𝒂𝒏 𝑹𝑶𝑩𝑼𝑺𝑻
Solution Robust Schedules
• • Other types of schedule disruptions – less execution times – change in the execution mode • planned / unplanned pre-emption – delay in the starting times – modification of the structure of the project • • new activities changed precedence Other metrics for stability measure – # of disrupted activities – # of re-planned activities
Quality Robust Schedules
• • Maximizes the quality robustness Metrics used for quality robustness – Average quality robustness • 𝑀𝑖𝑛 E 𝑂𝑝𝑡𝑖𝑚𝑎𝑙 𝑀𝑎𝑘𝑒𝑠𝑝𝑎𝑛 − 𝑀𝑎𝑘𝑒𝑠𝑝𝑎𝑛 𝑃&𝑅𝑆 – Expected quality robustness – Worst case quality robustness • 𝑀𝑖𝑛 𝑚𝑎𝑥 𝑂𝑝𝑡𝑖𝑚𝑎𝑙 𝑀𝑎𝑘𝑒𝑠𝑝𝑎𝑛 − 𝑀𝑎𝑘𝑒𝑠𝑝𝑎𝑛 𝑃&𝑅𝑆
Generation of a Baseline Schedule
• • • No anticipation of variability Proactive (robust) baseline scheduling – CC/BM – Robust precedence feasible schedules • Solution robust • Quality robust – S&Q Robust with resource constraints Reactive Scheduling – Schedule Reapir – – – – Rescheduling Contingent scheduling Activity Crashing Sensitivity Analysis
Solution and Quality Robust Schedules
1 10 10 3 10 7 0 10 10 10 9 10 10 10 1 2 3 6 10 5 4 7 8 9
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Precedence and Resource feasible
Solution and Quality Robust Schedules
CC/BM Projected Schedule Solution and Quality Robust Schedule
Solution and Quality Robust Schedules
Resource Allocation remains to be solved is the cruical issue that
3
3
5
4
4
6
7
7
Generation of a Baseline Schedule
• • • No anticipation of variability Proactive (robust) baseline scheduling – CC/BM – Robust precedence feasible schedules • Solution robust • Quality robust – S&Q Robust with resource constraints Reactive Scheduling – Schedule Reapir – – – – Rescheduling Contingent scheduling Activity Crashing Sensitivity Analysis
Reactive Scheduling
• • Schedule modifications, made during execution May be based on various underlying strategies – Very simple techniques (schedule repair) – Full scheduling
Generation of a Baseline Schedule
• • • No anticipation of variability Proactive (robust) baseline scheduling – CC/BM – Robust precedence feasible schedules • Solution robust • Quality robust – S&Q Robust with resource constraints Reactive Scheduling – Schedule Reapir – – – – Rescheduling Contingent scheduling Activity Crashing Sensitivity Analysis
Generation of a Baseline Schedule
• • • No anticipation of variability Proactive (robust) baseline scheduling – CC/BM – Robust precedence feasible schedules • Solution robust • Quality robust – S&Q Robust with resource constraints Reactive Scheduling – Schedule Reapir – – – – Rescheduling Contingent scheduling Activity Crashing Sensitivity Analysis
Rescheduling
• • Yang (1996) – New makespan minimization Artigues and Roubelat (2000) – Multi-project, Multi-mode – – – – Ready times and due dates Insert a new unexpected activity Minimize the maximum lateness They used a polynomial algorithm and tested in on 110 Patterson test problems against complete rescheduling – – Insertion method outperforms complete recheduling Mean increase of makespan ≤ inserted activity duration
Rescheduling
• • • Frequent Rescheduling – Instability and lack of continuity – Increased costs – Increased shop floor nervousness Minimum perturbation strategy – Minimize the start time differences – Minimize the number of activites that will be performed with different resources Using Match-up point – Match up with the pre-schedule at a certain time in future
Generation of a Baseline Schedule
• • • No anticipation of variability Proactive (robust) baseline scheduling – CC/BM – Robust precedence feasible schedules • Solution robust • Quality robust – S&Q Robust with resource constraints Reactive Scheduling – Schedule Reapir – – – – Rescheduling Contingent scheduling Activity Crashing Sensitivity Analysis
Contingent Scheduling
• • • Manual changes during execution Billaut and Roubelat (1996a,b) – Generate for every resoure a group sequence – Consider arbitrary ordering of operation inside each group.
– If disruption occurs, switch from one solution to another Several other extensions are studied
Generation of a Baseline Schedule
• • • No anticipation of variability Proactive (robust) baseline scheduling – CC/BM – Robust precedence feasible schedules • Solution robust • Quality robust – S&Q Robust with resource constraints Reactive Scheduling – Schedule Reapir – – – – Rescheduling Contingent scheduling Activity Crashing Sensitivity Analysis
Sensitivity Analysis
• Hall and Posner (2000a, b) – Limits of parameters in which solution remains optimal – New optimal cost and solution after a parameter change
Sensitivity Analysis
• Penz et al.(2001) Sensitivity guarantee of scheduling algorithms – For problem instance 𝑰, min. objective 𝒇, algortihm 𝑨𝑳𝑮, – Performance guarantee of scheduling algorithm – 𝝆 𝑨𝑳𝑮 = 𝒔𝒖𝒑 𝑰 𝝆 𝑨𝑳𝑮 𝑰 , where 𝝆 𝑨𝑳𝑮 𝑰 = 𝒇 𝑨𝑳𝑮 𝒇 𝑶𝑷𝑻 𝑰 𝑰 With variability / perturbation vector 𝜺, the effective performance ratio is , – 𝝆 𝜺 𝑨𝑳𝑮 𝑰 = 𝒇 𝜺 𝑨𝑳𝑮 𝒇 𝜺 𝑶𝑷𝑻 𝑰 𝑰 Then the sensitivity guarantee of an algorithm 𝜺 ≥ 𝜺
Multi-project Scheduling Problem
• • • No single best method Best way for – Coordination and Scheduling of resources – Control of schedule, depends on the project environment Two key determinants 1. Variability 2. Independence
Multi-project Scheduling Problem
Fundamental Relationships Priorities
content duration
Estimates Uncertainty & Variability
time
Project Parameters
cost quality what
Process
whom when how
Trade off Objectives
Multi-project Scheduling Problem
• Ward and Chapman (2002) – Explore and Understand the origins of the uncertainties – Before managing them
Multi-project Scheduling Problem
Non-Project Parties INTERNAL EXTERNAL • Project Hendricks et al.(2002) – Project Scatter Factor : degree of shared resources – Dependence ~ degree of free dispatching or scheduling – Intermediate milestones increases dependence – Uncertain or tight ready days increases dependence – All activities = Drum Activities + Remainder
Multi-project Scheduling Problem
variability HIGH 2 4 6 8 LOW 1 3 5 7 TOTALLY INDEPENDENT RATHER INDEPENDENT RATHER DEPENDENT TOTALLY DEPENDENT
Multi-project Scheduling Problem
variability HIGH LOW • • Uncertainty during execution Dispatching rules or predictive reactive scheduling • • • No outside restrictions Deterministic schedule Minor Disruptions TOTALLY INDEPENDENT • • Drum Plan must be Robust Dispatching / predictive reactive for remainder • • Feasible schedule for drum activities Remainder activities are planned around them RATHER INDEPENDENT • • Robust Drum Plan Sufficient oppurtunity for uncertain events • • • Shared resources Constrained activities Robust plan RATHER DEPENDENT • • • • • Resources are often workstations Rough ballpark plan for intermediate milestones Aggregate plan Resource allocation with minimal conflicts Slacks if possible TOTALLY DEPENDENT
Multi-project Scheduling Problem
variability HIGH LOW TOTALLY INDEPENDENT RATHER INDEPENDENT RATHER DEPENDENT TOTALLY DEPENDENT
Multi-project Scheduling Problem
variability HIGH Fire fighting mode beacuse of intermediate milestones LOW TOTALLY INDEPENDENT RATHER INDEPENDENT RATHER DEPENDENT TOTALLY DEPENDENT
Multi-project Scheduling Problem
variability HIGH LOW TOTALLY INDEPENDENT RATHER INDEPENDENT RATHER DEPENDENT TOTALLY DEPENDENT
Multi-project Scheduling Problem
• The role of CC/BM – Integrated methodology for project planning and execution – Needs to be credited for • duration estimation problem • • Parkinson’s law and Student syndrome Multi tasking – Suitable for single projects
Summary and Conclusions
• • • Objective of the paper – Review the methodologies for proactive and reactive project scheduling – Proper scheduling methodology for different environments Generating S&Q robust with effective reactive scheduling mechanism are still burn-in CC/BM – Attracted a lot of attention – Suffers from • • Over simplification Not universally applicable