关键路径不是最复杂的路,而是最长的路
很多同学看到网络图就紧张,觉得节点多的那条路一定关键。其实关键路径看的是总工期,哪条路径持续时间最长,项目最短完成时间就由它决定。
关键路径上的活动通常总时差为 0,也就是说它们一拖,整个项目就跟着拖。这个判断比死记定义更好用。
正推:算最早什么时候能开始、能完成
正推从项目开始点往后走。某活动的最早开始时间,要等它所有紧前活动都完成;如果有多个紧前活动,取最晚完成的那个,因为你不能在前置条件没齐时开工。
最早完成时间 = 最早开始时间 + 活动持续时间。这个方向主要用来算项目最短工期。
ES最早开始时间
EF最早完成时间 = ES + 持续时间
汇入点多个紧前活动汇入时,取最大的 EF
逆推:算最迟什么时候还能不耽误总工期
逆推从项目结束点往前走。某活动的最迟完成时间,要看它后面活动最迟什么时候必须开始;如果有多个紧后活动,取最早的那个,因为它最先卡住你。
最迟开始时间 = 最迟完成时间 - 活动持续时间。这个方向主要用来算活动还能拖多久。
LF最迟完成时间
LS最迟开始时间 = LF - 持续时间
分叉点多个紧后活动分叉时,取最小的 LS
总时差和自由时差别混
总时差看的是不影响整个项目工期,活动最多能拖多久。自由时差看的是不影响紧后活动最早开始,活动最多能拖多久。
考试中更常问总时差,因为它和关键路径关系最直接。自由时差更细一点,题干如果强调“不影响后续活动最早开始”,才优先考虑它。
| 概念 | 看谁受影响 | 常用公式 |
|---|---|---|
| 总时差 | 整个项目工期 | LS - ES 或 LF - EF |
| 自由时差 | 紧后活动最早开始 | 紧后活动最早开始的最小值 - 本活动 EF |
| 关键活动 | 通常不能拖 | 总时差一般为 0 |
一个容易救命的小习惯
算完以后,把关键路径活动的总时差检查一遍。如果你找出的关键路径上某个活动总时差不是 0,大概率正推或逆推某一步取最大/取最小弄反了。
还有一点:关键路径可能不止一条。只要多条路径工期并列最长,它们都可能是关键路径,不能只因为图上看起来顺眼就选一条。
- 先列出所有从开始到结束的完整路径。
- 分别相加每条路径持续时间。
- 找最长路径,得到项目最短工期。
- 再用正推和逆推检查总时差。