張俊光 徐振超??
摘要:提出了一種基于動態(tài)貝葉斯網絡的研發(fā)項目風險概率評估模型,將時間序列理論與貝葉斯理論相結合,通過概率和有向無環(huán)圖表達了不同時間片段之間風險因素狀態(tài)變化的關系。同時發(fā)現在樣本數據缺失的情況下,采用Leaky Noisy-or gate模型來計算節(jié)點的條件概率,這樣可以得出更為客觀的評估結果。通過與靜態(tài)貝葉斯網絡評估結果對比,動態(tài)貝葉斯評估模型提高了研發(fā)項目風險概率評估的準度,為風險控制提供了更為科學的依據。
關鍵詞:項目管理;靜態(tài)貝葉斯網絡;動態(tài)貝葉斯網絡;研發(fā)項目;風險概率
DOI:10.13956/j.ss.1001-8409.2015.02.28
中圖分類號:F224 文獻標識碼:A 文章編號:1001-8409(2015)02-0131-05
Abstract:A research and development (R&D) project risk probability assessment model based on dynamic Bayesian network is proposed, which combines time series theory and Bayesian theory. Through probability and directed acyclic graph, it expresses the changing relationship of risk factors state between different time segments. Moreover, in the case of missing data samples, it uses the Leaky Noisyor gate model to calculate the conditional probability. Then it can obtain a more objective assessment result. Compared with the assessment of static Bayesian networks, dynamic Bayesian network model enhances the R&D project risk probability assessment accuracy, which can provides a more scientific basis for risk control.
Key words:project management; static Bayesian networks; dynamic Bayesian network; R&D project; risk probability
研發(fā)項目開發(fā)過程的特殊性,使得產品開發(fā)周期中存在著許多不確定的風險因素,而這些風險因素的存在,常常導致研發(fā)項目失敗。根據Standish Group對美國公司的一項調查,只有28%的研發(fā)項目在預定的時間和預算內完成[1]。軟件項目風險管理之父Barry Boehm在軟件項目風險評估的系統(tǒng)化的定義與分析方面做了開創(chuàng)性的工作,他以風險的影響大小來量化風險,從而對已知的風險進行優(yōu)先級排序,進而控制風險。他將風險影響水平定義為:風險當量(RE)=P×C,其中P是出現不如意結果的可能性,C是不如意結果發(fā)生帶來的后果[2]。
1研究述評
隨著研發(fā)項目風險管理理論的發(fā)展完善,部分學者開始引入貝葉斯網絡理論,唐愛國等就將貝葉斯網絡與研發(fā)項目風險評估結合起來,提供了一種新的評估方法[3];金俊麗等將遺傳算法和EM算法與貝葉斯網絡結合起來,有效減少了人為構建貝葉斯網絡及其參數帶來的主觀性,使研發(fā)項目風險評估更加科學、合理[4]。貝葉斯網絡以概率論和有向無環(huán)圖為基礎,以條件概率來表示變量之間的因果關系,然后對某一事件未來可能發(fā)生的概率進行評估,并將不確定性以圖形化的方法表達出來。
但是,由于靜態(tài)貝葉斯網絡自身的局限性,它并不能很好地反饋前一階段的信息,使得項目風險評估準確度不是很高,進而影響到下一過程的風險控制。基于此,本文提出了將動態(tài)貝葉斯網絡應用于研發(fā)項目風險概率評估。動態(tài)貝葉斯網絡是貝葉斯網絡的延伸,它也是以概率網絡結構為基礎,在原來的靜態(tài)貝葉斯網絡的基礎上引入時間序列理論,從而形成了具有處理時序數據功能的新的隨機模型。
動態(tài)貝葉斯模型在處理時序數據、表達多層知識方面有著深厚的理論支持并具有較強的優(yōu)勢,但它是一種相對較新的方法,目前對于動態(tài)貝葉斯理論的研究還不夠深入,應用范圍也很窄,主要在可靠性分析、語音識別、說話人識別、說話人檢測、人的姿態(tài)檢測、視頻跟蹤、視頻獲取、大量信息處理等方面做了一些初步的研究。Luigi Portinale等應用動態(tài)貝葉斯網絡,結合動態(tài)故障樹,提供了一個完整的推理引擎,來分析系統(tǒng)的可靠性[5];Ann和M Julia將動態(tài)貝葉斯網絡與狀態(tài)和過渡模式結合起來應用于牧場管理,并將時間因素考慮進去,避免了一些在域中的自然限制[6]。還有學者在供應商風險評估、農產品供應鏈風險評估及金融信用風險評估等領域進行了研究[7,8]。
本文提出的基于動態(tài)貝葉斯網絡的研發(fā)項目風險評估模型,將研發(fā)項目風險概率評估與時間序列理論相結合,通過動態(tài)評估,解決了當前研發(fā)項目風險概率評估精確度不高的問題;另一方面,擴大了動態(tài)貝葉斯網絡的應用范圍,完善了動態(tài)貝葉斯網絡理論體系。另外,還提出在樣本數據缺失的情況下,采用Leaky Noisyor gate模型來計算節(jié)點的條件概率,這樣可以得到有效的網絡參數,得到更為準確的評估結果。
2動態(tài)貝葉斯網絡
21動態(tài)貝葉斯網絡的構建
根據貝葉斯網絡理論的基本原理,給定一組變量X={X1,X2,…,Xn},一個貝葉斯網絡可定義為B
P(X1,X2,…,Xn)=∏ni=1P(Xi|Pa(Xi))(1)
動態(tài)貝葉斯網絡是在靜態(tài)貝葉斯網絡的基礎上引入時間因素t,這樣就使得貝葉斯推理十分復雜,為了簡化推理過程,需要對動態(tài)貝葉斯模型進行如下一些假設和簡化條件化處理 [10,11]:
(1)動態(tài)貝葉斯網絡模型服從馬爾科夫假設條件,即未來時刻的概率只與當前時刻有關而與過去時刻無關。
(2)相鄰時間的條件概率過程是平穩(wěn)的,即每個時刻各節(jié)點的條件概率表和時刻之間的轉移概率不會隨著時間變化。
基于上述假設,可以構建出基于時間序列的動態(tài)貝葉斯模型:先驗網Bo定義在初始狀態(tài)X[1]上的聯(lián)合概率分布,它表示最開始的貝葉斯網絡,從圖1中可以得到任一節(jié)點的先驗概率P(X);轉移網B→表示由兩個以上時間片段的貝葉斯網絡組成的圖形,定義在變量X[1]與X[2]上的轉移概率P(X[t+1]∣X[t])(對所有的t都成立)。
3動態(tài)貝葉斯風險概率評估模型
本文將結合動態(tài)貝葉斯網絡和研發(fā)項目風險管理理論,構建基于動態(tài)貝葉斯網絡的研發(fā)項目風險評估模型。
進行風險評估時,首先要識別項目中的風險和風險因子,依據研發(fā)項目生命周期,可將項目劃分為四個階段:概念階段、設計階段、實施階段和收尾階段。因為在項目進行過程中,需求風險的發(fā)生概率在四個階段都比較高,所以將以研發(fā)項目需求風險的概率評估為例,來論證動態(tài)貝葉斯風險評估模型的可行性。
將需求風險命名為X,其影響因素包括:X1需求變更、X2需求不明確、X3缺少有效的需求變更控制流程。
在進行風險評估前,應建立基于動態(tài)貝葉斯網絡的研發(fā)項目風險評估的推理流程,如圖3所示。首先根據初始網絡的先驗概率和條件概率對當前網絡進行初始化;然后當某一時刻檢測到新的先驗信息,即網絡的節(jié)點信息更新時,通過推理算法,得到即時的后驗概率,從而更新整個網絡節(jié)點狀態(tài)的概率分布,更新后的后驗概率分布則作為下一時刻推理的依據。
網絡構建以及概率計算將采用由匹茲堡大學決策系統(tǒng)實驗室開發(fā)的Genie軟件來進行,該軟件是圖模型處理軟件, 它采用圖形化建模界面, 操作簡單直觀, 支持結構和參數學習, 并可以提供多種推理算法[15,16]。
下面以概念階段和設計階段的需求風險概率評估為例介紹如何實現Genie軟件建模和概率計算。
在構建動態(tài)貝葉斯網絡前進行的一個重要假設就是:相鄰時間的條件概率過程是平穩(wěn)的,即每個時刻各節(jié)點的條件概率表和時刻之間的轉移概率不會隨著時間變化。
將推理得到的父節(jié)點的先驗信息以及條件概率參數輸入動態(tài)貝葉斯風險評估轉移網B→中,可以得到設計階段需求風險發(fā)生的概率如圖10所示。
兩次評估分別采用了動態(tài)貝葉斯網絡的評估方法和靜態(tài)貝葉斯網絡的評估方法,動態(tài)貝葉斯網絡較靜態(tài)貝葉斯網絡的優(yōu)點在于在網絡中加入了時間因素,可以對前一時刻的推理進行有效的積累利用。隨著時間的推移,獲得的信息也越來越多,因此該方法可以不斷提高風險評估的準確度,有效地降低評估過程的不確定性。
為了對比動態(tài)貝葉斯網絡和靜態(tài)貝葉斯網絡風險評估的精確性,采用統(tǒng)計預報領域著名的馬庫斯分數來對評估結果進行評分,馬庫斯分數可以通過表示結果的均方差來對比結果的準確性。其表達式為:
BS=1n∑ni=1(Pi-Oj)2(9)
其中,Pi表示評估的結果,也就是概率取值;n表示樣本的數量;Oj表示事件的狀態(tài),其中1表示事件發(fā)生,0表示事件不發(fā)生。馬庫斯分數的取值范圍為0~1,其中,0表示最好的評估精度,1則表示最差的評估精度。馬庫斯分數得分越低,表示該方法評估得到的結果與現實越接近,誤差越小。下面采用馬庫斯分數對動態(tài)和靜態(tài)兩種方法分別進行評估,并得到其風險概率值。
在概念階段,由于先驗信息一樣,動態(tài)貝葉斯網絡和靜態(tài)貝葉斯網絡風險評估的結果相同,所以取后三個階段的評估結果作為樣本,按照最大概率進行歸類的原則,可以看到,無論是動態(tài)貝葉斯網絡還是靜態(tài)貝葉斯網絡風險評估的結果都顯示狀態(tài)為state1,然后分別計算動態(tài)貝葉斯網絡和靜態(tài)貝葉斯網絡風險評估結果的馬庫斯分數,可以得到它們的分數分別為01696和02053,很明顯動態(tài)貝葉斯風險概率模型的馬庫斯分數要小于靜態(tài)貝葉斯風險概率模型的馬庫斯分數。
由此可見,動態(tài)貝葉斯網絡風險概率模型的評估精度要高于靜態(tài)評估模型。
5結束語
本文采用基于動態(tài)貝葉斯網絡的研發(fā)項目風險評估模型對研發(fā)項目風險進行評估。通過與靜態(tài)評估模型的分析結果對比,發(fā)現動態(tài)模型可以有效地分析項目風險,進而得到更加準確的評估結果,解決了當前研發(fā)項目風險概率評估精確度不高的問題,為風險控制提供更加科學的依據。另外,擴大了動態(tài)貝葉斯網絡的應用范圍,完善了動態(tài)貝葉斯網絡理論體系。并且提出在樣本數據缺失的情況下,采用Leaky Noisy-or gate模型來計算節(jié)點的條件概率,這樣可以得到有效的網絡參數,得到更為準確的評估結果。
因在研究及實際應用過程中,不總是能夠獲得研發(fā)項目風險評估的實際數據,或即使能夠獲得數據,所獲得的數據也可能存在不完備的情況,因此下一步的研究一方面將通過調研獲得更多企業(yè)的更多實際數據;另一方面將通過改進算法來解決數據缺失的情況,擬將Gibbs抽樣以及蒙特卡洛模擬的方法與動態(tài)貝葉斯模型結合起來,實現缺失數據的研發(fā)項目風險評估。
另外,由于不是所有的項目都滿足馬爾科夫假設條件,所以動態(tài)貝葉斯網絡模型還不能全面應用,因此,下一步還將改進動態(tài)貝葉斯網絡的假設條件和基本模型以使動態(tài)貝葉斯網絡在研發(fā)項目風險評估中得到更廣泛的應用。
參考文獻:
[1]Project Failure and Success Research Report [R]. Standish Group International Chaos, 2005.
[2]Boehm B W. Software Risk Management: Principles and Practices [J]. Software, IEEE, 1991, 8(1):32-41.
[3]唐愛國,王如龍,胡春華.貝葉斯網絡在軟件項目風險評估中的應用[J].計算機工程與應用,2010,46(7):62-65.
[4]金俊麗,趙川,楊潔.基于EM-GA改進貝葉斯網絡的研究及應用[J].計算機應用研究,2010, 27(4):1360-1362.
[5]Luigi Portinale, Daniele Codetta Raiteri, Stefania Montani. Supporting Reliability Engineers in Exploiting the Power of Dynamic Bayesian Networks [J]. International Journal of Approximate Reasoning, 2010,51(2) :179-195.
[6]Nicholson A E, Flores M J. Combining State and Transition Models with Dynamic Bayesian Networks[J]. Ecological Modelling, 2011, 222(3): 555-566.
[7]陳偉杰, 肖智. 基于模糊軟集合的供應商風險評估模型[J]. 軟科學, 2013, 27(12): 135-139.
[8]顏波, 石平, 王鳳玲. 基于 CVaR 的農產品供應鏈風險評估與控制[J]. 軟科學, 2013, 27(10): 111-115.
[9]胡海青, 張瑯, 張道宏, 等. 基于支持向量機的供應鏈金融信用風險評估研究[J]. 軟科學, 2012, 25(5): 26-30.
[10]肖秦琨,高嵩,高曉光.動態(tài)貝葉斯網絡推理學習理論及應用[M].國防工業(yè)出版社,200710.
[11]喬焰,孟洛明,成璐,吳利,袁翊國. 動態(tài)網絡中的高效多故障診斷技術[J]. 北京郵電大學學報,2009,32(6):1-4.
[12]Donat R, Leray P, Bouillaut L, et al. A Dynamic Bayesian Network to Represent Discrete Duration Models[J]. Neurocomputing, 2010, 73(4): 570-577.
[13]郭文強,高曉光.基于變參數動態(tài)貝葉斯網的態(tài)勢估計[J].計算機測量與控制,2010,18(6):1856-1861.
[14]Oniko A, Druzdzel M J, Wasyluk H. Learning Bayesian Network Parameters from Small Data Sets: Application of NoisyOR Gates[J]. International Journal of Approximate Reasoning, 2001, 27(2): 165-182.
[15]紀航, 劉新平, 朱煒. 基于貝葉斯網絡和 GeNIe 軟件的超高壓輸電線路綜合狀態(tài)評估新方法[J]. 上海電力, 2011, 24(1): 14-20.
[16]戈建中, 王芳, 張海勇. 基于貝葉斯網絡的模擬訓練成績評定方法[J]. 艦船電子工程, 2009 (8): 133-136.
(責任編輯:秦穎)