- 相關(guān)推薦
資源多約束進度網(wǎng)絡(luò)的風險評估
摘要:在項目管理中由于項目龐大、持續(xù)周期長、影響因素繁多,不可避免地會面對潛在的風險。本文對項目潛在的風險進行評估,讓項目的管理者對項目有一個長遠的認識,防范風險于未然。本文應用資源多約束下項目進度調(diào)度(resource-constrained project scheduling problem,RCPSP)問題模型,對進度風險評估系統(tǒng)進行了需求分析和模塊劃分,設(shè)計了系統(tǒng)的框架層次、數(shù)據(jù)庫、資源多約束下的蒙式仿真算法,給出了依據(jù)仿真結(jié)果計算進度風險和成本風險的統(tǒng)計思路。
關(guān)鍵詞:進度風險評估;成本風險;資源多約束;蒙式仿真
引言
項目管理是通過項目經(jīng)理和項目組織的努力,運用系統(tǒng)理論和方法對項目及其資源進行計劃、組織、協(xié)調(diào)、控制,旨在實現(xiàn)項目特定目標的管理方法體系。項目管理的對象是項目,即一系列的臨時任務,它的目的是通過運用科學的項目管理技術(shù),更好地實現(xiàn)項目目標。項目管理的職能與其它管理的職能是完全一致的,即是對組織的資源進行計劃、組織、指揮、控制。資源是指項目所在的組織中可得到的、為項目所需要的那些資源,包括人員、資金、技術(shù)、設(shè)備等,在項目的管理中,時間是一種特殊的資源。項目管理的任務是對項目及其資源的計劃、組織、協(xié)調(diào)、控制。
任何項目的策劃和執(zhí)行都包含大量不同的活動及各種人力、物力資源。資源是項目執(zhí)行過程中不可缺少的重要組成部分,而這些資源的有效的可用量往往是有限的。有的資源是可循環(huán)利用的,而有些則是一次性的。如何以最佳方式安排執(zhí)行項目中的各個活動,以使其順利完成,就構(gòu)成了資源受限下項目進度調(diào)度問題的基本概念。
資源約束下項目調(diào)度問題(resource-constrained project scheduling problem,RCPSP)是一類應用范圍十分廣泛的組合優(yōu)化問題,它研究在資源稀缺的情況下滿足資源的約束,合理安排任務的開始時間和結(jié)束時間,從而在資源最優(yōu)利用的同時實現(xiàn)既定目標的最優(yōu)化。它被證明是一種強NP難題。資源約束下項目調(diào)度問題模型豐富,根據(jù)資源類型和項目結(jié)構(gòu)的不同可以分為眾多種類,許多組合優(yōu)化問題是RCPSP的特殊情形。例如作業(yè)車間(job shop)調(diào)度,流水車間(flow shop)調(diào)度等。此外RCPSP廣泛存在于建筑工程,軟件開發(fā),飛機和輪船制造等單件或小批量生產(chǎn)方式的企業(yè)中。因此研究RCPSP具有重要的理論和現(xiàn)實意義,可以廣泛應用于實際。
近年來,RCPSP得到了許多擴充。鑒于應用背景和目標函數(shù)的不同,RCPSP可擴展為時間/費用權(quán)衡問題(TCTP),資源水平問題(RLP)和凈現(xiàn)值(NPV)問題等。進一步考慮不確定因素,又產(chǎn)生了隨機調(diào)度問題。作為項目調(diào)度的有效工具,甘特圖、關(guān)鍵路徑法和計劃評審技術(shù)已廣泛應用于各種項目調(diào)度問題。在算法方面,尤其是求解算法(包括智能算法)得到了廣泛而深入的討論,同時得到了許多成功應用。
一、系統(tǒng)需求分析與設(shè)計
本文在功能方面,針對管理者的日常需求,將資源多約束下進度風險評估系統(tǒng)功能分為:項目管理,資源管理,項目網(wǎng)絡(luò)圖(任務屬性設(shè)置),項目仿真,項目仿真版本管理等項功能。
項目管理:對項目的任務節(jié)點信息和節(jié)點之間的約束關(guān)系等進行記錄和管理,并可以對項目進行資源分配。
資源管理:對資源的屬性和數(shù)量等進行記錄和管理。
項目網(wǎng)絡(luò)圖:展示項目各個任務節(jié)點之間的約束關(guān)系,形成網(wǎng)絡(luò)圖?梢詫γ總非概要任務節(jié)點進行任務屬性的設(shè)置和資源需求的設(shè)置,為仿真進行準備。
項目仿真:對設(shè)置好任務節(jié)點屬性的項目進行帶資源約束的仿真或不帶資源約束的仿真。
項目仿真版本管理:管理所有項目仿真好的版本.可以選擇某個版本進行查看,也可以刪除某個版本。
因此,本系統(tǒng)包括項目管理模塊、項目網(wǎng)絡(luò)圖模塊、仿真版本和新仿真模塊、仿真結(jié)果模塊、資源管理模塊。
項目管理模塊:提供了必要的項目管理及資源分配功能。用戶可以對項目進行管理,例如,通過讀人XML配置文件添加項目、修改項目描述、查看項目XML文件等功能。用戶也可以將已經(jīng)存在的資源分配給某一個具體項目,以便為有資源約束的仿真做準備。
項目網(wǎng)絡(luò)圖模塊:展示項目的任務節(jié)點信息和它們的相互關(guān)系,以網(wǎng)絡(luò)圖的形式表示出來。用戶可以通過點擊某個具體節(jié)點設(shè)置它的屬性(統(tǒng)計學分布、期望、方差等)和需求資源的情況,為帶資源的仿真和不帶資源的仿真做進一步準備。
仿真版本和新仿真模塊:管理和顯示已經(jīng)存在的仿真版本和新建一個版本開始仿真。用戶可以選擇一個已經(jīng)存在的仿真版本進行查看或者刪除,也可以新建某個項目的一個版本,進行一定次數(shù)的帶資源的仿真或不帶資源的仿真。
仿真結(jié)果模塊:展示某個版本的仿真結(jié)果,以圖表的方式展現(xiàn)如關(guān)鍵路徑、平均工期、任務關(guān)鍵路徑概率、總工期區(qū)間分布、進度風險、成本風險、進度成本聯(lián)合風險等信息。用戶可以通過瀏覽這些圖表形式的仿真結(jié)果,直觀地了解系統(tǒng)對于項目的風險評估信息,方便地做出最有利的決策。
資源管理模塊:管理和顯示資源的相關(guān)信息,用戶可以創(chuàng)建、修改、刪除某個資源。也可以設(shè)置資源的相關(guān)屬性(名稱、數(shù)量、是非為消耗性資源等)。
二、大數(shù)據(jù)多約束進度風險評估算法
本算法的核心類似銀行家算法,運用到了拓撲排序和隊列的相關(guān)知識,其思路是:枚舉出所有可能的全拓撲資源分配序列(按優(yōu)先級剔除部分),然后對其逐一進行模擬比較,算出最優(yōu)分配序列。在分配資源和計算節(jié)點工期的過程中,按照銀行家算法的思想,節(jié)點在申請資源的時候直接申明所需的最大資源,而且項目盡量滿足節(jié)點的申明,除非超過擁有資源的最大數(shù)量。這樣使得至少有一個節(jié)點是出于就緒狀態(tài)的,避免死鎖。
具體步驟:
A.輸入項目基本信息和結(jié)構(gòu)(輸入項目XML)。
B.輸入項目資源信息
C.輸入項目每個節(jié)點的統(tǒng)計學屬性、優(yōu)先級關(guān)系和資源需求。
D.按照優(yōu)先級計算項目節(jié)點的全拓撲排序資源分配序列。
E.按順序選擇一個資源分配序列進行模擬。
F.將所有人度為零的節(jié)點加入等待隊列。
G.按順序給等待隊列節(jié)點分配資源,如果節(jié)點資源滿足則把它改為加入就緒隊列并將其所有后繼節(jié)點人度減一。
H.如果就緒隊列不為空,則計算節(jié)點工期,按最小工期的節(jié)點推進項目。否則說明沒有就緒節(jié)點,本資源分配序列無法完成,返回E。
I.計算在等待隊列的節(jié)點的等待資源時間。
J.計算完成節(jié)點的成本。
K.回收完成節(jié)點的資源,將其剔除就緒隊列。
L.如果所有節(jié)點都已經(jīng)完成則本資源分配序列結(jié)束,計算總工期。否則返回F。
M.如果所有資源分配序列都已經(jīng)模擬過則算法結(jié)束,否則返回E。
N.輸出任務等待的時間和等待的資源。
0.輸出項目總工期和總成本。
算法流程圖如圖2所示。
設(shè)Sequence_List為資源分配序列數(shù)組,Sequence為資源分配序列,Wait List為等待隊列,Ready_List為就緒隊列,Task_List為節(jié)點列表。算法的偽代碼可以表示為:
Foreach Sequence in Sequence_List
Foreach task in Task_ List
If (task.InDegree=0)then
Wait_List.Add(task) For i=l to Sequence.length do
Forj=l to Wait_List.count do
If(Wait_List.count[j].id!=Sequence[i])
Continue
If(allocateResource(Wait_List.count[j])=OK)
Ready_List.Add(task)
For k=l to task.succeed.lengh do
task.succeed[k]-
Wait_List.Remove(task)
If(Ready_List!=null)
minValue←Findmin(Ready_List)
Duration+=minValue;
Foreach task in Wait_List
Task.waittime+=minValue
For i=l to Ready_List.count do
If(Ready_List[i].Value<=minValue)
Mo ney+= getMo ney(Ready_List [i])
recycleRe source (Ready_List[i])
Ready_List[i].Remove(task)
Else
Ready_List[i].Value-=minValue
Else
Finish()
本系統(tǒng)的資源約束仿真算法還運用到了關(guān)鍵路徑算法,它為資源約束仿真算法的子過程。其算法步驟如下:
A. 拓撲排序,將所有人度為零的點壓人堆棧
B. 計算棧頂節(jié)點最早開始工期Ve并將其所有后繼節(jié)點人度減一
C. 彈出堆棧。
D. 如果堆棧不為空則返回B。
E. 如果還有節(jié)點未完成則返回A
F. 逆拓撲排序,將所有出度為零的點壓人堆棧
G. 計算棧頂節(jié)點最遲開始工期Vl并將其所有前驅(qū)節(jié)點出度減
H 如果Vl=Ve,將節(jié)點標記為關(guān)鍵路徑上的節(jié)點。
I. 彈出堆棧。
J. 如果堆棧不為空則返回G。
K. 如果還有節(jié)點未完成則返回F
L 算法結(jié)束
算法的流程圖如圖3所示。
三、系統(tǒng)仿真及驗證
蒙式仿真(Monte Carlo)方法是通過大量的計算機模擬來檢驗系統(tǒng)的動態(tài)特性并歸納出統(tǒng)計結(jié)果的一種隨機分析方法,也稱為統(tǒng)計模擬法或隨機采樣技術(shù)。它包括偽隨機數(shù)的產(chǎn)生,蒙式仿真設(shè)計以及結(jié)果解釋等內(nèi)容,其作用在于用數(shù)學方法模擬真實物理環(huán)境,并驗證系統(tǒng)的可靠性與可行性。它不僅適用于處理隨機型問題,如存儲系統(tǒng)、排隊系統(tǒng)、質(zhì)量檢驗問題、社會救急系統(tǒng)問題、生態(tài)競爭問題和傳染病蔓延問題等;也可處理確定型問題,如計算多重積分、解積分方程及微分方程、解整數(shù)規(guī)劃(特別是非線形整數(shù)規(guī)劃)等。
蒙式仿真解決問題的基本思想是:首先建立與描述該問題相似的概率模型,然后對模型進行隨機模擬或統(tǒng)計抽樣,在利用所得到的結(jié)果求出特征的統(tǒng)計估計值作為原問題的近似解,并對解的精度做出某些估計。蒙式仿真方法的主要理論依據(jù)是大數(shù)定理,其主要手段為隨機變量的抽樣分析。
本系統(tǒng)運用了蒙式仿真的基本思想,也就是說按照一定的數(shù)學分布用多次模擬取隨機數(shù)的辦法去估計實際的值,模擬的次數(shù)越多則越貼合實際。由統(tǒng)計結(jié)果可以很容易地獲得項目進度和成本的區(qū)間分布(進度包括了工期和等待資源的時間,成本包括了直接成本和間接成本),從而知道項目進度和成本大于某個閾值的概率是多少,也就是發(fā)生風險的概率是多少。如進度風險圖4,成本風險圖5,進度成本聯(lián)合風險圖6。
進度風險的統(tǒng)計思路:假設(shè)仿真次數(shù)為N,N次仿真結(jié)果中最大工期為Dmax,最小工期為Dmin。則依次取基準點Sn=(Dmax-Dmin)/lO*n+Dmin,即將區(qū)間十等分。后統(tǒng)計工期大于基準點Sn的結(jié)果數(shù)量Nn則進度風險概率Pn=Nn/N。(n=l,2,3…10)
成本風險的統(tǒng)計思路:同理,假設(shè)仿真次數(shù)為N,N次仿真結(jié)果中最大成本為Cmax,最小成本為Cmin。則依次取基準點Sn=(Cmax-Cmin)/lO*n+Cmin,即將區(qū)間十等分。后統(tǒng)計成本大于基準點Sn的結(jié)果數(shù)量Nn則成本風險概率Pn=Nn/N。(n=l,2,3…10)
進度成本聯(lián)合風險是將進度風險和成本風險兩個二維圖統(tǒng)計結(jié)果結(jié)合,進而生成的三維散點圖統(tǒng)計結(jié)果。散點的坐標可以表示為(Sx,Sy,P)。Sx對應工期X軸上的某個點,Sy對應成本Y軸上的某個點,P為風險概率。則散點所表示的意義是工期大于Sx,成本大于Sy的聯(lián)合風險概率為P。
四、結(jié)論
本文對項目潛在的風險進行評估,讓項目的管理者對項目有一個長遠的認識,防范風險于未然。本文應用資源多約束下項目進度調(diào)度(resource-constrained project scheduling problem,RCPSP)問題模型,對進度風險評估系統(tǒng)進行了需求分析和模塊劃分,設(shè)計了系統(tǒng)的框架層次、數(shù)據(jù)庫、資源多約束下的蒙式仿真算法,給出了依據(jù)仿真結(jié)果計算進度風險和成本風險的統(tǒng)計思路。
【資源多約束進度網(wǎng)絡(luò)的風險評估】相關(guān)文章:
論析網(wǎng)絡(luò)應用流分析與風險評估系統(tǒng)03-26
相似云下的網(wǎng)絡(luò)安全風險評估論文11-27
基于粗集的神經(jīng)網(wǎng)絡(luò)的項目風險評估02-27
基于粗集神經(jīng)網(wǎng)絡(luò)的項目風險評估03-28
基于粗集的神經(jīng)網(wǎng)絡(luò)的項目風險的評估03-29
研討壽險公司的風險評估03-26
資產(chǎn)評估風險及其防范12-08
我國壽險公司風險評估研究11-25