Presentation is loading. Please wait.

Presentation is loading. Please wait.

IEOR 44051 Basic Project Scheduling. IEOR 44052 Project Scheduling zJobs subject to precedence constraints zJob on arc format (most common) 25 14 3 6.

Similar presentations


Presentation on theme: "IEOR 44051 Basic Project Scheduling. IEOR 44052 Project Scheduling zJobs subject to precedence constraints zJob on arc format (most common) 25 14 3 6."— Presentation transcript:

1 IEOR Basic Project Scheduling

2 IEOR Project Scheduling zJobs subject to precedence constraints zJob on arc format (most common)

3 IEOR Overview Project Scheduling No resource Constraints Resource Constraints Critical Path Method (CPM) Program Evaluation and Review Technique (PERT) Heuristic Resource Leveling Integer Programming Formulations

4 IEOR Planning a Concert

5 IEOR Job on Arc Network zNot allowed: no two jobs can have the same starting and ending node! zNeed to introduce a dummy job. A B D C A B D C

6 IEOR Changing a Tire

7 IEOR Job on Arc Network A B C D E Is this correct?

8 IEOR Job on Arc Network AB CD E

9 IEOR Job on Node Network ABE DC zNo need for a dummy node zLess used traditionally zRecently more popular

10 IEOR Critical Path Method (CPM) zThink of unlimited machines in parallel z… and n jobs with precedence constraints zProcessing times p j as before zObjective to minimize makespan

11 IEOR Critical Path Method zForward procedure: yStarting at time zero, calculate the earliest each job can be started yThe completion time of the last job is the makespan zBackward procedure yStarting at time equal to the makespan, calculate the latest each job can be started so that this makespan is realized

12 IEOR Forward Procedure Step 1: Set at time t = 0 for all jobs j with no predecessors, S j ’ =0 and set C j ’ = p j. Step 2: Compute for each job j C j ’ = S j ’ + p j. Step 3: The optimal makespan is STOP

13 IEOR Backward Procedure Step 1: Set at time t = C max for all jobs j with no successors, C j ’’ = C max and set S j ’’ = C max - p j. Step 2: Compute for each job j S j ’’ = C j ’’ - p j. Step 3: Verify that STOP

14 IEOR Comments zThe forward procedure gives the earliest possible starting time for each job zThe backwards procedures gives the latest possible starting time for each job zIf these are equal the job is a critical job. zIf these are different the job is a slack job, and the difference is the float. zA critical path is a chain of jobs starting at time 0 and ending at C max.

15 IEOR Example

16 IEOR Forward Procedure = = =33 5+9= = = = = = = = = =56

17 IEOR Backwards Procedure = = =2443-9= = = = = = = = =51 56

18 IEOR Critical Path

19 IEOR Variable Processing Times

20 IEOR Time/Cost Trade-Offs zAssumed the processing times were fixed zMore money  shorter processing time zStart with linear costs zProcessing time zMarginal cost

21 IEOR Linear Costs Resources (money) Processing time

22 IEOR Solution Methods zObjective: minimum cost of project zTime/Cost Trade-Off Heuristic yGood schedules yWorks also for non-linear costs zLinear programming formulation yOptimal schedules yNon-linear version not easily solved

23 IEOR Sources, Sinks, and Cuts Source (dummy) node Sink node Minimal cut set Cut set

24 IEOR Time/Cost Trade-Off Heuristic Step 1: Set all processing times at their maximum Determine all critical paths with these processing times Construct the graph G cp of critical paths Continue to Step 2

25 IEOR Time/Cost Trade-Off Heuristic Step 2: Determine all minimum cut sets in G cp Consider those sets where all processing times are larger than their minimum If no such set STOP; otherwise continue to Step 3

26 IEOR Time/Cost Trade-Off Heuristic Step 3: For each minimum cut set: Compute the cost of reducing all processing times by one time unit. Take the minimum cut set with the lowest cost If this is less than the overhead per time unit go on to Step 4; otherwise STOP

