教你輕松計算AOE網關鍵路徑(轉)


原文鏈接:http://blog.csdn.net/wang379275614/article/details/13990163

本次結合系統分析師—運籌方法—網絡規划技術—關鍵路徑章節,對原文鏈接描述不准確的地方做了修正。

認識AOE網

  有向圖中,用頂點表示活動,用有向邊表示活動之間開始的先后順序,則稱這種有向圖為AOV(Activity On Vertex)網絡;AOV網絡可以反應任務完成的先后順序(拓撲排序)。

  在AOV網的邊上加上權值表示完成該活動所需的時間,則稱這樣的AOV網為AOE(Activity On Edge)網,如下圖: 

 

  

 

  圖中,頂點表示事件(能被觸發,兩特征屬性:最早發生時間Ve(j);最晚發生時間Vl(j)),邊表示活動(能被開始,兩特征屬性:最早開始時間e(i);最晚開始時間l(i)),權表示活動持續時間,通常用AOE網來估算工程完成的時間

 

兩條原則:

  Ø  只有某頂點所代表的事件發生后,從該頂點出發的各活動才能開始

  Ø  只有進入某頂點的各活動都結束,該頂點所代表的事件才能發生

 

計算關鍵路徑

  首先,在AOE網中,從始點到終點具有最大路徑長度(該路徑上的各個活動所持續的時間之和)的路徑為關鍵路徑。

計算關鍵路徑,只需求出上面的四個特征屬性,然后取e(i)=l(i)的邊即為關鍵路徑上的邊(關鍵路徑可能不止一條)。

  先來看看四個特征屬性的含義:

  Ø Ve(j):是指從始點開始到頂點Vj的最大路徑長度

 

   計算技巧:

   (1)從前向后,取大值:直接前驅結點的Ve(j)+到達邊(指向頂點的邊)的權值,有多個值的取較大者

   (2)首結點Ve(j)已知,為0

 

  如上圖各頂點(事件)的Ve(j): (從V1開始)

 

  

 

  Ø  Vl(j):在不推遲整個工期的前提下,事件vj允許的最晚發生時間

 

   計算技巧:

   (1)從后向前,取小值:直接后繼結點的Vl(j) –發出邊(從頂點發出的邊)的權值,有多個值的取較小者;

   (2)終結點Vl(j)已知,等於它的Ve(j))

 

  如上圖各頂點(事件)的Vl(j): (從V7開始,它的最早、最晚發生時間相同,都為10):

 

  

 

   

  Ø  e(i): 若活動ai由弧<vk,vj>表示,則活動ai的最早開始時間應該等於事件vk的最早發生時間。因而,有:e(i)=ve(k);(即:邊(活動)的最早開始時間等於,它的發出頂點的最早發生時間

如上圖各邊(活動)的e(i):

 

  

 

  Ø  l(i): 若活動ai由弧<vk,vj>表示,則ai的最晚開始時間要保證事件vj的最遲發生時間不拖后。 因而有:l(i)=vl(j)-len<vk,vj>(為邊(活動)的到達頂點的最晚發生時間減去邊的權值

如上圖各邊(活動)的l(i):

 

  

 

  至此已介紹完了四個特征屬性的求法,也求出了上圖中邊的e(i)和l(i),取出e(i)=l(i)的邊為a1、a2、a4、a8、a9,即為關鍵路徑上的邊,所以關鍵路徑有兩條:a1 a4 a9和 a2 a8 a9

 

  

 

總結

  求關鍵路徑,只需理解頂點(事件)和邊(活動)各自的兩個特征屬性以及求法即可:

   Ø  先根據首結點的Ve(j)=0由前向后計算各頂點的最早發生時間

   Ø  再根據終結點的Vl(j)等於它的Ve(j)由后向前依次求解各頂點的最晚發生時間

   Ø  根據邊的e(i)等於它的發出頂點的Ve(j)計算各邊的最早開始時間(最早開始,對應最早發生)

   Ø  根據邊的l(i)等於它的到達頂點的Vl(j)減去邊的權值計算各邊的最晚開始時間(最晚開始,對應最晚發生)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM