6.4 Construction Project Management, CPM/PERT, and Resource Scheduling

Key Takeaways

  • The Critical Path Method (CPM) establishes the deterministic minimum project duration along the critical path where Total Float is zero (TF=0TF = 0), where TF=LS−ES=LF−EFTF = LS - ES = LF - EF.

  • Free Float (FF=ESsucc−EFFF = ES_{\text{succ}} - EF) represents the slack an activity can absorb without delaying the early start of any immediate successor activity, satisfying the invariant FF≤TFFF \le TF.

  • The Program Evaluation and Review Technique (PERT) models duration uncertainty using a Beta distribution with expected duration te=a+4m+b6t_e = \frac{a + 4m + b}{6} and variance σ2=(b−a6)2\sigma^2 = \left(\frac{b - a}{6}\right)^2.

  • Total project variance is the sum of variances of activities along the critical path (σproj2=∑σcrit2\sigma_{\text{proj}}^2 = \sum \sigma_{\text{crit}}^2), allowing probabilistic project completion scheduling using standard normal ZZ-scores (Z=Td−TeσprojZ = \frac{T_d - T_e}{\sigma_{\text{proj}}}).

  • Project crashing compresses project duration by accelerating critical path activities in order of ascending cost-slope (Cost Slope=Crash Cost−Normal CostNormal Time−Crash Time\text{Cost Slope} = \frac{\text{Crash Cost} - \text{Normal Cost}}{\text{Normal Time} - \text{Crash Time}}) to achieve target schedules at minimum direct cost.

Last updated: October 2026

6.4 Construction Project Management, CPM/PERT, and Resource Scheduling

Project planning, scheduling, and control represent pivotal competencies assessed in the CELE Applied Mathematics and Construction cluster. Construction projects are complex, capital-intensive endeavors subject to strict contractual deadlines, financial liquidated damages, and resource constraints. Civil engineers utilize Critical Path Method (CPM) and Program Evaluation and Review Technique (PERT) network models to establish baseline project schedules, optimize equipment and labor allocations, manage risk, and execute schedule compression (crashing) at minimum additional cost.


Project Planning & Work Breakdown Structure (WBS)

A successful project begins with structured decomposition. The Work Breakdown Structure (WBS) is a deliverable-oriented hierarchical decomposition of the total project scope into manageable, measurable work packages:

  • Level 1: Total Project (e.g., Multi-Storey Reinforced Concrete Hospital Facility)
  • Level 2: Major Subprojects / Deliverables (e.g., Substructure, Superstructure, MEPFS, Architectural Finishes)
  • Level 3: Work Packages (e.g., Pile Cap Foundation, Ground Floor Suspended Slab, Column Pours)
  • Level 4: Field Activities (e.g., Formwork Erection, Rebar Tying, Concrete Pouring, Curing)

Each terminal activity in the WBS must have an assigned duration, quantifiable resource demand (crew, equipment, materials), predecessor relationships, and a responsible engineering supervisor.


Network Scheduling Logic: AOA vs AON

Two fundamental network diagramming conventions model activity dependencies:

  1. Activity-on-Arrow (AOA) / Arrow Diagramming Method (ADM):
    • Arrows represent activities with defined durations.
    • Nodes (circles) represent discrete points in time (events or milestones).
    • Dummy Activities: Dashed arrows with zero duration and zero resource demand introduced strictly to maintain logical dependencies or prevent two activities from sharing identical starting and ending nodes.
  2. Activity-on-Node (AON) / Precedence Diagramming Method (PDM):
    • Nodes (boxes) represent activities.
    • Arrows represent precedence relationships.
    • Precedence types: Finish-to-Start (FS) (standard), Start-to-Start (SS), Finish-to-Finish (FF), and Start-to-Finish (SF), optionally modified by positive leads or negative lags.

The Critical Path Method (CPM): Forward & Backward Pass

CPM is a deterministic scheduling algorithm that computes project duration and activity float values through two consecutive mathematical sweeps:

1. The Forward Pass (Early Dates)

The forward pass moves chronologically from project initiation to completion, determining the earliest possible time each activity can start and finish:

  • Early Start (ESES): The earliest time an activity can commence, governed by the completion of all immediate predecessors: ESj=max⁡{EFi}for all predecessors iES_j = \max \{ EF_i \} \quad \text{for all predecessors } i (For initial project activities with no predecessors, ES=0ES = 0.)
  • Early Finish (EFEF): The earliest time an activity can finish: EFj=ESj+DjEF_j = ES_j + D_j Where DjD_j is the activity duration.

