基于Bayes網(wǎng)的軟件可靠性模型研究與系統(tǒng)設(shè)計_第1頁
基于Bayes網(wǎng)的軟件可靠性模型研究與系統(tǒng)設(shè)計_第2頁
基于Bayes網(wǎng)的軟件可靠性模型研究與系統(tǒng)設(shè)計_第3頁
基于Bayes網(wǎng)的軟件可靠性模型研究與系統(tǒng)設(shè)計_第4頁
基于Bayes網(wǎng)的軟件可靠性模型研究與系統(tǒng)設(shè)計_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、May2007年5月ELECTRONICENGINEER2007基于Bayes網(wǎng)的軟件可靠性模型研究與系統(tǒng)設(shè)計吳良清(蘇州市軟件產(chǎn)業(yè)發(fā)展辦公室,江蘇省蘇州市215002)摘要:傳統(tǒng)的軟件可靠性預(yù)測主要是概率方法,但其存在假設(shè)與實際不符的缺點。利用Bayes網(wǎng),充分利用專家知識和清晰表達相關(guān)因素關(guān)系的優(yōu)點,構(gòu)建了基于Bayes網(wǎng)的軟件可靠性預(yù)測模型。該模型不僅考慮軟件不完全排錯和排錯時間,同時把軟件可靠性因素也考慮在內(nèi),增強了其準確和有效性,并基于BNTookit軟件包以MATLAB語言通過實例給以驗證。為彌補MATLAB的GUI設(shè)計不方便的缺點,給出了VC和MATLAB混合編程實現(xiàn)軟件可靠性預(yù)

2、測的系統(tǒng)設(shè)計思路。關(guān)鍵詞:軟件可靠性;馬爾可夫條件;軟件可靠性預(yù)測模型;Bayes網(wǎng);BNT軟件包中圖分類號:TP311.50引言軟件可靠性是指軟件在特定環(huán)境和給定時間內(nèi)無故障運行的概率。軟件可靠性預(yù)測是以軟件可靠性模型為基礎(chǔ)對軟件的可靠性進行評價和預(yù)測。軟件可靠性與很多因素有關(guān),聯(lián),要正確地分析可靠性,其中廣泛使用的是概率類模型,常常規(guī)定一些假設(shè)條件,而在實際情況下,這些情況很難滿足;于是出現(xiàn)了挑戰(zhàn)概率類模型的神經(jīng)網(wǎng)絡(luò)方法,但它又存在結(jié)構(gòu)選取的隨意性和輸入數(shù)據(jù)不完整從而無法進行有效處理的不足。隨著一種新技術(shù)Bayes(貝葉斯)網(wǎng)的發(fā)展,使許多相互關(guān)聯(lián)的因素及其這種關(guān)聯(lián)充分表示出來,而且遵循經(jīng)

3、典的Bayes概率理論,把用概率表示的科學嚴格性和用專家經(jīng)驗表示的先驗信息有機結(jié)合,能夠很好地處理不確定問題。有許多作者,例如文獻123,已經(jīng)把Bayes網(wǎng)用于軟件工程管理的很多相關(guān)方面。文獻4提出了利用Bayes網(wǎng)處理軟件失效預(yù)測的模型MBN,該模型利用了更多的信息,其預(yù)測能力有了很大提高,但是該方法采用測試數(shù)據(jù)建模,忽略了軟件可靠性因素,同時還忽略了排除錯誤時間,限制了模型的使用范圍。為了解決這一問題,本文提出的方法結(jié)合軟件可靠性因素,并且把排除錯誤時間考慮在內(nèi),使得對軟件失效情況的預(yù)測更精確,同時也使軟件可靠性測評深入到軟件開發(fā)的前期階段。夫條件,有效解決了確定聯(lián)合概率分布的組合爆炸難題

