Project Management: A Managerial Approach Chapter 9 – Resource Allocation Overview • • • • • Critical Path Crashing Resource Leveling Resource Constrained Schedules Multiproject Resource Management Critical Chain 21-1 Resource Allocation • Some definitions • Resource allocation, loading, leveling • Expediting and crashing projects 31-1 Some Definitions • Resource allocation permits efficient use of physical assets – Within a project, or across multiple projects – Drives both the identification of resources, and timing of their application • There are generally two conditions: – “Normal” – “Crashed” 41-1 Normal and Crashing • Normal: Most likely task duration, like “m” in Chapter 8 • Crash: Expedite an activity, by applying additional resources – Specialized or additional equipment – More people (e.g., borrowed staff, temps) – More hours (e.g., overtime, weekends) 51-1 No Free Lunch: Crashing Creates a Ripple Effect • Crashing buys time, but nothing comes free • Potential cost areas – – – – – Additional equipment/material Extra labor Negative effects on other projects Reduced morale, from excessive hours/shifts Lower quality, from the pressure of time, inexperienced and tired staff • “If you want it bad, you’ll get it bad . . .” – Recent Example: Miami’s New Art Center. 61-1 When Trying to Crash a Project … • Two basic principles – 1. Generally, focus on the critical path • Usually not helpful to shorten non-critical activities • Exception: When a scarce resource is needed elsewhere, e.g., in another project – 2. When shortening project duration, choose least expensive way to do it – (use slope formula to calculate ratio) 71-1 Compute Cost per Day of Crashing a Project • Compute cost/time slope for each expeditable activity • Slope = crash cost – normal cost crash time – normal time 81-1 Another Approach to Expediting: Fast-tracking/Concurrency • Different terms for similar concept • “Fast-tracking” (construction), “Concurrent engineering” (manufacturing) • Both refer to overlapping project phases – E.g., design/build, or build/test 91-1 Fast-tracking/Concurrency • Pros: – Can shorten project duration – Can reduce product development cycles – Can help meet clients’ demands • Cons: – Can increase cost through redesigns, excessive changes, rework, out-ofsequence installation, and more 101-1 The Resource Allocation Problem • Most scheduling procedures do not address the issues of resource utilization and availability • Scheduling procedures tend to focus on time rather than physical resources • Time itself is always a critical resource in project management – It is unique because it can neither be inventoried nor renewed Chapter 9-5 111-1 The Resource Allocation Problem • Schedules should be evaluated: – in terms of meeting project milestones – in terms of the timing and use of scarce resources • Measure of the project manager’s success: skill with which the trade-offs among: – Performance – Time – Cost Chapter 9-6 121-1 The Resource Allocation Problem • The extreme points of the relationship between time use and resource use are these: – Time Limited: The project must be finished by a certain time, using as few resources as possible. But it is time, not resource usage, that is critical – Resource Limited:The project must be finished as soon as possible, but without exceeding some specific level of resource usage or some general resource constraint Chapter 9-7 131-1 The Resource Allocation Problem • If all three variables - time, cost, specifications are fixed, the system is “overdetermined” • In this case, the project manager has lost all flexibility to perform the trade-offs necessary to successful completion of projects • A system-constrained task requires a fixed amount of time and known quantities of resources Chapter 9-8 141-1 Resource Loading • Describes the amounts of individual resources an existing schedule requires during specific time periods • The loads (requirements) of each resource type are listed as a function of time period • Gives a general understanding of the demands a project or set of projects will make on a firm’s resources Chapter 9-9 151-1 Resource Usage Calendar, Figure 9-3 161-1 AOA Network, Figure 9-4 171-1 Modified PERT/CPM AOA, Figure 9-5 181-1 Resource Leveling • Resource leveling aims to minimize the period-byperiod variations in resource loading by shifting tasks within their slack allowances • The purpose is to create a smoother distribution of resource usage • Several advantages include: – Less day-to-day resource manipulation needed – Better morale, fewer HR problems/costs – Leveling resources also levels costs, simplifies budgeting and funding Chapter 9-12 191-1 Resource Leveling • When resources are leveled, the associated costs also tend to be leveled • The project manager must be aware of the cash flows associated with the project and of the means of shifting them in ways that are useful to the parent firm • Resource leveling is a procedure that can be used for almost all projects, whether or not resources are constrained Chapter 9-13 201-1 Resource Leveling – Fig 9-6 211-1 Network Before and After Resource Loading, Figure 9-7 Duration Qty Reqd. 221-1 Resource Loading Chart, Figure 9-9 231-1 Constrained Resource Scheduling • There are two fundamental approaches to constrained allocation problems: – Heuristic Methods – Optimization Models • Heuristic approaches employ rules of thumb that have been found to work reasonably well in similar situations • Optimization approaches seek the best solutions but are far more limited in their ability to handle complex situations and large problems Chapter 9-14 241-1 Examples of Simple Heuristics 1. ASAP 2. As late as possible (do not engage in anything unless you have to) 3. SPT (shortest processing time – good to reduce congestion) 4. Most resources first (most requested resources first) 5. Minimum slack first (critical jobs go first to avoid lead time delays) 6. Most critical followers (most critical jobs that go after you, many jobs depend on that resource) 7. Most successors 8. Arbitrary 9. Combination of the above (compound rules). Chapter 9-14 251-1 Examples of Complex Heuristics • • • • Simulated annealing Tabu search Genetic algorithms Greedy search with branch and bound In the graduate course Advanced Production Planning & Scheduling, focuses on scheduling heuristics. It is good to know that they exist. Chapter 9-14 261-1 Multiproject Scheduling and Resource Allocation • The most common approach to scheduling and allocating resources to multiple projects is to treat the several projects as if they were each elements of a single large project • Another way of attacking the problem is to consider all projects as completely independent • To describe such a system properly, standards are needed by which to measure scheduling effectiveness Chapter 9-21 271-1 Multiproject Scheduling and Resource Allocation • Much more difficult. • May rely on an index called TRPT: (Total Remaining Processing Time) – Based on the critical ratio. • Among all the projects under your control, look at all the jobs of all the projects. • Find out which are most critical. Chapter 9-21 281-1 Multiproject Scheduling and Resource Allocation • Most critical... How do you know? – Based on the amount of time before due date and the total amount of processing time remaining to be completed. • This ratio is simple but helpful. • Critical Ratio = TRPT (Total Remaining Processing Time) TRT (Total Remaining Time) • The smaller the ratio, the more critical it is, more entitled to earlier allocation of resources. Chapter 9-21 291-1 Multiproject Scheduling and Resource Allocation • Based on this, you can do multiple project scheduling. • Most critical tasks should be the first to be assigned resources. • This doesn’t mean that job will be assigned the resource first. – Why? The resource in need may not be available. – You can get first priority to claim it, but you may not get the first assignment. – You may get preference due to the type of resource that you need. • In case you have multiple projects, you have some way to do it. Chapter 9-21 301-1 Multiproject Scheduling and Resource Allocation • Three important parameters affected by project scheduling are: 1. Schedule slippage 2. Resource utilization 3. In-process inventory • The organization (or the project manager) must select the criterion most appropriate for its situation. Chapter 9-22 311-1 Multiproject Scheduling and Resource Allocation • Schedule slippage (how much delay it has caused or it will cause) - often considered the most important of the criteria, is the time past a project’s due date or delivery date when the project is completed • Resource utilization is of particular concern to industrial firms because of the high cost of making resources available (the more utilization the better, the resource requirements become lower) • WIP (to see how smooth your workflow is) concerns the amount of work waiting to be processed because there is a shortage of some resource Chapter 9-23 321-1 Multiproject Scheduling and Resource Allocation • All criteria cannot be optimized at the same time • As usual, the project manager will have to make trade-offs among the criteria • A firm must decide which criterion to evaluate its various scheduling and resource allocation options Chapter 9-24 331-1 “Cost, Schedule, or Performance: Pick Any Two . . .” • Assuming fixed performance specifications, tradeoff areas must be in time or cost • Time-limited or resource-limited • If all three dimensions are fixed, the system is “overdetermined” – Normally, no tradeoffs are possible – But, something has to give . . . 341-1 Example: Project Crashing • Compute cost/time slope for each expeditable activity • Slope = crash cost – normal cost crash time – normal time • Slope is the cost of crashing the project for the potential (or estimated) crashing time. 351-1 An Example (Table 9-1) Activity Predecessor Days (normal, crash) Cost (normal, crash) a - 3, 2 $40, 80 b a 2, 1 20, 80 c a 2, 2 20, 20 d* a 4, 1 30, 120 e** b 3, 1 10, 80 * Partial crashing allowed ** Partial crashing not allowed 361-1 Example (cont’d): Cost per Day to Crash (Table 9-2) Activity $ Saved/ Day (Slope) a 40 b 60 c - d 30 e 70 (2 days) 371-1 Example (cont’d): Crashing What to crash depends on how much we need to reduce the duration of the project. Normal Time Normal Cost 2 $60 b 3 $40 S $20 a c $40 $20 d - CP: a b e (ET=8) - Ratios - Total Cost: $120 - Total Lead Time: 8 days 3 $70 $30 Activity $ Saved/ Day (Slope) a 40 b 60 c - d 30 e 70 (2 days) e 2 4 $0 $10 F Activity Pred. Days (normal, crash) Cost (normal, crash) a - 3, 2 $40, 80 b a 2, 1 20, 80 c a 2, 2 20, 20 d* a 4, 1 30, 120 e** b 3, 1 10, 80 $30 381-1 Example (cont’d): Crashing Normal Cost 2 Ratios $60 b 2 3 $40 S a $40 $80* $20* c - Crash a: (lowest) for 1 day - New Cost: $120 + $40 = $160 - New Lead Time: 7 days (still on CP) v. a c (4) vs a d (6) $ Saved/ Day (Slope) a 40 b 60 c - d 30 e 70 (2 days) e 2 $0 4 $30 $10* F $20* d (max1) 3 $70 Activity $30* Activity Pred. Days (normal, crash) Cost (normal, crash) a - 3, 21 $40, 80 b a 2, 1 20, 80 c a 2, 2 20, 20 d* a 4, 1 30, 120 e** b 3, 1 10, 80 391-1 Example (cont’d): Crashing 1 2 $60 Normal Cost Ratios b 2 3 $40 S $20 $80* a $40 $80* c $ Saved/ Day (Slope) a 40 b 60 c - d 30 e 70 (2 days) e 2 $0 4 $30 $10* F $20* d - Crash b: (lowest) for 1 day (max) 3 $70 Activity $30* - New Cost*: $160 + $60 = $220 - New Lead Time: 6 days -(2 paths with same LT: a b e (6) vs a d (6) Activity Pred. Days (normal, crash) Cost (normal, crash) a - 3, 2 $40, 80 b a 2, 1 20, 80 c a 2, 2 20, 20 d* a 4, 1 30, 120 e** b 3, 1 10, 80 401-1 Example (cont’d): Crashing 1 2 $60 Normal Cost Ratios b 2 3 $40 S a $40 $80* $20 $80* c $30 Crash d for 1 day (partial crashing allowed) New Cost*: $220 + $30 = $250 LT for path a d = 5 (Not critical) CP is again a b e (6 days) 2 $ Saved/ Day (Slope) a 40 b 60 c - d 30 e 70 (2 days) e $0 $10* F $20* d - 3 $70 Activity 4 $30 3 $60* Activity Pred. Days (normal, crash) Cost (normal, crash) a - 3, 2 $40, 80 b a 2, 1 20, 80 c a 2, 2 20, 20 d* a 4, 1 30, 120 e** b 3, 1 10, 80 411-1 Example (cont’d): Crashing 1 2 $60 Normal Cost Ratios 1 3 $70 b 2 3 $40 S a $40 $80* $20 $80* c $ Saved/ Day (Slope) a 40 b 60 c - d 30 e 70 (2 days) e $0 $10 $80* F $20* d $30 - Crash e for 2 days (no partial crashing allowed) - New Cost*: $250 + $70 = $320 - LT for path a b e = 4 2 Activity 4 $30 3 $60* Activity Pred. Days (normal, crash) Cost (normal, crash) a - 3, 2 $40, 80 b a 2, 1 20, 80 c a 2, 2 20, 20 d* a 4, 1 30, 120 e** b 3, 1 10, 80 421-1 Example (cont’d): Crashing 2 1 2 $60 Normal Cost Ratios 1 3 $70 b 2 3 $40 S a $40 $80* $20 $80 $20* c $0 $ Saved/ Day (Slope) a 40 b 60 c - d 30 e 70 (2 days) e $10 $80* F $20* d -Say that lead time of 5 days is acceptable. -Can backtrack and undo the earlier crashing at b. -Add 1 day and subtract $60. -Now (a b e ) and (a d ) have LT =5. -New Cost*: $320 - $60 = $260 2 Activity $30 4 $30 3 $60* Activity Pred. Days (normal, crash) Cost (normal, crash) a - 3, 2 $40, 80 b a 2, 1 20, 80 c a 2, 2 20, 20 d* a 4, 1 30, 120 e** b 3, 1 10, 80 431-1 Example (cont’d): Crashing 2 1 2 $60 Normal Cost Ratios 1 3 $70 b 2 3 $40 S a $40 $80* $20 $80 $20* c $0 $ Saved/ Day (Slope) a 40 b 60 c - d 30 e 70 (2 days) e $10 $80* F $20* d -LT (a b e ) = 4 -Say that lead time of 5 days is acceptable. -Can backtrack and undo the earlier crashing at b. -Add 1 day and $60 back. -Now (a b e ) and (a d ) have LT =5. -New Cost*: $320 - $60 = $260 -If 5 days is acceptable, then stop. 2 Activity $30 4 $30 3 $60* Activity Pred. Days (normal, crash) Cost (normal, crash) a - 3, 2 $40, 80 b a 2, 1 20, 80 c a 2, 2 20, 20 d* a 4, 1 30, 120 e** b 3, 1 10, 80 441-1 Example (cont’d): Crashing 1 2 1 2 $60 Normal Cost Ratios 1 3 $70 b 2 3 S $40 a $40 $80* 2 $20 $80 $20 $80* c $0 Activity $ Saved/ Day (Slope) a 40 b 60 c - d 30 e 70 (2 days) e $10 $80* F $20* -LT (a b e ) = 5 d -Assume that acceptable lead time is now 4 days. $30 -Crash d for 1 more day. -Cost*: $260 + $30 = $290 -Crash b again for 1 more day. -New Cost*: $290 + $60 = $350 -Now (a b e, a c and a d ) have LT =4. -Addtn. Cost of reducing project from 8 to 4 days: $230 -You could still crash d 1 more day, but it would be a waste $30 4 3 $60 2 $90* of $. Activity Pred. Days (normal, crash) Cost (normal, crash) a - 3, 2 $40, 80 b a 2, 1 20, 80 c a 2, 2 20, 20 d* a 4, 1 30, 120 e** b 3, 1 10, 80 451-1 Example (cont’d): Crashing 461-1 CPM Cost-Duration 471-1 Copyright 2006 John Wiley & Sons, Inc. All rights reserved. Reproduction or translation of this work beyond that permitted in section 117 of the 1976 United States Copyright Act without express permission of the copyright owner is unlawful. Request for further information should be addressed to the Permissions Department, John Wiley & Sons, Inc. The Publisher assumes no responsibility for errors, omissions, or damages caused by the use of these programs or from the use of the information herein. 481-1