陳 路,胡賢德
(安徽新華學院信息工程學院,安徽合肥 230088)
?
Pegels模型在軟件可靠性中的預測研究
陳路,胡賢德
(安徽新華學院信息工程學院,安徽合肥 230088)
[摘要]為了更好地對軟件可靠性進行預測,本文首先分析了常用的Pegels模型和阻尼Pegels指數平滑模型,然后根據軟件可靠性準則誤差平方和(SSE)建立數學最優化模型,計算出最優擬合度對應的最優的平滑系數。實驗表明,在進行軟件可靠性預測時,以Tandem計算機數據集為例,Pegels模型的擬合精度較高,且阻尼Pegels模型的擬合度優于Pegels模型,最優擬合度對應的平滑系數值也從平滑系數的經驗選取法上都得到了驗證。
[關鍵詞]Pegels模型;軟件可靠性;誤差平方和準則;平滑系數
計算機軟件在社會發展中發揮著舉足輕重的作用,社會對軟件的依賴性也越發強烈,隨著軟件規模日益擴大,其可靠性越發難以保證,對軟件可靠性的預測[1]顯得尤為重要。
對于軟件可靠性的建模問題,國內外的專家和學者一直在進行深入的研究和探索。黎鎖平[2]等人分別將單指數平滑法和雙指數平滑法用于通信軟件的可靠性預測,并得出雙指數平滑模型預測更加準確的結論。劉龍[3]等人將雙指數平滑法進行改進,建立了隨時間變動的平滑系數模型,并對軟件可靠性進行預測,得到了較好的定性預測結果,結果未能用軟件可靠性準則定量衡量。
本文將在分析常用的指數平滑模型——Pegels模型和阻尼Pegels模型的基礎上,對軟件的失效數據進行SSE準則可靠性定量建模,求出最優的指數平滑系數,對失效數據進行可靠性預測。
1指數平滑模型
指數平滑模型對于一些統計空間模型來說是最優的模型,而且簡單可靠易于操作,尤其適用于一些隨時間連續變化的數據。下面就幾種最常用的指數平滑模型[4]作簡單介紹。
1.1Pegels模型趨向于被作為趨勢序列的通用模型
St=αXt+(1-α)(St-1Rt-1).
(1)
Rt=γ(St/St-1)+(1-γ)Rt-1.
(2)

(3)

1.2阻尼Pegels模型趨向于被作為趨勢序列的通用模型

(4)

(5)

(6)

在指數平滑模型的預測中,最重要的就是平滑系數的選取,因為這些系數能在很大程度上影響模型的預測精度。在平滑系數選擇方法上,主要采用經驗的方式進行人工選擇。以α取值的選擇為例,通常依賴于經驗[5],根據以下情況選取:當統計數據波動不大時,α可取0.1~0.3,以加重原來預測值的權重;當統計數據波動較大時,α可取0.6~0.8,以加重新預測值的權重;當難以判斷時,可以先采用幾個不同的α值加以試算比較,再選取最優α值。
顯然僅靠經驗選擇平滑系數進行預測必然會影響預測結果,可以考慮建立相應的數學模型,尋找最佳預測結果對應的平滑系數值,從而對軟件可靠性進行定量預測。
2數學模型的建立
衡量軟件可靠性的預測精度有四種常用的準則[1],即誤差平方和準則(SSE)、均方誤差準則(MSE)、赤池信息量準則(AIC)和預測比例風險準則(PRR)。對于上述四種準則而言,在同一數據集上得出的值越小,表明模型的擬合程度越低。考慮到誤差平方和準則是誤差分析的綜合指標之一。本次實驗采用誤差平方和SSE準則作為模型的評價指標,建立如下優化模型。

(7)

根據Pegels和阻尼Pegels模型的公式(1)~(6)可以找出相應的約束條件,令初步預測值S0初值為X1,局部增長值R0初值為前三個局部增長比例的均值。
由此建立了上述目標函數,接下來就可以選取合適的數據集,再根據約束條件進行模型的預測應用。
3模型在軟件失效數據集上的應用
前面根據Pegels模型和阻尼Pegels模型分別建立了數學模型,接下來就可以使用模型去模擬軟件失效數據集。本模型使用了Tandem計算機數據集[1],詳見表1。