4、,在條件獨立性限制與可計算性之間達成了一種比較合理的折中。5:設(shè)U=x1,x2,P(U)是其聯(lián)合概率分布,s(E是有向邊的集合)。若每個節(jié)點xi在其父節(jié)點取值狀態(tài)已知的條件下,獨立于其所有的非子孫節(jié)點,則稱Bs滿足馬爾可夫條件。Bayes網(wǎng)可定義為一個三元集合X,S,P,其中:X是節(jié)點集,即變量的集合;S是一個條件概率分布集合,滿足馬爾可夫條件,即S=P(X1|parents(X1),P(Xn|parents(Xn),parents(Xi)<X,它表示了Xi的所有父節(jié)點;P是一個邊沿概率分布集合。Bayes網(wǎng)由網(wǎng)絡(luò)結(jié)構(gòu)和條件概率分布兩部分組成。網(wǎng)絡(luò)結(jié)構(gòu)是模型中的定性部分,定性描述變量間的

5、概率依賴關(guān)系,它是一個有向無環(huán)圖,圖中每個節(jié)點表示問題域中某一個隨機變量,每條邊表示節(jié)點間可能存在直接的概率依賴關(guān)系,兩節(jié)點間沒有邊表示它們沒有直接的概率依賴關(guān)系。條件概率分布是模型中的定量部分,用于定量描述節(jié)點對其父節(jié)點的概率依賴程度,若沒有父節(jié)點,則定義一個邊沿概率分布。在Bayes網(wǎng)中,變量用來表示現(xiàn)實世界的事件或?qū)ο?通過觀察研究這些變量的表現(xiàn)就可以把該問題模型化。Bayes網(wǎng)的基本思想是借助網(wǎng)絡(luò)結(jié)構(gòu)中所蘊含的變量之間獨立性或條件獨立性,將聯(lián)合概率分布分解為一系列邊沿概率和條件概率的乘積,把問題轉(zhuǎn)化為邊沿概率和條件概率的確定。1Bayes網(wǎng)Bayes網(wǎng)使用一種比較適度的條件性假設(shè)馬爾可

6、收稿日期:2007203206。2軟件可靠性預(yù)測模型的Bayes網(wǎng)拓撲結(jié)構(gòu)以Ni(1in)表示第i次失效時軟件中剩余的39計算機與自動化技術(shù)電子工程師2007年5月缺陷數(shù),Ti(1in)表示第i次失效距第i-1次失效的時間段。該失效時間間隔受排錯時間和軟件中的缺陷數(shù)影響。當軟件失效時,軟件調(diào)試人員就排除錯誤,排除第i次失效的錯誤所需時間用ti表示。在排錯過程中,既有可能使軟件中的缺陷數(shù)減少,也有可能引入新的缺陷,N(i+1)是依賴于Ni的。建立Bayes網(wǎng)拓撲結(jié)構(gòu)如圖1所示。(Ti|Ni)=(1-eP-Ni)eNi)T-(1-e-i長期以來,軟件用戶、軟件開發(fā)者推測軟件可靠性或下次失效時間間隔

7、都自覺或不自覺地考慮到軟件復雜度因素、硬件相關(guān)因素或開發(fā)者水平,但現(xiàn)有的軟件可靠性預(yù)測模型都沒有考慮到這些方面。我們考慮了這些因素,認為若初始缺陷數(shù)相同,則下次失效的時間間隔與軟件程序容量成正比,與開發(fā)工具先進性及開發(fā)者水平成反比,可靠性因素系數(shù)設(shè)為w。在軟件的內(nèi)部缺陷數(shù)為Ni時,分析軟件的失效情況。所以軟件的失效分布為:(Ti|Ni)=P(Ti|Ni)=F(T(i-1)+wP1-e-T(i-1)圖1Bayes網(wǎng)拓撲結(jié)構(gòu)+3Bayes網(wǎng)中有關(guān)分布的確定要實現(xiàn)推斷,首先要確定3個分布:初始軟件缺陷數(shù)N0;在發(fā)生失效的情況下,軟件缺陷的排除數(shù)分布;在已知軟件內(nèi)部缺陷數(shù)條件下,軟件失效時間的分布。a

8、)軟件缺陷數(shù)的初始分布P0(x)可以通過文獻6提出的改進的Halstead的模型的方法來估計。b)在軟件內(nèi)部缺陷數(shù)為Ni時,件開發(fā)人員就要排查缺陷,掉,。可以假設(shè)N(i+1)Ni(0<<1)、根方差為的正態(tài)分布。參數(shù)決定于缺陷的排除情況,決定于缺陷排查人員的水平離散程度。c)當發(fā)生失效時,軟件開發(fā)人員就要排查缺陷,要更精確地確定下次失效時間,需要考慮缺陷排除所花費的時間。文獻7對178個排錯時間樣本進行了分析,認為排錯時間服從指數(shù)分布,文獻8中,通過Shuttle項目中包含85個數(shù)據(jù)項的排錯時間樣本進行分析,也認為排錯時間服從參數(shù)為平均排錯時間的負指數(shù)分布。因此,本模型假設(shè)排錯時間

