田文迪 孫子丹 王仕首
(1.武漢紡織大學管理學院,湖北 武漢 430000;2.湖北商貿學院,湖北 武漢 430000)
項目管理的應用已從建筑和工程領域擴展到信息技術、研發、軟件開發以及新產品和服務開發領域。然而,缺乏有效的項目計劃和實施,會導致項目交付延遲,甚至在完成前被取消。項目經理為應對這些情況,提出多種不同的管理方法。其中,Goldratt將約束理論(Theory of Constraints,TOC)應用于關鍵鏈項目管理方法(Critical Chain Project Management,CCPM)。該方法認為關鍵鏈是決定項目工期最長的一條鏈,與關鍵路徑不同,它不僅考慮了活動之間的緊前約束關系,還考慮了資源約束。在關鍵鏈的末端插入項目緩沖來吸收項目中的不確定性,在關鍵鏈與非關鍵鏈交匯處插入接駁緩沖來保護關鍵鏈從而保證項目按時完工。因此,緩沖區成為關鍵鏈項目管理的重要內容,緩沖區位置的設置和大小的確定是CCPM研究的熱點和重點問題[2]。
現有接駁緩沖區的研究主要集中在緩沖區大小的研究。Tukel等[3]提出了根據資源緊張度和網絡密度來確定接駁緩沖區大小的方法,并通過大規模仿真實驗證實了所提方法在項目不確定性較低時尤其有效;Zhang等[4]采用設計結構矩陣(DSM)來分析活動之間的信息流,通過由實體資源緊張度和信息資源緊張度組成的綜合資源緊張度來調整和確定項目緩沖區大小;張俊光等[5]運用熵權法評估項目的不確定性,并利用模糊方法確定離散程度來計算項目緩沖區;Zohrehvandi等[6]提出一種緩沖區大小和控制算法(BSCA)作為啟發式算法,用于計算項目緩沖區和接駁緩沖區;胡雪君等[7]運用貝葉斯網絡技術分析關鍵風險因素,運用資源流網絡方法衡量資源約束風險,進行項目緩沖大小的計算;Zhao等[8]提出了一種對關鍵鏈項目重排的兩階段方法,并將這種方法與CCPM和RSEM方法結合起來確定緩沖區的大小;郭恒棟等[9]通過考慮不同資源類型,并在資源緊張度的基礎上進行改進,提出了一種基于改進資源緊張度、網絡復雜度、項目經理風險偏好調整系數等不確定性因素的項目和接駁緩沖區大小計算方法;黃建文等[10]綜合考慮資源柔性和資源緊張度對項目的影響,提出了一種計算緩沖區大小以及分配緩沖區的方法。
與上述研究不同的是,Leus和Herroelen[11]提出一種新的緩沖設置方法——ADFF(Adapted Float Factor Model)。該方法將緩沖區分散插入各活動任務之間,被看成是一種分散緩沖管理方法,通過模擬仿真實驗,證明該方法在出現擾動較大的情況下能生成比較穩健的、具有魯棒性的調度計劃;Vonder等[12-13]提出了RFDFF(Resource Flow Dependent Float Factor)方法并運用分散緩沖管理思想,比較了多種求解魯棒性項目調度計劃的啟發式算法,包括 RFDFF方法、VADE(Virtual Activity Duration Extension)方法、STC(Starting Time Criticality)方法等,最后通過仿真實驗,證明STC方法的效果最好。
綜上所述,對關鍵鏈的研究多集中在關鍵鏈方法的改進,緩沖區研究成果集中在緩沖區大小計算,對于緩沖區位置設置研究較少。對于現有緩沖區位置的設置主要分為兩種,一種是傳統CCPM中的接駁緩沖,可稱為集中緩沖;另一種是分散緩沖。趙雁[14]研究了集中緩沖和分散緩沖的區別,結果表明:分散緩沖具有更好的解魯棒性,當項目工期較緊的情況下,分散緩沖具有更好的魯棒性;當活動時間的不確定性程度較大時,集中緩沖的質量魯棒性較好。雖然分散緩沖在項目工期較緊的情況下更加有效,但分散緩沖和關鍵鏈的集中緩沖思想存在一定差別。分散緩沖在項目活動任務之間分散插入緩沖,而關鍵鏈的集中緩沖則是針對性地插入緩沖保護關鍵鏈,在實際項目中操作更簡單、合理。因此,首先,對集中緩沖展開研究,指出傳統接駁緩沖僅考慮活動的緊前關系,沒有考慮資源約束;其次,由于資源約束時常出現傳統接駁緩沖無法有效保護關鍵鏈的現象,由此提出了一種考慮資源流動的接駁緩沖區設置的方法;最后,結合案例說明該方法的有效性,能夠有效保護關鍵鏈,提高項目績效。
CCPM方法是一種進度網絡分析技術,可以根據有限的資源對項目進度計劃進行調整,該方法結合了確定性與隨機性辦法。傳統的CCPM方法執行盡可能晚的調度方法,所有活動都是關鍵的,所以這些活動的延遲會導致項目完工時間變長,受限的資源也會影響非關鍵鏈上的活動。為了緩解這種問題,CCPM引入了項目和接駁緩沖區。傳統的接駁緩沖區在關鍵鏈和非關鍵鏈處插入,以此來保護關鍵鏈不受到相應的非關鍵鏈上活動延遲所帶來的影響。
CCPM方法通過考慮資源受限和某些人為活動的影響來確定項目的持續時間,克服了關鍵路徑方法(CPM)和計劃評審技術(PERT)等存在的缺點。后者通過考慮活動的持續時間(分別為確定性和隨機性)和優先關系來確定項目的持續時間,而沒有考慮資源的受限能力。相反,CCPM確定了關鍵活動,同時考慮到資源的使用,并引入了項目和接駁緩沖區,以保障項目的最終計劃日期。這個方法也可能涉及一些問題,例如由于關鍵鏈之外的活動的延遲而導致關鍵活動的延遲。由于CCPM只考慮了關鍵活動之間的緊前緊后關系以及資源的約束,沒有考慮到非關鍵鏈上的活動與關鍵活動之間的資源情況,如果非關鍵鏈上的某個活動與關鍵鏈的活動存在資源沖突,該活動的延遲就會發生串聯效應,導致接駁緩沖在沒有消耗的情況下延遲關鍵鏈上的活動。例如,項目中包含有1種可更新資源,項目網絡圖如圖1所示,資源流動圖如圖2所示,其中項目關鍵鏈為S—2—4—5。在這個網絡中,活動S是虛擬的。

