郝萬亮, 邊英杰, 申獻(xiàn)芳, 鄭金磊
(1. 32145部隊(duì),河南 新鄉(xiāng) 453000; 2. 66350部隊(duì), 河北 保定 071000)
航空裝備保障涉及范圍廣,系統(tǒng)復(fù)雜性高,直接關(guān)系著航空裝備的性能及完好狀態(tài)。為了提高保障能力,需要對(duì)裝備狀態(tài)、裝備完好性以及航材備件消耗情況等進(jìn)行預(yù)測,根據(jù)預(yù)測結(jié)果提前采取必要措施預(yù)防故障的發(fā)生,及時(shí)籌備足夠的航材備件,提高裝備的完好率。因此,科學(xué)地預(yù)測分析,在航空裝備保障工作中起著重要的作用[1]。
一般情況下,對(duì)于預(yù)測問題,在收集到的數(shù)據(jù)量較多時(shí),通常采用概率與數(shù)據(jù)統(tǒng)計(jì)的方法進(jìn)行分析。但是在航空裝備保障領(lǐng)域,大多數(shù)情況下收集到的數(shù)據(jù)量少,概率與數(shù)據(jù)統(tǒng)計(jì)方法不能達(dá)到較好的預(yù)測效果。因此,小樣本預(yù)測問題一直是不同領(lǐng)域研究的熱點(diǎn)和難點(diǎn),即如何利用較少的數(shù)據(jù)和較短的時(shí)間來獲取相對(duì)準(zhǔn)確的預(yù)測數(shù)據(jù)。近年來,支持向量機(jī)(support vector machine, SVM)理論快速發(fā)展。它是建立在統(tǒng)計(jì)學(xué)理論的VC維理論以及結(jié)構(gòu)風(fēng)險(xiǎn)最小化原理基礎(chǔ)上,專門針對(duì)小樣本學(xué)習(xí)的方法,能夠有效避免非線性、高維數(shù)、過學(xué)習(xí)以及欠學(xué)習(xí)等常見問題。其特點(diǎn)是利用較短的訓(xùn)練時(shí)間,達(dá)到較強(qiáng)的泛化能力,實(shí)用性強(qiáng)[2-5]。而支持向量機(jī)回歸是SVM的重要分支,在不同領(lǐng)域獲得了較為廣泛的應(yīng)用[6-7]。航空裝備故障直接影響著裝備的完好性以及飛行安全,研究故障發(fā)生的規(guī)律對(duì)于航空備件的存儲(chǔ)也有著積極的指導(dǎo)意義。部分專家學(xué)者針對(duì)此問題采用了一元線性回歸、灰色模型、專家判斷等方法,取得了一定的進(jìn)展[8]。本文采用支持向量機(jī)回歸分析方法,利用LIBSVM軟件包[9-11]對(duì)某機(jī)載設(shè)備不同時(shí)間段內(nèi)的故障發(fā)生數(shù)量進(jìn)行預(yù)測,取得了較好的預(yù)測效果。
支持向量機(jī)作為一種機(jī)器學(xué)習(xí)方法,是建立在統(tǒng)計(jì)學(xué)習(xí)理論基礎(chǔ)上,由Vapnik等人于20世紀(jì)90年代中期提出的。它最早應(yīng)用于分類問題,能夠較好地解決樣本數(shù)量少、維度高的問題;后逐步應(yīng)用到回歸問題中,稱為支持向量機(jī)回歸[12]。在實(shí)際應(yīng)用過程中,根據(jù)是否需要進(jìn)入高維空間,支持向量機(jī)回歸有兩種方法:線性回歸和非線性回歸[13]。
給定一個(gè)線性可分訓(xùn)練樣本D={(xi,yi)|i=1,2,……,l},xi∈Rd,yi∈R,l為訓(xùn)練樣本的個(gè)數(shù),d為每個(gè)訓(xùn)練樣本向量的維數(shù)。線性回歸的問題即求回歸函數(shù):
f(x)=(ω·x)+b
(1)
式中,b∈R,(ω·x)為ω與x的內(nèi)積,且滿足結(jié)構(gòu)風(fēng)險(xiǎn)最小化原理。
常用的誤差函數(shù)有Laplace函數(shù)、Huber函數(shù)和ε不敏感損失函數(shù),其中ε不敏感損失函數(shù)因具有較好的性質(zhì)而得到廣泛的應(yīng)用,其表達(dá)式為:
(2)
當(dāng)樣本點(diǎn)與回歸函數(shù)的距離均小于ε時(shí),求解式(1)即等同于求解下面的二次凸優(yōu)化問題:
(3)
(4)
為求解式(4),引入拉格朗日函數(shù)L:
(5)
(6)
將式(6)代入式(4)中,得到對(duì)偶優(yōu)化問題:
(7)
由式(6)可得出:
(8)
(9)
對(duì)于非線性回歸的情況,支持向量機(jī)的處理策略是首先在低維空間中完成計(jì)算,然后選擇一個(gè)核函數(shù)K(xi,xj),該函數(shù)能夠代替內(nèi)積運(yùn)算,并將數(shù)據(jù)映射到高維特征空間,解決在原始空間中的線性不可分的問題,從而在高維特征空間中構(gòu)造出最優(yōu)分離超平面,把不好分的非線性數(shù)據(jù)分開。將核函數(shù)加入優(yōu)化目標(biāo)函數(shù)中,則式(7)轉(zhuǎn)換為:
(10)
相應(yīng)的預(yù)測函數(shù)則為:
(11)
常用的核函數(shù)有以下幾種:
線性核函數(shù):
K(x,xi)=x·xi
(12)
多項(xiàng)式核函數(shù):
K(x,xi)=(x·xi+l)d
(13)
徑向基(RBF)核函數(shù):
(14)
Sigmoid核函數(shù):
K(x,xi)=tanh(kx·xi+θ)
(15)
支持向量機(jī)非線性回歸利用核函數(shù),將非線性問題轉(zhuǎn)化為線性,提高了對(duì)非線性問題的處理效果,避開了顯示表達(dá)式,具有算法簡單、數(shù)據(jù)計(jì)算量小、易于實(shí)現(xiàn)等特點(diǎn)。更重要的是,回歸函數(shù)由支持向量的樣本所確定,并非取決于樣本的維數(shù),因此不會(huì)因樣本維數(shù)的增加導(dǎo)致計(jì)算量的劇增,不用擔(dān)心維數(shù)災(zāi)難的出現(xiàn)。
為分析支持向量機(jī)回歸算法的預(yù)測效果,統(tǒng)計(jì)了某型直升機(jī)直流發(fā)電機(jī)控制器近三年在使用過程中的故障情況:共有33件發(fā)生故障,每件設(shè)備故障發(fā)生時(shí)間分布如表1所示。
表1 直流發(fā)電機(jī)控制器故障時(shí)的工作時(shí)間(h:min)
將直流發(fā)電機(jī)控制器故障發(fā)生時(shí)間按照從小到大的順序排列。為了便于分析,將其分成24個(gè)故障發(fā)生區(qū)間Ti=(0,30i),其中i=1,2,…,24,同時(shí)統(tǒng)計(jì)出每個(gè)區(qū)間的故障數(shù)量。統(tǒng)計(jì)結(jié)果如表2所示。
表2 各區(qū)間故障數(shù)量統(tǒng)計(jì)
24個(gè)故障區(qū)間內(nèi)直流發(fā)電機(jī)控制器故障數(shù)分為訓(xùn)練數(shù)據(jù)和測試數(shù)據(jù)兩組。訓(xùn)練數(shù)據(jù)取前16個(gè)值,用于對(duì)訓(xùn)練樣本進(jìn)行擬合;測試數(shù)據(jù)取后8個(gè)值,用來驗(yàn)證算法的擬合效果。計(jì)算時(shí)采用基于最小二乘法的二次多項(xiàng)式和支持向量機(jī)回歸兩種不同的方法對(duì)訓(xùn)練數(shù)據(jù)進(jìn)行擬合。
基于最小二乘法的二次多項(xiàng)式對(duì)訓(xùn)練數(shù)據(jù)進(jìn)行擬合,計(jì)算出的表達(dá)式為:
y=3.9×10-5x2+0.0353x+0.0196
(16)
利用支持向量機(jī)回歸對(duì)訓(xùn)練數(shù)據(jù)進(jìn)行擬合。支持向量機(jī)解決非線性回歸問題,最重要的是確定不敏感值ε、懲罰系數(shù)C以及所用的核函數(shù)的參數(shù),因?yàn)檫@些參數(shù)直接影響著支持向量機(jī)的學(xué)習(xí)能力,決定著預(yù)測效果的好壞。對(duì)于核函數(shù)的選擇,并沒有一個(gè)確定的指導(dǎo)原則,但是徑向基核函數(shù)是普遍采用的核函數(shù),其表達(dá)式如式所示。為了確定三個(gè)最優(yōu)參數(shù),可逐個(gè)分析參數(shù)變化對(duì)預(yù)測效果的影響;或者利用網(wǎng)格搜索法,通過在支持向量機(jī)中輸出學(xué)習(xí)誤差進(jìn)行試驗(yàn),得到誤差最小時(shí)所采用的核函數(shù)參數(shù)值即為需要的最佳參數(shù)。經(jīng)過分析最終確定的參數(shù)設(shè)置如下:ε不敏感值取0.002,懲罰系數(shù)C取23,徑向基函數(shù)相關(guān)參數(shù)γ取值2.1e-6。
分別利用二次多項(xiàng)式和支持向量機(jī)回歸預(yù)測模型,對(duì)訓(xùn)練數(shù)據(jù)進(jìn)行擬合,結(jié)果如圖1所示。利用兩種方法對(duì)測試數(shù)據(jù)的故障數(shù)進(jìn)行預(yù)測,預(yù)測結(jié)果如圖2所示,預(yù)測誤差具體值如表3所示。
圖1 訓(xùn)練數(shù)據(jù)擬合曲線
圖2 測試數(shù)據(jù)預(yù)測值
由表3可以計(jì)算出,二次多項(xiàng)式和支持向量機(jī)回歸預(yù)測誤差絕對(duì)值的平均值分別為6.44、0.51,最大預(yù)測誤差分別為12.70、1.71。由此可知,與二次多項(xiàng)式回歸預(yù)測相比,利用支持向量機(jī)回歸算法對(duì)直流發(fā)電機(jī)控制器的故障數(shù)進(jìn)行預(yù)測,具有較高的預(yù)測精度。因此,支持向量機(jī)回歸預(yù)測方法在航空裝備故障預(yù)測領(lǐng)域具有較高的推廣應(yīng)用價(jià)值,同時(shí)對(duì)航材備件消耗也具有較好的借鑒作用。
表3 測試數(shù)據(jù)預(yù)測值與實(shí)際值比較
支持向量機(jī)回歸作為一種針對(duì)小樣本數(shù)據(jù)進(jìn)行預(yù)測的方法,具有較強(qiáng)的學(xué)習(xí)能力和泛化能力,在各個(gè)領(lǐng)域廣泛應(yīng)用,且取得了較好的效果。本文將支持向量機(jī)回歸用于航空裝備故障數(shù)量的預(yù)測,建立了回歸模型。算例分析表明,該模型具有較高的預(yù)測精度。需要指出的是,不同的模型參數(shù)對(duì)預(yù)測精度有著非常大的影響,良好的預(yù)測效果需要準(zhǔn)確的模型參數(shù),因此對(duì)模型參數(shù)的確定方法需進(jìn)一步深入研究。