[摘要]文章研究項目風(fēng)險管理成熟度模型,并分析在Matlab環(huán)境下,用BP神經(jīng)網(wǎng)絡(luò)評估項目風(fēng)險管理成熟度等級的可行性。利用神經(jīng)網(wǎng)絡(luò)的自學(xué)習(xí)、自調(diào)整以及非線性映射功能,確定基于BP神經(jīng)網(wǎng)絡(luò)的項目風(fēng)險管理成熟度等級評估模型的結(jié)構(gòu)和算法。通過實(shí)例分析,取得滿意效果,為項目風(fēng)險管理成熟度評估提供一種新思路。
[關(guān)鍵詞]項目風(fēng)險管理;人工神經(jīng)網(wǎng)絡(luò);成熟度
[作者簡介]蔣雙福,福州大學(xué)管理學(xué)院碩士生,研究方向:項目管理,福建福州 ,350002;盧美琴,福州大學(xué)管理學(xué)院碩士生,研究方向:項目管理,福建福州,350002
[中圖分類號] TP393[文獻(xiàn)標(biāo)識碼] A[文章編號] 1007-7723(2008)09-0056-0003
一、引言
項目風(fēng)險是在項目全過程中不期望發(fā)生事件的客觀不確定性,或是在給定情況下和特定時間內(nèi),在項目全過程中可能發(fā)生的結(jié)果與期望結(jié)果之間的差異性,差異越大,則風(fēng)險越大 [1]。
從1987年7月,SEI發(fā)表了CMM(軟件能力成熟度模型)以來,項目管理成熟度模型開始成為管理界的一個熱點(diǎn),并且相關(guān)研究及應(yīng)用成果也發(fā)展迅速[2]。“項目風(fēng)險管理成熟度模型”可以理解為“描述如何提高或獲得項目風(fēng)險管理能力的過程的框架”[3]。
BP是人工神經(jīng)網(wǎng)絡(luò)的一種,其學(xué)習(xí)算法是由Rumelhart等人于1986年提出的。BP神經(jīng)網(wǎng)絡(luò)是一種基于誤差傳播算法的具有多層結(jié)構(gòu)的神經(jīng)網(wǎng)絡(luò),由于BP神經(jīng)網(wǎng)絡(luò)的多層次性,其激活函數(shù)所劃分的區(qū)域不再是線性可分的,而是由一個非線性的超平面組成的區(qū)域,從而其分類比線性劃分精確合理,這種網(wǎng)絡(luò)的容錯性較好。另外,在BP神經(jīng)元中可以使用任何可微的函數(shù)作為傳遞函數(shù),可以嚴(yán)格利用梯度法進(jìn)行推算,權(quán)值修正的解析式十分明確[4]。
本文試圖將BP神經(jīng)網(wǎng)絡(luò)引入到項目網(wǎng)絡(luò)管理成熟度等級的評估中,研究其評估效果。
二、項目風(fēng)險管理成熟度模型
參考著名的成熟度模型,結(jié)合項目風(fēng)險管理本身的過程特點(diǎn),本文將項目風(fēng)險管理成熟度分為五個等級,隨著等級的提高,項目風(fēng)險管理的過程能力也相應(yīng)提高;同時,項目失敗的風(fēng)險也降低。
本文的研究重點(diǎn)在于項目風(fēng)險管理成熟度等級評價指標(biāo)的建立及其評估方法,對于其各成熟度等級的特點(diǎn),借鑒J.kent Crawford提出的等級特征[5]。
第一級,啟動過程: 意識到建立廣泛接受風(fēng)險過程管理的需要,但沒有已建好的實(shí)踐或標(biāo)準(zhǔn)。
第二級,結(jié)構(gòu)化的過程標(biāo)準(zhǔn): 風(fēng)險管理過程已經(jīng)制定并制成文檔。
第三級,組織的標(biāo)準(zhǔn)和制度化的過程: 風(fēng)險管理過程已被認(rèn)識是組織的標(biāo)準(zhǔn),并在幾乎所有項目中使用。
第四級,管理過程: 所有過程都已經(jīng)就緒、制成文檔,而且全部項目中至少有90%在運(yùn)用這些過程。
第五級,持續(xù)優(yōu)化過程:經(jīng)驗教訓(xùn)被定期審核并用于改進(jìn)已制成文檔的各種過程。
三、項目風(fēng)險管理成熟度等級評價指標(biāo)體系
依據(jù)以上風(fēng)險管理成熟度等級劃分標(biāo)準(zhǔn),通過咨詢相關(guān)專家和查閱文獻(xiàn)資料,設(shè)計了評價成熟度等級評價指標(biāo)(表1)。以風(fēng)險管理過程和風(fēng)險管理結(jié)果作為一級指標(biāo),通過對一級指標(biāo)的細(xì)分,建立二級指標(biāo)。外部專家與組織相關(guān)人員組成評估小組對組織進(jìn)行評估。在進(jìn)行評分過程中,主觀評價指標(biāo),如風(fēng)險分析能力中的風(fēng)險定性分析能力,評分原則依據(jù)項目風(fēng)險管理成熟度各等級估分并經(jīng)過專家討論,客觀評價指標(biāo)則直接利用歷史數(shù)據(jù),如項目成功率。
四、Matlab7.0環(huán)境下的BP網(wǎng)絡(luò)程序?qū)崿F(xiàn)
MATLAB是Mathworks公司于1982年推出的一套高性能的數(shù)值計算的可視化軟件。神經(jīng)網(wǎng)絡(luò)工具箱是MATLAB環(huán)境下所開發(fā)出來的工具箱之一,它是以人工神經(jīng)網(wǎng)絡(luò)理論為基礎(chǔ),用MATLAB語言構(gòu)造出典型神經(jīng)網(wǎng)絡(luò)的激活函數(shù),使設(shè)計者對所選定網(wǎng)絡(luò)輸出的計算變成對激活函數(shù)的調(diào)用。在Matlab環(huán)境下,網(wǎng)絡(luò)學(xué)習(xí)訓(xùn)練的程序設(shè)計主要是調(diào)用一些相應(yīng)的函數(shù)。
(一)標(biāo)準(zhǔn)樣本集設(shè)定
BP網(wǎng)絡(luò)訓(xùn)練需要具有一定數(shù)量的樣本,本文的訓(xùn)練樣本輸入部分,是根據(jù)風(fēng)險管理成熟度各等級得分范圍表通過以下公式隨機(jī)產(chǎn)生。
M= rand()*0.2+0.2*(I-1)2)
其中:M代表某個成熟度水平時某個二級指標(biāo)的得分,rand()函數(shù)可以產(chǎn)生[0,1]范圍的隨機(jī)數(shù)。
每個成熟度產(chǎn)生10組數(shù)據(jù),則產(chǎn)生19×50的訓(xùn)練矩陣。將產(chǎn)生的數(shù)據(jù)保存在excel文檔的sheet1中,命名為traindata.xls,如圖1。
本文將輸出設(shè)計為只含0、1的向量。1在第n位則表示成熟度為n,如(0 0 0 1 0)T表示成熟度為4。輸入樣本數(shù)據(jù)(5×50矩陣)對應(yīng)的期望輸出保存在traindata.xls的sheet2中。
(二)樣本預(yù)處理
為了提高訓(xùn)練效率,本文對樣本數(shù)據(jù)進(jìn)行了規(guī)范化的預(yù)處理,使輸入樣本和輸出樣本服從正態(tài)分布。其函數(shù)為:
p=xlsread(‘traindata’,‘shee1’); t=xlsread(‘traindata’,‘shee2’);%讀入數(shù)據(jù)
[pn,meanp,stdp,tn,meant,stdt] = prestd(p,t)%規(guī)范化數(shù)據(jù)
其中,p、t分別為輸入和期望輸出,pn、tn為規(guī)范化后的輸入和期望輸出。
(三)樣本劃分
為提高BP網(wǎng)絡(luò)的泛化能力,將樣本劃分成三部分:1/2作為訓(xùn)練樣本,1/4作為驗證樣本,1/4作為測試樣本。程序如下:
[R,Q]=size(pn);%讀取矩陣的行數(shù)和列數(shù)
iilist=2:4:Q;iival=4:4:Q;iitr=[1:4:Q 3:4:Q];%對各列大小進(jìn)行劃分
vv.P=pn(:,iival);vv.T=tn(:,iival); %1/4樣本作為確認(rèn)向量
vt.P=pn(:,iilist);vt.T=tn(:,iilist); %1/4樣本作為測試向量
ptr=pn(:,iitr); ttr=tn(:,iitr); %1/2樣本作為訓(xùn)練網(wǎng)絡(luò)
(四)網(wǎng)絡(luò)生成與訓(xùn)練
經(jīng)過測試,本文將成熟度模型的評價BP網(wǎng)絡(luò)設(shè)計為輸入層、隱層、輸出層分別為19、15、5的三層結(jié)構(gòu),網(wǎng)絡(luò)輸入層與隱含層,以及隱含層與輸出層之間的傳遞函數(shù)分別采用雙曲線正切S型tansig和線性函數(shù) purelin;考慮到網(wǎng)絡(luò)的規(guī)格和學(xué)習(xí)時間,選用Traingdx函數(shù)對函數(shù)進(jìn)行訓(xùn)練。traingdx函數(shù)是是動量及自適應(yīng)的BP梯度遞減訓(xùn)練函數(shù),是一種改進(jìn)的BP網(wǎng)絡(luò)學(xué)習(xí)算法。學(xué)習(xí)率為0.5。其他參數(shù)均為缺省值。網(wǎng)絡(luò)的生成語句如下:
net=newff(minmax(pn),[15 5],{‘tansig’‘purelin’},‘traingdx’);
利用train 函數(shù)對所生成的神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練:
[net,tr]=train(net,ptr,ttr,[],[],vv,vt);
其中vv、vt分別是劃分出來的驗證樣本和測試樣本。
(五)網(wǎng)絡(luò)仿真
為了進(jìn)一步檢驗訓(xùn)練后網(wǎng)絡(luò)的性能,下面對訓(xùn)練結(jié)果作進(jìn)一步仿真分析。將所有數(shù)據(jù)通過網(wǎng)絡(luò)(包括訓(xùn)練、驗證、測試),然后得到網(wǎng)絡(luò)輸出,將此輸出反規(guī)范化后,與相應(yīng)目標(biāo)進(jìn)行誤差分析,可分析網(wǎng)絡(luò)性能。
an=sim(net,pn);a=poststd(an,meant,stdt);
計算仿真誤差,其誤差性能計算如下:
E=t-a;MSE=mse(E)。
(六)保存網(wǎng)絡(luò)
save(‘riskpm3.mat’,‘meanp’,‘stdp’,‘meant’,‘stdt’,‘net’);
將訓(xùn)練好的網(wǎng)絡(luò)保存為riskpm3.mat文件中。評估時,可直接調(diào)用該訓(xùn)練好的網(wǎng)絡(luò)對風(fēng)險管理成熟度等級進(jìn)行評估。
五、運(yùn)行結(jié)果分析
當(dāng)訓(xùn)練次數(shù)達(dá)到93次后,就已經(jīng)達(dá)到了訓(xùn)練所要求的誤差,且確認(rèn)誤差已經(jīng)開始放大,說明如果斷續(xù)訓(xùn)練,將會過度,因此停止,運(yùn)行結(jié)束。如圖2(b圖為a圖在55步之后的放大圖像)。
查看在工作窗口中的均方誤差,均方誤差為0.014(如圖3),說明該BP網(wǎng)絡(luò)精度較高。
訓(xùn)練后BP網(wǎng)絡(luò)的其余各種參數(shù),如各層的權(quán)值和閾值,輸入與輸出之間的誤差等可在Matlab的工作窗口中查看。
六、結(jié)論
本文從項目風(fēng)險管理成熟度評估的目的與要求出發(fā),分析研究了風(fēng)險等級評估的內(nèi)容與過程,利用BP神經(jīng)網(wǎng)絡(luò)可以進(jìn)行復(fù)雜、非線性關(guān)系描述的特點(diǎn),建立了項目風(fēng)險管理成熟度等級與其評價指標(biāo)之間的關(guān)系模型,從而滿足了項目風(fēng)險管理成熟度評估多目標(biāo)、多指標(biāo)的需要,提高了評價的效率和效果,具有較強(qiáng)的可行性和準(zhǔn)確性。
[參考文獻(xiàn)]
[1]劉國靖,鄧韜.21世紀(jì)新項目管理——理念、體系、流程、方法、實(shí)踐[M].北京:清華大學(xué)出版社,2003.
[2]W.S. Humphrrey, W.L Sweet.A method for assessing the software engineering capability of contractors [N].USA, SEI Technical Report(SEI-87-TR-23),1989.
[3]李鵬,戴俊俊,顧瑾.從流程層面到組織層面的擴(kuò)展:項目管理成熟度研究綜述[J].物流科技,2005,6,28(121).
[4]馮定.神經(jīng)網(wǎng)絡(luò)專家系統(tǒng)[M].北京:科學(xué)出版社,2006.
[5]j.Kent Crawford.項目管理辦公室[M].戴煉,譯.北京:電子工業(yè)出版社,2004.