关键路径是什么
关键路径法(CPM,Critical Path Method)是只考虑活动工期、不考虑资源限制的确定性网络分析技术。把活动按依赖关系连成网络后,从起点到终点工期最长的那条路径就是关键路径:它决定项目最短可能完成时间,路径上的活动总浮动通常为零,任何延误都会同等地推迟完工日期。与之相对的是关键链法,在关键路径基础上再考虑资源约束与缓冲设置。
基本信息
| 适用过程 | 制定进度计划(PMBOK 第 6 版 6.5),用于确定最短工期与进度灵活性 |
|---|---|
| 前置条件 | 活动清单、依赖关系、工期估算、网络图齐全 |
| 主要输出 | 进度基准、里程碑清单、进度数据(含浮动值) |
| 计算方向 | 正向推最早时间,反向推最晚时间,两者相减得浮动 |
典型使用场景
- 压缩工期前先定位关键路径:赶工与快速跟进只在关键路径上才可能缩短总工期
- 把零浮动活动列为每周跟踪重点,它们的偏差没有任何消化空间
- 评估范围变更:新增活动若落在关键路径上,完工日期必然顺延
- 为非关键路径活动安排灵活窗口,配合资源平滑降低人力尖峰
- 向管理层解释工期底线:关键路径长度就是最短总工期,单纯加班不能突破物理限制
计算符号与读法
| 符号 | 含义 | 读数要点 |
|---|---|---|
| ES / EF | 最早开始 / 最早完成 | 正向计算,ES 取所有前置活动 EF 的最大值 |
| LS / LF | 最晚开始 / 最晚完成 | 反向计算,LF 取所有后置活动 LS 的最小值 |
| 总浮动 TF | LS 减 ES(或 LF 减 EF) | 为零即在关键路径上,可在同一路径的多个活动间共享 |
| 自由浮动 FF | 后置活动 ES 减当前活动 EF | 只能本条活动使用,消耗后不影响后置活动最早开始 |
| 关键路径 | 总浮动最小的一条或多条路径 | 多条并存时每条都要盯,任一条延误都直接推迟完工 |
计算步骤
计算步骤
1) 列出活动与依赖,画出网络图 # 明确前后置与依赖类型
2) 正向计算:ES = 前置 EF 最大值,EF = ES + 工期 # 从起点推到终点
3) 反向计算:LF = 后置 LS 最小值,LS = LF - 工期 # 从终点倒推回起点
4) 总浮动 = LS - ES,为零即关键活动 # 串起来即关键路径
5) 自由浮动 = 后置活动 ES - 当前活动 EF # 只对本条路径有效的缓冲
6) 汇总最长路径长度,即项目最短工期 # 用于承诺工期与压缩分析示例网络
示例网络
活动 工期 前置
A 3 -
B 5 A
C 4 A
D 2 B, C
路径 A-B-D = 3 + 5 + 2 = 10 天 # 最长路径,即关键路径
路径 A-C-D = 3 + 4 + 2 = 9 天 # 总浮动 1 天
结论:项目最短工期 10 天,压缩只能从 A、B、D 上想办法存在多条关键路径时只盯一条,另一条会变成隐形炸弹:任何一条延误都直接推后完工日期。资源受限时关键路径还会漂移,此时应改用关键链法并预留项目缓冲。
关键路径不是一次算完的固定值:非关键路径的浮动被消耗完、或发生范围变更后,新的路径可能取代原有路径。控制进度时要重新计算,不能沿用开工时的结论。
网络图不要漏掉外部依赖与滞后量(供应商交付、养护期等待等),否则关键路径判断会失真,浮动值也会虚高。