AOE网络的关键路径问题

关于AOE网络的基本概念可以参考《数据结构》或者search一下就能找到,这里不做赘述。

寻找AOE网络的关键路径目的是:发现该活动网络中能够缩短工程时长的活动,缩短这些活动的时长,就可以缩短整个工程的时长。因此,寻找关键路径就是寻找关键活动。

接下来开始寻找一个工程中的关键路径(关键活动)。

寻找关键路径,每本教材都会提及四个特征属性:Ve[],Vl[],e[],l[],此处可能还补充一个属性:活动ai的时间余量,也就是l[i]-e[i],当某个活动的时间余量=0时,该活动就是关键活动。所以,寻找关键路径(关键活动)也就是求解AOE网络中所有活动、事件的上述特征属性,然后发现时间余量为零的活动,这样的活动就是关键活动。

至此,我们分析出,求解四个特征属性就可以找到关键路径。



Ve[i]:事件Vi的最早可能发生时间。
按照就是以起始事件为源点,类似于逆迪杰斯特拉算法求解单源点的最长路径。
Vl[i]:事件Vi的最迟允许发生时间。
结束事件的最迟允许发生时间=最早可能发生时间,以此为基础,按照逆拓扑序列求解前驱事件的Vl[],每次减去关联两个事件的具有最短时长的活动。
e[i]:活动ai的最早可能开始时间。
若活动ai由弧<.vk,vj>表示,则活动ai的最早开始时间应该等于事件vk的最早发生时间Ve[k]。因而,有:e[i]=ve[k];(即:边(活动)的最早开始时间等于,它的发出顶点的最早发生时间)。
l[i]:活动ai的最迟允许开始时间。
若活动ai由弧<.vk,vj>表示,则ai的最晚开始时间要保证事件vj的最迟发生时间不拖后。 因而有:l[i]=Vl[j]-dur<.vk,vj>(为边(活动)的到达顶点的最晚发生时间减去边的权值)。



至此,所有计算完成,如果活动ai的e[i]=l[i],则ai是关键活动。

注意,如果某项工程中,多个关键活动构成了两条或更多关键路径,此时并不是缩短任意关键活动的时间都能缩短整个工程时间,而是要缩短所有关键路径的公共关键活动的时间。

例子或者详细概念,可以参考这篇博文:
http://blog.csdn.net/wang379275614/article/details/13990163

时间: 2024-10-10 08:17:43

AOE网络的关键路径问题的相关文章

AOE 网络

1.定义 如果在无向环的带权有向图中 - 用有向边表示一个工程中的活动 - 用边上的权值表示活动的持续时间 - 用顶点表示事件 则这样的有向图叫做用边表示活动的网络,简称AOE网络 AOE在工程方面非常有用: 例如: (1)完成整个工程至少需要多少时间(假设没有环): (2)为缩短完成工程所需时间,应当加快那些活动? 从源点到各个顶点,以至从源点到汇点的有向路径可能不止一条.这些路径的长度也可能不同,完成不同路径的活动所需时间不同,但只有各条路径上所有活动都完成了,整个工程才完成. Hence,

SDUTOJ 2498 AOE网上的关键路径(最长路)

AOE网上的关键路径 Time Limit: 1000MS Memory limit: 65536K 题目描述 一个无环的有向图称为无环图(Directed Acyclic Graph),简称DAG图. AOE(Activity On Edge)网:顾名思义,用边表示活动的网,当然它也是DAG.与AOV不同,活动都表示在了边上,如下图所示: 如上所示,共有11项活动(11条边),9个事件(9个顶点).整个工程只有一个开始点和一个完成点.即只有一个入度为零的点(源点)和只有一个出度为零的点(汇点)

SDUT 2498 AOE网上的关键路径

AOE网上的关键路径 Time Limit: 1000MS Memory Limit: 65536KB Submit Statistic Problem Description 一个无环的有向图称为无环图(Directed Acyclic Graph),简称DAG图.     AOE(Activity On Edge)网:顾名思义,用边表示活动的网,当然它也是DAG.与AOV不同,活动都表示在了边上,如下图所示:                                         如

SDUT 2498 数据结构实验之图论十一:AOE网上的关键路径

数据结构实验之图论十一:AOE网上的关键路径 Time Limit: 2000 ms Memory Limit: 65536 KiB Problem Description 一个无环的有向图称为无环图(Directed Acyclic Graph),简称DAG图.    AOE(Activity On Edge)网:顾名思义,用边表示活动的网,当然它也是DAG.与AOV不同,活动都表示在了边上,如下图所示:                                         如上所示

_DataStructure_C_Impl:AOE网的关键路径

//_DataStructure_C_Impl:CriticalPath #include<stdio.h> #include<stdlib.h> #include<string.h> #include"SeqStack.h" //图的邻接表类型定义 typedef char VertexType[4]; typedef int InfoPtr; //定义为整型,为了存放权值 typedef int VRType; #define MaxSize 5

SDUTOJ 2498 AOE网上的关键路径 最短路spfa

Description 一个无环的有向图称为无环图(Directed Acyclic Graph),简称DAG图. AOE(Activity On Edge)网:顾名思义,用边表示活动的网,当然它也是DAG.与AOV不同,活动都表示在了边上,如下图所示: 如上所示,共有11项活动(11条边),9个事件(9个顶点).整个工程只有一个开始点和一个完成点.即只有一个入度为零的点(源点)和只有一个出度为零的点(汇点). 关键路径:是从开始点到完成点的最长路径的长度.路径的长度是边上活动耗费的时间.如上图

sdut AOE网上的关键路径(spfa+前向星)

http://acm.sdut.edu.cn/sdutoj/showproblem.php?pid=2498&cid=1304 题目描述 一个无环的有向图称为无环图(Directed Acyclic Graph),简称DAG图.     AOE(Activity On Edge)网:顾名思义,用边表示活动的网,当然它也是DAG.与AOV不同,活动都表示在了边上,如下图所示:                                         如上所示,共有11项活动(11条边),9个

基于AOE网的关键路径的求解

[1]关键路径 在我的经验意识深处,“关键”二字一般都是指临界点. 凡事万物都遵循一个度的问题,那么存在度就会自然有临界点. 关键路径也正是研究这个临界点的问题. 在学习关键路径前,先了解一个AOV网和AOE网的概念: 用顶点表示活动,用弧表示活动间的优先关系的有向图: 称为顶点表示活动的网(Activity On Vertex Network),简称为AOV网. 与AOV网对应的是AOE(Activity On Edge)网即边表示活动的网. AOE网是一个带权的有向无环图. 网中只有一个入度

网络计划——关键路径相关问题

定义 关键路径是指设计中从输入到输出经过的延时最长的逻辑路径(从起点到终点的最长路径). 最简单的求解办法 有了这个概念就可以求解大部分常见问题啦,比如下面这个AOE网,求一下关键路径和关键路径长度 不就是最长的路径嘛?像这种题如果是选择.填空或者简答题,最简单的办法就是列出所有路径长度,找出最长的,就是答案了.此题有2个关键路径,即V1-V2-V5-V7和V1-V4-V5-V7,长度都是10,答案就出来了.大概用时不到半分钟,如果按步骤用正常方法,估计至少需要几分钟的时间. 常规求解办法 但是