信息系统项目管理师其余知识笔记计算关键路径.pptxVIP

信息系统项目管理师其余知识笔记计算关键路径.pptx

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

;⑴关键路径的由来

如果有向图的结点表示活动,有向边表示活动间的优先关系,那么我们通过拓扑排序将图中的结点排成一个满足活动先后顺序要求的线性序列。如果有向有权图满足下述条件

⑴存在唯一的入度为0的结点和唯一的出度为0的结点;

⑵可通过拓扑排序将图中的结点排成一个满足活动先后顺序要求的线性序列(即有向图没有回路)

则称该有向有权图为AOV网(活动结点网络)。

利用AOV网可以估算出整个计划完成至少需要多少时间,为提前完成计划应该加快哪些活动的速度等问题。解决这些问题有一种有效的方法——求关键路径方法。由于AOV网中的活动可以并行进行,因此完成整个计划的最少时间是从开始结点v1到完成结点vn的最长路径长度(路径上各边权的和)。具有最大长度的路径称作关键路径。在上图中v1→v2→v5→v8→v9是一条关键路径,长度为18。换句话说,整个计划至少需要18个时间单位完成。关键路径上的活动又称关键活动。如果不能按期完成这些活动会贻误整个计划。找出关键活动后就可以适当调度,集中力量于关键活动,以保证计划如期或提前完成。

;⑵关键路径的计算

为了找出关键活动,我们先定义几个变量:

n—AOV网的结点数;m—AOV网的有向边数;

ee[i]—vi事件可能发生的最早时间,即从开始结点v1至结点vi的最长路径长度。我们从ee(1)=0开始向前递推

ee[j]=max{ee[i]+wij|(i,j)?E};

le[i]—在保证完成结点vn所代表的事件在ee[n]时刻发生的前提下,事件vi允许发生的最晚时间,即le[i]=ee(n)-vi至vn最长路径长度。我们从le[n]=ee[n]出发向后递推

le[i]=min{le[j]-wij|(i,j)?E}

e[k]—活动ak(对应边vi,vj)可能的最早开始时间,即等于事件vi的可能的最早发生时间ee[i];

l[k]—活动ak(对应边vi,vj)允许的最晚完成时间,即等于事件vj允许最晚发生时间le[j];(1≤i,j≤n,1≤k≤m)]

;显然活动ak的最大可利用时间是l[k]-e[k]。若最大可利用时间等于ak边所带的权wk(即为计划时间),则ak是关键活动。ak延期,则整个计划将顺延。若最大可利用时间大于wk,则ak不是关键活动,ak的完成时间允许超过wk。只要不超过最大可???用时间,无妨于整个计划完成的进度。我们可以采取以下步骤,计算上面定义的几个变量值,从而找到关键活动:

?

;⑶计算能影响整个计划完成时间的关键活动

在找出关键活动后,只要将所有的非关键活动从AOV网中去掉,这时从开始结点至完成结点的所有路径都是关键路径。AOV网中的关键路径可能不止一条。并不是加快任一关键活动就可以缩短整个计划的完成时间。只有加快那些包括在所有关键路径上的关键活动才能达到目的的。设

a为关键路径组成的01矩阵,a0为辅助矩阵;b为关键活动序列,其中b[k].x、b[k].y和b[k].l分别为第k项关键活动的两个顶点序号和花费;nopath为v1至vn间有路可走的标志;

首先计算关键活动序列b和关键活动组成的有向图a。然后逐一地在a图中去除一条关键活动边,看一看是否存在v1至vn的路径。如果v1至vn间无路可走,则说明这个关键活动为影响整个计划完成的关键活动。判别过程采用深度优先搜索

proceduredfs(i:integer);{深度优先搜索a0图中由顶点i出发的所有可能路径。若存在一条到达顶点n的路径,则nopath设为false;否则为true}

begin

f[i]←true;

ifi=nthenbeginnopath←false;exit;end{then}

forj←1tondo

beginif(not(f[j]))and(a0[i,j]=1)thendfs(j);end;{for}

end;{dfs}

;由此得出算法

活动的时间矩阵w初始化为0;

输入带权有向图的信息(顶点数n、活动数e和活动的时间矩阵w);

if图中的所有顶点不能排成一个拓扑序列

then失败退出;

fillchar(ee,sizeof(ee),0);

fori←1ton-1do

forj←1tondo{计算各个事件的最早发生时间表ee}

if((i,j)∈E)and(ee[j]ee[i]+wij)thenee[j]←ee[i]+wij;

输出完成整个计划的最少时间ee[n];

fori←1tondole[i]←

文档评论(0)

kay5620 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8001056127000014

1亿VIP精品文档

相关文档