2. The Backward Pass (Late Dates)

The backward pass moves counter-chronologically from project completion back to the start, establishing the latest allowable time each activity can finish and start without delaying the overall project completion target (Ttarget=max⁡EFT_{\text{target}} = \max EF):

  • Late Finish (LFLF): The latest time an activity can finish without delaying any immediate successor: LFi=min⁡{LSj}for all successors jLF_i = \min \{ LS_j \} \quad \text{for all successors } j (For terminal activities, LF=EFprojectLF = EF_{\text{project}}.)
  • Late Start (LSLS): The latest time an activity can start without delaying project completion: LSi=LFi−DiLS_i = LF_i - D_i

Mathematical Float / Slack Analysis

Float represents the scheduling flexibility of an activity. CELE board problems test four distinct mathematical classifications of float:

1. Total Float (TFTF)

Total Float is the total time an activity can be delayed from its Early Start without delaying the overall project completion deadline:

TF=LS−ES=LF−EFTF = LS - ES = LF - EF

2. Free Float (FFFF)

Free Float is the time an activity can be delayed without delaying the Early Start of any immediately succeeding activity:

FFi=min⁡j∈succ{ESj}−EFiFF_i = \min_{j \in \text{succ}} \{ ES_j \} - EF_i

Note

Free Float can never exceed Total Float (FF≤TFFF \le TF). If an activity has zero Total Float (TF=0TF = 0), its Free Float must also be zero (FF=0FF = 0).

3. Interfering Float (IntFIntF)

Interfering Float is the difference between Total Float and Free Float. It represents the portion of Total Float whose consumption will delay the early start of subsequent activities without delaying overall project completion:

IntF=TF−FFIntF = TF - FF

4. Independent Float (IFIF)

Independent Float is the slack available when all predecessors finish at their latest dates (LFLF) and all successors start at their earliest dates (ESES):

IFi=max⁡(0,min⁡j∈succ{ESj}−max⁡k∈pred{LFk}−Di)IF_i = \max \left( 0, \min_{j \in \text{succ}} \{ ES_j \} - \max_{k \in \text{pred}} \{ LF_k \} - D_i \right)

Identification of the Critical Path

The Critical Path is the continuous sequence of connected activities through the network with zero Total Float (TF=0TF = 0). It is the longest path in terms of cumulative duration and dictates the absolute minimum time required to complete the project.


Program Evaluation and Review Technique (PERT)

Unlike deterministic CPM, PERT accounts for uncertainty in activity durations (e.g., severe weather, subsurface anomalies, supply chain delays) by modeling each task via a Beta probability distribution defined by three subjective time estimates:

  1. Optimistic Time (aa): The minimum possible duration assuming everything proceeds exceptionally well (1 in 100 probability of finishing faster).
  2. Most Likely Time (mm): The modal duration representing the most frequent duration under normal working conditions.
  3. Pessimistic Time (bb): The maximum duration assuming adverse conditions encounter continuous difficulties (1 in 100 probability of finishing slower).

1. PERT Expected Mean Duration (tet_e)

The expected mean duration is a weighted average that assigns four times greater statistical weight to the modal value mm:

te=a+4m+b6t_e = \frac{a + 4m + b}{6}

2. Activity Variance (σ2\sigma^2) and Standard Deviation (σ\sigma)

Assuming the range (b−a)(b - a) spans approximately six standard deviations (6σ6\sigma) of the unimodal Beta distribution:

σ=b−a6\sigma = \frac{b - a}{6} σ2=(b−a6)2=(b−a)236\sigma^2 = \left( \frac{b - a}{6} \right)^2 = \frac{(b - a)^2}{36}

3. Total Project Variance & Central Limit Theorem

By the Central Limit Theorem, the sum of independent random variables along the critical path converges to a Normal Distribution, regardless of the underlying activity distributions:

  • Expected Project Completion Time (TeT_e): Te=∑i∈criticalte,iT_e = \sum_{i \in \text{critical}} t_{e,i}
  • Total Project Variance (σproj2\sigma_{\text{proj}}^2): σproj2=∑i∈criticalσi2\sigma_{\text{proj}}^2 = \sum_{i \in \text{critical}} \sigma_i^2
  • Project Standard Deviation (σproj\sigma_{\text{proj}}): σproj=∑i∈criticalσi2\sigma_{\text{proj}} = \sqrt{\sum_{i \in \text{critical}} \sigma_i^2}

