691 likes | 2.62k Views
Project Management with PERT/CPM. PERT/CPM. PERT : program evaluation and review technique CPM : critical path method Use a project network, Activity-on-Node (AON): Nodes: activities, or tasks, to be performed Arcs: show immediate predecessors to an activity
E N D
PERT/CPM • PERT : program evaluation and review technique • CPM : critical path method • Use a project network, Activity-on-Node (AON): • Nodes: activities, or tasks, to be performed • Arcs: show immediate predecessors to an activity • Times: duration times of activities are written next to the node
Reliable Construction Company Example • Activity list for the Reliable Construction Co. project
The project network for the Reliable Construction Co. project START 0 Activity Code A. Excavate B. Foundation C. Rough wall D. Roof E. Exterior plumbing F. Interior plumbing G. Exterior siding H. Exterior painting I. Electrical work J. Wallboard K. Flooring L. Interior painting M. Exterior fixtures N. Interior fixtures A 2 B 4 10 C I D E 7 4 6 5 F G 7 J 8 H 9 K L 4 5 M N 2 6 FINISH 0
Start 0 A C B 1/2 1 1/2 D E 2 1/4 F 1/2 Finish Bake a Cake Example
Critical Path • A path through a project network is a route from START to FINISH. • The length of path is the sum of the task times (durations) of the nodes (activities) on the path. • The critical path is the longest path. • The projectduration is the length of the longest path.
To Find the Critical Path and Slacks • Work from top to bottom in the network, calculating • ES = earliest start time for an activity EF = earliest finish time for an activity ES for activity i = largest EF of the immediate predecessors ES = 0 if no immediate predecessors EF = ES + activity duration time • Work from bottom to top in the network, calculating • LS = latest start time for an activity LF = latest finish time for an activity LS = LF – activity duration time LF for activity i = smallest LS of the immediate successors LF at Finish = EF at Finish if no immediate successors • Slack = LF - EF = LS - ES If slack is zero, the activity is on the critical path.
The complete project network showing ES, LS, EF and LF for each activity of the baking example S = (ES, LS) F = (EF, LF) Slack = LS – ES = LF - EF S=( ) F=( ) Slack= 0 Start S=( ) F=( ) Slack= 1 S=( ) F=( ) Slack= B ½ S=( ) F=( ) Slack= A ½ C S=( ) F=( ) Slack= S=( ) F=( ) Slack= 2 ¼ D E F S=( ) F=( ) Slack= ½ S=( ) F=( ) Slack= 0 Finish • Work down the network calculating ES and EF (ES at Start = 0, EF at Start = 0) • Work backward up the network calculating LS and LF (LF and LS at Finish is EF and ES at Finish)
The complete project network showing ES, LS, EF and LF for each activity of the baking example S = (ES, LS) F = (EF, LF) Slack = LS – ES = LF - EF S=(0, 0) F=(0, 0) Slack=0 0 Start S=(0, 0) F=(1,1) Slack=0 1 S=(0, 2 ¼) F=(½, 2 ¾ ) Slack=2 ¼ B ½ S=(0, ½) F=(½, 1) Slack= ½ A ½ C S=(1, 2 ¾) F=(1 ¼, 3) Slack=1 ¾ S=(1, 1) F=(3, 3) Slack=0 2 ¼ D E F S=(3, 3) F=(3 ½, 3 ½) Slack=0 ½ S=(3 ½, 3 ½) F=(3 ½, 3 ½) Slack=0 0 Finish Critical Path is Start →B→E →F →Finish Activity D has slack of 1¾ hours (Start of D could be delayed without affecting total project duration) Also, activities A and C have slack of 2 ¼ and ½ respectively.
The complete project network showing ES, LS, EF and LF for each activity of the Reliable Construction Co. project S= (0, 0) F= (0, 0) 0 START S = (ES, LS) F = (EF, LF) S= (0, 0) F= (2, 2) A 2 S= (2, 2) F= (6, 6) B 4 S= (6, 6) F= (16, 16) 10 C S= (16,20) F= (22,26) S= (16, 16) F= (20, 20) S= (16,18) F= (23,25) D I 4 E 6 7 S= (20,20) F= (25,25) S= (22,26) F= (29,33) 5 G 7 S= (25,25) F= (33,33) F J 8 S= (29,33) F= (38,42) H 9 S= (33,34) F= (37,38) S= (33,33) F= (38,38) K 4 L 5 N S= (38,42) F= (40,44) 2 M S= (38,38) F= (44,44) 6 S= (44,44) F= (44,44) 0 FINISH
The spreadsheet used by MS project for entering the activity list for the Reliable Construction Co. project
Incorporate Uncertain Activity Duration Times (Probabilistic) • PERT Three-Estimate Approach m = most likely estimate of activity duration time o = optimistic estimate of activity duration time p = pessimistic estimate of activity duration time • Assume Beta distribution of activity time Approximately:
Expected value and variance of the duration of each activity for Reliable’s project
The paths and path lengths through Reliable’s project network whenthe duration of each activity equals its pessimistic estimate
For a path (typically the critical path), find the mean length (time) µp and the variance σp2 • mean length of path µp = sum of mean activity times on the path (because E[X+Y] = E[X] + E[Y]) • Variance of length of path σp2 = sum of variances of activity times on path (because we assume independence: Var [X+Y] = Var [X] + Var [Y] if X,Y independent) • Example: critical path Start →A →B →C →E →F →J →L →N →Finish µp = 2 + 4 + 10 + 4 + 5 + 8 + 5 + 6 = 44 σp2 = 1/9 + 1 + 4 + 4/9 + 1 + 1 + 1 + 4/9 =9
Find the probability the project is completed in 47 weeks using an assumption of a Normal distribution
assume linear Crash cost $ Normal cost Normal time Crash time Activity duration time Time-Cost Trade-offs • If one can expedite the project, use money/resources to reduce task times, what is the best way to allocate money? • For an activity, could pay extra to reduce time (crash) • How much would it cost to reduce total project duration from 44 weeks to 40 weeks? Which activities should be “crashed”? • Could calculate crash cost and crash time for all possible paths – but can also apply LP!
Time-cost trade-off data for the activities of Reliable’s project If do all tasks normal, 44 weeks, cost is 4.55 million. If do all tasks crash, 28 weeks, cost is 6.15 million.
Marginal Cost Analysis • For small networks, may reduce the project 1 week at a time, and observe the changes.
yI 7 yF 5 I F yJ J yJ ≥ yF + 5 - xF yJ ≥ yI + 7 - xI Linear Programming to Make Crashing Decisions Let Z = total cost of crashing on any activity xj = reduction in the duration of activity j due to crashing j = A,B,C,…,N xj ≤ maximum reduction time = normal time – crash time yFINISH= project duration, time at which FINISH node is reached yj = start time of activity j yj ≥ yi + normal timei – xi i is an immediate predecessor of j
The schedule of cumulative project costs when all activities begin at their earliest start times or at their latest start times
Time-cost trade-off data for the activities of the baking project
The project network showing Normal Time and Crash Time for each activity of the baking project N: Normal time C: Crash time Start If all are normal: ADF 1 ¼ BDF 1 ¾ BEF 3 ½ CEF 3 Total time is 3 ½. If all are crashed: ADF ¾ BDF ¾ BEF 2 CEF 2 Total time is 2. N C 1 , 1/4 N C 1/2 , 1/4 C N C 1/2 , 1/4 A B E D N C 2 , 1 1/2 N C 1/4 , 1/4 F N C 1/2, 1/4 Finish
Could solve the crash LP for finish times between 3.5 and 2 to evaluate alternatives 25 16.67 Cost 11.67 8.33 5 2.5 0 2 2.25 2.5 2.75 3 3.25 3.5 T= y Finish
Construct project network Start G 15 E 7 K C 15 A 2 30 H 10 F 25 D 3 B 5 I 2 J A→B →J →L 75 * C→D →J →L 45 E→F →J →L 73 G→H →I →J →L 45 10 L 30 Finish
ES=2EF=5 D 3 EF = ES + activity time (or duration) if no predecessors, ES = 0; otherwise ES = max (EF) (immediate predecessors) work forward through network Start ES=0EF=15 ES=0EF=7 ES=0EF=2 ES=0EF=30 G 15 E 7 ES=0EF=15 A C 30 K 2 15 ES=15EF=25 H 10 ES=7EF=32 F 25 ES=30EF=35 B 5 ES=25EF=27 I 2 J ES=35EF=45 10 ES=45EF=75 L 30 Finish
The complete project network showing ES, LS, EF, LF and Slack for each activity of the Lasagna dinner example S = (ES, LS) F = (EF, LF) Slack = LF-EF=LS-ES Start S=(0,0) F=(30,30) Slack=0 S=(0,30) F=(15,45) Slack=30 S=(0,10) F=(15,25) Slack=10 S=(0,3) F=(7,10) Slack=3 A S=(0,30)F=(2,32) slack=30 K 30 C 15 G 15 E 7 2 S=(15,25) F=(25,35) Slack=10 S=(30,30) F=(35,35) Slack=0 S=(7,10) F=(32,35) Slack=3 H S=(2,32) F=(5,35) slack=30 10 B 5 D F 25 3 S=(25,33) F=(27,35) Slack=8 I 2 J S=(35,35) F=(45,45) Slack=0 10 S=(45,45) F=(75,75) Slack=0 L 30 Critical path has zero slack: A→B →J →L Finish
Because of a phone call, you will delayed by 6 minutes to cut onions and mushrooms (Task E) . By how much will dinner be delayed? slack is 3, delay of 6 minutes will delay dinner by 6-3=3 If you use your food processor instead to reduce cutting time from 7 minutes to 2 minutes, will dinner still be delayed? ES=0 LS=8 LS=2 LF=10 E 2 slack = 8, so phone of 6 won’t delay dinner
All of the critical path, ES, LS, EF, LF, are based on estimates of the activity times. • How can you incorporate uncertainty into planning? PERT 3 – estimate approach Most Likely Estimate (m) most probable event Optimistic Estimate (σ) if everything goes perfectly Pessimistic Estimate (p) if everything goes wrong
What is the probability of meeting your deadline? • Assume the distribution for activity time is a Beta distribution density f(t) t: time µ - 3σ µ + 3σ µ ± 3σinterval captures 99.73% of distribution
Consider Critical Path o=10 m=30 p=50 A μ= 30 Buy mozzarella cheese σ2 = (6 2/3)2 B μ= 5 Slice cheese σ2 = (11/3)2 o=3 m=4 p=11 J μ= 10 Assemble σ2 = (2)2 = 4 L μ= 30 Bake σ2 = (3 2/3)2 o=20 m=30 p=40
Could calculate pessimistic length: 50 + 11 + 14 + 40 = 115 Longest pessimistic path may not be the critical mean path • The mean length is sum of means: 30 + 5 + 10 + 30 = 75 = µp • Assume all task times are independent, variance for path is sum of variances:
67 75 83 • Assume distribution of path time is normal (central limit theorem if lots of tasks on a path)