1. 程式人生 > >關鍵路徑法(Critical Path Method, CPM)

關鍵路徑法(Critical Path Method, CPM)

1、活動節點描述及計算公式

通過分析專案過程中哪個活動序列進度安排的總時差最少來預測專案工期的網路分析。

產生目的:為了解決,在龐大而複雜的專案中,如何合理而有效地組織人力、物力和財力,使之在有限資源下以最短的時間和最低的成本費用下完成整個專案。
關鍵路徑是相對的,也可以是變化的。

關鍵路徑可以有多條,關鍵路徑上的活動時差為0。

活動節點圖如下:

ES:最早開始時間(Earliest Start),是指某項活動能夠開始的最早時間,只決定於專案計劃,只要計劃的條件滿足了就可以開始的時間。

EF:最早結束時間(Earliest Finish),是指某項活動能夠完成的最早時間。其中EF = ES+DU, DU為活動持續時間,順推法先知道開始時間。

LF:最遲結束時間(Latest Finish),是指為了使專案在要求完工時間內完成,某項活動必須完成的最遲時間。往往決定於相關方(客戶或管理層)的限制。

LS:最遲開始時間(Latest Start),是指為了使專案在要求完工時間內完成,某項活動必須開始的最遲時間。其中LS = LF -DU,DU為持續時間,逆推法先知道結束時間。

 順推法:

1、任一活動的最早開始時間,等於所有前置活動的最早結束時間的最大者; 

2、任一活動的最早結束時間,等於該活動的最早開始時間 + 該活動工期 ; 

3、 沒有前置活動的,ES等於專案的開始時間。

EF = ES + DU

逆推法:

從網路圖右側開始,為每項活動制定最遲開始和最遲 結束時間,進行到網路圖開始(最左邊)。

1、任一活動的最遲結束時間,等於所有後續活動的最遲開始時間的最小者; 

2、任一活動的最遲開始時間,等於該活動的最遲結束時間 - 該活動工期 ; 

3、 沒有後續活動的,LF等於專案的結束時間或者規定的時間。

LS = LF - DU

總浮動時間:

TF = LF – EF 或者 LS- ES ,活動在TF之間推遲不影響總工期(注意如果超 出該TF,則關鍵路徑將發生變化),TF為0的路徑為CP(關鍵路徑)自由時差FF = 緊後ES - EF,活動在FF內推遲不影響緊後活動。

4. 活動從第0天開始還是從第1天開始

採用順推法和逆推法進行進度網路路徑計算時,需要關注活動是從第0天開始還是從第1天開始,不同的假設計算的結果是不一樣的。首先需要明確以下幾個概念。

  • 活動的持續時間DU是指活動的工作時間段,例如一個活動持續時間是24小時,是指3個工作日(每天8小時)。

  • 活動的開始時間是指活動開工日的上班開始時間;活動結束是指開工日的下班時間。也就是說假設一個活動的持續時間是2天,是指從第1天上班時間,到第2天下班時間的所有工作時間段。

所謂活動從第0天還是第1天開始,意思是說要不要把活動開始的那一天計算在工作時間段內。因為現實中第0天是不存在的,所以活動開始的那一天就不需要計算在內;而活動從第1天開始,由於第1天是存在的,就需要計算在工作時間段內。這兩種情況導致當前活動的EF或者LS,緊後活動的ES和LF在計算時要考慮是否減去或加上這1天的問題。

無論是從第0天開始,還是第1天開始,都不會影響關鍵路徑的和浮動時間的計算方法,但是考試中如果弄錯了則會影響計算結果,考試中為了簡化計算通常採用第0天開始,現實中為了與實際相符合通常採用第1天開始。下面就這兩種方式舉例說明。

 

             

圖6-25

 

第一種情況:活動從第0天開始。如圖6-25

計算公式如下:

(1) 對於當前活動:

  • 順推時 EF  = ES + DU;

  • 逆推時 LS=  LF – DU

(2)對於緊後活動:

  • 順推時ESi= EFi-1,;

  • 逆推時LFi-1 = LS  (例如逆推時活動C相當於活動D的緊後活動) 

其中自左向右,“i”代表當前活動,則“i-1”代表“i”的緊前活動。

例如:對於活動A、B的最早時間:

  • EFA= ESA+DU = 0+5 = 5,

  • ESB = EFA= 5;

對於活動D和C的最晚時間:

  • LSD= LFD – DU = 30 -15 =15,

  • LFC = LSD= 15;

第二種情況:活動從第1天開始。如圖6-26


圖6-26

 

對於當前活動

  • 順推時 EF  = (ES + DU)-1; 

  • 逆推時 LS =(LF – DU)+1

對於緊後活動

  • 順推時ESi= EFi-1 +1;

  • 逆推時LFi-1 = LS -1 

其中自左向右,“i”代表當前活動,則“i-1”代表“i”的緊前活動。例如:

對於活動A、B的最早時間:

  • EFA= ESA+DU-1 = 1+5-1 = 5,

  • ESB = EFA+1= 5+1 = 6;

對於活動D和C的最晚時間:

  • LSD= LFD – DU+1 = 30 -15 +1 =16,

  • LFC =LSD -1 = 15;

@提示:從上兩種計算方法來看,活動從第0天開始顯然對人工計算來說更加直觀簡便,這種方法的缺點是與日曆日期的對應關係是不一致的。活動從第1天開始計算的結果與日曆日期是一致的,但是計算過程是不直觀的。好在考試中一般不會涉及具體的日曆日期,所以推薦使用活動從第0天開始的計算方法。

 

二:

 

 

 

 

 

文章摘抄:
http://blog.sina.com.cn/s/blog_c6aa25f00102yel2.html  <