You are on page 1of 31

CPM (Critical Path Method)

CPM Objective
To estimate the total project duration and to
assign starting and finishing times to all
activities involved in the project

What factors should we consider


for project scheduling?

Total completion time of the project


Earlier and latest start time of each activity
Critical activities and critical path
Float for each activity (I.e. the amount of
time by which the completion of a non
critical activity can be delayed without
delaying the total project completion time)

Important Notations
Ei = Earliest occurrence time of an event (I.e.
The earliest time for an event to occur
immediately after all the preceding activities
have been completed without delaying the
entire project)
Li = Latest allowable time for an event (I.e.
The latest time at which an event can occur
without causing a delay in already determined
projects completion time)

Important Notations (contd)


ESij = Early starting time for an activity (i,j).
It is the earliest time an activity can possibly
start without affecting the project completion
LSij = Late starting time for an activity (i,j) . It
is the latest possible time an activity can start
without delaying the project completion time

Important Notations (contd)


EFij = Early finishing time for an activity
(i,j). It is the earliest time an activity can
possibly finish without affecting the project
completion
LFij = Late finishing time for an activity (i,j)
. It is the latest possible time an activity can
start without delaying the project
completion time
Tij = Duration of an activity (i.j)

How to calculate earliest


occurrence and latest available
times of events?
Forward pass method for calculating
earliest event time
Backward pass method for latest available
event time

Forward pass method


Start with initial event numbered 1. Earliest
occurrence time for event 1 is always zero.
I.e E1 = 0 where i = 1
Calculate earliest start time for each activity
that begins at event ( i = 1). This is equal to
the earliest start time of event I (tail event)
(I.e) ESij = Ei for all activities (i.j) starting at
event i

Forward pass method (Contd..)


Calculate earliest finish time of each
activity that begins at event (i) . This is
equal to the earliest start time of the activity
plus the duration of the activity
(I.e) EFij = ESij + tij = Ei + tij, for all activities
(i,j) beginning at event i.

Forward pass method (Contd..)


Proceed to the next event j ; j > I
Calculate the earliest occurrence time for the event
j. This is the maximum of the earliest finish times
of all activities ending into that event
Ej = Max { EFij} = Max { Ei + tij }, for all immediate
predecessor activities
If N is the final event then earliest finish time for
the project (or) the earliest occurrence time EN for
the final event is given by
EN = Max {EFij} = Max {EN-1+ tij}, for all terminal
activities

Backward pass method (For


latest allowable event time)
Set the latest occurrence event N equal to its
earliest occurrence time (known from
forward pass method) LN = EN , j = N
Latest finish time of each activity which
ends at event j, LFij = Lj
Latest start time of each activity ending at j,
LSij= LFij-tij
Latest occurrence time for event ( i) where
i<j , L = Min {LSij}= Min {Lj-tij}
L1=0

Sample CPM problem


Draw the network diagram and find
the critical path

Activity
A
B
C
D
E
F
G
H
I
J
K

Duration
3
3
4
1
3
2
2
4
1
3
5

Precedence
A
C
B, D
A, B, D
C, F
G
C
E, G
F, H, I

A
B
C
D
E
F
G
H
I
J
K
L
M

Design new premises


Obtain tenders from the contractors
Select the contractor
Arrange details with the selected contractor
Decide which equipment to be used
Arrange storage of equipment
Arrange disposal of other equipment
Order new equipment
Take delivery of new equipment
Renovations take place
Remove old equipment
Cleaning
Return old equipment

A
B
C
A
E
E
E
H,L
K
D,F,G
J
H,L

14
4
2
1
2
3
2
4
3
12
4
2
2

Solution with critical path


E3=18
L3=18

C (2)
5

D(1)
E6=18
L6=21

B(4)

A (14)

E1=0
L1=0

E (2)

E2=14
L2=14

E7=21
L7=21
K (4)

8
J(12)

G(2)
1

E8=25
L8=25

E5=20
L5=20

F(3)
4

E9=37
L9=37

L(2)

M(2)
10
I (3)

H (4)
E4=16
L4=18

11

E11=41
L11=42

E10=39
L10=39

1
2
E12=42
L12=42

From the earlier example what is


the critical path?
The critical path is the sequence of critical
activities that form a continuous path
between the start of a project & its
completion
It is the longest path
Critical events : where E = L
Critical activities float is 0.

Floats
Calculated for non critical activity or non
critical event
The length of time to which a non critical
activity and/or an event can be delayed or
extended without delaying the total project
completion time
Float can be called as slack or free time also

Float on event
Float slack of an event is the difference
between its latest occurrence time and its
earliest occurrence time
Event float = Li-Ei
Event float is 0 for critical events (I.e. L = E)

Float on activities
The length of free time available within the
estimated times of non-critical activities
3 types of float for non-critical activities
Total float
Free float
Independent float

Total float
Length of time by which an activity can be
delayed if all its predecessor activities are
completed at its earliest possible time and
all successor activities can be delayed until
their latest permissible time
Total float TFij= (Lj-tij)-Ei

Free float
Time by which the completion of an activity
can be delayed without causing any delay in
its immediate succeeding activities
Free float FFij= (Ej-Ei)-tij

Independent float
Amount of time available when preceding
activities are completed at their latest
permissible times and the following
activities can still be completed at their
earliest possible times
Independent float IFij=(Ej-Li)-tij
Negative value of independent float is
considered as 0

Further on floats
Latest occurrence time of an event is always
greater than or equal to its earliest occurrence
time. This implies
Independent float < Free float < Total float
Floats help in identifying underutilized
resources,flexibility in the total schedule and
possibilities of redeployment of resources
Once a float of an activity is disturbed, float for
all other activities of the project is changed and
should be recalculated

What does a float value mean?


If float value is negative, it means project
completion is behind the schedule data.
Resources are not adequate and activity may
not finish in time
Float = 0. Just enough resources, no
possibility for delay
Float is positive means resources are surplus
and can be deployed elsewhere as required

You might also like