📚 Critical Path Analysis Essentials for IB WJEC Mathematics | IB WJEC 数学关键路径分析考点精讲
Critical path analysis (CPA) is a powerful project management tool that helps schedule complex sequences of tasks, identify bottlenecks, and optimise resource allocation. In IB and WJEC Decision Mathematics, CPA appears frequently, requiring you to construct activity networks, perform forward and backward passes, compute floats, and pinpoint the critical path. This guide unpacks every essential concept, technique, and exam trick so you can tackle any CPA problem with confidence.
关键路径分析(CPA)是一种强大的项目管理工具,用于安排复杂任务序列、识别瓶颈并优化资源分配。在 IB 和 WJEC 决策数学中,CPA 是常见考点,要求你构建活动网络、执行前向和后向传播、计算浮动时间,并准确找出关键路径。本指南将逐一拆解所有核心概念、技巧和应试策略,让你从容应对任何 CPA 问题。
1. Introduction to Activity Networks | 活动网络简介
An activity network visually represents the tasks (activities) in a project and the dependency relationships between them. It allows project managers to see which tasks must be completed before others can start.
活动网络直观地展示项目中的各项任务(活动)及其依赖关系,让项目经理能够看清哪些任务必须在其他任务开始前完成。
There are two main types of network diagrams: activity-on-arc (AoA) where arcs represent activities and nodes represent events (start or end points), and activity-on-node (AoN) where nodes represent activities and arcs show dependencies. IB and WJEC syllabi often focus on AoA, where careful attention to node numbering and dummy activities is required.
网络图主要有两种类型:弧表示活动(AoA)图中,弧代表活动而节点代表事件(开始或结束点);节点表示活动(AoN)图中,节点代表活动而弧表示依赖关系。IB 和 WJEC 课程通常聚焦于 AoA 图,该图要求仔细处理节点编号和虚活动。
Understanding the underlying project is the first step – you must translate a given table of activities and their predecessors into a neatly drawn network before any numerical analysis can begin.
理解底层项目是第一步——在进行任何数值分析之前,你必须先把给定的活动及其前驱关系表转化为一幅整洁的网络图。
2. Constructing Precedence Tables | 构建前驱关系表
A precedence table lists each activity, its duration, and the activities that must be completed immediately before it can begin. Some tables also include resource requirements, but for basic CPA we focus on dependencies and durations.
前驱关系表列出每项活动、它的持续时间以及必须在它开始前立即完成的活动。有些表格还包括资源需求,但基础 CPA 我们只关注依赖关系和持续时间。
When reading a precedence table, watch out for activities that share the same set of predecessors or those with no predecessors – they can often start at time zero. Also note that an activity may depend on a combination of several activities finishing.
阅读前驱关系表时,注意那些有相同前驱活动或没有前驱活动的任务——它们常可从零时刻开始。还要留意一项活动可能依赖于多个活动的完成组合。
A well‑formatted precedence table is the blueprint of your network; always double‑check it for logical consistency before drawing, as a single misread can lead to an entirely incorrect model.
格式良好的前驱关系表是你绘制网络的蓝图;画图前务必检查其逻辑一致性,因为一个误读就可能导致整个模型错误。
3. Drawing Activity-on-Arc Networks | 绘制弧表示活动网络
In an AoA diagram, nodes are drawn as circles, each representing an event at which one or more activities finish and/or start. Activities are shown as directed arrows connecting events, with the activity name and duration usually written above or below the arrow.
在 AoA 图中,节点画成圆圈,每个节点代表一个事件,在该事件处一项或多项活动完成和/或开始。活动用有向箭头表示,连接各个事件,活动名称和持续时间通常写在箭头上方或下方。
The network must start from a single source node (node 1) and end at a single sink node (the highest‑numbered node). Every activity is represented by exactly one arrow, and every arrow has a tail event and a head event.
网络必须从一个单一的起点节点(节点1)开始,到一个单一的终点节点(编号最大的节点)结束。每项活动恰好用一条箭头表示,每条箭头都有一个箭尾事件和一个箭头事件。
When two activities share the same start and end events but represent different tasks, you must introduce a dummy activity – a dashed arrow with zero duration – to avoid ambiguity. Dummies also handle dependencies where an activity depends on only part of a preceding set.
当两项活动具有相同的开始和结束事件但代表不同任务时,必须引入虚活动——一条虚线箭头,持续时间为零——以避免歧义。虚活动还用于处理一项活动只依赖于前驱集合的一部分的情况。
4. Identifying Dummy Activities | 识别虚活动
A dummy activity is a logical connector with zero duration; it consumes no time or resources. Its sole purpose is to enforce a precedence relationship that cannot be expressed by real activities alone.
虚活动是一个持续时间为零的逻辑连接器,不消耗时间或资源。其唯一目的是强制执行仅靠真实活动无法表达的优先关系。
Common scenarios demanding dummies: when two activities have identical tail and head events, or when an activity depends on activity A but another activity depends only on B, yet A and B start from the same event – a dummy can split the path.
需要虚活动的常见场景:两项活动具有相同的箭尾和箭头事件时,或者一项活动依赖于活动A而另一项活动只依赖于B,但A和B从同一事件开始——可用一个虚活动分离路径。
Always check your network to see if removing a dummy would create a false dependency or duplicate activities. In exams, spots where dummies are missing often result in lost marks for incorrect logic.
始终检查你的网络,看移除一个虚活动是否会造成虚假依赖或活动重复。在考试中,缺少虚活动往往示逻辑错误而失分。
5. Forward Pass: Earliest Start Times | 前向传播:最早开始时间
The forward pass calculates the earliest possible time each event can occur, starting from the source node at time 0. For any event j, its earliest event time ES(j) = max{ ES(i) + duration(i, j) } over all activities (i, j) entering j.
前向传播计算每个事件可能发生的最早时间,从起点节点时刻 0 开始。对于任意事件 j,其最早事件时间 ES(j) = max{ ES(i) + duration(i, j) },取所有进入 j 的活动 (i, j) 的最大值。
ES(j) = max{ ES(i) + d(i,j) }
ES(j) = max{ ES(i) + d(i,j) }
Work systematically from left to right across the network. At a merge point where several activities converge, you must take the maximum sum. If an activity has duration 0 (dummy), its contribution is simply ES(i).
从网络左到右系统地计算。在汇集点即多条活动汇聚的地方,必须取总和的最大值。如果某项活动持续时间为 0(虚活动),其贡献就是 ES(i)。
Write the earliest event time inside or next to each node; this provides the earliest start times for all outgoing activities. A common mistake is to sum durations along one path without checking other incoming paths.
将最早事件时间写在节点内部或旁边;这提供了所有发出活动的最早开始时间。常见错误是沿一条路径累加持续时间而不检查其他进入路径。
6. Backward Pass: Latest Finish Times | 后向传播:最晚完成时间
The backward pass determines the latest time each event can happen without delaying the project. Start from the sink node, setting its latest event time LF(sink) equal to the project duration (the ES of the sink node). For any event i, LF(i) = min{ LF(j) – duration(i, j) } over all activities (i, j) leaving i.
后向传播确定在不延误整个项目的前提下每个事件可发生的最晚时间。从终点节点开始,设其最晚事件时间 LF(终点) 等于项目工期(终点节点的 ES)。对于任意事件 i,LF(i) = min{ LF(j) – duration(i, j) },取所有离开 i 的活动 (i, j) 的最小值。
LF(i) = min{ LF(j) – d(i,j) }
LF(i) = min{ LF(j) – d(i,j) }
Work right to left. When multiple activities leave an event, you must take the minimum difference, because each successor imposes a deadline. Dummy activities are treated as having zero duration, so their LF contribution is simply LF(j).
从右向左计算。当多条活动从一个事件离开时,必须取差值的最小值,因为每项后继都规定了一个截止时间。虚活动被视为零持续时间,因此其 LF 贡献就是 LF(j)。
Record LF values at each node. The difference between LF(i) and ES(i) at a node gives the event slack – if it is zero, the event lies on a critical path.
记录每个节点的 LF 值。节点处的 LF(i) 与 ES(i) 之差给出了事件松弛时间——若为零,则该事件位于关键路径上。
7. Calculating Total Float | 计算总浮动时间
Total float (or total slack) of an activity is the amount of time the activity can be delayed without affecting the overall project completion time. It is calculated as:
一项活动的总浮动(总松弛)是指该活动可以延迟而不影响整个项目完成时间的最大时长。计算公式为:
Total Float(i, j) = LF(j) – ES(i) – d(i,j)
总浮动(i, j) = LF(j) – ES(i) – d(i,j)
Here, LF(j) is the latest finish time of the head event, ES(i) is the earliest start time of the tail event, and d(i,j) is the activity’s duration. This measures the maximum spare time available for that activity.
这里,LF(j) 是箭头事件的最晚完成时间,ES(i) 是箭尾事件的最早开始时间,d(i,j) 是活动持续时间。这衡量了该活动可用的最大空闲时间。
Activities with zero total float are critical; any delay in them directly delays the project. Positive float indicates some flexibility, but it can be consumed by other activities if they share the same slack.
总浮动为零的活动是关键的;它们的任何延迟都会直接延误项目。正浮动表示有一定灵活性,但如果多个活动共享同一松弛,它可能被其他活动消耗。
Free float and independent float are sometimes examined. Free float assumes all activities start as early as possible: Free Float = ES(j) – ES(i) – d(i,j). Independent float is the worst‑case spare time: Independent Float = ES(j) – LF(i) – d(i,j).
有时会考察自由浮动和独立浮动。自由浮动假设所有活动都尽早开始:自由浮动 = ES(j) – ES(i) – d(i,j)。独立浮动是最坏情况下的空闲时间:独立浮动 = ES(j) – LF(i) – d(i,j)。
8. Determining the Critical Path(s) | 确定关键路径
The critical path is the longest path through the network from start to finish, comprising activities with zero total float. Its length equals the minimum project completion time.
关键路径是网络中从起点到终点的最长路径,由总浮动为零的活动组成。其长度等于最短项目完成时间。
To identify the critical path, first complete the forward and backward passes and compute total float for every activity. Then trace a path from the source to the sink that uses only activities where total float = 0. There may be more than one critical path, which reduces overall flexibility.
为识别关键路径,先完成前向和后向传播并计算每项活动的总浮动。然后从起点到终点追踪一条仅使用总浮动为零的活动的路径。可能存在多条关键路径,这会降低整体灵活性。
Marking the critical path clearly on the network (usually with a double line or a bold arrow) is essential for exam answers. If multiple critical paths exist, all must be indicated.
在网络图上清晰地标记关键路径(通常用双线或粗箭头)对考试答案至关重要。如果存在多条关键路径,必须全部标明。
9. Interpreting Floats and Resource Levelling | 解释浮动与资源均衡
Floats tell a project manager where there is room for manoeuvre. Activities with high total float can be delayed, split, or have their resources temporarily diverted to critical activities, a process known as resource levelling or smoothing.
浮动告诉项目经理哪里有回旋余地。总浮动高的活动可以延迟、拆分或将其资源临时调配给关键活动,这一过程称为资源均衡或平滑。
Resource histograms linked to the schedule can show peaks and troughs in labour or equipment usage. By shifting non‑critical activities within their float, you can often reduce peak demand without extending the project duration.
与进度表关联的资源直方图可显示劳动力或设备使用的高峰和低谷。通过在浮动范围内移动非关键活动,你通常可以降低需求量峰值而不延长项目工期。
Be careful: if you delay an activity early in a chain of non‑critical activities, you may reduce the float of later activities. Always recalculate available float after any rescheduling.
注意:如果延迟了非关键活动链中靠前的活动,可能会减少后续活动的浮动。任何重新排程后都要重新计算可用浮动。
10. Gantt Charts and Scheduling | 甘特图与调度
A Gantt chart is a horizontal bar chart that represents the project schedule. Each activity is shown as a bar spanning from its early start time (or scheduled start) to its finish, with critical activities often highlighted in a different colour.
甘特图是一种表示项目进度的水平条形图。每项活动显示为一个横条,从其最早开始时间(或计划开始)到其完成, 关键活动通常以不同颜色突出显示.
Gantt charts derived from CPA results can display float by drawing a thin line or shaded area beyond the activity bar. In exams, you may be asked to draw a Gantt chart for a given network or to interpret one to find start times and floats.
基于 CPA 结果生成的甘特图可通过在活动条之后绘制细线或阴影区域来显示浮动。考试中可能要求你为给定网络绘制甘特图, 或解读甘特图以找出开始时间和浮动。
Remember that the Gantt chart is a scheduling view, not a dependency diagram. It does not show logical relationships unless coupled with network lines.
记住甘特图是进度视图,而非依赖关系图。除非与网络连线结合,否则它不显示逻辑关系。
11. Exam Tips and Common Mistakes | 考试技巧与常见错误
When tackling a CPA question, always read the precedence data carefully and sketch a rough network on scrap paper before drawing the final version. Label every arrow with both activity letter and duration.
处理 CPA 问题时,务必仔细阅读前驱数据,先在草稿纸上勾勒粗略网络,再绘制最终版本。每条箭头都应标注活动字母和持续时间。
Mistakes to avoid: forgetting to add a dummy when required, mixing up forward and backward pass (calculating min instead of max), misnumbering nodes so that tail number is larger than head number, and failing to check that the sink node ES matches the project length.
应避免的错误:在需要时忘记添加虚活动、混淆前向和后向传播(算成了最小值而非最大值)、节点编号错误以致箭尾数字大于箭头数字、没有检查终点节点 ES 是否与项目长度一致。
When calculating floats, show your working clearly. Examiners award marks for correct formulas and intermediate values even if the final float is slightly off. Present the critical path as a sequence of nodes or activities, e.g., A – D – G – H.
计算浮动时,清晰地展示计算过程。即使最终浮动值略有偏差,评卷人也会因正确的公式和中间值给分。呈现关键路径时,写成节点或活动的序列,例如 A – D – G – H。
12. Real-World Applications and Summary | 实际应用与总结
Beyond the exam room, critical path analysis is used in construction, software development, event planning, and manufacturing. It helps identify the minimum feasible project duration and the tasks that cannot slip without threatening the deadline.
在考场之外,关键路径分析被用于建筑、软件开发、活动策划和制造业。它有助于确定最短可行项目工期以及那些不能延迟否则会威胁截止日期的任务。
By mastering the steps – precedence table → AoA network → forward pass → backward pass → floats → critical path – you build a systematic framework that is both mathematically rigorous and practically invaluable. Review past paper questions, practice with varied dependencies, and you will soon find CPA one of the most straightforward topics in Decision Mathematics.
通过掌握“前驱关系表 → AoA 网络 → 前向传播 → 后向传播 → 浮动 → 关键路径”这些步骤,你构建了一个既数学严谨又极具实践价值的系统框架。复习历年真题,练习多种依赖关系,你很快就会发现 CPA 是决策数学中最直接的主题之一。
Published by TutorHao | Mathematics Revision Series | aleveler.com
更多咨询请联系16621398022(同微信)
屏轩国际教育cambridge primary/secondary checkpoint, cat4, ukiset,ukcat,igcse,alevel,PAT,STEP,MAT, ibdp,ap,ssat,sat,sat2课程辅导,国外大学本科硕士研究生博士课程论文辅导