7.1 Introduction • A project is a collection of tasks that must be completed in minimum time or at minimal cost. • Tasks are called “activities.” – Estimated completion time (and sometimes costs) are associated with each activity. – Activity completion time is related to the amount of resources committed to it. – The degree of activity details depends on the application and the level of specificity of data. 1 • Determining precedence relations among the activities is crucial to developing optimal schedules. • Objective of Project Scheduling. – Project Scheduling is used to plan and control a project efficiently and economically. – With Project Scheduling we can: • characterize the activities • monitor the project progress. 2 • Project Scheduling provides us with the following information: – – – – – – – – The minimal expected completion time for a project. The critical activities. The earliest and latest time to start and finish an activity. The amount of slack time for each activity. The most cost effective completion alternatives. The activities on which extra resources should be spent. Whether or not a project is on schedule or within budget. A schedule that offers a constant level of resources utilization. – A schedule that completes a project in minimum time give 3 limited resources. 7.2 Identifying the Activities of a Project KLONE COMPUTERS, INC. • KLONE Computers manufactures personal computers. • It is about to design, manufacture, and market the Klonepalm 2000 palmbook computer. 4 • There are three major tasks to perform: – Manufacture the new computer. – Train staff and vendor representatives. – Advertise the new computer. • KLONE needs to develop a precedence relations chart. • The chart gives a concise set of tasks and their immediate predecessors. 5 Activity Description Activity Description Manufacturing activities Training activities Advertising activities A B C D E Prototype model design Purchase of materials Manufacture of prototype model Revision of design Initial production run F G H Staff training Staff input on prototype models Sales training I J Preproduction advertising campaign Production advertising campaign 6 From the activity description chart, we can determine immediate predecessors for each activity. 7 Precedence Relationships Chart AActivity ctivity AA BB CC DD EE FF G G HH II JJ Im Imm med ediate iate PPred redecesso ecessorr NNone one AA BB G G DD AA CC,F ,F DD AA DD,I,I EEstim stimated ated CCoom mppletio letionn TTim imee 90 90 15 15 55 20 20 21 21 25 25 14 14 28 28 30 30 45 45 8 7.4 Building PERT/CPM Networks • The PERT/CPM approach to project scheduling – A network representation of the project that reflects activity precedence relationships. – It is designed to perform a thorough analysis of possible project schedules. – Primary objectives of PERT/CPM • To determine the minimal possible completion time for the project. • To determine a range of start and finish time for each activity, so that the project can be completed in minimal 9 time. • PERT is a scheduling method in which activity completion times are treated as a random variable. • CPM is a scheduling method which assumes the completion time for an activity is deterministic, dependent only on the amount of money spent to complete it. • Both methods require one to identify the activities and the precedence relationships between 10 activities. 7.5 The PERT/CPM Approach for Project Scheduling KLONE COMPUTERS, INC. - Continued • Management at KLONE would like to schedule the activities so that the project is completed in minimal time. 11 • Management wishes to know: – The earliest completion date for the project. – The earliest and latest start times for each activity which will not alter this date. – The earliest finish times for each activity which will not alter this date. – Activities with rigid schedule and activities that have slack in their schedules. 12 An Activity On Node (AON) Network Representation of the Klonepalm 2000 Computer Project B 15 C 5 Immediate Estimated Activity PredecessorE Completion Time 21 None A None 90 B A 15 C 5 BB D 20 D G H E 21 20 D 28 F A 25 G C,F 14 H D 28 I A 30 J J D,I 45 45 A A 90 F 25 I 30 G 14 A A 13 • Earliest start time / Earliest finish time – Make a forward pass through the network as follows: • Evaluate all the activities which have no immediate predecessors. – The earliest start for such an activity is zero ES = 0. – The earliest finish is the activity duration EF = Activity duration. • Evaluate the ES of all the nodes for which EF of all the immediate predecessor has been determined. – ES = Max EF of all its immediate predecessors. – EF = ES + Activity duration. • Repeat this process until all nodes have been evaluated – EF of the finish node is the earliest finish time of the project. 14 Earliest Start / Earliest finish Evaluate the ES of all the nodes for which EF has been determined Evaluate all the activities which have no immediate predecessor 90,105 B B 15 A A 90 90,115 F F 25 90,120 I I 30 149,170 E E 21 110,124 115,129 G G 14 170 129,149 D D 20 149,177 H H 28 177 194 194 120,165 149,194 J J 45 EARLIEST FINISH TIME FINISH 0,90 105,110 C C 5 15 • Latest start time / Latest finish time – Make a backward pass through the network as follows: • Evaluate all the activities that immediately precede the finish node. – The latest finish for such an activity is LF = minimal project completion time. – The latest start for such an activity is LS = LF - activity duration. • Evaluate the LF of all the nodes for which LS of all the immediate successors has been determined. – LF = Min LS of all its immediate successors. – LS = LF - Activity duration. • Repeat this process backward until all nodes have been evaluated. 16 Latest Start / Latest finish 90,105 95,110 0,90 0,90 C C 5 90,115 90, 115 F F 25 29,119 90,120 119,149 I I 30 149,170 173,194 E E 21 129,149 149,177 115,129 129,149 115,129 129,149 153,173 166,194 129,149 D 146,166 H G 129,149 D H G 129,149 20 28 14 129,149 129,149 129,149 149,194 149,194 FINISH 5,95 A A 90 B B 15 105,110 110,115 194 J J 45 17 • The Critical Path and Slack Times – Activity start time and completion time may be delayed by planned reasons as well as by unforeseen reasons. – Some of these delays may affect the overall completion date. – To learn about the effects of these delays, we calculate the slack time, and form the critical path. 18 – Slack time is the amount of time an activity can be delayed without delaying the project completion date, assuming no other delays are taking place in the project. Slack Time = LS - ES = LF - EF 19 Slack time in the Klonepalm 2000 Project A c tiv ity A B C C D E F G H I LS - E S 0 -0 95 - 90 110 - 105 119 - 119 173 - 149 90 - 90 115 - 115 166 - 149 119 - 90 149 - 149 S la c k 0 5 5 0 24 0 0 17 29 0 Critical activities must be rigidly scheduled 20 - The Critical Path • The critical path is a set of activities that have no slack, connecting the START node with the FINISH node. • The critical activities (activities with 0 slack) form at least one critical path in the network. • A critical path is the longest path in the network. • The sum of the completion times for the activities on the critical path is the minimal completion time of the project. 21 90,105 95,110 0,90 0,90 C C 5 90,115 90, 115 F F 25 90,120 119,149 I I 30 115,129 115,129 G G 14 149,170 173,194 129,149 129,149 D D 20 THE CRITICAL PATH E E 21 149,177 166,194 H H 28 149,194 149,194 J J 45 The forward and backward passes provided the earliest and latest times to start and finish each22 activity. FINISH A A 90 B B 15 105,110 110,115 194 • Analysis of possible delays – We observe two different types of delays: • Single delays. • Multiple delays. – In some cases the overall project completion time will be delayed. 23 – The conditions that specify each case are presented next. – Single delays • A delay of a certain amount in a critical activity, causes the entire project to be delayed by the same amount. • A delay of a certain amount in a noncritical activity will delay the project by the amount the delay exceeds the slack time. • When the delay is less than the slack, the entire project is not delayed. 24 – Multiple delays • Observe three cases of delays in two noncritical activities. – Case 1: There is no path linking the two non-critical activities. – Case 2: The non-critical activities are on the same path, separated by a critical activity. – Case 3: The two non-critical activities are on the same path, with no critical activity separating them. • In each one of the above cases, the amount specified will cause no delay in the entire project. 25 Case 1: Activity E and I are each delayed 15 days. ES=149 THE PROJECT COMPLETION TIME DELAYED START=149+15=164 IS NOT DELAYED LS=173 C 5 B 15 A 90 F 25 E 21 G 14 I 30 ES=90 DELAYED START=90+15 =105 LS =119 D 20 H 28 J 45 26 Case 2: Activity B is delayed 4 days; Activity E is delayed 15 days. ES=90 DELAYED START =94 LS =95 B 15 A 90 ES=149 DELAYED START=149+15 =164 LS =173 C 5 F 25 I 30 Activity B and E are separated by the critical activities G and D. E 21 G 14 D 20 H 28 J 45 THE PROJECT COMPLETION TIME IS NOT DELAYED 27 • Case 3: Activity B is delayed 4 days; Activity C is delayed 4 days. ES= 90 DELAYED START =94 DELAYED FINISH = 94+15=109 B 15 A 90 DELAYED START= 109 + 4 =113; C LS =110 3 DAYS DELAY IN THE ENTIRE PROJECT E 21 5 F 25 I 30 G 14 D 20 H 28 J 45 THE PROJECT COMPLETION TIME IS DELAYED 3 DAYS 28 7.7 The Probability Approach to Project Scheduling • Activity completion times are seldom known with 100% accuracy. • PERT is a technique that treats activity completion times as random variables. • Completion time estimates are obtained by the 29 Three Time Estimate approach • The three time estimate approach provides completion time estimate for each activity. • We use the notation: a = an optimistic time to perform the activity. m = the most likely time to perform the activity. b = a pessimistic time to perform the activity. • Approximations for the mean and the standard deviation of activity completion time are based on the Beta distribution. a + 4m + b = the mean completion time = 6 b -a = the standard deviation = 6 30 – Assumption 1 • A critical path can be determined by using the mean completion times for the activities. • The project mean completion time is determined solely by the completion time of the activities on the critical path. To calculate the mean and standard deviation of the project completion time – Assumption 2 • The time complete one activity is independent of the time we to make some simplifying to complete any other activity. assumptions. – Assumption 3 • There are enough activities on the critical path so that the distribution of the overall project completion time can be approximated by the normal distribution. 31 The three assumptions imply that the overall project completion time is normally distributed, with Mean = Sum of mean completion times along the critical path. Variance = Sum of completion time variances along the critical path. 32 KLONE COMPUTERS - revised • Three time estimates were given for each activity A c tiv ity O p tim is tic M o s t L ik e ly P e s s im is tic A 76 86 120 B 12 4 15 5 18 6 15 18 18 21 33 24 16 10 26 13 30 22 I 24 22 18 27 32 50 J 38 43 60 C D E F G H 33 • Management at KLONE is interested in – The probability that the project will be completed within 194 days. – An interval estimate of the project completion time. – The probability that the project will be completed within 180 days. – The probability that the project will take longer than 210 days. – An upper limit for the number of days within which it can 34 virtually be sure the project will be completed. • Calculation of the means and the variances A = [76+4(86)+120]/6 = 90 A = (120 - 76)/6 = 7.33 A2 = (7.33)2 = 53.78 – For the rest of the activities we have Activity A B C D E F G H I J 90 15 5 20 21 25 14 28 30 45 7.33 1.00 0.33 3.00 1.00 2.33 2.00 1.33 4.67 3.67 2 53.78 1.00 0.11 9.00 1.00 5.44 4.00 1.78 21.78 13.44 35 • The mean times are the same as in the CPM problem, previously solved for KLONE. • Thus, the critical path is A - F- G - D - J. – Expected completion time = A + F + G + D + J = 194 – The project variance =A2 +F2 +G2 +D2 +J2 = 85.66 – The standard deviation = 2 = 9.255 Under the assumptions stated above the completion time of the project is normally distributed with = 194 days and = 9.255 days. 36 • Now the quantities of concern for management can be calculated. – The probability of completion in 194 days = 194 -194 P(X 194) = P(Z ) P(Z 0) 0.5 9.255 • An interval in which we are reasonably sure the completion date lies is z 0.025 – The interval is = 194 1.96(9.255) {175, 213} days. • There is 95% confidence that the real completion time lies within 175 days and 213 days. 37 The probability of completion in 180 days = P(X 180) = P(Z -1.51) = 0.5 - 0.4345 = 0.0655 0.0655 0.99 0.0418 .4345 .4582 0.01 180 -1.51 194 0 210 1.73 x X 2.33 Z – The probability that the completion time is longer than 210 days = P(X 210) = P(Z 1.73) = 0.5 - 0.458 = 0.0418 – Assume a 99% certain completion date is acceptable P(Z 2.33) = 0.99; x=+ z =194 + 2.33(9.255) = 215.56 days. 38 7.8 Computer Solution of PERT/CPM • A linear programming approach – Variables • Xi = The start time of the activities for i=A, B, C, …,J • X(FIN) = Finish time of the project – Constraints • Each immediate predecessor relationship has one constraint • The constraints state that the start time of an activity must not occur before the finish time of the immediate predecessor. 39 – The Model C 5 Minimize X(FIN) ST X(FIN) X + 21 E X(FIN) XH + 28 X(FIN) XJ + 45 XE XD + 20 XH XD + 20 XJ XD + 20 XJ XI + 30 All X’s are nonnegative F 25 XD XG + XG XC + XG XF + XI XD + XF XA + XC XB + XD XG + XB XA + G 14 5 25 90 90 15 14 90 40 – An Excel solution provides: • A schedule of (not necessarily the earliest) start time that will complete the project in minimal time. • The earliest starts, returned when using the following objective function Minimize XA + XB + XC +…+ XJ + X(FIN) • The latest starts that can be obtained (after solving for the project earliest finish) as follows – Add the constraint X(FIN) = 194 – Change the objective function to Maximize XA + XB + XC +…+ XJ + X(FIN). 41 • A Network Approach – WINQSB provides • • • • Activity schedule chart (ES, EF, LS, LF). Mean and standard deviation of the critical path. Optional: Earliest and latest time Gantt chart. Optional: The probability of completing the project within a specified time. – No programming is needed. – Input data consists of • Immediate predecessors for each activity. • Completion time (for a, m, and b). 42 43 Critical Activities WINQSB Scheduling Solution 44 7.9 Cost Analysis Using the Expected Value Approach • Spending extra money, in general should decrease project duration. • Is this operation cost effective? • The expected value criterion is used to answer this question. 45 KLONE COMPUTERS Cost Analysis Using Probabilities • Analysis indicated: – Completion time within 180 days yields an additional profit of $1 million. – Completion time between 180 days and 200 days, yields an additional profit of $400,000. 46 KLONE COMPUTERS Cost Analysis Using Probabilities • Completion time reduction can be achieved by additional training. Which option should be • Two possible activities are considered for pursued? training. – Sales personnel training: • Cost $200,000; • New time estimates are a = 19, m= 21, and b = 23 days. – Technical staff training: • Cost $250,000; 47 • Evaluation of spending on sales personnel training. – This activity (H) is not critical. – Under the assumption that the project completion time is determined solely by critical activities, this option should not be considered further. • Evaluation of spending on technical staff training. – This activity (F) is critical. – This option is further studied as follows: • Calculate expected profit when not spending $250,000. • Calculate expected profit when spending $250,000. • Select the decision with a higher expected profit. 48 – Case 1: Do not spend $250,000 on training. This case represents the current situation. Expected gross additional profit = P(completion time is less than 180)($1 million) + P(180<Completion time<200)($400,000) + P(Completion time> 200)(0) = P(X<180)($1 million) + P(180<X<200)($400,000) + P(X>200)(0) 180-194 [P(Z< 9.255 )=P(Z< -1.51) = .0655; P(-1.51<Z<.65) = .6767] Expected gross additional profit = .06555(1M)+.6767(400K)= = $366,180. 49 – Case 2: Spend $250,000 on training. • The new timeExpected estimates change expected time and=standard Gross the Additional Profit deviation ofP( a critical activity. time<180)(1M)+ completion P(180<completion time<200)(400K)+ P(completion time>200)(0) = = (12 + 4 (14) + 16)/6 = 14 = (16 -12)/60.1611(1M)+0.7277(400K) =0.67 = $452,180 • The new estimates are 2= 0(.67)2 =0.44 • The project has a new critical path (A-B-C-G-D-J), with a mean time = 189 days, and a standard deviation of = 9.0185 days. P(Z< 180-189 ) = P(Z< -.99) = 0.1611; 9.0185 P( - 0.99<Z< 1.22) = 0.7277 50 – The expected net additional profit = 452,180-250,000 = $202,180 < $336,180 Expected additional net profit when spending $250,000 on training Expected profit without spending $250,000 on training Conclusion: Management should not spend money on additional training of technical personnel 51 7.10 The Critical Path Method (CPM) • The critical path method (CPM) is a deterministic approach to project planning. • Completion time depends only on the amount of money allocated to the activity. • Reducing an activity’s completion time is called “crashing.” 52 • There are two crucial completion times to consider for each activity. – Normal completion time (NT). – Crash completion time (CT). – NT is achieved when a usual or normal cost (NC) is spent to complete the activity. – CT is achieved when a maximum crash cost (CC) is spent to complete the activity. 53 The Linearity Assumption [Normal Time - Crash Time] [Crash Cost - Normal Cost] = [Normal Cost] [Normal Time] 54 Normal NC = $2000 NT = 20 days A demonstration Total Cost = $2600 of the Job time = 18 days Linearity assumption Time 20 …and save on 18 completion time …and save more on 16 completion time Add to the 14 Add more to the normal cost... 12 normal cost... Save 25% of the 10 max. time reduction Add 25% of the extra cost to the normal cost 8 6 4 2 Marginal Cost = = Crashing CC = $4400 CT = 12 days Additional Cost to get Max. Time Reduction Maximum Time reduction (4400 - 2000)/(20 - 12) = $300 per day 5 10 15 20 25 30 35 40 45 Cost ($100) 55 • Meetings a Deadline at Minimum Cost – Let D be the deadline date to complete a project. – If D cannot be met using normal times, additional resources must be spent on crashing activities. – The objective is to meet the deadline D at minimal additional cost. – Tom Larkin’s political campaign problem illustrates the 56 concept. TOM LARKIN’S POLITICAL CAMPAIGN • Tom Larkin has to plan 26 weeks of his mayoral campaign activities. • The campaign consists of the following activities Activity Activity A. A. Hire Hire cam camppain ain staff staff Im No rm al chSSch ed chuued le Red ch ed Imm med ediate iate No Norm rm Noal al rmSSch al ed ed leuule le Reduuced ced SSch eduule le PPred red ecesso Co TTim Co ecessorr TTim imee Cost st imee Cost st None 44 2.0K 22 5.0K None 2.0K 5.0K B. rep are B. PPrep are ppoositio sitionn ppap aper er C. C. Recru Recruitit vo volu lunnteers teers None None AA 66 44 3.0 3.0 4.5 4.5 33 22 99 10 10 D. D. Raise Raise fu funnddss EE.. FFile ile can canddid idacy acy ppap apers ers AA,B ,B DD 66 22 2.5 2.5 0.5 0.5 44 11 10 10 11 FF.. PPrep rep are are cam camppaig aignn m material aterial G G.. LLoocate/staff cate/staff hhead eadqquuarters arters EE EE 13 13 11 13.0 13.0 1.5 1.5 88 11 25 25 1.5 1.5 H. H. Ru Runn pperso ersonnal al cam camppaig aignn I.I. Ru Runn m med edia ia cam camppaig aignn C,G C,G FF 20 20 99 6.0 6.0 7.0 7.0 10 10 55 23.5 23.5 16 16 57 NETWORK PRESENTATION A C H G B D E FINISH F I Project completion (normal) time = 36 weeks 58 To meet the deadline date of 26 weeks some activities must be crashed. Mayoral Campaign Crash Schedule AA cc ttiivv iittyy AA BB CC DD EE FF GG HH II NN TT 44 66 44 66 22 11 33 11 22 00 99 NN CC (($$ )) 22 00 00 00 33 00 00 00 44 55 00 00 22 55 00 00 55 00 00 11 33 00 00 00 11 55 00 00 66 00 00 00 77 00 00 00 CC TT 22 33 22 44 11 88 11 11 00 55 CC CC 55 00 00 00 99 00 00 00 11 00 00 00 00 11 00 00 00 00 11 00 00 00 22 55 00 00 00 11 55 00 00 22 33 55 00 00 11 66 00 00 00 TT M M (($$ )) 22 $$ 11 ,,55 00 00 33 22 00 00 00 22 22 77 55 00 22 33 77 55 00 11 55 00 00 55 22 44 00 00 ****** ****** 11 00 11 77 55 00 44 22 22 55 00 60 SOLUTION • Linear Programming Approach – Variables Xj = start time for activity j. Yj = the amount of crash in activity j. – Objective Function Minimize the total additional funds spent on crashing activities. – Constraints • The project must be completed by the deadline date D. • No activity can be reduced more than its Max. time reductioN. • Start time of an activity takes place not before the Finish time of an immediate predecessor. 61 Minimize total crashing costs Min1500YA 2000YB 2750YC 3750YD 500YE 2400YF 17500YH 2250YJ ST Meet the deadline X ( FIN ) X I 9 YI X ( FIN ) 26 X ( FIN ) X H 20 YH X I X F 13 YF YA 2 XH XG 1 YB 3 Maximum time-reduction constraints X H X C 4 YC YC 2 X G X E 2 YE YD 2 X F X E 2 YE YE 1 X E X D 6 YD YF 5 A YH 10 C B D E X D X B 6 YB H G X D X A 4 YA FINISH F Activity can start only after all the predecessors are completed. X C X A 4 YA I 62 • Other cases of project crashing – Operating optimally within a given budget. • When a budget is given, minimizing crashing costs is a constraint, not an objective. • In this case the objective is to minimize the completion time. 63 TOM LARKIN - Continued • The budget is $75,000. The objective function becomes a constraint Minimize X(FIN) 1500 YA+ 2000 YB + 2750 YC + 3750 YD + 500 YE + 2400 YF +1750 YH + 2250 YJ This constraint becomes the objective function X(FIN) 26 1500 YA+ 2000 YB + 2750 YC + 3750 YD + 500 YE + 2400 YF +1750 YH + 2250 YJ 75,000 - 40,000 = 35,000 The rest of other crashing model constraints remain the same. 64