The Solution
The entire PERT formulation and portions of its solution appear below.
MODEL:
SETS:
TASKS: TIME, ES, LS, SLACK;
PRED( TASKS, TASKS);
ENDSETS
DATA:
TASKS, TIME =
DESIGN 10
FORECAST 14
SURVEY 3
DUMMY 0
PRICE 3
SCHEDULE 7
COSTOUT 4
TRAIN 10
;
PRED =
DESIGN, FORECAST,
DESIGN, SURVEY,
FORECAST, DUMMY
FORECAST, SCHEDULE,
SURVEY, PRICE,
SCHEDULE, COSTOUT,
PRICE, TRAIN,
COSTOUT, TRAIN,
DUMMY, PRICE
;
ENDDATA
@FOR( TASKS( J)| J #GT# 1:
ES( J) = @MAX( PRED( I, J): ES( I) + TIME( I))
);
@FOR( TASKS( I)| I #LT# LTASK:
LS( I) = @MIN( PRED( I, J): LS( J) - TIME( I));
);
@FOR( TASKS( I): SLACK( I) = LS( I) - ES( I));
ES( 1) = 0;
LTASK = @SIZE( TASKS);
LS( LTASK) = ES( LTASK);
END
Model: PERT
Feasible solution found.
Total solver iterations: 0
Variable Value
LTASK 7.000000
ES( DESIGN) 0.0000000
ES( FORECAST) 10.00000
ES( SURVEY) 10.00000
ES( PRICE) 24.00000
ES( SCHEDULE) 24.00000
ES( COSTOUT) 31.00000
ES( TRAIN) 35.00000
LS( DESIGN) 0.0000000
LS( FORECAST) 10.00000
LS( SURVEY) 21.00000
LS( PRICE) 32.00000
LS( SCHEDULE) 24.00000
LS( COSTOUT) 31.00000
LS( TRAIN) 35.00000
SLACK( DESIGN) 0.0000000
SLACK( FORECAST) 0.0000000
SLACK( SURVEY) 11.00000
SLACK( PRICE) 8.000000
SLACK( SCHEDULE) 0.0000000
SLACK( COSTOUT) 0.0000000
SLACK( TRAIN) 0.0000000
Solution to PERT
The interesting values are the slacks for the tasks. Both SURVEY and PRICE have slack in their start times of 11 weeks and 8 weeks, respectively. Their start times may be delayed by as much as these slack values without compromising the completion time of the entire project. The tasks DESIGN, FORECAST, SCHEDULE, COSTOUT, and TRAIN, on the other hand, have 0 slack times. These tasks constitute the critical path for the project and, if any of their start times are delayed, the entire project will be delayed. Management will want to pay close attention to these critical path projects to be sure they start on time and are completed within the allotted amount of time. Finally, the ES( TRAIN) value of 35 tells us the estimated time to the start of the roll out of the new Solar Widget will be 45 weeks-35 weeks to get to the start of training, plus 10 weeks to complete training.