• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于改進(jìn)粒子群算法的軟件可靠性評估

      2017-11-10 12:14李寧
      現(xiàn)代電子技術(shù) 2017年21期
      關(guān)鍵詞:粒子群優(yōu)化算法仿真實驗

      李寧

      摘 要: 軟件可靠性是軟件質(zhì)量評價的一個重要標(biāo)準(zhǔn),針對傳統(tǒng)方法存在軟件可靠性評估精度低,結(jié)果不可信等缺陷,提出基于改進(jìn)粒子群算法的軟件可靠性評估模型。首先對當(dāng)前軟件可靠性評估的研究現(xiàn)狀進(jìn)行分析,然后建立軟件可靠性評估模型,最后采用改進(jìn)粒子群算法對模型參數(shù)進(jìn)行求解,并通過具體軟件可靠性評估實驗對模型的性能進(jìn)行分析,結(jié)果表明,改進(jìn)粒子群算法可以對軟件可靠性進(jìn)行高精度評估,而且評估結(jié)果要明顯優(yōu)于其他軟件可靠性評估模型,具有更高的實際應(yīng)用價值。

      關(guān)鍵詞: 軟件質(zhì)量; 粒子群優(yōu)化算法; 可靠性評估模型; 仿真實驗

      中圖分類號: TN911.1?34; TP309 文獻(xiàn)標(biāo)識碼: A 文章編號: 1004?373X(2017)21?0102?03

      Software reliability evaluation based on improved particle swarm optimization algorithm

      LI Ning

      (Xian Railway Vocational & Technical Institute, Xian 710014, China)

      Abstract: The software reliability is an important standard of software quality evaluation. Since the traditional methods have the defects of low software reliability evaluation accuracy and incredible evaluation result, a software reliability evaluation model based on improved particle swarm optimization algorithm is put forward. The current research status of software reliability evaluation is analyzed. The software reliability evaluation model is established, and its parameters are solved with the improved particle swarm optimization algorithm. The performance of the model is analyzed with the specific experiment of software reliability evaluation. The experimental results show that the improved particle swarm optimization algorithm can evaluate the software reliability accurately, and its evaluation result is much better than that of other software reliability evaluation models. It has high practical application value.

      Keywords: software quality; particle swarm optimization algorithm; reliability evaluation model; simulation experiment

      0 引 言

      隨著計算機(jī)技術(shù)的不斷發(fā)展,其在各行各業(yè)得到了迅速應(yīng)用,各行各業(yè)均出現(xiàn)了許多軟件,軟件規(guī)模越來越大,也變得越來越復(fù)雜,而軟件可靠性是評價軟件質(zhì)量的一個重要標(biāo)準(zhǔn),因此對軟件可靠性進(jìn)行評估顯得十分重要[1?3]。

      硬件可靠性與時間密切相關(guān),隨著時間增加,可靠性降低,相對于硬件可靠性,軟件系統(tǒng)的可靠性更加復(fù)雜,軟件可靠性與時間不成正比。在軟件測試過程中,故障會慢慢被發(fā)現(xiàn)和消除,軟件可靠性會越來越高[4?5]。當(dāng)前軟件可靠性主要采用軟件失效率來評價,理想狀態(tài)下,軟件失效率為零,但是在軟件開發(fā)過程中,會不斷產(chǎn)生新的故障,所以要使軟件失效率完全達(dá)到零是不可能的,因此主要對軟件失效率進(jìn)行評估和預(yù)測,達(dá)到對軟件可靠性進(jìn)行評價的目的[6]。當(dāng)前軟件可靠性模型超過一百多種,最早軟件可靠性評估模型為最小二乘算法,它對軟件可靠性參數(shù)進(jìn)行線性估計,對于小規(guī)模軟件,可靠性評估的精度高,對于大規(guī)模軟件,其工作效率低,而且評估結(jié)果的可靠性急劇下降[7]。隨后有學(xué)者提出了基于極大似然法的軟件可靠性評估模型,但也存在一些不足,如簡化了模型的約束條件,太理想化,難以應(yīng)用于實際,同時它屬于線性評估模型,而軟件可靠性具有明顯的非線性變化趨勢[8?9]。隨著人工智能技術(shù)的成熟,有學(xué)者將神經(jīng)網(wǎng)絡(luò)引入到軟件可靠性評估中,對軟件可靠性進(jìn)行預(yù)測,獲得了較好的軟件可靠性評估結(jié)果。然而神經(jīng)網(wǎng)絡(luò)的訓(xùn)練時間長,泛化能力差,獲得了過擬合的軟件可靠性評估結(jié)果。有學(xué)者將支持向量機(jī)引入到軟件可靠性評估建模中,泛化能力要明顯優(yōu)于神經(jīng)網(wǎng)絡(luò),評估結(jié)果的可信度高,但學(xué)習(xí)時間長,影響軟件可靠性評估實時性[10]。智能優(yōu)化算法具有強(qiáng)大的求解問題能力,有學(xué)者提出基于粒子群算法的軟件可靠性評估模型,由于該算法可以結(jié)合軟件可靠性變化的特點,可以對軟件可靠性評估模型參數(shù)進(jìn)行估計,提高了軟件可靠性評估準(zhǔn)確性,然而基于粒子群算法存在易陷入局部最優(yōu)的缺陷,使得軟件可靠性評估的精度有待進(jìn)一步提高[11?12]。

      針對標(biāo)準(zhǔn)粒子群算法存在軟件可靠性評估精度低,結(jié)果不可信等難題,提出改進(jìn)粒子群算法的軟件可靠性評估模型,結(jié)果表明改進(jìn)粒子群算法可以對軟件可靠性進(jìn)行高精度評估,而且評估結(jié)果要明顯優(yōu)于其他軟件可靠性評估模型。endprint

      1 改進(jìn)粒子群算法

      1.1 標(biāo)準(zhǔn)粒子群算法

      隨著智能優(yōu)化理論研究的不斷深入,出現(xiàn)許多智能優(yōu)化算法,其中粒子群算法就是其中的一種。粒子群算法對鳥群覓食行為進(jìn)行模擬,通過個體和集體協(xié)作與競爭模擬問題的求解過程,從而找到問題的最優(yōu)解。問題解的空間維數(shù)為[N,]共有[M]個粒子,粒子均有一個位置和速度向量,采用[Xi]和[Vi]描述,每個粒子群通過不斷更新位置和飛行速度調(diào)整自己的飛行軌跡,在第[t]代,粒子[i]的最優(yōu)位置為[pti=(pti1,pti2,…,ptid)],相應(yīng)的速度和位置為[vti=(vti1,vti2,…,vtid)]和[xti=(xti1,xti2,…,xtid)],粒子群的最好位置為[ptg=(ptg1,ptg2,…,ptgd)],[g=argmin1≤i≤mPti,]粒子速度和位置更新方式為:

      [vt+1id=vtid+c1r1(ptid-xtid)+c2r2(ptgd-xtid)] (1)

      [xt+1id=xtid+vt+1id] (2)

      式中:[c1]為認(rèn)知項系數(shù);[c2]表示社會項系數(shù);[r1,r2]為服從(0,l)的隨機(jī)數(shù)。

      為了更好地搜索問題的最優(yōu)解,引入慣性權(quán)重[w],式(1)變?yōu)椋?/p>

      [vt+1id=wvtid+c1r1(ptid-xtid)+c2r2(ptgd-xtid)] (3)

      當(dāng)慣性權(quán)重[w]較大時,全局搜索能力強(qiáng),較小時,局部搜索能力較強(qiáng),為此,有學(xué)者采用動態(tài)的變化方式,具體為:

      [w=wmax-wmax-wminintermax×inter] (4)

      1.2 粒子群算法的改進(jìn)

      1.2.1 混沌技術(shù)

      在自然界的非線性系統(tǒng)中,大多數(shù)都具有混沌運動特征,混沌就是一種看似沒有規(guī)律,實際有規(guī)律的運動,遍歷性能相當(dāng)好,可以逃離局部最優(yōu)陷阱?;煦缦到y(tǒng)動力學(xué)的Logistic方程為:

      [Cr(t+1)=k×Cr(t)×(1-Cr(t))] (5)

      式中:[Cr(0)]為隨機(jī)數(shù);[k]為一常數(shù)。

      1.2.2 速度更新公式的混沌粒子群算法

      將混沌理論引入到粒子群算法的速度改善中,通過采用混沌技術(shù)的遍歷特性提高算法的搜索能力,這樣式(3)變?yōu)椋?/p>

      [vt+1id=wvtid+c1Cr(ptid-xtid)+c2(1-Cr)(ptgd-xtid)] (6)

      2 改進(jìn)粒子群算法的軟件可靠性評估模型

      2.1 軟件可靠性評估模型的適應(yīng)度函數(shù)

      設(shè)軟件失效的發(fā)生時間為[t,]模型參數(shù)為[E,]那么軟件可靠性的累計失效數(shù)可以表示為:

      [Failure=F(t,E)] (7)

      式中:[E=(e1,e2,…,ek),][k]為估計參數(shù)數(shù)量。

      適應(yīng)度函數(shù)采用累計失效數(shù)與實際累計失效數(shù)([F(t)])之間的偏差表示,具體為:

      [f(E)=i=0TF(i,E)-F(t)2n] (8)

      式中:[T]為軟件測試時間;[n]為測試樣本數(shù)。

      2.2 改進(jìn)粒子群算法的軟件可靠性評估步驟

      Step1:對具體一個軟件可靠性數(shù)據(jù)進(jìn)行收集,計算軟件可靠性的累計失效數(shù)。

      Step2:設(shè)置粒子的初始位置、位置的下界與上界的值。

      Step3:初始化粒子群,當(dāng)?shù)螖?shù)為[t=0]時,粒子[i]和種群的當(dāng)前最好位置均為[x0i,]即有[P0i=x0i]。

      Step4:對粒子個體的最優(yōu)位置向量進(jìn)行更新操作,并計算其適應(yīng)度值[f(Xt+1i)]。

      Step5:如果[f(Xt+1i)

      Step6:對粒子群的最優(yōu)位置向量進(jìn)行更新操作,計算其適應(yīng)度值[f(Gt),]如果[f(Pt+1i)

      Step7:通過式(4)對粒子的慣性權(quán)值進(jìn)行更新操作。

      Step8:采用混沌技術(shù)對粒子的速度進(jìn)行處理。

      Step9:如果[xt+1i,j>Xmax,]那么有:[xt+1i,j=Xmax;]如果[xt+1i,j

      Step10:檢查是否滿足終止條件,如果不滿足,[t=t+1,]執(zhí)行Step2,否則得到軟件可靠性參數(shù)估計值。

      Step11:根據(jù)參數(shù)的估計值建立軟件可靠性評估模型,具體如圖1所示。

      3 仿真實驗

      3.1 數(shù)據(jù)源

      當(dāng)前軟件可靠性模型的類型很多,本文選擇常用的非齊次泊松過程模型,其表達(dá)式為:

      [F(t,E)=α×(1-e-b×t)] (9)

      式中:[E=(a,b),][a]為期望的軟件出現(xiàn)的故障數(shù)量,[b]為故障被檢測的概率。

      非齊次泊松過程模型包括7組數(shù)據(jù),它們由失效間隔的時間序列表示,選擇標(biāo)準(zhǔn)粒子群算法進(jìn)行對比測試,選擇軟件可靠性評估精度和平均評估時間對性能進(jìn)行分析。

      3.2 結(jié)果與分析

      3.2.1 適應(yīng)度值比較分析

      統(tǒng)計改進(jìn)粒子群算法和標(biāo)準(zhǔn)粒子群算法的不同數(shù)據(jù)集的適應(yīng)度值,結(jié)果如表1所示。

      從表1可知,改進(jìn)粒子群算法的軟件可靠性模型的適應(yīng)度值要小于標(biāo)準(zhǔn)粒子群算法,這表明改進(jìn)粒子群算法的軟件可靠性評估誤差更小,軟件可靠性評估結(jié)果更好,這是因為改進(jìn)粒子群算法克服了標(biāo)準(zhǔn)粒子群算法存在的局限性,具有更好的收斂性,能夠找到軟件可靠性評估模型參數(shù)的全局最優(yōu)值。

      3.2.2 軟件可靠性評估的正確率比較

      統(tǒng)計改進(jìn)粒子群算法和標(biāo)準(zhǔn)粒子群算法的不同數(shù)據(jù)集的軟件可靠性評估精度,結(jié)果如圖2所示。對軟件可靠性評估精度進(jìn)行對比和分析可以發(fā)現(xiàn),改進(jìn)粒子群算法的軟件可靠性評估精度要遠(yuǎn)遠(yuǎn)高于標(biāo)準(zhǔn)粒子群算法,這表明改進(jìn)粒子群算法可以獲得更加理想的軟件可靠性評估模型參數(shù),建立了更優(yōu)的軟件可靠性評估模型。

      統(tǒng)計改進(jìn)粒子群算法和標(biāo)準(zhǔn)粒子群算法的不同數(shù)據(jù)集的軟件可靠性評估時間,結(jié)果如圖3所示。從圖3可知,標(biāo)準(zhǔn)粒子群算法的平均評估時間長,這是因為它極易陷入局部最優(yōu)解,而改進(jìn)粒子群算法由于引入了混沌理論對粒子速度進(jìn)行處理,加快了軟件可靠性評估模型的參數(shù)尋優(yōu)速度,可以避免進(jìn)入局部最優(yōu)解,保證求得全局最優(yōu)值。

      4 結(jié) 語

      軟件可靠性具有重要的研究價值,當(dāng)前軟件評估模型存在評估精度低的難題,為此,提出基于改進(jìn)粒子群算法的軟件可靠性評估模型,通過粒子群算法對模型的參數(shù)進(jìn)行優(yōu)化和估計,并通過多個數(shù)據(jù)對模型的有效性進(jìn)行了測試。測試結(jié)果表明,改進(jìn)粒子群算法可以對軟件可靠性評估模型參數(shù)進(jìn)行準(zhǔn)確估計,建立了性能優(yōu)異的軟件可靠性評估模型,評價精度要遠(yuǎn)遠(yuǎn)高于當(dāng)前其他軟件可靠性評估模型,具有較高的實際應(yīng)用價值。

      參考文獻(xiàn)

      [1] 鄭艷艷,郭偉,徐仁佐.軟件可靠性工程學(xué)綜述[J].計算機(jī)科學(xué),2009,36(2):20?25.

      [2] 徐高潮,劉新忠,胡亮,等.引入關(guān)聯(lián)缺陷的軟件可靠性評估模型[J].軟件學(xué)報,2011,22(3):439?450.

      [3] 樓俊鋼,江建慧,靳昂.考慮軟件不同失效過程偏差的軟件可靠性模型[J].計算機(jī)學(xué)報,2010,33(7):1263?1266.

      [4] 賈治宇,康銳.軟件可靠性預(yù)測的ARIMA方法研究[J].計算機(jī)工程與應(yīng)用,2008,44(35):17?19.

      [5] 余正偉,吳玉美.基于失效分析的軟件可靠性評估方法研究[J].計算機(jī)工程與應(yīng)用,2008,44(35):16?17.

      [6] 許寧,張毅坤.基于正交分層聚類算法軟件可靠性模型的預(yù)測分析[J].計算機(jī)應(yīng)用,2007,27(3):635?638.

      [7] 李東林,徐燕凌,蔣心怡.軟件可靠性數(shù)據(jù)預(yù)處理研究[J].電子技術(shù)應(yīng)用,2010,36(8):153?156.

      [8] XIAO X, DOHI T. Wavelet shrinkage estimation for non?homogeneous Poisson process based software reliability models [J]. IEEE transactions on reliability, 2013, 62(1): 211?225.

      [9] 趙靖,張汝波,顧國昌.考慮故障相關(guān)的軟件可靠性增長模型研究[J].計算機(jī)學(xué)報,2007,30(10):1713?1720.

      [10] 梁軍濤,蔣曉原,張海.根據(jù)軟件體系結(jié)構(gòu)評估軟件可靠性[J].應(yīng)用科學(xué)學(xué)報,2009,27(3):277?281.

      [11] MOHANTY R, RAVI V, PATRA M R. Hybrid intelligent systems for predicting software reliability [J]. Applied soft computing journal, 2013, 13(1): 189?200.

      [12] PARK J, BAIK J. Improving software reliability prediction through multi?criteria based on dynamic model selection and combination [J]. Journal of systems and software, 2015, 101(C): 236?244.endprint

      猜你喜歡
      粒子群優(yōu)化算法仿真實驗
      仿真軟件在制藥人才培養(yǎng)中的作用分析
      基于自適應(yīng)線程束的GPU并行粒子群優(yōu)化算法
      基于混合粒子群算法的供熱管網(wǎng)優(yōu)化設(shè)計
      基于改進(jìn)支持向量機(jī)的船舶縱搖預(yù)報模型
      開展體驗式教學(xué)創(chuàng)新研究 提高化學(xué)課堂有效性
      基于多重視閾下的《電子控制技術(shù)》課程的教學(xué)探討
      基于ETAP的電氣設(shè)計仿真實驗
      PMU最優(yōu)配置及其在艦船電力系統(tǒng)中應(yīng)用研究
      聊城市| 宁化县| 安丘市| 连云港市| 高州市| 龙山县| 永济市| 什邡市| 台东市| 许昌市| 含山县| 西青区| 利川市| 治多县| 沁阳市| 迁安市| 高雄市| 乳山市| 雷州市| 许昌县| 天台县| 津市市| 宜昌市| 宁远县| 吴川市| 临清市| 贵德县| 保靖县| 汉阴县| 习水县| 循化| 蓬莱市| 堆龙德庆县| 靖宇县| 江阴市| 平乡县| 南华县| 伊宁县| 永顺县| 河源市| SHOW|