表1 Tandem計算機軟件失效數據集
本實驗在Matlab軟件中進行,分別用Pegels模型和阻尼Pegels模型計算了最優SSE準則值對應的20個測試時間的錯誤數預測值,詳見表2。

表2 使用Tandem計算機數據的模型預測對比表
從表2可以看出,使用Pegels模型和阻尼Pegels模型等指數平滑模型更好地預測了軟件的錯誤數據。對于SSE準則而言,在同一數據集上得出的值越小,表明模型擬合度越高[1]。從表3中模型間的SSE準則對比值可以看出,無論是Pegels指數模型還是阻尼Pegels指數模型,都比GO模型、PNZ模型和NHPP模型等具有更好的擬合度和預測能力,其中阻尼Pegels模型優于基本Pegels模型。
其中采用Pegels模型和阻尼Pegels模型預測時,最優SSE準則值所對應的平滑系數α、γ和φ值分別如表4所示。

表3 模型間的SSE值對比表

表4 Pegels模型和阻尼Pegels模型參數值
從表4不難看出,兩個模型預測得到的最小SSE對應的α為0.64和0.66,最優α取值顯然符合經驗判斷法中給出的取值范圍0.6~0.8。
為了更清晰地觀察預測值和實際值之間的擬合程度,根據軟件實際錯誤數據和Pegels模型、阻尼Pegels模型預測數據,可以得到如圖1所示的曲線圖。

圖1 Pegels和阻尼Pegels預測值與軟件實際值對比圖
從圖1可以看出,Pegels模型和阻尼Pegels模型對軟件失效數據集的實際擬合度較高,預測效果好,可以有效地對軟件失效數據進行預測,其中阻尼Pegels模型的預測效果優于Pegels模型。
4結語
本文首先討論了常用的指數平滑模型——Pegels和阻尼Pegels模型,然后通過軟件可靠性的SSE準則建立數學模型,并在Tandem數據集上進行擬合,用Matlab軟件計算出最小的SSE值和相應的最優平滑系數,以此來進行軟件可靠性的預測。計算結果顯示,在使用最優的平滑系數時,Pegels模型和阻尼Pegels模型的預測精度比該數據集上之前使用的GO模型、PNZ模型和NHPP模型的精度高很多,同時阻尼Pegels模型的預測精度比Pegels模型的精度高,在軟件可靠性的擬合效果上最佳。
[參考文獻]
[1]Hoang Pham.系統軟件可靠性[M].李璐祎,譯,北京:國防工業出版社,2014:157,181.
[2]黎鎖平,武會超.基于雙指數平滑方法的通信軟件可靠性分析[J].蘭州理工大學學報,2006,32(4):102-104.
[3]劉龍,徐池.基于改進的雙指數模型的軟件可靠性預測研究[J].可靠性技術,2014(1):14-17.
[4]蔡凱達.基于指數平滑和人工智能算法的預測[D].蘭州:蘭州大學,2013.
[5]王長江.指數平滑法中平滑系數的選擇研究[J].中北大學學報:自然科學版,2006,27(6):558-561.
[6]謝景燕.考慮不完美排錯情況的NHPP類軟件可靠性增長模型[J].軟件學報,2010,21(5):942-949.
Prediction of Software Reliablity Based on Pegels Model
CHEN Lu, HU Xian-de
(College of Information Engineering, Anhui Xinhua University, Hefei Anhui 230088, China)
Abstract:The prediction of software reliability was discussed in the paper. Firstly, the paper analyzed exponential smoothing model which is widely used Pegels model and damped Pegels model. Then,mathematical model was built based on the sum of squared errors of software reliability rule. Finally,the best smoothing factor was calculated while the minimum value of SSE has got. The experiments show that the Pegels model is preciser in software reliability prediction on Tandem set, and the result of damped Pegels model is better than Pegels model, which is validated from the smoothing factor decided by experience.
Key words:Pegels model; software reliability; sum of the squared errors rules; smoothing factor
[收稿日期]2016-04-17
[基金項目]安徽省質量工程“計算機科學與技術(IT服務外包方向)”(2013ZY084)。
[作者簡介]陳路(1983- ),女,講師,碩士研究生,從事軟件可靠性、數學建模研究。
[中圖分類號]TP311
[文獻標識碼]A
[文章編號]2095-7602(2016)06-0046-04