圖1 項目網絡圖

圖2 資源使用圖
傳統的CCPM方法會在活動3和活動5之間設置接駁緩沖,帶有緩沖插入的基準計劃圖如圖3所示。在圖2中,由于活動3和活動4之間存在資源的流動,活動3的延遲也會影響到屬于關鍵鏈上活動4的開始,而緩沖FB失去保護關鍵鏈的作用,最終使整個項目的關鍵鏈變長,影響整個工期。
傳統的CCPM方法效果雖好,但時常會發生接駁緩沖區無法有效保護關鍵鏈,導致關鍵鏈發生延遲的情況。Vanhoucke[15]指出,雖然在基準計劃時間表中插入緩沖區很簡單,但這種插入機制通常是一項繁瑣的任務,這與關鍵鏈/緩沖區管理的總體理念產生沖突。在這方面,傳統的CCPM程序中對接駁緩沖區識別的問題是關鍵鏈雖考慮了資源和活動優先關系,但接駁鏈僅基于CPM網絡沒有考慮到資源的約束。
基于此,本文通過考慮非關鍵鏈和關鍵鏈活動存在的資源關系,添加附加接駁緩沖,以減少非關鍵鏈上活動由于資源約束而影響關鍵鏈上活動,進而對項目整體工期造成影響。
本文在CCPM接駁緩沖(集中緩沖)的基礎上,不僅考慮非關鍵鏈活動與關鍵鏈活動之間的緊前關系,還充分考慮非關鍵鏈活動與關鍵鏈活動之間的資源流動。設置接駁緩沖,如果非關鍵鏈活動i和關鍵鏈活動j之間存在資源流動的關系,則在兩項活動之間添加緩沖,稱之為附加接駁緩沖,保護非關鍵鏈活動和關鍵鏈活動不受到資源沖突的影響,從而保障項目的完工時間。具體設置步驟如下:
(1)采用Demeulemeester和Herroelen[15]設計的分支定界算法生成項目的最晚開始的基準調度計劃。
(2)采用田文迪等[17]提出的啟發式算法來識別關鍵鏈和非關鍵鏈。
(3)在所有非關鍵鏈與關鍵鏈的交接點添加接駁緩沖區(FB),以此來保護關鍵鏈。此時只標記接駁緩沖位置,不計算接駁緩沖大小。
(4)在最晚開始基準計劃基礎上采用Artigue等[18]方法得到活動之間的資源流動關系。
(5)活動序號由小到大依次判斷非關鍵活動與關鍵活動之間是否存在流動關系(從非關鍵活動流向關鍵活動),若存在,則需要在該非關鍵活動與關鍵活動之間添加附件接駁緩沖,同時將原有的非關鍵鏈分割成兩條非關鍵鏈。反復循環,直至查找到所有的附加接駁緩沖。
附加接駁緩沖區大小設置采用類似接駁緩沖大小的方法,即經典的剪切法見公式(1)和根方差法見公式(2)。
(1)
(2)
式中,EFB為附加接駁緩沖大小;Duration(i)為活動i的持續時間;NCC為非關鍵鏈;i∈NCC表示活動i在非關鍵鏈上。
(6)在第三步標記接駁緩沖位置處插入接駁緩沖。由于本文不是緩沖區設置大小的研究,直接選用經典的Goldratt[1]提出的剪切法見公式(3)和根方差法見公式(4)來計算緩沖區大小
(3)
(4)
式中,FB為接駁緩沖區大小;Duration(i)為活動i的持續時間;NNCC為非關鍵鏈;i∈NNCC表示活動i在關鍵鏈上,此處非關鍵鏈是在第五步循環查找附加接駁緩沖后生成的新的非關鍵鏈。
(7)插入接駁緩沖和附加接駁緩沖區后,將緩沖區看成活動,如果出現緊前活動沖突或資源沖突,則進行項目重排,生成一個新的項目調度計劃。
為了驗證考慮資源約束的接駁緩沖新方法的有效性,本文以某大廈地下停車場第二層開挖管道工程為例,通過模擬仿真與傳統接駁緩沖進行對比實驗。該工程項目有10項施工作業,有3種不可再生資源,資源量可用量分別為3,1,2。項目AOA網絡圖如圖4所示。各活動基本信息見表1。