9、服從參數(shù)為的負指數(shù)分布,其分布函數(shù)為:F(t)=1-e。d)在軟件的內(nèi)部缺陷數(shù)為Ni時,分析軟件的失效情況。假設(shè)軟件的可執(zhí)行行數(shù)為M,軟件在單位時間內(nèi)執(zhí)行的執(zhí)行行數(shù)為h,可知軟件完成一次測試即所有缺陷都被執(zhí)行到所需時間為M/h,則單位時間內(nèi)執(zhí)行到的缺陷數(shù)為hNi/M。軟件每執(zhí)行一個缺陷軟件失效的概率為p,則軟件在單位時間內(nèi)的失效概率為:(hN/M)ln(1-P)hN/M-N1-(1-P)i=1-ei=1-ei式中:=-ln(1-P)>0M-tNi)T-N-(1-e-i(1-ei)erE式中:C為程序容量,用來表示計劃、需求分析、設(shè)計、編程等階段的復雜度,可將軟件模型深入到軟件工程的其他階

10、段,;CMM(能力成熟度3個等級;E為平衡因子。軟件可靠性預(yù)測的Bayes網(wǎng)推斷實現(xiàn)及實例驗證4.1參數(shù)已知的bayes網(wǎng)推斷實現(xiàn)在圖1的Bayes網(wǎng)中,利用馬爾可夫條件的性質(zhì),N0,N1,Nn,T1,T2,Tn的聯(lián)合概率密度為:P(N0,N1,Nn,T1,T2,Tn)=P(N0)P(N1,N2,Nn,T1,T2,Tn|N0)=nniP(N0)P(Ti=1|Ni)P(Ni=1n(i+1)|Ni)(1)T1,T2,Tn的邊沿聯(lián)合概率密度為:P(T1,T2,Tn)=P(T)ii=1(2)計算下次失效時間:(T(n+1)|N(n+1)P(T(n+1)|N(n+1)=F(Tn)+P(T(n+1)|N(

11、n+1)已知,N(n+1)值可由分布分布PP(N(n+1)|Nn)得到,N1,N2,Nn可通過下式估值:P(N0,N1,Nn|T1,T2,Tn)=P(N,N,Nn,T,T,Tn)(3)P(T1,T2,Tn)如果測得實際用于排錯的時間為y1,y2,yn,則得到的估計值:n-1(4)=nyi=1軟件的失效率為一常數(shù),所以可假定在軟件的內(nèi)部缺陷數(shù)為Ni時,軟件的失效分布為指數(shù)分布:40參數(shù)已知的情況下,網(wǎng)絡(luò)的構(gòu)建和計算已經(jīng)比較復雜,但在現(xiàn)實中,多數(shù)情況參數(shù)都是未知的,使得計第33卷第5期吳良清:基于Bayes網(wǎng)的軟件可靠性模型研究與系統(tǒng)設(shè)計計算機與自動化技術(shù)9算更加復雜難解。因此我們以BNToolk

12、it(以下簡寫為BNT)軟件包為基礎(chǔ),利用BNT提供的基礎(chǔ)函數(shù)庫和MATLAB強大的計算能力,使得對軟件的可靠性預(yù)測更簡便和高效。4.2MATLAB簡介及實例驗證BNT是KevinP.Muiphy基于MATLAB語言開發(fā)的關(guān)于Bayes網(wǎng)絡(luò)學習的軟件包,提供了許多Bayes網(wǎng)絡(luò)學習的底層基礎(chǔ)函數(shù)庫,支持多種類型的結(jié)點(概率分布)、精確推理和近似推理、參數(shù)學習和結(jié)構(gòu)學習、靜態(tài)模型和動態(tài)模型。MATLAB語言是mathworks公司于1982年推出的一套高性能的數(shù)值計算和可視化教學軟件,以矩陣和陣列為基本編程單位,具有面向?qū)ο蟪绦蛟O(shè)計特征的高級語言,并且其計算的快速性、準確性和穩(wěn)定性是一般高級語言

13、程序所遠遠不及的,MATLAB語言還包括了求解各類應(yīng)用問題的工具箱,使得計算簡單方便。其不足是它是解釋執(zhí)行的,執(zhí)行效率低于高級語言,對計算機硬件要求較高,且GUI設(shè)計不方便。但綜合考慮各種因素,它還是優(yōu)于其他高級語言的。以文獻4給出的一個space例,用MATLAB等對該程序如此描述解釋器,包含9564(218)。圖2為本文模型、MBN模型、JM模型及GO模型預(yù)測比較。通過計算和比較可以看出,本文的模型有更好的擬和效果,估計和預(yù)測能力更強。圖3系統(tǒng)結(jié)構(gòu)清晰的優(yōu)勢,構(gòu)建了基于Bayes網(wǎng)的軟件可靠性預(yù)測模型。本模型充分利用先驗信息,并考慮缺陷排除效果及排錯時間,還引入了可靠性因素系數(shù)的影響,擴大

14、了可靠性預(yù)測的適用范圍,也提高了軟件可靠性預(yù)測的精度,同時,因其建立在Bayes經(jīng)典數(shù)學理論的基礎(chǔ)之上,增強了可靠性預(yù)測的穩(wěn)定性。基于BNTookit軟件包以MATLAB語言通過實例給以驗證,最后給出以VC和MATLAB混合編程實現(xiàn)軟件可靠性預(yù)測的系統(tǒng)設(shè)計思路。本文的思想對理論和實際可靠性預(yù)測都有一定的指導意義。獻1YUYuanChang.BBN2basedsoftwarepro2jectriskmanagementJ.JournalofSystemsSoftware,2004,73(2):1932203.2STAMELOSI,ANGELISL,DIMOUP,etal.OntheuseofBa

15、yesianbeliefnetworksforthepredictionofsoftwareproduc2tivityJ.(1):51260.3FENTONNE,NEILM,MARSHW,etal.Predictingsoft2waredefectsinvaryingdevelopmentlifecyclesusingBayesiannetsJ.InformationandSoftwareTechnology,2007,49(1):32243.4BAICG,HUQP,XIEM,etal.SoftwarefailurepredictionbasedonaMarkovBayesiannetwork

16、modelJ.TheJournalofSystemsandSoftware,2005,74(3):2752282.5汪榮貴,張佑生,高雋,等.從確信因子模型到Bayes網(wǎng)絡(luò)J.計算機科學,2004,31(10):1822188.InformationandSoftwareTechniques,2003,45圖2模型構(gòu)建圖6尹云飛,鐘智,張師超.軟件科學中的Halstead模型的改進J.計算機應(yīng)用,2004,24(10):1302132.7MUSAJD.Softwarereliabilitymeasurement,Prediction,ap2plicationM.NewYork,NY,USA:M

17、cGraw2Hill,1987.8KLEINRICKL.Queuingsystems,Volume1:TheoryM.5系統(tǒng)實現(xiàn)為彌補MATLAB的GUI設(shè)計不方便的缺點,我們以VC實現(xiàn)前端GUI,用VC和MATLAB混合編程實現(xiàn)軟件可靠性預(yù)測的系統(tǒng)開發(fā)思想。系統(tǒng)從功能上可分為總控界面、Bayes網(wǎng)絡(luò)學習及推理模塊、信息庫模型、數(shù)據(jù)預(yù)處理模塊等模塊。系統(tǒng)結(jié)構(gòu)如圖3所示。吳良清(19572),男,高級工程師,主要從事計算機管理工作。6結(jié)束語本文利用Bayes網(wǎng)充分考慮先驗信息及關(guān)系表達(下轉(zhuǎn)第66頁)41計算機與自動化技術(shù)電子工程師2007年5月天領(lǐng)域有用于月球探測,在軌道上修理或回收人造衛(wèi)星的

18、遙控機器人等?,F(xiàn)代軍用機器人已從“概念研究”進入到“實戰(zhàn)開發(fā)”階段。4)科研管理工程化、產(chǎn)品開發(fā)標準化、生產(chǎn)制造規(guī)模化現(xiàn)代軍用機器人開發(fā)涉及眾多高科技領(lǐng)域,是一項包含很多基礎(chǔ)學科的大科學工程,不但需要堅實的技術(shù)基礎(chǔ),也需要強有力的科研管理與決策,這對保證一項系統(tǒng)工程的成功是非常必須的。例如,美軍成立了聯(lián)合機器人項目協(xié)調(diào)員的組織,負責監(jiān)督國防部的聯(lián)合機器人項目實施,并對跨軍種的實施機器人研究開發(fā)工作進行監(jiān)督、投資以及項目指導。美軍為加快開發(fā)進程的一項重大措施就是實施標準化設(shè)計。目前,軍用機器人是在美軍新軍事變革大背景下,以提高作戰(zhàn)能力為宗旨的指導思想推動下開展大規(guī)模研制和生產(chǎn)準備。例如,波音公司

19、正在按照“作戰(zhàn)能力”的要求進行重組,以適應(yīng)能夠規(guī)?;圃旄鞣N陸地和空中平臺(包括無人平臺)需求。5)美國軍用機器人技術(shù)獨領(lǐng)風騷,各顯其能目前,、系統(tǒng)開發(fā)、生產(chǎn)配套方面,還是在技術(shù)轉(zhuǎn)化和實戰(zhàn)應(yīng)用經(jīng)驗上都處于世界超前領(lǐng)先地位。其特征表現(xiàn)以下幾個方面:開發(fā)理念超前,適應(yīng)新軍事變革發(fā)展;美國軍用機器人開發(fā)與應(yīng)用涵蓋陸、海、空、天等各兵種,是世界唯一具有綜合開發(fā)、試驗和實戰(zhàn)應(yīng)用能力的國家。5未來發(fā)展趨勢從新軍事變革對未來戰(zhàn)場對軍用機器人的應(yīng)用要求來看,軍用機器人未來發(fā)展趨勢是:其一,陸、海、空、天協(xié)同作戰(zhàn),即要求在各軍種分層次立體化發(fā)展;其二,非對稱作戰(zhàn),靈活多變戰(zhàn)術(shù),即一方面要求其微型化以便適合于單兵使用,另一方面則要求大型化以便能攜帶足夠多的任務(wù)載荷適應(yīng)多種戰(zhàn)術(shù)需要;其三,獲取“制信息權(quán)”,即對機器人在功能上要求從傳感器一直到武器投放整個戰(zhàn)爭鏈環(huán)節(jié)無所不包,并能形成網(wǎng)絡(luò)組成機器人作戰(zhàn)群。總之,就是要求它們充斥在戰(zhàn)場的各個角落,又能協(xié)同進行作戰(zhàn),、足夠的可靠性

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論