关键路径计算器
列出项目各活动的工期和前置活动,即可得到每项活动的最早和最晚开始、完成时间、总时差和自由时差,以及决定项目长度的关键路径。切换为三点估算,即可得到 PERT 期望时间、标准差,以及在目标时间前完成的概率。在您的浏览器中运行。免费,无需注册。
您的活动
在工期之后列出前置活动编号,用逗号或空格分隔;若无前置活动,请留空或填写 -。若没有名称,请连续写两个逗号留空名称。如果您的数字使用小数逗号,请用分号或制表符分隔各字段。没有数字的第一行会被视为表头;以 # 开头的行将被忽略。
9 项活动已读取
每个依赖关系均为完成-到-开始且无时间滞后。总时差为零的活动为关键活动。自由时差是指某项活动可推迟多久而不延误任何后续活动的最早开始时间。
结果
24 days
项目工期
7 / 9
关键活动
关键路径: A → B → C → F → G → H → I
正向与逆向计算
| 编号 | 活动 | 工期 | 前置活动 | ES | EF | LS | LF | 总时差 | 自由时差 | 关键 |
|---|---|---|---|---|---|---|---|---|---|---|
| A | Site preparation | 3 | — | 0 | 3 | 0 | 3 | 0 | 0 | 是 |
| B | Foundation | 4 | A | 3 | 7 | 3 | 7 | 0 | 0 | 是 |
| C | Framing | 6 | B | 7 | 13 | 7 | 13 | 0 | 0 | 是 |
| D | Plumbing rough-in | 3 | B | 7 | 10 | 12 | 15 | 5 | 5 | 否 |
| E | Electrical rough-in | 4 | B | 7 | 11 | 11 | 15 | 4 | 4 | 否 |
| F | Roofing | 2 | C | 13 | 15 | 13 | 15 | 0 | 0 | 是 |
| G | Insulation | 2 | D, E, F | 15 | 17 | 15 | 17 | 0 | 0 | 是 |
| H | Drywall | 4 | G | 17 | 21 | 17 | 21 | 0 | 0 | 是 |
| I | Finishing | 3 | H | 21 | 24 | 21 | 24 | 0 | 0 | 是 |
ES/EF:最早开始和最早完成时间。LS/LF:不延误项目的最晚开始和最晚完成时间。总时差 = LS − ES。关键行已高亮显示。
进度图
如何使用关键路径计算器
- 1. 列出活动。 每行一项:编号、名称、工期,以及必须先完成的活动编号(用逗号分隔)。对于可立即开始的活动,前置活动请留空或填写短横线。
- 2. 选择工期类型。 每项活动一个工期即为经典的关键路径法(CPM)。三点估算——乐观、最可能、悲观——则切换为 PERT,它会把每项活动转换为期望时间和标准差。
- 3. 设置时间单位(天、周、小时)。它只是一个标签;所有工期请使用同一单位。
- 4. 阅读表格。 每项活动都会得到其最早开始和完成时间(正向计算)、最晚开始和完成时间(逆向计算)、总时差和自由时差,以及关键标记。关键行会高亮显示。
- 5. 查看图表和路径。 进度图按最早日期显示每项活动及其时差;关键路径列在表格上方。
关键路径法如何运作
项目是由完成-到-开始依赖关系连接起来的活动网络。正向计算从起点开始:某活动的最早开始时间(ES)等于其前置活动中最大的最早完成时间(EF),且 EF = ES + 工期。网络中最大的 EF 即为项目工期。逆向计算从终点开始:某活动的最晚完成时间(LF)等于其后续活动中最小的最晚开始时间(LS),终点处的活动则以项目工期为最晚完成时间;且 LS = LF − 工期。
- 总时差(total float)= LS − ES = LF − EF。它是指在其他活动不发生延误的前提下,该活动可以推迟多久而不延误项目。
- 自由时差是指该活动可以推迟多久而不延误任何后续活动的最早开始时间:即后续活动最早开始时间的最小值减去本活动的 EF。它永远不会超过总时差。
- 关键活动的总时差为零。关键路径是一串连续的关键活动,从起点到终点;其长度即为项目工期。一个网络可以有多条关键路径,计算器会全部列出。
- 非关键活动链上的时差是共享的:某项活动使用掉的时差,会减少留给下一项活动的时差。
示例
某建筑项目有九项活动。地基(B)需要场地准备(A);框架(C)、水管粗装(D)和电路粗装(E)都在地基之后;屋面(F)在框架之后;保温(G)需要 D、E 和 F;石膏板(H)在 G 之后,装修收尾(I)在 H 之后。
| 编号 | 工期 | ES | EF | LS | LF | 总时差 |
|---|---|---|---|---|---|---|
| A | 3 | 0 | 3 | 0 | 3 | 0 |
| B | 4 | 3 | 7 | 3 | 7 | 0 |
| C | 6 | 7 | 13 | 7 | 13 | 0 |
| D | 3 | 7 | 10 | 12 | 15 | 5 |
| E | 4 | 7 | 11 | 11 | 15 | 4 |
| F | 2 | 13 | 15 | 13 | 15 | 0 |
| G | 2 | 15 | 17 | 15 | 17 | 0 |
| H | 4 | 17 | 21 | 17 | 21 | 0 |
| I | 3 | 21 | 24 | 21 | 24 | 0 |
项目需 24 天,关键路径为 A → B → C → F → G → H → I。保温工作要等到第 15 天屋面结束才能开始,因此水管粗装(有 5 天时差)和电路粗装(有 4 天时差)有余地推迟而不影响完工时间。缩短任何关键活动都会缩短项目,直至另一条路径成为关键路径。
PERT:工期不确定时
PERT 用三点估算取代每项活动的单一工期。期望时间为 (a + 4m + b) ÷ 6,标准差为 (b − a) ÷ 6,其中 a、m、b 分别为乐观时间、最可能时间和悲观时间。关键路径依据期望时间确定。由于独立活动的方差相加,路径的方差即为其各活动方差之和,且路径长度被近似视为正态分布。
使用计算器中的 PERT 估算时,同一网络沿关键路径的期望工期为 24.33 天,方差为 1.444,标准差为 1.202 天。目标为 26 天,则它比均值高出 (26 − 24.33) ÷ 1.202 = 1.387 个标准差,即按时完成的概率为 91.7%;具有 95% 置信度的工期为 26.31 天。若多条路径并列,则采用方差最大的那条。其他接近关键的路径同样有可能延误,因此该概率只是一个近似值,往往偏乐观。
本计算器未涵盖的内容
所有依赖关系均为完成-到-开始且无时间滞后;不建模开始-到-开始、完成-到-完成以及提前或滞后关系。它不进行资源平衡,也不计算成本或赶工。时间相对于第 0 天。若要根据相同活动绘制日历进度,请使用甘特图制作工具。
常见问题
- 什么是关键路径?
- 从起点到终点、相互依赖的活动所组成的最长链。它的长度即为项目可能的最短工期,而关键路径上任何活动的延误都会延误整个项目。关键路径上的活动时差为零。
- 如何计算时差或浮动时间?
- 总时差 = 最晚开始 − 最早开始,与最晚完成 − 最早完成相等。先用正向计算求出最早时间,再从项目的结束日期出发用逆向计算求出最晚时间。
- 总时差和自由时差有什么区别?
- 总时差是指某活动可以推迟多久而不延误项目;自由时差是指它可以推迟多久而不延误下一项活动的最早开始时间。自由时差永远不大于总时差,而且当后续活动恰好在本活动完成时开始,自由时差即为零。
- 一个项目可以有多条关键路径吗?
- 可以。当两条或更多的活动链总长度相同时,它们都是关键路径。这时项目更为脆弱,因为其中任何一条上的延误都会延误完工。计算器会列出它找到的所有关键路径。
- PERT 公式是什么?
- 期望时间 = (乐观时间 + 4 × 最可能时间 + 悲观时间) ÷ 6,即最可能时间的权重是两个极端值的四倍。标准差为 (悲观时间 − 乐观时间) ÷ 6。例如乐观时间为 2、最可能时间为 5、悲观时间为 14,则期望时间为 6,标准差为 2。
- CPM 与 PERT 有什么区别?
- CPM 为每项活动使用确定的单一工期,适用于时间较为明确的情况。PERT 则使用三点估算和概率模型来处理不确定的工期。两者使用相同的正向和逆向计算来确定关键路径。