Warning

Never sum standard deviations directly! You must sum the individual activity variances along the critical path and then take the square root of that sum to find σproj\sigma_{\text{proj}}.

4. Probability of Meeting a Target Completion Date (TdT_d)

The probability of completing the project on or before a specified contract deadline TdT_d is evaluated using the standard normal distribution ZZ-score:

Z=Td−TeσprojZ = \frac{T_d - T_e}{\sigma_{\text{proj}}}

Standard Normal ZZ-ScoreCumulative Probability P(z≤Z)P(z \le Z)Practical Interpretation
Z=−2.00Z = -2.002.28%2.28\%Severe schedule overrun risk
Z=−1.00Z = -1.0015.87%15.87\%High probability of late finish
Z=0.00Z = 0.0050.00%50.00\%Td=TeT_d = T_e; exactly an even chance
Z=+1.00Z = +1.0084.13%84.13\%Standard contract safety buffer
Z=+1.645Z = +1.64595.00%95.00\%High-confidence delivery milestone
Z=+2.00Z = +2.0097.72%97.72\%Near-certain on-time project completion

Project Crashing & Cost-Slope Optimization

Project Crashing is the method of shortening project duration by allocating additional labor, equipment, or premium overtime to critical activities at minimum incremental direct cost.

Cost Slope Formulation

Each activity possesses a normal operating state and a crashed operating state:

  • Normal Duration (NDN_D) and Normal Cost (NCN_C)
  • Crash Duration (CDC_D) and Crash Cost (CCC_C)

The cost slope represents the marginal cost incurred to accelerate an activity by one unit of time (e.g., PHP per day):

Cost Slope=Crash Cost−Normal CostNormal Duration−Crash Duration=ΔCΔD\text{Cost Slope} = \frac{\text{Crash Cost} - \text{Normal Cost}}{\text{Normal Duration} - \text{Crash Duration}} = \frac{\Delta C}{\Delta D}

Crashing Algorithm Protocol

  1. Identify the critical path(s) using normal durations.
  2. Crash only critical path activities. Shortening non-critical activities increases cost without accelerating the project schedule.
  3. Among eligible critical activities, select the activity with the lowest cost slope.
  4. Shorten that activity up to its maximum crash limit (ND−CDN_D - C_D) or until a parallel path becomes critical.
  5. When multiple paths become critical simultaneously, shorten activities in parallel across all critical paths or accelerate an activity shared by all critical paths.
  6. Continue until the target duration is achieved or all critical activities reach their crash limits.

Step-by-Step Worked Problem Examples

Worked Example 1: Deterministic CPM Forward/Backward Pass

Problem: A reinforced concrete bridge pier construction package involves six activities with the following dependencies and durations:

ActivityDescriptionPredecessorDuration (Days)
AExcavation & CofferdamNone5
BDriven Steel PilingA8
CDewatering & Subgrade SealA4
DPile Cap Rebar & ConcreteB6
ECofferdam Bracing & GroutingC5
FPier Shaft Formwork & PourD, E7

Perform complete CPM forward and backward passes. Identify all early/late dates, floats, the critical path, and total project duration.

Solution:

  1. Forward Pass (ES,EFES, EF):
    • Activity A: ES=0,  EF=0+5=5ES = 0, \; EF = 0 + 5 = 5
    • Activity B: ES=5,  EF=5+8=13ES = 5, \; EF = 5 + 8 = 13
    • Activity C: ES=5,  EF=5+4=9ES = 5, \; EF = 5 + 4 = 9
    • Activity D: ES=13,  EF=13+6=19ES = 13, \; EF = 13 + 6 = 19
    • Activity E: ES=9,  EF=9+5=14ES = 9, \; EF = 9 + 5 = 14
    • Activity F: ES=max⁡(EFD,EFE)=max⁡(19,14)=19,  EF=19+7=26ES = \max(EF_D, EF_E) = \max(19, 14) = 19, \; EF = 19 + 7 = 26 Project Duration = 26 Days.
  2. Backward Pass (LF,LSLF, LS) with LFF=26LF_F = 26:
    • Activity F: LF=26,  LS=26−7=19LF = 26, \; LS = 26 - 7 = 19
    • Activity D: LF=LSF=19,  LS=19−6=13LF = LS_F = 19, \; LS = 19 - 6 = 13
    • Activity E: LF=LSF=19,  LS=19−5=14LF = LS_F = 19, \; LS = 19 - 5 = 14
    • Activity B: LF=LSD=13,  LS=13−8=5LF = LS_D = 13, \; LS = 13 - 8 = 5
    • Activity C: LF=LSE=14,  LS=14−4=10LF = LS_E = 14, \; LS = 14 - 4 = 10
    • Activity A: LF=min⁡(LSB,LSC)=min⁡(5,10)=5,  LS=5−5=0LF = \min(LS_B, LS_C) = \min(5, 10) = 5, \; LS = 5 - 5 = 0
  3. Float Computations:
