????????在一个表示工程的带权有向图中,用顶点表示事件,用有向边表示活动,边上的权值表示活动的持续时间,称这样的有向图叫做边表示活动的网,简称AOE网。AOE网中没有入边的顶点称为始点(或源点),没有出边的顶点称为终点(或汇点)。
1.只有在某顶点所代表的事件发生后,从该顶点出发的各活动才能开始;
2.只有在进入某顶点的各活动都结束,该顶点所代表的事件才能发生。
(1)AOV网无权值;AOE网有权值
(2)在AOE网中,顶点表示事件,弧表示活动,权值表示活动时间
(3)在AOV网中,顶点表示活动,弧表示优先关系
(4)AOV与AOE网中均没有环
1.可以知道完成整个工程至少需要多少时间
2.为缩短完成工程所需的时间,应当加快哪些活动
在AOE网中,从始点到终点具有最大路径长度(该路径上各个活动所持续的时间之和)的路径称为关键路径。
关键路径上的活动称为关键活动
要找出关键路径,必须找出关键活动,即不按期完成就会影响整个工程进度的活动。
首先计算以下与关键活动有关的量:
从始点开始到顶点的最大路径长度,这个长度决定了所有从顶点
发出的活动能够开工的最早时间。
p[k]表示所有到达的有向边的集合。
vl[k]是指在不推迟整个工期的前提下,事件允许的最晚发生时间
从后往前推算结点的vl值
若活动是由弧
表示,则活动
的最早开始时间等于事件
的最早发生时间
即:ee[i]=ve[k]
若活动是由弧
表示,则活动
的最晚开始时间要保证事件
的最迟发生时间不拖后
即:
最后计算各个活动的时间余量el[k]-ee[k],时间余量为0即为关键活动
注:
1)适当提高对应关键路径上的关键活动的速度,保证不改变AOE网的关键路径的前提下。
2)同时提高AOE网上的关键路径上关键活动的速度。
1)从源点
出发,令ve[0]=0,按拓扑排序求其余各顶点的最早发生时间ve[i];
2)如果得到的拓扑排序中顶点个数小于AOE网中的顶点数,则说明网中存在环,不能求关键路径,算法终止;否则执行步骤3;
3)从终点
出发,令vl[n-1]=ve[n-1],按照逆序拓扑排序求其余各顶点的最迟发生时间vl[i];
4)根据各顶点的ve和vl值,求每条有向边的最早开始时间ee[i]和最迟开始时间el[i];
5)若某条有向边
满足条件ee[i]=el[i],则
为关键活动。