表1 活動基本信息

圖4 項目AOA網絡圖
采用Demeulemeester和Herroelen[16]所設計的分支定界算法得到最晚開始的基準計劃,如圖5所示。

圖5 基準計劃圖
采用田文迪等[17]提出的啟發式算法來識別關鍵鏈和非關鍵鏈,關鍵鏈為S—2—7—8—10,非關鍵鏈有兩條,分別為1—4—5和3—6—9。
如果采用傳統CCPM接駁緩沖方法,可以得到帶有緩沖插入的項目基準計劃圖,如圖6所示,圖中緩沖大小采用剪切法計算取整獲得。可以看出,即使接駁緩沖區未完全消耗,接駁鏈上活動4的延遲仍會影響屬于關鍵鏈上活動7的開始,活動4延遲之后的基準計劃圖如圖7所示。
標記接駁緩沖區位置,分別為非關鍵活動5與關鍵活動8的交匯處,非關鍵活動9與關鍵活動10的交匯處。
在最晚開始基準計劃基礎上得到活動之間的資源流動關系。
由于該項目存在三種資源,為了得到活動之間存在的資源流動關系,可以根據帶有緩沖插入的項目基準計劃圖分別繪制出三種資源的使用圖,如圖8所示。

圖8 三種資源的使用圖
對上述三種資源的使用圖進行整理后,可以得到各項活動之間的資源流矩陣表,見表2。查找非關鍵活動與關鍵活動之間存在資源流動關系(非關鍵活動流向關鍵活動),可以得到活動4與活動7之間存在這種資源流動約束,則只需在活動4和活動7之間添加附加接駁緩沖。在活動4和活動7之間增加新的資源流活動關系后,可以得到新的含有資源流動的項目網絡圖(圖9),其中虛線表示活動之間存在資源流動關系。

表2 資源流動矩陣表

圖9 考慮資源約束的項目網絡圖
從活動序號由小到大依次查詢發現非關鍵活動4與關鍵活動7之間存在資源流動,則活動4與7之間需要添加新的附加接駁緩沖,同時非關鍵鏈1—4—5發生斷裂,可以生成兩條非關鍵鏈1—4和5,采用剪切法計算附加接駁緩沖EFB=(2+2)/2=2,依次反復查詢,直到找出所有資源流動關系。
在第三步標記的接駁緩沖處插入接駁緩沖FB1=1(非關鍵鏈5的緩沖1/2向上取整為1)和接駁緩沖FB2=(2+1+4)/2=4(非關鍵鏈3—6—9的緩沖7/2向上取整為4)。
在基準計劃中插入接駁緩沖和附加接駁緩沖后,可以得到一個新的項目基準計劃圖,插入附加接駁緩沖和接駁緩沖后的項目基準計劃如圖10所示。

圖10 插入附加接駁緩沖和接駁緩沖后的項目基準計劃
在確定后新的項目基準計劃圖之后,對圖6和圖10兩種基準計劃進行仿真實驗,緩沖大小設置分別采用了經典的剪切法和根方差法,以項目魯棒性成本(SC)、項目及時完工率(TPCP)、緩沖消耗率(BC)以及項目平均完工時間(APL)4個指標作為評價指標。實驗相關參數設置見表3,實驗結果對此見表4和表5。

表3 實驗參數設置

表4 實驗結果對比(采用剪切法計算緩沖大小)

表5 實驗結果對比(采用根方差法計算緩沖大小)
從實驗結果顯示來看,隨著項目不確定性的提高,APL在增加,TPCP在降低,SC在增加,BC在升高。所提出來的方法比傳統的CCPM方法得到的APL更低,TPCP更高,SC也更低,BC消耗更多。因此,本文提出的方法可有效地保護關鍵鏈,從而提高項目績效。
本文綜合考慮了非關鍵活動和關鍵活動之間存在資源流動關系,提出了設置附加接駁緩沖區的方法,能夠很好保護關鍵鏈不受非關鍵活動的影響。這種方法可以減小非關鍵鏈和關鍵鏈的資源沖突所產生的進度計劃偏差,縮短計劃工期,提高完工概率,為項目進度管理提供一個有效的方法。該方法通過實例中進行測試,結果顯示,運用該方法可降低項目風險。