You are on page 1of 32

CPM, Crashing, Resource Leveling

using MS Excel & MS Project


David S.W. Lai
Sept 24, 2013

1
Scope

• Critical Path Analysis Linear Programming (LP) approach


MS Excel 2010
• Crashing

• Resource leveling
MS Project 2010

2
Critical Path Method
A Linear Programming Approach

3
Example Problem
The Build-Rite Construction Company has identified the following ten activities
that take place in building a house.
Activity Immediate Expected Time
Predecessors (days)
1 Walls and Ceiling 2 5
2 Foundation - 3
3 Roof Timbers 1 2
4 Roof Sheathing 3 3
5 Electrical Wiring 1 4
6 Roof Shingles 4 8
7 Exterior Siding 8 5
8 Windows 1 2
9 Paint 6, 7, 10 2
10 Inside Wall Board 8, 5 3

Determine the critical path and the critical activities.


4
The example description is modified from the exercises described in Moore and Weatherford, Decision Modelling, Pearson 2001.
Solution
Early Start Schedule Late Start Schedule
Activity Total Slacks
ES EF LS LF
1 3 8 3 8 0
2 0 3 0 3 0
3 8 10 8 10 0
4 10 13 10 13 0
5 8 12 14 18 6
6 13 21 13 21 0
7 10 15 16 21 6
8 8 10 14 16 6
9 21 23 21 23 0
10 12 15 18 21 6

Critical activities: 1, 2, 3, 4, 6, 9
The project manager should adjust accordingly the budgets and
resource allocations to avoid any delay on these activities.

5
Critical Path Method
• Step 1: Forward pass Early Start Schedule
• Step 2: Backward pass Late Start Schedule
• Step 3: Calculating slacks Slacks

6
A LP Model for CPM analysis
Objective
Precedence Constraints
Function
Duration of the minimize the project
Predecessor Successor
Predecessor duration.
2 1 3
1 3 5
Constraints
3 4 2 e.g. activity 6 precedes
1 5 5 activity 9

4 6 3
8 7 2
1 8 5
Decision
6 9 8 Variables
7 9 5 start times of the
activities
10 9 3
5 10 4
8 10 2
7
AON network & LP Model
Nodes Decision Variables

Arcs Precedence Constraints

Longest Path Optimal Solution

2 3 8

3 4 6

2
3 5
4 3
9
2 1
5 10

2 5
8 7

Note that an alternative LP model can be derived from the AOA network.
8
Critical activities can then be identified via sensitivity analysis.
Parameters
• The start time of the project
• The (expected) times of the activities
• Precedence Relations of two activities

Activity Time (days) Precedence Constraints


1 Walls and Ceiling 5 Predecesor Successor
2 Foundation 3 2 1
3 Roof Timbers 2 1 3
4 Roof Sheathing 3 3 4
5 Electrical Wiring 4 1 5
6 Roof Shingles 8 4 6
7 Exterior Siding 5 8 7
8 Windows 2 1 8
9 Paint 2 6 9
10 Inside Wall Board 3 7 9
Project Start Time 0 10 9
5 10
8 10

9
A Linear Programming Approach for
Critical Path Analysis
A Spreadsheet Implementation

Activity Time (days) Start time Finish time


1 Walls and Ceiling 5 3- 8-
2 Foundation 3 0- 3-
3 Roof Timbers 2 8- 10-
4 Roof Sheathing 3 10- 13-
5 Electrical Wiring 4 8- 12-
6 Roof Shingles 8 13- 21-
7 Exterior Siding 5 10- 15-
8 Windows 2 8- 10-
9 Paint 2 21- 23-
10 Inside Wall Board 3 12- 15-
Project Start Time 0

Objective Value 23 days

10
ES EF
3 8
• Early start schedule 0
8
3
10
10 13
8 12
13 21
10 15
8 10
Any activity will be started at its earliest start time. 21 23
12 15

• Late start schedule LS


3
LF
8
0 3
8 10
10 13
14 18
13 21
16 21
14 16
Any activity will be started at its latest start time. 21 23
18 21

11
Critical Activities
Since the total slacks can be determined using the early start schedule
and the late start schedule, the critical activities can be identified as
well.
Early Start/Late Start Schedule
Total Slacks
Activity ES EF LS LF
1 3 8 3 8 0
2 0 3 0 3 0
3 8 10 8 10 0
4 10 13 10 13 0
5 8 12 14 18 6
6 13 21 13 21 0
7 10 15 16 21 6
8 8 10 14 16 6
9 21 23 21 23 0
10 12 15 18 21 6

Critical activities: 1, 2, 3, 4, 6, 9

12
Demo
• To enable the solver in EXCEL 2010
– File  Options Add-Ins  Select “Solver Add-in”  Go
Select “Solver Add-in”  OK
• You may find the solver in
– Data  Solver Objective
Function

Decision
Variables

Constraints

Use simplex method for


the LP models 13
Crashing
A Linear Programming Approach

14
Example Problem
Build-Rite’s engineers have calculated the cost of completing each activity.
Their results are given below.
Activity Normal Normal Crash Crash
Time Cost Time Cost e.g. Cost for Activity 1
1 5 50 3 72 80
2 3 20 2 30 70

Cost
3 2 15 1 30
60
4 3 8 1 20
5 4 30 4 30
50
6 8 13 4 21 40
7 5 45 1 65 2 3 4 5 6
8 2 45 1 52 Activity Time
9 2 40 2 40
10 3 22 2 34

How much would it cost to complete the project within 22 days? 21


days? 20 days?...
15
Solution: Time-Cost Trade-Off
380

360
Project
340
Cost The normal schedule
320 obtained using CPM

300
each activity is performed
280 at its lowest cost and at a
13 18 23 normal duration.

Project Duration
The crashing process has revealed a relationship between the cost and the
schedule of the project, which allows us to prepare our budget by considering
the possible trade-offs between cost and time.
16
Notations

crash
Max. Crash Days

17
A LP Model for Crashing
with a fixed project due date

Minimize the
cost for crashing

Precedence
Constraints

Max. Clashed
No. of days Days
to crash

Start times Project due


of the date
activities.
18
A Linear Programming Approach
for Crashing
A Spreadsheet Implementation
Crashing
Crashing Normal Normal Crash Crash Max. Crash Cost per
Activity
(days) Time Cost Time Cost Days Crash Day
1 ?2 5 50 3 72 2 11
2 ?1 3 20 2 30 1 10
3 ?1 2 15 1 30 1 15
4 ?2 3 8 1 20 2 6
5 ?0 4 30 4 30 0 0
6 ?4 8 13 4 21 4 2
7 ?1 5 45 1 65 4 5
8 ?0 2 45 1 52 1 7
9 ?0 2 40 2 40 0 0
10 ?1 3 22 2 34 1 12
Crash Cost ?
84
Project Cost ?
288
Obj. Value ?
372.1
19
Demo

20
Resource Leveling
MS Project 2010

21
Example
The working hours requirements of the activities are estimated.
They are described below.
Activity Immediate Expected Time Work hours
Predecessors (days)
1 Walls and Ceiling 2 5 30 hrs
2 Foundation - 3 22 hrs
3 Roof Timbers 1 2 8 hrs
4 Roof Sheathing 3 3 16 hrs
5 Electrical Wiring 1 4 6 hrs
6 Roof Shingles 4 8 4 hrs
7 Exterior Siding 8 5 6 hrs
8 Windows 1 2 12 hrs
9 Paint 6, 7, 10 2 8 hrs
10 Inside Wall Board 8, 5 3 4 hrs

The example question is modified from Project Management (Shtub, Bard, Globerson) Exercise 10.1 22
Resource leveling
The reallocation of slacks in activities to minimize
fluctuations in resource requirement profile.

The resource profile before leveling. The resource profile after leveling.
• large resource fluctuation • Minimized resource fluctuation
• Overallocation of resource • No delay in the project

23
Demo

24
1. Create a Project.
1. File  New  Blank
Project
2. File  Options 
Schedule

Set the working hours


per day. E.g. 8 hours.

The durations of
activities (or tasks)
are fixed in our case.

25
2. Input the task information
1. Task  Gantt Chart
2. Input the task information
3. Select all the tasks and then
press “Auto Schedule”

26
3. Set the Project Start Date
• Project  Project Information  Statistics

27
3. Identify the critical path
• Task  Gantt Chart  Network Diagram
• Gantt chart  Add New Column  “total slack”
Note that the project can be
finished within 23 days.

28
4. Add a renewable resource
• Task  Gantt Chart  Resource Sheet
• In the first row, input Examples of renewable
resource
– Resource Name: Manpower • Manpower
– Type: work • Materials
• Machines
– Max. Units: 100%

29
5. Type in the resource usage
• Input the work hours of the activities
• Select the column  right click  Assign Resources 
Select “Manpower”  Assign
Task Work hour

1 30 hrs
2 22 hrs
3 8 hrs
4 16 hrs
5 6 hrs
6 4 hrs
7 6 hrs
8 12 hrs
9 8 hrs
10 4 hrs
30
6. Resource Graph
• Task  Gantt chart  Resource Graph

Large frustration

31
7. Resource Leveling
• Resource  Leveling Options  tick “level
only within available slack.
• Resource  level all
• Frustration is minimized.
• No over-allocation
• The project duration
Smaller f
frustration remains the same (total
slacks are reduced )

32

You might also like