27 IEOR Time/Cost Trade-Off Heuristic Step 4: Reduce all processing times in the minimum cut set by one time units Determine the new set of critical paths Revise graph G cp and go back to Step 2

28 IEOR Example

29 IEOR Maximum Processing Times

30 IEOR Maximum Processing Times

31 IEOR Critical Path Subgraph (G cp ) C 1 =7 C 3 =4 C 6 =3C 9 =4 C 11 =2 C 12 =2 C 14 =8 Minimum cut set with lowest cost Cut sets: {1},{3},{6},{9}, {11},{12},{14}.

32 IEOR Critical Path Subgraph (G cp ) C 1 =7 C 3 =4 C 6 =3C 9 =4 C 11 =2 C 12 =2 C 14 =8 13 Cut sets: {1},{3},{6},{9}, {11},{12,13},{14}. C 13 =4 Minimum cut set with lowest cost

33 IEOR Critical Path Subgraph (G cp ) C 1 =7 C 3 =4 C 6 =3C 9 =4 C 11 =2 C 12 =2 C 14 =8 13 Reduce processing time next on job 6 C 13 =4 Processing time at minimum

34 IEOR Critical Path Subgraph (G cp ) C 1 =7 C 3 =4 C 6 =3C 9 =4 C 11 =2 C 12 =2 C 14 =8 13 C 13 = C 2 =2 C 4 =3 C 7 =4 C 10 =5 This set cannot be decreased, Choose 2 and 6 instead

35 IEOR Linear Programming Formulation Objective is weighted avg. of makespan and cost zHere total cost is linear zWant to minimize

36 IEOR Linear Program Minimize subject to

37 IEOR PERT

38 IEOR Program Evaluation and Review Technique (PERT) zAssumed processing times deterministic  Processing time of j random with mean  j and variance  j 2. zWant to determine the expected makespan zAssume we have p j a = most optimistic processing time p j m = most likely processing time (mode) p j b = most pessimistic processing time

39 IEOR Expected Makespan zEstimate expected processing time zApply CPM with expected processing times zLet J cp be a critical path zEstimate expected makespan

40 IEOR Distribution of Makespan zEstimate the variance of processing times zand the variance of the makespan zAssume it is normally distributed

41 IEOR Discussion zPotential problems with PERT: yAlways underestimates project duration xother paths may delay the project yNon-critical paths ignored xcritical path probability xcritical activity probability yActivities are not always independent xsame raw material, weather conditions, etc. yEstimates by be inaccurate

42 IEOR Discussion zNo resource constraints: yCritical Path Method (CPM) ySimple deterministic yTime/cost trade-offs xLinear cost (heuristic or exact) xNon-linear cost (heuristic) yAccounting for randomness (PERT)

43 IEOR Adding Resource Constraints

44 IEOR Resource Constraints zRenewable resources zVery hard problem zNo LP zCan develop an IP zLet job n+1 be dummy job (sink) and

45 IEOR Makespan zLet H bound the makespan, e.g. zCompletion time of job j is and the makespan

46 IEOR IP Formulation Minimize Subject to If j prec k For each job Each resource used

47 IEOR In Practice zThe IP cannot be solved z(Almost) always resource constraints z  Heuristic: Resource constraint  Precedence constraint zExample: pouring foundation and sidewalk yboth require same cement mixer ydelaying foundation delays building yprecedence constraint: pour foundation first ynot a logical constraint

48 IEOR Optimality of Heuristic zSay n jobs need the same resource zCould otherwise all be done simultaneously zAdd (artificial) precedence constraints zHave n! possibilities zWill we select the optimal sequence?

49 IEOR Decision Support zResource leveling ySolve with no resource constraints yPlot the resource use as a function of time yIf infeasible suggest precedence constraints xLongest job xMinimum slack yUser adds constraints yStart over

50 IEOR Example: One Resource Uses resource Time Resource Profile Capacity


Download ppt "IEOR 44051 Basic Project Scheduling. IEOR 44052 Project Scheduling zJobs subject to precedence constraints zJob on arc format (most common) 25 14 3 6."

Similar presentations


Ads by Google