90 This section is about the general overview of scheduling and allocating resources. Assigning people and machines to accomplish work (work on tasks). Resource Allocation: Time-Constrained. Assigning people or machines to tasks. Must be finished by a specific date. Resource-Constrained. Not enough people or machines to get the work (tasks) done. What is the Importance of Resource Allocation? Tasks only define WHAT work needs to be done. But, WHO will actually perform the work?? How do I know whom to assign to which task? o We will learn a priority scheme for assigning resources How do I deal with not having enough resources (resource-constrained)? o We will see how to minimize the lateness of a project. How can I reduce the cost of the resources I am using? o We will learn how to use free slack to reduce costs.
Scheduling Resources The Resource Assignment Problem A schedule is NOT a real schedule until resources are assigned. 91 1. Constraints a. Technical or logical: Basement à framing à roof à finish b. Resource: Labor, equipment, materials c. Physical: Space for one person 2. Time-constrained Problem Imposed finish date. Must finish no later than a specific date. Assume extra resources are available. Objective: Use efficiently, no more than necessary. --------------------------------------------------------------------------------------- Problem Symptoms: erratic or fluctuating utilization (hills/valleys) Objective: Minimize fluctuations (the peaks and valleys) Resources require start-up and shutdown time. Not efficient. Solution: Minimize fluctuations by smoothing out resource utilization, i.e., reduce peaks and valleys. o Reduce amount of resources needed (if possible) o Tasks with free slack will be moved around to reduce resource usage. o Free slack will be used up, hence increasing project sensitivity. 3. Resource-constrained Limited amount of resources. Time is not the problem. We just do not have enough resources. Cannot obtain more resources (i.e., only two painters available) If resources inadequate, task(s) MUST WAIT. Delay will happen and be acceptable. --------------------------------------------------------------------------------------- Problem Symptoms: Inadequate resources to meet peak demand. o Project will show over-allocation, i.e., more work than people to perform. o Project will be delayed. Objective: allocate resources to minimize project delay. o Do not exceed resource limit. o Do not violate technical network relationships. o Use free slack and extend the project end date. Solution: Heuristic with priority rules. o Task with minimum slack. Tries to schedule critical tasks first, to avoid delay. o Task with smallest duration. More flexible. o Lowest task ID value o Schedule earlier tasks before later tasks when multiple tasks are eligible. 4. The Resource Allocation Challenge Resource-constrained is most common. Always seem to be short of some workers or machines Solution: Use the heuristic with priority rules.
Project Management 92 Let s look at designing a botanical garden to see problems in resource allocation. Botanical Garden Exercise Assume we have a botanical garden to design and create. The botanical garden has the following network schedule of activities: Critical Path in Bold Design 1d Layout 3d Lighting Planting 8d
TIME CONSTRAINED Assume that the project MUST finish on day 24. It is time-constrained. Let s look at the resource requirements as the project is currently scheduled: SCHEDULE 93 Critical Path in Bold Design 1d 0 BH Layout 3d 2 BH 1 BH 1 BH Lighting 1 BH Planting 8d 3 BH EF=24 0 2 4 2 3 Original Garden Problem Gantt Chart 2 BH 24 BH Design (1d) Layout (3d, 2BH) (, 1BH) Lighting (, 1BH) (, 1BH) (, 2BH) l Bh Planting (8d, 3BH) 3 Bh 0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 Back Hoes 0 2 4 1 3 Graph of Resource Requirement 5 3 1 0 Bad situation. Uneven (inefficient) use of resources. Assume it costs $1,000 to move a back hoe. The cost for this solution will be $2K + $2K + $3K + $2K + $3K = $12,000.
1. Time-Constrained Smoothing Solution #1: Move Over Let s move the activity over into its free slack (same time period as Lighting) and see what the resource requirements look like now. SCHEDULE 94 Design 1d Layout 3d Critical Path in Bold Lighting Planting 8d BH 0 2 4 2 3 Time Constrained Solution (Hills and Valleys) 24 Design (1d) Layout (3d, 2BH) (, 1BH) Lighting (, 1BH) (, 1BH) (, 2BH) l Bh Planting (8d, 3BH) 3 Bh 0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 Back Hoes 0 2 3 2 3 Graph of Resource Requirement 5 3 1 0 A better situation. Notice how we have reduced the maximum back hoe requirement down to 3 (from 4 previously). Assuming $1K costs to move a back hoe, the cost for this solution will be $2K + $1K + $1K + $1K + $3K = $8,000. Notice that we get one more BK, then return the BK, then pick it up again (total of $3K in cost).
2. Time-Constrained Smoothing Solution #2: Move Over Move fence/walls activity over into its free slack (same time period as Lighting). What happens now? SCHEDULE 95 Design 1d Layout 3d Critical Path in Bold Lighting Planting 8d BH 0 2 4 2 3 Time Constrained Solution (Hills and Valleys) 24 Design (1d) Layout (3d, 2BH) (, 1BH) Lighting (, 1BH) (, 1BH) (, 2BH) l Bh Planting (8d, 3BH) 3 Bh 0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 Back Hoes 0 2 2 3 3 Graph of Resource Requirement 5 3 1 0 BEST Solution. We have now created a resource requirement situation that is EVEN MORE SMOOTH. Notice how we now have a 2 2 3 3 requirement and the maximum requirement is still 3 BH. Assuming $1K costs to move a back hoe, the cost for this solution will be $2K + $0K + $1K + $0K + $3K = $6,000.
RESOURCE CONSTRAINED Original Garden Problem Let s look at the problem of assuming that we have limited backhoes (only 2 BK are available). The project will be experiencing recourse constraints, not time constraints anymore. We accept that the project will be late. A review of the original problem reminds us of the initial resource allocation requirements: SCHEDULE 96 Design 1d Layout 3d Critical Path in Bold Lighting Planting 8d BH 0 2 4 2 3 Original Garden Problem Gantt Chart 24 Design (1d) Layout (3d, 2BH) (, 1BH) Lighting (, 1BH) (, 1BH) (, 2BH) Planting (8d, 3BH) l Bh 3 Bh 0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 Back Hoes 0 2 4 1 3 Graph of Resource Requirement 5 Over Allocated 3 Limit = 2 à 1 0
1. Resource Constrained Solution: Assigned Resources to Critical Path FIRST. Now we will assign the resources to the critical path first. This strategy will minimize project delays because this path contains the most critical set of tasks (CP) and has the least slack. 97 SCHEDULE Design 1d Layout 3d Critical Path in Bold Lighting Planting 8d BH 0 2 4 2 3 Original Garden Problem Gantt Chart Design (1d) Layout (3d, 2BH) (, 1BH) Lighting (, 1BH) (, 1BH) (, 2BH) Planting (8d, 3BH) Resource Dependency: Lighting must WAIT b/c it is dependent on the same resources that and use. l Bh 3 Bh 24 0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 Back Hoes 0 2 2 2 1 3 Graph of Resource Requirement 5 Limit = 2 à 3 1 0 0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 Notice that this solution makes the project late. On Day 30. And that is continuing to allow Planting to have 3 BK. WHY? Because making the CP later makes the project later. We are limited with our resources and that means we must stretch out the project and take more time. The fewer the resources, the more time needed to complete the project. If we split Planting into 2 + 1 resource allocations, then it would require 2 BK from 22 30 and 1 BH for 8 days (30 38) or 2 BH for 4 days (30 34).
2. Severe Resource Constrained: Assume only ONE Back Hoe. As the quantity of resources diminishes, the project finishes much later. Fewer resources available for the project. SCHEDULE 98 Design 1d Layout 3d Critical Path in Bold Lighting Planting 8d BH 0 2 4 2 3 Original Garden Problem Gantt Chart Design (1d) Layout (3d, 2BH) (, 1BH) Lighting (, 1BH) (, 1BH) (, 2BH) Planting (8d, 3BH) 0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 Back Hoes 0 2 2 2 1 3 Graph of Resource Requirement 5 l Bh 3 Bh 24 3 3 Limit = 1 à 1 0 0 0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 It should become obvious by now that the fewer resources, the worse the project will be late. In this case, the only way to complete the project is to split Layout (total 6 days), (total 12 days), and splitting Planting into 1+1+1=3 splits times 8 days = 24 days for 1 BH. The project finish will be at 60 days. Conclusion: The more scarce the resources, the longer the project will be delayed. It will not be possible to finish the project on time.
The following resource allocation exercises are about resource constrained scheduling. Exercise 8-1 99 Technical CP Technical Scheduled Critical Path = Slack? Resource Scheduled Critical Path = Slack?
How well do I understand resource critical tasks? Refer to the Exercise below. 1. What are the technically scheduled critical tasks? 100 2. What are the resultant critical tasks as a result of imposing resource constraints on the project (includes technical-critical and resource-critical)? 3. Why does task 2 become critical, just because we schedule it to have resource EE? Technical Scheduled Critical Path = 1 4 5 Slack? 2, 3 6, 7 Resource Scheduled Critical Path = 1-2-3-4-5-6-7 Slack? NONE
Exercise 8.2 101 Use Heuristic Rule. Schedule Task 2 First. C E E 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 Resource C is assigned to task 2 first, because its TS=0 < TS=1 for task 3. Notice that task 5 cannot start until 3+4+1= 8 total time durations later. How could we improve this solution? Seems like the E resources wait a long time before being utilized.
Exercise 8.2 102 We see that the Heuristic Rule yields a LONG project duration. Is it possible to improve upon this solution, just using the heuristic as a guide? Yes! Is there some way to schedule task #5 earlier? Now Schedule Task 3 first. C E E 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Exercise 8.3 103
104 Exercise 8.4
Solution to Exercise 8-1 ANSWERS 105
106 Exercise 8.1 How well do I understand resource critical tasks? ANSWERS to Questions 1. What are the technically scheduled critical tasks? Only the sub-path 1 4 5 is technically critical. 2. What are the resultant critical tasks as a result of imposing resource constraints on the project (includes technical-critical and resource-critical)? All are critical. See the resource activity schedule. The slack is zero for all tasks, i.e., look at the Gantt-type chart and you can see that if any task is late, the entire project is backed up and will be late. Notice that in the Gantt chart view, there is no total slack between any of the task bars. 3. Why does task 2 become critical, just because we schedule it to have resource EE? Because Task 2 has to wait three (3) days for Task 1 and Task 4 to be scheduled, thus using up its total slack of 3 days. Task 2(TS=3) has to wait 2 days for Task 1(TS=0). WHY? Because Task 1 has the least slack and must be scheduled first. This uses up two days of total slack. But, Task 2 still has TS=1, so it must wait for Task 4, which has TS=0 (heuristic says least slack first, then minimum duration, then smallest ID. Now Task 2 is critical because it has zero slack.
Solution to Exercise 8.2 by modifying the Heuristic. 107 We can bend the rules. The heuristic is a guide that works most of the time. But if another solution can yield a shorter project duration, then why not use it. Assigning resource C to task 3 before task 2 allows task 5 to be scheduled earlier, at time 5 (ES).
ANSWERS: Exercise 8.3 108 #4 goes before #5. But, if #5 has to wait 3 periods for #3 to finish then it really starts at end of period 7. So, #4 should go first, because it is eligible to start naturally at end of period 4.
ANSWERS: Exercise 8.4 (Solution A) This solution assumes that we recognize that there is a resource conflict at Period #4. Task #2 is using 2 resources. Task #3 wants to use 2 resources at the end of period #4 (beginning of period #5 for Task #2. Task #3 must wait until the end of period 5. But then, Task #3 s slack reduces by 1 from 2 à 1, i.e. we used up one of the free slack periods. Hence, #3 should go before #5 according to the heuristic, because of least slack heuristic rule. So, Notice that Tasks #3 and #4 were scheduled before (earlier than) Task #5. 109 FS TS 1 3 0 0 0 0 2 2 0 0 0 0 See next page for discussion on the free and total slacks for this project.
Slack Value Explanations for Exercise 8-4, Solution A (working back from last Task #6): x,x means Free slack, Total Slack #6: 0,0 because last task. #5: 0,0 because would make #3 late which would make #6 late (all use 2 resources). #4: 2,2 because can move over (be late) 2 periods before making #6 late. #3: 0,0 will make #6 late if this one is late (both use 2 resources). #2: 0,0 Uses 2 resources, hence will make #5 late (see explanation for Task #5 above) #1: 1,3 can be late 1 period before making #4 late. Then can be late 2 more before pushing #4 into #6. AND ALSO, #1 is pushing up against Task #3. 110 Alternative Perspective on Exercise 8-4, Solution B. The slack values in the network diagram (previous page) show that Tasks #3 and #5 BOTH have TS=2. So, could the following be a possibility for a correct solution? Task #4 certainly would be scheduled first (3 rd task to enter the schedule) o It has zero slack (obviously less than #3, #5). o Task #4 would be the 3 rd task to enter the schedule. Since it appears that Task #3 and #5 have the same slack, we need a tie-breaker. But, task #3 is eligible to start at the end of period 4. o Task #4 can only start no earlier than the end of period 5. o Task #5 can only start no earlier than the end of period 5.