Lecture 5: Project Planning 2

1 / 28

# Lecture 5: Project Planning 2 - PowerPoint PPT Presentation

Lecture 5: Project Planning 2. Outline. Time/Cost Tradeoffs Linear and non-linear Adding Workforce Constraints Slides borrowed from Twente & Iowa See Pinedo CD. Time/Cost Trade-Offs. What if you could spend money to reduce the job duration More money  shorter processing time

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

## Lecture 5: Project Planning 2

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

### Lecture 5: Project Planning 2

© J. Christopher Beck 2005

Outline
• Linear and non-linear
• Adding Workforce Constraints
• Slides borrowed from Twente & Iowa
• See Pinedo CD

© J. Christopher Beck 2005

• What if you could spend money to reduce the job duration
• More money  shorter processing time
• Run machine at higher speed

© J. Christopher Beck 2005

Linear Costs

Money

Marginal

cost

Processing

time

© J. Christopher Beck 2005

Problem
• Spend money to reduce processing times so as to minimize:

Cost per activity

© J. Christopher Beck 2005

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 2005

Cut set

Sink node

Source (dummy) node

Minimal cut set

Sources, Sinks, & Cuts

© J. Christopher Beck 2005

• Step 1:
• Set all processing times at their maximum
• Determine all critical paths
• Construct the graph Gcp of critical paths

© J. Christopher Beck 2005

• Step 2:
• Determine all minimum 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

© J. Christopher Beck 2005

• 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 2005

• 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 2005

Example 4.4.2

Overhead: co = 6 (cost of project per time unit)

© J. Christopher Beck 2005

1

2

3

6

9

5

8

4

7

11

10

12

14

13

Step 1: Maximum Processing Times, Find Gcp

© J. Christopher Beck 2005

8

4

5

9

7

3

2

1

6

13

11

10

12

14

Step 1: Maximum Processing Times, Find Gcp

Cost = overhead + job costs

= co * Cmax + Σcaj

= 6 * 56 + 350

= 686

© J. Christopher Beck 2005

1

3

6

9

11

12

14

Step 2 & 3: Min. Cut Sets in Gcp & Lowest Cost

c1=7

c12=2

c6=3

c9=4

c14=8

c11=2

c3=4

Cut sets: {1},{3},{6},{9},

{11},{12},{14}.

Minimum cut

set with lowest cost

© J. Christopher Beck 2005

8

4

5

9

7

3

2

1

6

13

11

10

12

14

Step 4 & 1: Reduce Processing Time for Each Job by 1

Cost = overhead + processing

= c0 * Cmax + Σjob costs

= 6 * 55 + 352

= 682

© J. Christopher Beck 2005

1

3

6

9

14

11

12

13

Step 2 & 3: Min. Cut Sets in Gcp & Lowest Cost

c1=7

c12=2

c6=3

c9=4

c14=8

c11=2

c13=4

c3=4

Cut sets: {1},{3},{6},{9},

{11},{12,13},{14}.

Minimum cut

set with lowest cost

© J. Christopher Beck 2005

1

3

6

9

11

12

14

13

Next 3 Iterations

c1=7

c12=2

c6=3

c9=4

c14=8

c11=2

c13= 4

c3=4

Next 3 iterations

reduce processing

time from 7 to 4

Cost = overhead + processing

= co * Cmax + Σjob costs

= 6 * 52 + 355

= 667

© J. Christopher Beck 2005

1

3

6

9

11

12

14

13

Step 1,2, & 3

c1=7

c12=2

c6=3

c9=4

c14=8

c11=2

c13= 4

c3=4

Reduce processing time

next on job 6

Q: why not 12?

© J. Christopher Beck 2005

4

1

3

6

9

7

2

12

13

11

14

10

After More Iterations …

c2=2 c4=3 c7=4

c10=5

c1=7

c12=2

c6=3

c9=4

c14=8

c11=2

c13= 4

c3=4

© J. Christopher Beck 2005

Linear Programming Formulation
• The heuristic does not guarantee optimum
• See example 4.4.3
• Here total cost is linear so use LP
• Want to minimize

© J. Christopher Beck 2005

Linear Program

Minimize

subject to

earliest start

time of job k

processing

time of job k

© J. Christopher Beck 2005

Can Also Have Non-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)?

© J. Christopher Beck 2005

What If Jobs Require Resources?
• Back to fixed durations
• Without resources → easy
• With resources → hard
• Resource Constraint Project Scheduling Problem (RCPSP)

© J. Christopher Beck 2005

3

5

2

1

6

4

RCPSP Example

6

5

4

3

2

1

Resource requirements

1

2

3

4

5

6

7

8

© J. Christopher Beck 2005

What if R1 = 4?

6

5

4

2

3

1

5

6

2

3

4

1

1

2

3

4

5

6

7

8

9

10

© J. Christopher Beck 2005

RCPSP
• n: jobs j=1,…,n
• N: resources i=1,…,N
• Rk: availability of resource k
• pj: duration of job j
• Rkj: requirement of job j for resource k
• Pj: (immediate) predecessors of job j
• Minimize Cmax

© J. Christopher Beck 2005

RCPSP Example

© J. Christopher Beck 2005