Upload
amelia-carter
View
216
Download
0
Embed Size (px)
Citation preview
© J. Christopher Beck 2008 1
Lecture 6: Time/Cost Trade-off in Project Planning
© J. Christopher Beck 2008 2
Outline Project Planning with
Time/Cost Tradeoffs Linear and non-linear
© J. Christopher Beck 2008 3
Readings
P Ch 4.4-4.5 Slides
borrowedfrom Twente & Iowa See Pinedo CD
© J. Christopher Beck 2008 4
Time/CostTrade-Offs
What if you could spend money to reduce the job duration More money
shorter processing time
Run machine at higher speed
© J. Christopher Beck 2008 5
Linear Costs
Money
Processingtimemax
jp
ajc
bjc
minjp
maxminjjj ppp
minmaxjj
bj
aj
j pp
ccc
Marginal cost
Cost to reduce job j byby 1 time unit
© J. Christopher Beck 2008 6
Problem
Spend money to reduce processing times so as to minimize:
n
jjjj
bj ppccCc
1
maxmax0
“Overhead” cost Cost per activity
© J. Christopher Beck 2008 7
Solution Methods
Objective: minimum cost of project Time/Cost Trade-off Heuristic
Good schedules Works also for non-linear costs
Linear programming formulation Optimal schedules Non-linear version not easily solved
© J. Christopher Beck 2008 8
Source (dummy) node
Sink node
Minimal cut set
Cut set
Sources, Sinks, & Cuts
© J. Christopher Beck 2008 9
Cuts Sets & Minimal Cut Sets
Given a graph G(V,E) A cut set is a set of nodes
such that in the graph formed by removing the nodes in S from G there is no path from the source to the sink
A minimal cut set, R, is a cut set such that if you remove any node, a, from R, R \ {a} is not a cut set
V is a set of nodesE is set of edges (arcs)
VS
© J. Christopher Beck 2008 10
Is This a Cut Set?Is This a Minimal Cut Set?
1
3
6 9
11
12 14
13
2 4 7
10
© J. Christopher Beck 2008 11
Is This a Cut Set?Is This a Minimal Cut Set?
1
3
6 9
11
12 14
13
2 4 7
10
© J. Christopher Beck 2008 12
Is This a Cut Set?Is This a Minimal Cut Set?
1
3
6 9
11
12 14
13
2 4 7
10
© J. Christopher Beck 2008 13
Is This a Cut Set?Is This a Minimal Cut Set?
1
3
6 9
11
12 14
13
2 4 7
10
© J. Christopher Beck 2008 14
Is This a Cut Set?Is This a Minimal Cut Set?
1
3
6 9
11
12 14
13
2 4 7
10
© J. Christopher Beck 2008 15
Is This a Cut Set?Is This a Minimal Cut Set?
1
3
6 9
11
12 14
13
2 4 7
10
© J. Christopher Beck 2008 16
Step 1:
Set all processing times at their maximum
Determine all critical paths
Construct the graph Gcp of critical paths
maxjj pp
Time/Cost Trade-off Heuristic
© J. Christopher Beck 2008 17
Step 2:
Determine all minimal cut sets in Gcp
Consider those sets where all processing times are larger
than their minimum
If no such set STOP; otherwise continue to Step 3
cpjj Gjpp ,min
Time/Cost Trade-off Heuristic
© J. Christopher Beck 2008 18
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
© J. Christopher Beck 2008 19
Time/Cost Trade-Off Heuristic
Step 4:
Reduce all processing times in the minimum cut set by
one time unit
Determine the new set of critical paths
Revise graph Gcp and go back to Step 2
© J. Christopher Beck 2008 20
Example 4.4.2
Jobs 1 2 3 4 5 6 7 8 9 10 11 12
13 14
pmaxj 5 6 9 12 7 12 10 6 10 9 7 8 7 5
pminj 3 5 7 9 5 9 8 3 7 6 4 5 5 4
caj 20 25 20 15 30 40 35 25 30 20 25 3
520 10
cbj 6 22 12 6 22 31 27 13 18 5 19 2
912 2
cj 7 2 4 3 4 3 4 4 4 5 2 2 4 8
Error in text
© J. Christopher Beck 2008 21
Warning: Example 4.4.2
Unfortunately, the text is wrong for this example!
© J. Christopher Beck 2008 22
1. Step 1: Maximum Processing Times, Find Gcp
1
2
3
6 9
5 8
4 7
11
10
12 14
13
© J. Christopher Beck 2008 23
1. Step 1: Maximum Processing Times, Find Gcp
1
2
3
6 9
5 8
4 7
11
10
12 14
13
56max C
Cost = overhead + job costs = co * Cmax + Σcb
j
= 6 * 56 + 224 = 560
© J. Christopher Beck 2008 24
1
3
6 9
11
12 14
c1=7
c3=4
c6=3 c9=4
c11=2
c12=2 c14=8
Minimum cutset with lowest cost
Cut sets: {1},{3},{6},{9}, {11},{12},{14}.
Arbitrarily choose 12Reduce p12 from 8 to 7
1. Step 2 & 3: Min. Cut Sets in Gcp & Lowest Cost
© J. Christopher Beck 2008 25
2. Step 4 & 1: Reduce p12 by 1
1
2
3
6 9
5 8
4 7
11
10
12 14
13
55max C
Cost = overhead + processing = c0 * Cmax + Σjob costs = 6 * 55 + 226 = 556
© J. Christopher Beck 2008 26
2. Step 2 & 3: Min. Cut Sets in Gcp & Lowest Cost
1
3
6 9
11
12 14
c1=7
c3=4
c6=3 c9=4
c11=2
c12=2 c14=8
13
Cut sets: {1},{3},{6},{9}, {11},{12,13},{14}
Why isn’t {12} a cut set?What is the cost of {12, 13}?
c13=4
Minimum cutset with lowest cost
© J. Christopher Beck 2008 27
3. Step 4 & 1: Reduce p11 by 1
1
2
3
6 9
5 8
4 7
11
10
12 14
13
54max C
Cost = overhead + processing = c0 * Cmax + Σjob costs = 6 * 54 + 228 = 552
© J. Christopher Beck 2008 28
3. Step 2 & 3: Min. Cut Sets in Gcp & Lowest Cost
1
3
6 9
11
12 14
c1=7
c3=4
c6=3 c9=4
c11=2
c12=2 c14=8
13
23 Min. cut sets! Where are they?Min cost min cut set: {2,11}: 4Reduce Job 2 to 5 and Job 11 to 5
c13=4
Minimum cutset with lowest cost
2 4 7
10
c2=2 c4=3 c7=4
c10=4
© J. Christopher Beck 2008 29
4. Step 4 & 1: Reduce p2 & p11 by 1
1
2
3
6 9
5 8
4 7
11
10
12 14
13
53max C
Cost = overhead + processing = c0 * Cmax + Σjob costs = 6 * 53 + 232 = 550
© J. Christopher Beck 2008 30
4. Step 2 & 3: Min. Cut Sets in Gcp & Lowest Cost
1
3
6 9
11
12 14
c1=7
c3=4
c6=3 c9=4
c11=2
c12=2 c14=8
13
Can’t reduce Job 2 anymore. Why?Min cost min cut set: {11,12}: 4Reduce Job 11 to 4, Job 12 to 6
c13=4
Minimum cutset with lowest cost
2 4 7
10
c2=2 c4=3 c7=4
c10=4
© J. Christopher Beck 2008 31
5. Step 4 & 1: Reducep11 and p12 by 1
1
2
3
6 9
5 8
4 7
11
10
12 14
13
52max C
Cost = overhead + processing = c0 * Cmax + Σjob costs = 6 * 52 + 236 = 548
© J. Christopher Beck 2008 32
5. Step 2 & 3: Min. Cut Sets in Gcp & Lowest Cost
1
3
6 9
11
12 14
c1=7
c3=4
c6=3 c9=4
c11=2
c12=2 c14=8
13
Cutset: {6, 12}: 4Reduce Job 6 to 11, Job 12 to 5
c13=4
2 4 7
10
c2=2 c4=3 c7=4
c10=4
© J. Christopher Beck 2008 33
6. Step 4 & 1: Reducep6 and p12 by 1
1
2
3
6 9
5 8
4 7
11
10
12 14
13
51max C
Cost = overhead + processing = c0 * Cmax + Σjob costs = 6 * 51 + 241 = 547
© J. Christopher Beck 2008 34
6. Step 2 & 3: Min. Cut Sets in Gcp & Lowest Cost
1
3
6 9
11
12 14
c1=7
c3=4
c6=3 c9=4
c11=2
c12=2 c14=8
13
All cut sets either can’t be reduced (a job at pmin) or has a cost ≥ 6.So we’re done.
c13=4
2 4 7
10
c2=2 c4=3 c7=4
c10=4
© J. Christopher Beck 2008 35
Example 4.4.2
It would be very useful for you to work through this entire example on your own!
Remember the book is wrong. You should use the slides.
© J. Christopher Beck 2008 36
Linear Programming Formulation
The heuristic does not guarantee optimum See example 4.4.3
You are responsible for the LP formulation! see the text!
© J. Christopher Beck 2008 37
Can Also HaveNon-linear Costs
Arbitrary function cj(pj) → cost of setting job j to processing time pj
LP doesn’t work! See Section 4.5 A question I like:
Given processing times and cj(pj), which algorithm would you use (heuristic or LP)?