ActDurESEFLSLFTotal Float (LS−ESLS - ES)Free Float (ESsucc−EFES_{\text{succ}} - EF)Critical?
A505050min⁡(5,5)−5=0\min(5, 5) - 5 = 0Yes
B8513513013−13=013 - 13 = 0Yes
C459101459−9=09 - 9 = 0No
D613191319019−19=019 - 19 = 0Yes
E59141419519−14=519 - 14 = 5No
F719261926026−26=026 - 26 = 0Yes
  • Critical Path: A — B — D — F (Total duration = 26 Days).
  • Note that Activity C has TF=5 daysTF = 5\text{ days}, but FF=0 daysFF = 0\text{ days} because delaying C immediately delays the early start of its successor E.

Worked Example 2: PERT Probabilistic Duration & Project Crashing

Problem: A critical path comprises three sequential activities with the following duration and cost parameters:

Critical Activityaa (days)mm (days)bb (days)Normal Cost (PHP)Crash Dur (CDC_D)Crash Cost (PHP)
15817120,0006 days160,000
281120180,0009 days240,000
3471090,0005 days130,000
  1. Calculate expected project duration TeT_e, project variance σproj2\sigma_{\text{proj}}^2, and standard deviation σproj\sigma_{\text{proj}}.
  2. Determine the probability of completing the project within a contract deadline of Td=30.0 daysT_d = 30.0\text{ days}.
  3. Determine the minimum direct cost to crash the project by 2 days.

Solution:

  1. PERT Expected Durations & Variances:
    • Activity 1: te,1=5+4(8)+176=546=9.0 dayst_{e,1} = \frac{5 + 4(8) + 17}{6} = \frac{54}{6} = 9.0\text{ days}, σ1=17−56=2.0 days\sigma_1 = \frac{17 - 5}{6} = 2.0\text{ days}, σ12=4.0 days2\sigma_1^2 = 4.0\text{ days}^2.
    • Activity 2: te,2=8+4(11)+206=726=12.0 dayst_{e,2} = \frac{8 + 4(11) + 20}{6} = \frac{72}{6} = 12.0\text{ days}, σ2=20−86=2.0 days\sigma_2 = \frac{20 - 8}{6} = 2.0\text{ days}, σ22=4.0 days2\sigma_2^2 = 4.0\text{ days}^2.
    • Activity 3: te,3=4+4(7)+106=426=7.0 dayst_{e,3} = \frac{4 + 4(7) + 10}{6} = \frac{42}{6} = 7.0\text{ days}, σ3=10−46=1.0 day\sigma_3 = \frac{10 - 4}{6} = 1.0\text{ day}, σ32=1.0 days2\sigma_3^2 = 1.0\text{ days}^2.
    • Expected Total Duration: Te=9.0+12.0+7.0=28.0 daysT_e = 9.0 + 12.0 + 7.0 = 28.0\text{ days}.
    • Project Variance: σproj2=4.0+4.0+1.0=9.0 days2\sigma_{\text{proj}}^2 = 4.0 + 4.0 + 1.0 = 9.0\text{ days}^2.
    • Project Standard Deviation: σproj=9.0=3.0 days\sigma_{\text{proj}} = \sqrt{9.0} = 3.0\text{ days}.
  2. Probability of Finishing within Td=30.0 daysT_d = 30.0\text{ days}: Z=Td−Teσproj=30.0−28.03.0=2.03.0=+0.67Z = \frac{T_d - T_e}{\sigma_{\text{proj}}} = \frac{30.0 - 28.0}{3.0} = \frac{2.0}{3.0} = +0.67 From the standard normal cumulative table, P(Z≤+0.67)≈0.7486=74.86%P(Z \le +0.67) \approx 0.7486 = 74.86\%.
  3. Project Crashing for 2-Day Reduction: Calculate cost slope for each critical activity:
    • Activity 1: Slope=160,000−120,0009−6=40,0003=13,333.33 PHP/day\text{Slope} = \frac{160,000 - 120,000}{9 - 6} = \frac{40,000}{3} = 13,333.33\text{ PHP/day} (can crash 3 days).
    • Activity 2: Slope=240,000−180,00012−9=60,0003=20,000.00 PHP/day\text{Slope} = \frac{240,000 - 180,000}{12 - 9} = \frac{60,000}{3} = 20,000.00\text{ PHP/day} (can crash 3 days).
    • Activity 3: Slope=130,000−90,0007−5=40,0002=20,000.00 PHP/day\text{Slope} = \frac{130,000 - 90,000}{7 - 5} = \frac{40,000}{2} = 20,000.00\text{ PHP/day} (can crash 2 days).
    • Activity 1 has the lowest cost slope (13,333.33 PHP/day13,333.33\text{ PHP/day}). Crash Activity 1 by 2 days.
    • Incremental Crash Cost: 2×13,333.33=26,666.67 PHP2 \times 13,333.33 = 26,666.67\text{ PHP}.
    • Total Direct Project Cost: (120,000+180,000+90,000)+26,666.67=416,666.67 PHP(120,000 + 180,000 + 90,000) + 26,666.67 = 416,666.67\text{ PHP}.

