,, ,,
(1.北京航天測控技術(shù)有限公司,北京 100041; 2.甘肅酒泉十四支局,甘肅 735018)
吊艙是現(xiàn)代作戰(zhàn)飛機(jī)進(jìn)行不同飛行任務(wù)時(shí)配備的專用外掛設(shè)備,通過加裝各功能吊艙能使戰(zhàn)斗機(jī)在超低空飛行、夜間瞄準(zhǔn)、精確制導(dǎo)、電子對抗等方面的性能大幅度提高,吊艙的健康狀態(tài)極大的影響著武器系統(tǒng)的戰(zhàn)斗力。機(jī)載武器吊艙是重復(fù)使用的航空設(shè)備,需要頻繁的掛機(jī)飛行,而且工作環(huán)境惡劣經(jīng)常面臨過載沖擊、振動沖擊、高空超低溫等苛刻條件,因此需要依據(jù)吊艙測試結(jié)果進(jìn)行有效的故障分析與故障定位。
結(jié)合現(xiàn)有多型吊艙通用檢測設(shè)備,吊艙的測試數(shù)據(jù)通過吊艙綜合測試設(shè)備施加不同激勵信號后獲得,測試數(shù)據(jù)中包含了吊艙的故障信息。吊艙設(shè)備的故障診斷屬于小樣本、非線性的模式識別問題,SVM算法適用于處理該類問題。SVM模型參數(shù)直接影響了模型的性能,如何選用合適核函數(shù)和參數(shù)是建立吊艙有效故障診斷模型的關(guān)鍵,依據(jù)人為經(jīng)驗(yàn)的選用方式不僅影響模型性能,還降低了算法的使用性能。本文探究采用改進(jìn)的SVM算法建立故障診斷模型,采用K-CV和粒子群算法進(jìn)行SVM模型的參數(shù)優(yōu)化,建立更加準(zhǔn)確的故障診斷模型,以實(shí)現(xiàn)吊艙故障類型和故障位置的快速診斷。通過采用吊艙故障診斷數(shù)據(jù)進(jìn)行試驗(yàn)研究,本文提出的改進(jìn)后的SVM算法,可以更好的實(shí)現(xiàn)吊艙故障類型的診斷,為武器裝備的快速保障提供技術(shù)支持。
SVM算法最早是為了解決分類問題提出的,通過尋找最有分類超平面,可以在滿足分類要求的同時(shí),使得超平面兩側(cè)的空白區(qū)域最大化。SVM建立的最優(yōu)分類超平面,可以使分類的真實(shí)風(fēng)險(xiǎn)最小[1-2]。支持向量機(jī)可以應(yīng)用在聚類分析、模式識別、回歸預(yù)測等多種問題,是一種非常具有應(yīng)用前景的智能算法。支持向量機(jī)算法的基本原理為:
w·x+b=0
(1)
其中,x為輸入向量,w為權(quán)值向量,b為偏置量。
為了實(shí)現(xiàn)正確分類,需要滿足的函數(shù)關(guān)系為:
?yi(w·xi+b)-1≥0
(2)
其中分類間隔為:
(3)
最優(yōu)分類超平面不僅能夠順利將樣本分類,達(dá)到經(jīng)驗(yàn)風(fēng)險(xiǎn)最小,還能使分類間隔最大,保證置信風(fēng)險(xiǎn)最小,從而達(dá)到真實(shí)風(fēng)險(xiǎn)最小的目的。最大化分類間隔可以通過最小化‖w‖,最優(yōu)超平面的求解可以轉(zhuǎn)化為約束最優(yōu)化問題:
(4)
為了解決約束最優(yōu)化問題,引入Lagrange因子ai,建立Lagrange函數(shù):
(5)
約束最優(yōu)化問題的解在極值點(diǎn)處取得,將Lagrange函數(shù)轉(zhuǎn)變?yōu)閷ε紗栴}:
(6)
根據(jù)最優(yōu)條件Karush-Kuhn-Tucker(KKT)準(zhǔn)則,將其轉(zhuǎn)化為二次函數(shù)極值問題,函數(shù)形式為:
(7)
滿足條件:
ai{[(w·xi)+b]yi-1}=0
最優(yōu)解問題滿足的條件中,多數(shù)情況下ai=0。ai≠0的情況下,滿足等式的樣本為支持向量,支持向量是影響分類面的重要因素。通過引入最優(yōu)分類函數(shù)f(x)解決該問題:
(8)
對吊艙的故障診斷屬于線性不可分問題,為了達(dá)到分類誤差概率最小的目的,引入懲罰因子C和松弛因子ξi,將模型轉(zhuǎn)換為約束最優(yōu)化問題:
(9)
滿足條件:
為了解決低維空間的線性不可分問題,構(gòu)造出核函數(shù)K(xi,xj)將低維空間的線性不可分問題轉(zhuǎn)換為高維空間的線性可分問題,只需要計(jì)算低維空間向高維空間的映射Φ的內(nèi)積K(xi,xj)=Φ(xi)·Φ(xj)。通過引入核函數(shù),線性不可分問題的拉格朗日函數(shù)為[3]:
(10)
轉(zhuǎn)化為“對偶”問題的形式為:
(11)
求解的最優(yōu)函數(shù)為:
(12)
利用支持向量機(jī)求解模式識別和分類問題首先需要選擇合適的核函數(shù),不同的核函數(shù),分類器的性能完全不同。不同的核函數(shù)適用于不同的回歸問題或分類問題,選擇合適的支持向量機(jī)是保證模型性能的重要保證。此外,懲罰因子C以及核函數(shù)相關(guān)的參數(shù)是直接影響支持向量機(jī)模型性能的重要因素。懲罰因子C的選取也直接影響了模型的性能,C的取值越大,函數(shù)的擬合程度越高,但是會降低模型的泛化能力。核函數(shù)中多項(xiàng)式函數(shù)的冪指數(shù)d以及徑向基核函數(shù)g都會影響映射函數(shù),選用合適的模型參數(shù)才能提高模型的學(xué)習(xí)能力和泛化能力。
為了獲得合適的模型參數(shù),采用K-CV方法,設(shè)定參數(shù)的搜索范圍和搜索步長實(shí)現(xiàn)參數(shù)尋優(yōu),劃分實(shí)驗(yàn)數(shù)據(jù)為訓(xùn)練集和測試集,交叉驗(yàn)證模型參數(shù),從而提高模型的診斷準(zhǔn)確率。基于K-CV方法改進(jìn)的SVM算法實(shí)現(xiàn)步驟為:
1)獲取吊艙測試數(shù)據(jù),尤其是吊艙的故障數(shù)據(jù),數(shù)據(jù)來源于測試、實(shí)驗(yàn)和仿真數(shù)據(jù),對數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)化處理;
2)提取數(shù)據(jù)的特征向量,對數(shù)據(jù)進(jìn)行歸一化處理,將數(shù)據(jù)樣本劃分為訓(xùn)練集和測試集;
3)選取SVM核函數(shù),選用RBF核函數(shù)并設(shè)定初始的SVM參數(shù)值范圍:懲罰因子C,核參數(shù)g,建立SVM故障診斷模型;
4)選取C和g的值,利用訓(xùn)練集作為原始數(shù)據(jù)集,采用K-CV方法得到該組參數(shù)值下的分類準(zhǔn)確率,固定參數(shù)C和g的搜索步長,更新模型參數(shù),最終選取分類準(zhǔn)確率最高的一組作為最佳參數(shù)值[4-5];
5)利用建立的SVM模型判斷測試集數(shù)據(jù)的故障類型,并輸出準(zhǔn)確率。
圖1 K-CV方法改進(jìn)的SVM吊艙故障診斷算法流程圖
SVM算法的關(guān)鍵是選取合適的核函數(shù),懲罰因子和核參數(shù),改進(jìn)的SVM算法采用了多項(xiàng)式核函數(shù)和RBF核函數(shù)建立多核SVM故障診斷模型,采用粒子群算法對核參數(shù)進(jìn)行尋優(yōu)處理,從而得到最佳的參數(shù)值,提高分類的準(zhǔn)確率。基于粒子群改進(jìn)的SVM算法的實(shí)現(xiàn)步驟為:
1)獲取吊艙測試數(shù)據(jù),尤其是吊艙的故障數(shù)據(jù),數(shù)據(jù)來源于測試、實(shí)驗(yàn)和仿真數(shù)據(jù),對數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)化處理;
2)提取數(shù)據(jù)的特征向量,對數(shù)據(jù)進(jìn)行歸一化處理,將數(shù)據(jù)樣本劃分為訓(xùn)練集和測試集;
3)將測試集分類的準(zhǔn)確率作為適應(yīng)度值;
5)設(shè)置迭代公式,粒子通過個體極值和全局極值更新自身的速度和位置,其迭代公式為:
式中,w為慣性權(quán)重;d=1,2,…,D;i=1,2,…,n;k為迭代次數(shù),Vid為粒子的速度,c1和c2是加速度因子,非負(fù)常數(shù);r1和r2為分布在[0,1]之間的隨機(jī)數(shù);為了防止粒子的盲目搜索,粒子的位置和速度分布在[-Xmax,Xmax]、[-Vmax,Vmax]。
慣性權(quán)重為:
w(k)=wstart+(wstart-wend)(2k/Tmax-(k/Tmax)2)
6)計(jì)算得到當(dāng)前粒子的適應(yīng)度值,更新個體最優(yōu)適應(yīng)度值和群體歷史最優(yōu)位置Pgbest,通過多次迭代得到自身最優(yōu)適應(yīng)度值,補(bǔ)充并更新記憶體中的全局最優(yōu)位置和局部最優(yōu)位置[6-7]。
7)根據(jù)選取的全局最優(yōu)的參數(shù)值:核權(quán)重因子ρ,懲罰因子C,核參數(shù)g、d,建立SVM吊艙故障診斷模型,利用測試集檢測輸出故障診斷的結(jié)果。
圖2 粒子群算法改進(jìn)的SVM吊艙故障診斷算法流程圖
基于前述兩種吊艙故障診斷算法,結(jié)合本文給出吊艙的故障數(shù)據(jù),輸出故障診斷類型和準(zhǔn)確率,驗(yàn)證兩種算法的學(xué)習(xí)能力和泛化能力。采集吊艙故障數(shù)據(jù)180組,進(jìn)行歸一化處理后劃分?jǐn)?shù)據(jù),90組作為訓(xùn)練數(shù)據(jù),90組作為測試數(shù)據(jù)。
基于K-CV方法改進(jìn)的SVM模型,懲罰因子C和核參數(shù)g粗略的搜索空間設(shè)置為[2-10,210],粗略選擇的結(jié)果為:C=2.2974 g=4,訓(xùn)練集的準(zhǔn)確率為97.96%,粗略選擇的選擇結(jié)果如圖3和圖4所示。然后精細(xì)化選擇,懲罰因子C搜索空間設(shè)置為[2-2,22],核參數(shù)g的搜索空間為[2-4,24],精細(xì)化選擇后的結(jié)果為:C=1.4142 g=1,訓(xùn)練集的準(zhǔn)確率為98.89%,精細(xì)化選擇的選擇結(jié)果如圖5和圖6所示。
圖3 SVM模型參數(shù)選擇等高線
圖4 SVM參數(shù)選擇3D視圖
圖5 SVM模型參數(shù)選擇等高線
圖6 SVM參數(shù)選擇3D視圖
采用粒子群算法改進(jìn)SVM模型,基于多項(xiàng)式核函數(shù)和RBF核函數(shù)兩種核函數(shù)建立SVM模型,通過粒子群算法對核權(quán)重因子ρ,懲罰因子C,核參數(shù)g、d進(jìn)行優(yōu)化。其中選擇粒子群的主要參數(shù)為:種群大小為20,加速度因子c1=1.4,c2=1.6,慣性權(quán)重取值為wstart=0.9,wend=0.4。訓(xùn)練集的測試準(zhǔn)確性為98.89%,通過訓(xùn)練得到適應(yīng)度曲線圖如圖7所示。
圖7 粒子群算法優(yōu)化的多核SVM模型參數(shù)最佳結(jié)果
根據(jù)優(yōu)化后的參數(shù)和模型,采用吊艙故障數(shù)據(jù)測試集對模型進(jìn)行檢測,基于K-CV方法優(yōu)化,SVM分類模型的準(zhǔn)確率為96.67%,基于粒子群算法優(yōu)化,多核SVM分類模型的準(zhǔn)確率為98.89%,測試結(jié)果如圖8所示,診斷結(jié)果如表1所示。
通過實(shí)驗(yàn)研究可以得出,K-CV算法和粒子算法都可以實(shí)現(xiàn)對支持向量機(jī)參數(shù)的優(yōu)化。K-CV算法通過在規(guī)定的范圍內(nèi)對參數(shù)先進(jìn)行粗略搜索,得到參數(shù)粗略的范圍,然后降低搜索步長,精細(xì)化選擇核參數(shù),經(jīng)過K-CV算法優(yōu)化的支持向量機(jī)模型可以提高其故障診斷的效果。粒子群算法可以實(shí)現(xiàn)支持向量機(jī)核權(quán)重因子、核參數(shù)以及懲罰因子的動態(tài)尋優(yōu),通過迭代尋找全局最優(yōu)解。實(shí)驗(yàn)結(jié)果表明,兩種算法優(yōu)化的支持向量機(jī)模型訓(xùn)練集的準(zhǔn)確率都可以達(dá)到98.89%,測試集中,K-CV算法優(yōu)化的支持向量機(jī)模型故障診斷準(zhǔn)確率為97.78%,粒子群算法優(yōu)化的支持向量機(jī)模型故障診斷準(zhǔn)確率為98.89%,經(jīng)過優(yōu)化后的SVM模型能夠準(zhǔn)確識別吊艙故障類型。粒子群算法更加能夠適應(yīng)動態(tài)環(huán)境的變化,建立多核支持向量機(jī)模型,參數(shù)的選擇不限制在指定的閾值范圍內(nèi),并且能夠有效的避免陷入局部最優(yōu)解,模型性能更高。
圖8 模型分類結(jié)果
故障類型模型 指令發(fā)送異常射頻回路異常圖像發(fā)射異常天線伺服檢查異??傆?jì)人為選取SVM參數(shù)95%(19/20)90%(18/20)9583%(23/24)9231%(24/26)9333%(84/90)K-CV100%(20/20)100%(19/20)100%(24/24)92.31%(24/26)96.67%(87/90)粒子群100%(20/20)100%(20/20)100%(24/24)96.15%(25/26)98.89%(89/90)
本文將SVM算法引入到吊艙的故障診斷領(lǐng)域中,參數(shù)設(shè)置對于SVM分類模型的性能具有重要的影響,通過采用K-CV算法和粒子群算法優(yōu)化SVM分類模型,可以提高模型的故障診斷性能。本文結(jié)合采集的吊艙檢測實(shí)驗(yàn)數(shù)據(jù),驗(yàn)證改進(jìn)的SVM分類模型的性能,檢測結(jié)果表明,兩種改進(jìn)模型的檢測準(zhǔn)確率得到明顯提高,基于粒子群算法優(yōu)化的多核SVM模型檢測準(zhǔn)確率更高,學(xué)習(xí)能力和泛化能力更強(qiáng),具有較高的工程實(shí)用性。
[1] 平 源.基于支持向量機(jī)的聚類及文本分類研究[D].北京:北京郵電大學(xué),2012.
[2] 張樹團(tuán),張曉斌,雷 濤,邸亞洲. 基于粒子群算法和支持向量機(jī)的故障診斷研究[J]. 計(jì)算機(jī)測量與控制,2008(11):1573-1574+1581.
[3] 陳 波,張友靜,陳 亮,等.結(jié)合紋理的SVM遙感影像分類研究[J] .測繪工程, 2007,05:23-27.
[4] Li K, Xie J, Sun X, et al. Multi-class text categorization based on LDA and SVM[J]. Procedia Engineering, 2011,15:1963-1967.
[5] 張 偉,胡昌華等.克隆規(guī)劃-交叉驗(yàn)證參數(shù)優(yōu)化的LSSVM及慣性器件預(yù)測[J].西安電子科技大學(xué)學(xué)報(bào),2007,03:428-432.
[6] Amir Mohsen ToliyatAbolhassani, Mahdi Yaghoobi. Stock price forecasting using PSOSVM. IEEE International Conference on Advanced Computer Theory and Engineering, 2010(3), 352-356.
[7] 張 慶,劉丙杰.基于PSO和分組訓(xùn)練的SVM參數(shù)快速優(yōu)化算法[J].科學(xué)技術(shù)與工程, 2008,8(16):4613-4616.