United States
Department of
Critical Path Method Applied
Agriculture
Forest Service
to Research Project Planning:
Pacific Southwest
Forest and Range
Experiment Station
Fire Economics Evaluation
General Technical
System (FEES)
Report PSW-93
Earl B. Anderson
R. Stanton Hales
The Authors:
EARL B. ANDERSON is a supervisory physical scientist and leader of the Site-Specific
Fire Prescriptions for California Chaparral and Associated Ecosystems research project
headquartered at Riverside, California. At the time this work was accomplished, he was an
operations research analyst in the Station's Fire Management Planning and Economics
project. He earned a degree (1951) in mechanical engineering at the University of Illinois.
He was a member of the technical staff of Aerospace Corporation, El Segundo, California,
from 1962 until he joined the Station's staff in 1978. R. STANTON HALES is the
associate dean and professor of mathematics, Pomona College, California. He holds
degrees in mathematics from Pomona College (bachelor's 1964) and from Harvard
University (master's 1965, doctorate 1970).
Acknowledgments:
We thank the many students and faculty members of the Claremont Colleges who
contributed to this work. In particular, a large share of credit for development of the
planning system described belongs to a team in the Claremont Graduate School Mathe-
matics Clinic under the leadership of Suzanne Larson. The team included Carl Ito, David
Nicastro, and Michael O'Keeffe--all students at Pomona College--and was assisted by
professors Irwin Schochetman, Oakland University, while visiting the Claremont Gradu-
ate School, and Terence R. Shore, California State University, Dominguez Hills, while
visiting Pomona College.
Publisher:
Pacific Southwest Forest and Range Experiment Station
PO. Box 245, Berkeley, California 94701
August 1986
Critical Path Method Applied
to Research Project Planning:
Fire Economics Evaluation
System (FEES)
Earl B. Anderson
R. Stanton Hales
CONTENTS
Introduction ........................................................................................ 1
Critical Path Method (CPM) ............................................................ 1
Constructing a Network Diagram .................................................... 2
Calculating Start and Finish Times .................................................. 3
Constructing a Time Chart ............................................................... 4
Methods of Schedule Selection .......................................................... 5
Resource Analysis ........................................................................... 5
Cost Analysis ................................................................................... 6
Fire Economics Evaluation System .................................................. 6
Comparing Schedules ...................................................................... 7
Updating the Routine ....................................................................... 8
References ........................................................................................... 8
i
developing the FEES project. Therefore, a computerized
CPM package was developed under a cooperative agreement
INTRODUCTION
with the Mathematics Clinic of the Claremont Colleges,
Claremont, California.
Since the FEES package was developed, software routines
N
have been created elsewhere and are available for application
etwork techniques are often used in scheduling projects
to other small projects. Therefore, before selecting or develop-
that contain many interrelated activities. One approach
ing a CPM system, software operable on the potential users'
that has been widely used is the critical path method, in which
hardware should be thoroughly searched.
a network diagram depicts precedence among activities. This
This report describes the critical path method, explains the
method also calculates their starting, float, and finishing
mathematical concepts behind it, and--using the FEES proj-
times to identify critical activities, and it constructs a time
ect as an example--illustrates how a computerized CPM
chart to display possible project schedules.
approach can be applied to a resource management or other
Typically, network techniques have been used in large and
research project.
complex projects consisting of thousands of activities, such as
major construction and engineering projects. In the 1950's, a
critical path technique called PERT (program evaluation and
review technique) was developed by the U.S. Navy for manag-
ing the Fleet Ballistic Missile (Polaris) submarine project.
CPM (critical path method) was developed by the DuPont
CRITICAL PATH METHOD (CPM)
Company and Remington Rand Univac for managing plant
maintenance and construction work.1 Differing--for the
most part-only in the level of importance that probabilistic
concepts have in their use, these mathematical optimization
Translating a project's needs into a mathematical system
techniques are referred to collectively as PERT-CPM or
requires an understanding of general stages within which the
simply CPM.
CPM routines may be applied: planning, scheduling, and
Despite the success of PERT-CPM in hardware-oriented
controlling (more appropriately termed "monitoring" for
programs, its application in resource management problems
research application).
was initially limited (Davis 1968). But as CPM techniques
The greatest advantage of CPM is seen at the planning
were modified and designed to operate on the smaller new
stage. Here the user is required to think through a project
computer systems, they proved useful in smaller projects such
logically and with sufficient detail to establish firm, clear
as design and marketing of new products, maintenance and
project objectives, activities, and specifications. This mini-
shutdown schedules, and research and development pro-
mizes the chance of overlooking necessary activities and goals
grams. Its potential was apparent for scheduling and monitor-
of a project.
ing development of the Fire Economics Evaluation System
In the scheduling stage, CPM provides a realistic and
(FEES). This simulation model is being developed by the
disciplined method for determining how to attain the project
Forest Service's Pacific Southwest Forest and Range Exper-
objectives and for communicating and documenting the proj-
iment Station to relate alternative fire management activities
ect plans clearly and concisely. A time chart is constructed to
to changes in fire management program costs and resource
show the start and finish times for each activity, and the
net values (Mills and Bratten 1982).
amount of leeway or "float" corresponding to each activity's
A survey of more than 30 available computerized CPM
relationship to other activities in the project.
systems from more than 20 software suppliers showed that
The monitoring stage helps to focus management's atten-
most routines had specific applications and were adapted to
tion where it is most needed: on the activities that most
specific computer languages and hardware. None were ideally
constrain the schedule. As activities are completed ahead of
suited nor could be reasonably modified to meet the needs of
or behind schedule, CPM will generate new schedules which
allow for those activities, and as technical or procedural
changes are considered, CPM will indicate the effect these
changes would have on the overall schedule.
1Commercial enterprises are mentioned only for information. No endorse-
In the planning and scheduling phases of CPM analysis,
ment by the U.S. Department of Agriculture is implied.
three basic steps are carried out:
1
Four basic rules guide construction of a network diagram
(Taha 1971):
Rule 1--Each activity is represented by one arrow in the
network.
Rule 2--"Dummy'' activities are created whenever needed to
portray the logic of the relationship between activities. A
dummy activity is depicted as a dotted arrow and represents
an activity which takes no time and uses no resources. It is
needed when a logical relationship between activities cannot
otherwise be represented correctly. For example, suppose
that in a certain project both activities C and D must precede
activity F, and only activity C must precede H:
Figure 1--A network or arrow diagram for a project shows the order in
which activities are to be carried out. Arrows represent activities
Activity Precedences
(capital letters), arrowheads indicate the order of activities, and nodes
F C, D
or points (numbers) denote beginning and end of activities. Circled
numbers are durations of activities in time units.
H C
To represent this situation correctly, one must make use of a
dummy activity. The incorrect and correct representations of
a dummy activity are shown in fig. 2.
1. Constructing a network diagram to depict precedence
Rule 3--No two activities should be identified by the same
among activities
beginning event and by the same end event.
2. Calculating start, finish, and slack or float times
Rule 4--The following questions must be answered as each
3. Constructing a time chart to display results of steps 1
activity is added to the network, to insure the network
and 2.
correctness:
Constructing a Network Diagram
The first step in CPM analysis is constructing a network, or
arrow, diagram that graphically shows the precedence rela-
tionships among project activities, i.e., the order in which
activities are to be carried out. An arrow represents an activ-
ity; arrowheads indicate the order of those activities. A
"node" or point denotes the beginning and end of an activity.
Each node then is labeled and represents an event, defined to
be the completion of all activities leading into that node. In
general, integers represent nodes and capital letters represent
activities.
A network diagram can be constructed given the following
information: a list of all activities involved in a project and,
for each activity, a list of its precedences, i.e., the other
activities that must be completed (immediately) before begin-
ning that particular activity. For example, the network dia-
gram in figure 1 was constructed from the following sample
information (duration is expressed in time units, such as
weeks or months, appropriate for a specific project):
Activity Precedences Duration
A -
2
B -
2
C -
1
D A
4
E B
5
F E
4
G B
8
H C
3 Figure 2--(A) A dummy activity (dashed arrow) correctly represents a
I D
1
relationship between activities that cannot otherwise be logically
J I, F 3
depicted: activities C and D must both precede F, and only activity C
K G,
H 5
must precede H. (B) Incorrect representation of same relationship.
2
• What activities must be completed immediately before
It is conventional to define the project time as the ETE of
this activity can start?
the end event. In this case, the project time is the minimum
• What activities must follow this activity?
amount of time needed to finish the project. Occasionally,
Using these four rules, one can create by hand or by
however, the project manager may choose to redefine the
computer the network diagram associated with a project.
project time by lengthening it.
However, many CPM computer routines do not explicitly
Now let the latest time event i, LTE(i), be the latest possible
create the network diagram. Instead, they store activity dura-
finish time of all activities coming into event i, given that the
tion times as a (vector) list of numbers, and immediate prece-
LTE of the end event is set equal to the project time. Thus,
dences as a Boolean matrix (tables of 0's and l's) and deal
LTE(i) represents the latest time event i may occur, with the
with them algebraically. They are thus able to use the infor-
condition that the project time is still met.
mation that a network diagram provides without actually
Then, knowing the LTE(j) for all events succeeding i, one
plotting it, and thus only make implicit use of the diagram.
may calculate LTE(i) by using the following formula:
LTE(i) = min [LTE(j) - D(i, j)]
Calculating Start and Finish Times
where min (the minimum) is taken over all nodes j for which
(i, j) is a defined activity.
The second step in CPM analysis is calculating start and
For example, in the project in fig. 1, LTE(8) = 15 because it
finish times for activities. Times are calculated using the
is the finish node,
precedence relationships shown in the network diagram and
LTE(6) = min [15 - 5] = 10
their durations. Start and finish times are used to determine
float times associated with each activity. Float times are used
and
to identify critical activities.
LTE(7) = min [ 15 - 3] = 12.
The calculations involve two phases: the "forward pass"
and the "backward pass." The forward pass involves a
The ETE and LTE values for this network are these:
sequence of calculations beginning at the start of the network
and moving forward toward the end of the network. This
Event ETE LTE
phase computes the earliest possible finish time. The back-
0 0 0
ward pass involves a sequence of calculations beginning at the
1 2 7
2 2 2
end of the network and moving backward toward the start of
3 1 7
the network. This phase computes the latest possible finish
4 6 11
time.
5 7 8
Each activity of the network diagram (fig. 1) can be
6 10 10
denoted either by its end nodes (i, j) or activity name (I). Let
7 11 12
the earliest time event i, ETE(i), be the earliest possible start-
8 15 15
ing time of the activities emanating from node i, given that
the ETE of the start event is 0. For the end event, the ETE is
The LTE(i) can thus be calculated by beginning at the end
defined as the earliest possible starting time of an activity
of the network and moving toward the start of the network.
emanating from the final node, if there were such an activity.
These calculations, or an equivalent set of calculations, con-
Let D(i, j) denote the duration of activity (i, j). Note that the
stitute the backward pass.
dummy activities are assigned duration times of 0. Then
Using the results of forward and backward passes, one
knowing the ETE(i) for all events preceding event j, one may
completes the basic CPM calculations by using early and late
calculate ETE(j) with
times for events to determine the allowable start, finish, and
ETE(j) = max [ETE(i) + D(i, j)]
float times for individual activities.
where max (the maximum) is taken overall nodes i for which
We must define several terms. Let ES(i, j) denote the
(i, j) is a defined activity.
earliest possible starting time for activity (i, j) and let LS (i, j)
For example, in the project in fig. 1, ETE(0) = 0 because it is
denote the latest possible starting time. Let EF (i, j) denote the
the start node,
earliest possible finish time for activity (i, j) and let LF (i, j)
denote the latest possible finish times. By convention,
ETE(2) = max [0 + 2] = 2, ETE(3) = max [0 + 1] = 1
ES(i, j) = 0 for any activity (i, j) that has no precedences, and
and
LF(i, j) = project time for any activity (i, j) that has no
successors.
ETE(6) = max [ 1 + 3, 2 + 8] = 10.
Now ES(i, j) = ETE(i) because the activity (i, j) may begin
The ETE(i) can thus be calculated by beginning at the start
as soon as all of its precedences are completed, i.e., as soon as
of the network and moving toward the end of the network.
event i occurs, and LF(i, j) = LTE(j) because the activity (i, j)
These calculations, or an equivalent set of calculations, con-
must finish before event j occurs. The EF(i, j) and LS(i, j) are
stitute the forward pass.
then easy to calculate:
3
any preceding activity. Speeding up does not mean shortening
Table l--Earliest start (ES), earliest finish (EF),
latest start (LS), and latest finish (LF), for the
the activity duration, but rather means beginning work on
sample project (fig. 1)
that activity before it was initially scheduled to begin. That is,
Activity ES EF LS
LF
SF(i, j) = LTE(j) - LTE(i) - D(i, j) = LS(i, j) - LTE(i)
A
0 2 5 7
B
0 2 0 2
In such a schedule, the total float is also the maximum
C
0 1 6 7
amount of speeding up allowed in the performance of the
D
2 6 7 Il
activity, possibly speeding up preceding activities as well, but
E
2 7 3 8
such that the project does not start before time 0.
F
7 11 8
12
G
2 10 2 10
Independent float (IF)--The independent float of activity
H
1 4 7 10
(i, j) is the amount of slack (if any) available in the scheduling
I
6 7 11
12
of the activity, assuming that the activities preceding it occur
J
11 14 12
15
as late as possible and that those succeeding it occur as early
K
10 15 10 15
as possible. That is,
IF(i, j) = max [0, ETE(j) - LTE(i) - D(i, j)]
Calculating float times completes the basic CPM calcu-
EF(i, j) = ES(i, j) + D(i, j) = ETE(i) + D(i, j)
lations.
LS(i, j) = LF(i, j) - D(i, j) = LTE(j) - D(i, j)
For every activity
TF ≥ FF ≥ IF ≥ 0
Table 1 shows the ES, EF, LS, LF times for the project in fig.
1. Four floats are associated with each activity: total float, free
and
float, safety float, and independent float (table 2).
TF ≥ SF ≥ IF ≥ 0
Total float (TF)--Given a schedule in which each activity is
initially slated to start as early as possible, the total float of
activity (i, j) is the maximum amount of delay allowed in
In general, no conclusions can be drawn about the relation-
performing it, possibly delaying succeeding activities as well,
ship between FF and SF (table 2).
but such that the project time will not be affected. That is,
An activity for which total float is minimal, over all activi-
TF(i, j) = LTE(j) - ETE(i) - D(i, j) = LS(i, j) - ES(i, j)
ties, is said to be critical. In the normal case, where the project
time is chosen as the earliest possible finish time of the project,
Free float (FF)--Given a schedule as that above, the free
such an activity has zero total float and no delay or speeding
float of activity (i, j) is the maximum amount of delay allowed
up is allowed in the performance of that activity. All other
in the performance of the activity without affecting any suc-
activities are noncritical. A critical path through the network
ceeding activity. That is,
diagram consists entirely of critical activities. There will
FF(i, j) = ETE(j) - ETE(i) - D(i, j) = ETE(j) - EF(i, j)
always be at least one critical path in the network. Critical
activities must be identified because they are the activities for
Safety float (SF)--Given a schedule in which each activity
which the greatest effort should be made to stay on schedule;
is initially scheduled to start as late as possible, the safety float
any delay in one of them will delay project completion.
of activity (i, j) is the maximum amount of "speeding up"
allowed in the performance of the activity without affecting
Table 2--Total float (TF), free float (FF), safety
Constructing a Time Chart
float (SF), and independent float (IF), for the
sample project (fig. 1)
The third step in CPM analysis is constructing a time chart
that displays, in a useful manner, start and finish times for
Activity TF FF SF IF
each activity and the floats associated with each activity. Also,
A 5 0 5 0
the chart may show the relationship of each activity to other
B 0 0 0 0
activities in the project.
C 6 0 6 0
Because many of the activities of a project have favorable
D 5 0 0 0
total float, many time charts could represent a possible proj-
E 1 0 1 0
ect schedule. A schedule is possible in the sense that, if availa-
F l 0 0 0
ble resources are unlimited, the project could be completed at
G 0 0 0 0
H 6 6 0 0
the scheduled time. The two extremes are the schedule in
1 5 4 0 0
which every activity starts as early as possible (fig. 3a) and the
J 1 1 0 0
schedule in which every activity starts as late as possible (fig.
K 0 0 0 0
3b).
4
Resource Analysis
Resource analysis refers to a body of techniques used to find a
schedule in which the resource allocation of the project is in some
sense good, such as being feasible and somewhat constant.
For example, the project in figure 1 requires the use of two
resources, A and B, and each activity of the project requires the
following amounts of the resources:
Activity
Units of Resource A
Units of Resource B
A 3
0
B 6
0
C 3
0
D 0
2
E 0
2
F 2
0
G 4
4
H 5
0
I 4
0
J 0
5
K 2
0
Figure 3--Time charts represent possible project schedules for the
sample project (fig. 1). (A) Schedule in which each activity will start as
early as possible. (B) Schedule in which each activity will start as late
as possible.
METHODS OF SCHEDULE
SELECTION
The task of choosing between different possible schedules
Figure 4--Amounts of resources required to complete the sample
is ultimately left to the project manager. However, methods of
project (fig. 1) under the early start schedule (fig. 3a) fluctuate
analysis were designed to aid in making this decision. Two of
between time periods.
these are resource analysis and cost analysis.
5
The total amounts of resources needed for each time period of
the project under the early start schedule of table 1 would be
as shown in figure 4.
If, at most, 10 units of resource A are available at any given
time, then this schedule is of no use. On the other hand, if
sufficient resources are available for this schedule, it still may
not be desirable because of the large quantities of resources
needed during some time periods. A better schedule would be
one in which the amounts of resources needed are somewhat
level, for then the overhead costs of obtaining varied amounts
of resources are low. A better schedule would be that shown in
figure 5, from which the amounts of resources needed are
relatively level over time (fig. 6).
There is no natural or agreed-upon measure of optimality
for resource schedules, and no known resource analysis tech-
nique will yield the best schedule because of the mathematical
complexity involved. However, many heuristic routines find
good schedules and are often used. A computer can be used to
generate schedules between the early start (fig. 3a) and late
start schedules (fig. 3b) to find a schedule (fig. 5) in which
resource levels are relatively constant (fig. 6).
Cost Analysis
Figure 5--A schedule may not be desirable if it requires large quanti-
To further analyze possible schedules for a project, the
ties of resources during some time periods.
project manager may use cost analysis. Cost analysis is the
study of time-cost tradeoffs and of the corresponding possible
schedules for a project, and is aimed at finding a project
schedule for which the overall project cost is acceptable. The
duration of many activities in a project may be shortened by
adding more resources to the performance of the activity.
That is, a time-cost tradeoff exists for many activities. Increas-
ing the resources (and therefore the cost) spent on a few
activities may decrease the time required to finish the project
sooner and thereby reduce the overall cost of the project.
Techniques of cost analysis differ, but for some projects none
are feasible due to the complexities of time-cost calculations
and indirect project costs.
FIRE ECONOMICS EVALUATION
SYSTEM
The following broad subjective requirements were
established to guide development of the CPM system for the
FEES project:
• Ability to display selected activities of a small-to-
medium project in a time-phased, event-keyed mode,
• Means of tracking interrelationships between project
activities to provide information, such as the total slip in the
project schedule resulting from a change in schedule of one
Figure 6--A schedule in which resource requirements are relatively
activity or the change in the schedule of all activities caused by
level overtime is desired, because overhead costs of obtaining varied
amounts of resources will be low.
a change in schedule of one activity,
6
LEVEL allows further improvement of effort levels by
altering any of the three schedules produced by CPM, one
activity at a time;
PLOT graphically produces high quality bar charts of any
chosen project schedule with full labeling, float and prece-
dence indicators, and other aids to project management.
These programs are run in their natural order (fig. 7). For a
new project, INPUT is used first to create the set of data.
CPM may then operate directly on this data set, or EDIT may
be used to modify the data before CPM is run. The output of
CPM consists of three basic schedules and the labor require-
ments implied by each. PLOT may then be called to draw the
bar chart for any of these schedules, or LEVEL may be used
to create modified schedules before PLOT is asked to draw
any of them. For projects with data sets that have been
created previously, one may begin directly with EDIT or
CPM and proceed as above. For projects with data sets that
have been processed by CPM, one may begin directly with
LEVEL or PLOT.
Comparing Schedules
The CPM package analyzed an example data set describ-
ing 47 activities for the FEES project (table 3) and initially
produced three schedules:
Figure 7--The computer programs (INPUT, EDIT, CPM, LEVEL,
PLOT) in the routine developed for the Fire Economics Evaluation
• Early start, in which each activity begins at its earliest
System are run in a natural order.
possible time;
• Late start, in which each activity begins at its latest
• Features such as operational flexibility and ease of
possible time; and
update as a high priority.
• Automatic, in which the computer checks many ran-
The hardware available required that procedures devel-
domly generated schedules and automatically selects one with
oped had to run on an IBM 370 computer, accessed either
the lowest sum of squares of the effort levels. (This is one
through a DATA 100 card system or through a PRIME
reasonable measure of the "levelness" of the resource require-
computer driven from interactive terminals. In reality, the
ments of a schedule. A lower sum of squares indicates a more
PRIME computer served only as a front-end component to
level schedule; constant effort levels produce a minimum sum
the IBM 370, similar to the DATA 100 card system. A30-inch
of squares.)
CALCOMP Plotter could be accessed through the IBM 370
The automatic and late schedules were similar in form, and
if plotted graphics output of the schedules generated was
both appeared more level than the early schedule. However,
desired. The program was also to be written in FORTRAN.
the late schedule appeared to offer the greatest choice of
These constraints caused some difficulty in developing the
moves to decrease high effort levels (tables 4, 5--table 5 is on
CPM computer package. An additional complicating factor
page 12). The LEVEL program was then used to alter the late
was that the package would be developed on the IBM 4341
start schedule, one activity at a time, until a fourth schedule
computer at Pomona College and then transferred to the
with more balanced levels of effort was reached. This is the
Forest Service's Forest Fire Laboratory at Riverside for final
optimized schedule (tables 6, 7).
installation and checkout.
Eleven activities were identified as critical to the FEES
The CPM package that was developed consisted of five
project:
major interconnected components: INPUT, EDIT, CPM,
LEVEL, and PLOT
INPUT allows for entering into the computer all data
CXXX
Develop Initial Attack Module
necessary for the CPM analysis of a project;
FXXX
Check Out Initial Attack Module
EDIT allows for changing the data in any way, without
GXXX
Develop Fire Behavior Module
IIXX
Document Final Probability Model
unnecessarily repeating unchanged data;
KKXX
Document Final Fire Behavior Model
CPM performs all CPM calculations on the data (forward
MMXX
Document Final Fire Behavior Module
pass, backward pass, calculation of float times, and identifica-
OOXX
Document Final Cost Model
tion of critical activities), and produces complete information
QQXX
Document Final Fire Effects Model
on three different schedules: early start, late start, and a third
SSXX
Develop Large Fire Gaming Process
schedule with effort levels improved by an automatic leveling
TTXX
Conduct Large Fire Gaming Exercises
routine;
UUXX
Prepare Final User Documentation
7
Add New Comment