CELE Board Exam Traps & Strategic Checklists

Warning

Standard Deviation Summation Trap: Never calculate project standard deviation as ∑σi\sum \sigma_i. You must compute σproj=∑σi2\sigma_{\text{proj}} = \sqrt{\sum \sigma_i^2}. For Worked Example 2, ∑σi=2+2+1=5.0 days\sum \sigma_i = 2 + 2 + 1 = 5.0\text{ days}, which is radically incorrect compared to the true value 9.0=3.0 days\sqrt{9.0} = 3.0\text{ days}.

Crashing Non-Critical Tasks: An activity that possesses float does not govern project duration. Crashing a non-critical activity spends money with zero reduction in project completion time.

Free Float vs Total Float Confusion: Total Float is computed against the Late Start/Finish of the activity itself (LS−ESLS - ES or LF−EFLF - EF). Free Float is computed against the Early Start of the successor (min⁡ESsucc−EF\min ES_{\text{succ}} - EF).

Loading diagram...
CPM Forward and Backward Pass Computational Workflow
Test Your Knowledge

In a construction precedence network, Activity K has a duration of 8 days. Its immediate predecessor has an Early Finish of Day 14. The immediate successor of Activity K has an Early Start of Day 25 and a Late Start of Day 28. If the Late Finish of Activity K is Day 28, what are the Total Float (TF) and Free Float (FF) of Activity K?

A

TF = 4 days, FF = 2 days

B

TF = 6 days, FF = 6 days

C

TF = 3 days, FF = 0 days

D

TF = 6 days, FF = 3 days

Test Your Knowledge

A PERT critical path consists of four independent tasks with the following (optimistic, most likely, pessimistic) time estimates in days: Task A (2, 5, 8), Task B (4, 10, 16), Task C (4, 7, 10), and Task D (1, 4, 7). What are the expected project duration (T_e) and project standard deviation (σ_proj)?

A

T_e = 26.0 days and σ_proj = 7.0 days

B

T_e = 26.0 days and σ_proj = 2.65 days

C

T_e = 25.0 days and σ_proj = 2.65 days

D

T_e = 26.0 days and σ_proj = 5.0 days

Test Your Knowledge

A critical activity on a high-rise construction project has a normal duration of 14 days with a normal direct cost of PHP 240,000, and a crash duration of 10 days with a crash direct cost of PHP 360,000. What is the cost-slope of this critical activity, and what is the additional direct cost incurred if the activity is crashed by exactly 3 days?

A

Cost-Slope = PHP 30,000/day; Additional Cost = PHP 90,000

B

Cost-Slope = PHP 25,714/day; Additional Cost = PHP 77,143

C

Cost-Slope = PHP 40,000/day; Additional Cost = PHP 120,000

D

Cost-Slope = PHP 30,000/day; Additional Cost = PHP 60,000

Sections you finish are checked off in the contents.