Appearance
关键路径专题:网络图、时差与工期压缩
本页导读:关键路径法(CPM)是案例计算的第二大考点,常与赶工、资源平衡组合出题,也常和 PERT 合并成一道大题。本页讲清楚:怎么画/读单代号网络图(AON)、正推逆推怎么走、总时差与自由时差的区别、怎么判定关键路径,以及赶工与资源平衡怎么算。配 2 道自编例题,其中例题 1 是完整网络图推演(每个数字逐步算给你看)。
一、网络图基础:节点与逻辑
软考高项默认使用单代号网络图(AON,节点表示活动):
活动名/历时 ES | 历时 | EF
┌─────┐
│ A │ 节点七格图(考试手画简图即可)
└─────┘ LS | TF | LF- 紧前活动:必须先完成才能开始本活动的活动;
- 汇聚点(多个紧前 → 本活动,如 F):正推时取紧前 EF 的最大值;
- 分支点(本活动 → 多个紧后,如 A):逆推时取紧后 LS 的最小值。
本页约定:时间坐标从第 0 天起算(ES 表示"最早在第几天末开始"),教材两种约定(0 起算/1 起算)结论一致,考试时按题目口径并在答卷上注明即可。
二、四步推演法
第 1 步:正推求 ES、EF(从左到右)
- 起点活动:ES = 0;
- 其他活动:ES = 所有紧前活动 EF 的最大值;
- EF = ES + 历时(D)。
口诀:正推取大。
第 2 步:逆推求 LS、LF(从右到左)
- 终点活动:LF = 总工期(= 终点 EF);
- 其他活动:LF = 所有紧后活动 LS 的最小值;
- LS = LF − D。
口诀:逆推取小。
第 3 步:算时差
- 总时差 TF = LS − ES = LF − EF:本活动最多可推迟多久而不影响总工期;
- 自由时差 FF = min(紧后活动的 ES) − 本活动 EF:不影响任一紧后活动最早开始的推迟量。
要点:FF ≤ TF 恒成立。TF=0 的活动是关键活动,关键活动连成的最长路径即关键路径;关键路径上 FF 也必为 0(终点活动 TF=FF)。
第 4 步:连线判关键路径
关键路径 = 从起点到终点耗时最长的路径,决定总工期;可能不止一条。非关键路径与关键路径的历时差,等于其上活动总时差的最大可用空间。
三、例题 1(自编模拟题):完整网络图推演
本题为自编模拟题。项目由 6 个活动组成,逻辑与历时如下:
| 活动 | 紧前 | 历时 D(天) |
|---|---|---|
| A | — | 3 |
| B | A | 5 |
| C | A | 4 |
| D | B | 6 |
| E | C | 5 |
| F | D、E | 2 |
问题:(1) 绘制网络图并计算各活动 ES/EF/LS/LF/TF;(2) 找出关键路径与总工期;(3) 说明 C 活动的总时差与自由时差各是多少,含义是什么。
解析:
先列路径枚举(双保险法):
- 路径1:A→B→D→F = 3+5+6+2 = 16 天
- 路径2:A→C→E→F = 3+4+5+2 = 14 天
最长 16 天 → 预判关键路径为 A-B-D-F,下面用推演验证。
第 1 步:正推(ES、EF)
- A:ES=0,EF=0+3=3
- B(紧前 A):ES=EF_A=3,EF=3+5=8
- C(紧前 A):ES=3,EF=3+4=7
- D(紧前 B):ES=8,EF=8+6=14
- E(紧前 C):ES=7,EF=7+5=12
- F(紧前 D、E):ES=max(EF_D, EF_E)=max(14,12)=14(取大),EF=14+2=16
第 2 步:逆推(LF、LS),总工期=EF_F=16
- F:LF=16,LS=16−2=14
- D(紧后 F):LF=LS_F=14,LS=14−6=8
- E(紧后 F):LF=14,LS=14−5=9
- B(紧后 D):LF=LS_D=8,LS=8−5=3
- C(紧后 E):LF=LS_E=9,LS=9−4=5
- A(紧后 B、C):LF=min(LS_B, LS_C)=min(3,5)=3(取小),LS=3−3=0
第 3 步:时差汇总表
| 活动 | ES | EF | LS | LF | TF=LS−ES |
|---|---|---|---|---|---|
| A | 0 | 3 | 0 | 3 | 0 ★ |
| B | 3 | 8 | 3 | 8 | 0 ★ |
| C | 3 | 7 | 5 | 9 | 4 |
| D | 8 | 14 | 8 | 14 | 0 ★ |
| E | 7 | 12 | 9 | 14 | 2 |
| F | 14 | 16 | 14 | 16 | 0 ★ |
第 4 步:结论
- 关键路径:A→B→D→F,总工期 16 天(与路径枚举一致 ✔)。
- C 的 TF=4:C 最多可晚开始 4 天而不影响总工期;C 的 FF=ES_E−EF_C=7−7=0:C 只要晚 1 天,就会推迟紧后活动 E 的最早开始(虽不影响总工期)。
- 本题完美示范"FF=0 但 TF>0"——考试常考这对概念的区别。
四、工期压缩:赶工与快速跟进
压缩工期的两条路:
- 赶工(Crashing):给关键活动加资源换时间,代价是直接成本上升——选关键路径上单位赶工费用最低的活动压;
- 快速跟进(Fast Tracking):原本串行的活动改为部分并行,代价是返工与风险上升。
赶工三原则:
- 只压关键路径(压非关键路径白花钱);
- 每压一步重新判定关键路径——关键路径变短后,原次关键路径可能顶上来;
- 比较各活动"每天赶工费",从便宜往贵压。
例题 2(自编模拟题):赶工决策
本题为自编模拟题。接例题 1 的网络(关键路径 A-B-D-F=16 天,次关键 A-C-E-F=14 天)。可压缩情况与赶工费如下:
| 活动 | 可压缩上限(天) | 每天赶工费(千元) |
|---|---|---|
| A | 1 | 2.0 |
| B | 2 | 3.0 |
| D | 3 | 1.5 |
| C | 1 | 2.5 |
| E | 2 | 2.0 |
| F | 不可压 | — |
问题:(1) 工期压到 14 天,最少花费多少?怎么压?(2) 若进一步压到 13 天,还需增加多少花费?
解析:
(1) 16 天 → 14 天
- 关键路径 A-B-D-F 上,最便宜的是 D(1.5 千/天,上限 3 天)。压 D 2 天:A-B-D-F = 3+5+4+2 = 14 天。
- 此时与次关键路径 A-C-E-F(14 天)并列关键,恰好达标,不能只压其他活动。
- 花费 = 2 × 1.5 = 3.0 千元。
- 注意:若误压 B(3 千/天)2 天,花费 6 千元,非最优——先比单价再动手。
(2) 14 天 → 13 天
- 14 天时两条路径并列关键,必须同时压两条:
- A-B-D-F 侧:D 还剩 1 天余量(1.5 千/天),压 1 天 → 13 天;A 1 天 2 千、B 2 天 3 千更贵,故仍选 D;
- A-C-E-F 侧:E 2.0 千/天 < C 2.5 千/天,压 E 1 天 → 13 天;
- 增加花费 = 1×1.5 + 1×2.0 = 3.5 千元;
- 两问合计 3.0 + 3.5 = 6.5 千元,最终工期 13 天,A-B-D-F 与 A-C-E-F 双关键(均为 13 天)。
- 复核:A-B-D-F = 3+5+3+2 = 13 ✔;A-C-E-F = 3+4+4+2 = 13 ✔。
五、资源平衡与资源平滑(概念辨析)
| 方法 | 目标 | 对工期影响 |
|---|---|---|
| 资源平衡(Leveling) | 消除资源过载(同一时段需求超上限),在活动 TF 内调整开始时间 | 可能延长总工期(关键活动也可能被挪) |
| 资源平滑(Smoothing) | 在不影响总工期前提下,利用非关键活动的自由时差削峰填谷 | 不改变总工期(只能动 TF/FF>0 的活动) |
考试判断口诀:题目说"资源不足、重新排布后工期变长"→ 资源平衡;说"利用时差调整、完工日期不变"→ 资源平滑。
六、易错点清单
- 正推忘记取大、逆推忘记取小——汇聚点必取最大 EF,分支点必取最小 LS;
- 只看一条路径就宣布关键路径——必须枚举所有路径或全图推演,防止多条关键路径漏判;
- 赶工压了非关键活动——白花钱;或压完不重新判定,漏掉"次关键路径顶上来";
- TF 与 FF 混淆——TF 对总工期,FF 对紧后活动的最早开始,FF≤TF;
- 时间约定不统一——0 起算与 1 起算混用导致差 1 天,全程统一并在答卷注明。
下一专题:PERT 与估算——把"不确定的工期"算成"期望+概率"。