AOV and AOE
本文最后更新于12 天前,其中的信息可能已经过时,如有错误请发送邮件到big_fw@foxmail.com

AOV(Activity On Vertex)和 AOE(Activity On Edge)是两种常用于工程计划与调度中的有向图模型,主要用于表示任务之间的依赖关系和时间安排。它们都属于关键路径法(Critical Path Method, CPM)和项目评审技术(Program Evaluation and Review Technique, PERT)中的基本建模工具。

下面分别介绍它们的定义、特点、用途及区别:


一、AOV 网(Activity On Vertex Network)

1. 定义

  • 顶点(Vertex)表示活动(Activity)
  • 有向边(Directed Edge)表示活动之间的先后关系(即偏序关系)
  • 若存在一条从顶点 A 到顶点 B 的有向边,则表示活动 A 必须在活动 B 之前完成

2. 特点

  • 不考虑活动所需的时间(或默认时间为1)
  • 主要用于判断活动安排是否合理(即是否存在循环依赖)
  • 核心操作是拓扑排序(Topological Sorting)

3. 应用场景

  • 课程先修关系(如“数据结构”必须在“算法设计”之前)
  • 编译依赖(模块编译顺序)
  • 任务调度中的依赖检查

4. 关键问题

  • 是否存在?若有环,则无法进行拓扑排序,说明安排不合理。
  • 能否生成一个合法的执行顺序?→ 拓扑序列

二、AOE 网(Activity On Edge Network)

1. 定义

  • (Edge)表示活动
  • 顶点(Vertex)表示事件(Event),即某个或某些活动的开始或结束时刻
  • 每条边有权重,表示该活动所需的持续时间
  • 通常只有一个源点(入度为0,表示工程开始)和一个汇点(出度为0,表示工程结束)

2. 特点

  • 强调时间关键路径
  • 可用于计算:
    • 整个工程的最短完成时间
    • 每个活动的最早开始时间(earliest start time)
    • 每个活动的最晚开始时间(latest start time)
    • 关键活动(总时差为0的活动)和关键路径

3. 应用场景

  • 工程项目管理(如建筑、软件开发)
  • 估算项目工期
  • 识别哪些活动不能延误(关键路径上的活动)

4. 关键概念

  • 关键路径:从源点到汇点的最长路径(因为边权是时间,路径越长,总工期越长)
  • 事件的最早发生时间(ve):从源点到该事件的最长路径长度
  • 事件的最迟发生时间(vl):在不影响总工期的前提下,该事件最晚发生时间
  • 活动的最早开始时间 e(i) = ve(起点)
  • 活动的最晚开始时间 l(i) = vl(终点) – 活动持续时间
  • 时差 = l(i) – e(i),若为0,则为关键活动

三、AOV 与 AOE 的主要区别

表格

项目AOV 网AOE 网
活动表示顶点
事件/状态无显式事件顶点表示事件
边的含义依赖关系(无权重)活动本身(带权重=时间)
是否带权
主要目的检查依赖合理性、拓扑排序计算工期、找关键路径
是否允许环不允许(否则无法拓扑排序)不允许(否则工期无限)
典型算法拓扑排序、检测环关键路径算法(基于拓扑序计算 ve/vl)

四、小结

  • AOV 关注“谁先谁后”,用于逻辑依赖分析
  • AOE 关注“花多少时间”,用于时间与资源优化

两者常常结合使用:先用 AOV 确保任务依赖无环,再构建 AOE 网进行工期分析。

文末附加内容
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