# 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 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:

IEOR 44051 Basic Project Scheduling

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

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

IEOR 44054 Planning a Concert

IEOR 44055 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

IEOR 44056 Changing a Tire

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

IEOR 44058 Job on Arc Network AB CD E

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

IEOR 440510 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

IEOR 440511 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

IEOR 440512 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

IEOR 440513 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

IEOR 440514 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.

IEOR 440515 Example 1 2 3 69 58 47 1110121413

IEOR 440516 Forward Procedure 1 2 3 69 58 47 1110121413 5 5+6=1111+12=2323+10=33 5+9=14 14+12=26 14+7=21 26+10=36 26+6=32 36+7=43 43+7=50 33+9=42 43+8=51 51+5=56

IEOR 440517 Backwards Procedure 1 2 3 69 58 47 1110121413 14-9=5 24-12=1234-10=2443-9=34 26-12=14 36-10=26 35-10=26 43-7=36 51-8=43 56-5=51 51-8=43 56-5=51 56

IEOR 440518 1 69 1214 Critical Path 2 3 58 47 11 1013

IEOR 440519 Variable Processing Times

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

IEOR 440521 Linear Costs Resources (money) Processing time

IEOR 440522 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

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

IEOR 440524 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

IEOR 440525 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

IEOR 440526 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

IEOR 440527 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

IEOR 440528 Example

IEOR 440529 Maximum Processing Times 1 2 3 69 58 47 1110121413

IEOR 440530 Maximum Processing Times 1 2 3 69 58 47 1110121413

IEOR 440531 Critical Path Subgraph (G cp ) 1 3 69 111214 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}.

IEOR 440532 Critical Path Subgraph (G cp ) 1 3 69 111214 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

IEOR 440533 Critical Path Subgraph (G cp ) 1 3 69 111214 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

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

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

IEOR 440536 Linear Program Minimize subject to

IEOR 440537 PERT

IEOR 440538 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

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

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

IEOR 440541 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

IEOR 440542 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)

IEOR 440543 Adding Resource Constraints

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

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

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

IEOR 440547 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

IEOR 440548 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?

IEOR 440549 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

IEOR 440550 Example: One Resource Uses resource 3 611 6 6 2 9 Time 10 20 30 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