陳強(qiáng)強(qiáng),戴邵武,許立科,畢新樂
( 1.海軍航空大學(xué), 煙臺(tái) 264000;2.空軍94575部隊(duì),連云港 222000)
光纖陀螺是在Sagnac原理基礎(chǔ)上發(fā)展的光學(xué)器件,憑借動(dòng)態(tài)范圍大、可靠性高及使用壽命長等優(yōu)點(diǎn),逐步成為現(xiàn)代導(dǎo)航系統(tǒng)中的主要器件[1]。在光纖陀螺使用過程中,其工作精度決定著慣導(dǎo)系統(tǒng)的使用精度,而誤差的存在,在一定程度上限制了光纖陀螺的應(yīng)用。因此,對光纖陀螺進(jìn)行客觀準(zhǔn)確的性能評價(jià),可以準(zhǔn)確地把握其誤差特性,為工程應(yīng)用提供一定幫助[2]。
針對光纖陀螺的誤差建模方面,Allan方差分析法及自回歸移動(dòng)平均(Auto Regressive Moving Average,ARMA)模型分析較為成熟。Allan方差分析是在時(shí)域方面對時(shí)間序列的頻率穩(wěn)定性進(jìn)行分析的一種方法,其缺點(diǎn)在于對噪聲特性的不確定性[3]。ARMA模型是傳統(tǒng)的時(shí)間序列建模方法,可以看作自回歸(AutoRegressive,AR)模型和移動(dòng)平均(Moving Average,MA)模型的結(jié)合[4],其擴(kuò)展形式還有自回歸積分滑動(dòng)平均模型(Autoregressive Integrated Moving Average Model, ARIMA)等[5]。傳統(tǒng)的預(yù)測分析方法有著嚴(yán)謹(jǐn)?shù)睦碚撝С?,具有簡單快捷的?yōu)點(diǎn),但針對復(fù)雜的非線性問題,有著很大的精度限制。
隨著人工智能算法的不斷發(fā)展,神經(jīng)網(wǎng)絡(luò)理論逐步成熟完善,在工程中得到重大應(yīng)用。在光纖陀螺建模方面,一些神經(jīng)網(wǎng)絡(luò)算法如徑向基函數(shù)(Radial Basis Function,RBF)神經(jīng)網(wǎng)絡(luò)[6]、支持向量機(jī)(Support Vector Machine,SVM)[7]、灰色BP神經(jīng)網(wǎng)絡(luò)[8]等在隨機(jī)誤差分析中得到應(yīng)用。但受到光纖陀螺工作環(huán)境和制造工藝等多方面因素影響,其隨機(jī)誤差具有很強(qiáng)的非線性及非平穩(wěn)性,此時(shí)單一的神經(jīng)網(wǎng)絡(luò)算法的回歸精度會(huì)受到一定限制。
本文針對光纖陀螺隨機(jī)誤差預(yù)測進(jìn)行了分析研究,針對單一SVM預(yù)測精度不足的問題,通過經(jīng)驗(yàn)?zāi)B(tài)分解(Empirical Mode Decomposition, EMD)對原信號進(jìn)行處理,降低了時(shí)間序列的復(fù)雜程度;然后通過對分解得到的時(shí)間序列進(jìn)行分別預(yù)測并匯總,得到光纖陀螺隨機(jī)誤差的預(yù)測結(jié)果。
EMD方法于1998年由Huang N.E.提出,是一種新型的信號分解方法,在非線性、非平穩(wěn)信號的處理中具有良好的效果[9]。EMD方法的步驟如下。
1)針對原始信號st,找到st的所有極值點(diǎn),通過三次樣條插值方法對st的極值點(diǎn)進(jìn)行擬合,其極大值點(diǎn)的擬合曲線組成上包絡(luò)線Ut,其極小值點(diǎn)的擬合曲線組成下包絡(luò)線Lt。計(jì)算Ut與Lt的均值,記為平均包絡(luò)線m1(t)
(1)
2)將st與m1(t)相減,得到新序列h1(t)
h1(t)=St-m1(t)
(2)
對h1(t)進(jìn)行本征模態(tài)函數(shù)(Intrinsic Mode Function,IMF)判據(jù),判斷IMF分量的標(biāo)準(zhǔn)為:
(1)信號中零點(diǎn)數(shù)和極值點(diǎn)數(shù)相等或至多相差1個(gè);
(2)極大值包絡(luò)線和極小值包絡(luò)線的均值相等且為0。
如果h1(t)不滿足上述IMF判據(jù),則將h1(t)代替st,重復(fù)步驟1)、2),得到新的序列h11(t)
h11(t)=h1(t)-m11(t)
(3)
根據(jù)IMF判據(jù),直到式(3)中的h1m(t)(m代表次數(shù))第一次符合IMF條件,記為imf1(t);與st相減,得到剩余信號
r1(t)=St-imf1(t)
(4)
用r1(t)代替St,重復(fù)執(zhí)行以上步驟,可得到多個(gè)IMF分量及最后1個(gè)不可分序列,記為趨勢項(xiàng)rn(t)。可將EMD算法表達(dá)式記為
(5)
SVM于1995年由Vapnik等首次提出,SVM以統(tǒng)計(jì)學(xué)習(xí)為理論基礎(chǔ),通過非線性映射,將原始空間樣本數(shù)據(jù)映射到高維特征空間,從而實(shí)現(xiàn)其理論分析[10]。支持向量回歸(Support Vector Regression,SVR)是SVM的一種表現(xiàn)形式,主要解決SVM的回歸問題。其思路如下:
針對訓(xùn)練集(x1,y1),(x2,y2),…,(xm,ym),xi,yi∈R,可構(gòu)建線性回歸函數(shù)
y=f(x,ω)=ω·x+b
(6)
線性ε-非敏感損失函數(shù)|y-f(x,ω)|ε(ε為不敏感系數(shù),針對SVR回歸精度進(jìn)行調(diào)控)為
(7)
(8)
其約束條件為
(9)
引入拉格朗日函數(shù)
(10)
求解參數(shù),簡化得回歸函數(shù)為
(11)
引入核函數(shù)的概念,式(11)可轉(zhuǎn)換為
(12)
針對光纖陀螺隨機(jī)誤差的非線性和非平穩(wěn)性,單獨(dú)使用SVR進(jìn)行時(shí)間序列預(yù)測具有一定的難度,并存在著預(yù)測模型不準(zhǔn)確、預(yù)測精度不高等問題。因此,首先使用EMD算法對光纖陀螺隨機(jī)誤差序列進(jìn)行分解,以降低隨機(jī)誤差序列的復(fù)雜程度;然后針對EMD分解后的每個(gè)IMF分量及趨勢項(xiàng)分別構(gòu)建單個(gè)的SVR預(yù)測模型,從而提高預(yù)測精度。采用EMD方法進(jìn)行時(shí)間序列分解之后,其誤差量級為10-14,分解結(jié)果具有很好的完備性,可以完整地表達(dá)出時(shí)間序列包含的全部信息。因此,分解后的各個(gè)IMF量的組合,可以完全擬合原時(shí)間序列[11]。針對分解之后的IMF分量進(jìn)行特性分析可知:在分解過程中,隨著分解次數(shù)的增加,IMF的階數(shù)不斷增加,相應(yīng)地IMF分量波動(dòng)頻率不斷降低,即低階的IMF分量對應(yīng)的是高頻信號。利用EMD算法處理原時(shí)間序列,可以準(zhǔn)確得到時(shí)間序列在不同時(shí)間段的波動(dòng)特征,簡化時(shí)間序列預(yù)測模型,在一定程度上提高時(shí)間序列預(yù)測精度。EMD-SVR算法的基本框圖如圖1所示。
圖1 EMD-SVR算法框圖Fig.1 Flowchart of EMD-SVR
針對IMF分量分別構(gòu)建SVR預(yù)測模型的過程中,影響模型預(yù)測精度的主要因素是核函數(shù)的選取以及核函數(shù)參數(shù)g與懲罰參數(shù)c的設(shè)置。其中,核函數(shù)一般選擇RBF和線性核函數(shù)[12]。g與c的選擇,一般采用交叉驗(yàn)證(Cross Validation,CV)方法[13]。首先在大的范圍粗略確定最佳參數(shù),然后縮小CV的范圍及步長,在更小的合理區(qū)間內(nèi),以更高的精度確定最佳的g與c。在圖1的基礎(chǔ)上,EMD-SVR具體步驟如下:
1)將待分析的時(shí)間序列進(jìn)行經(jīng)驗(yàn)?zāi)B(tài)分解,得到分解后的各分量(IMF1,IMF2,…,IMFn)及趨勢項(xiàng)rn;
2)對所有的IMF分量及趨勢項(xiàng)分別建立SVR模型;
3)對各個(gè)分量進(jìn)行預(yù)測;
4)將多個(gè)預(yù)測值累加得到最終預(yù)測值;
5)分析預(yù)測結(jié)果,驗(yàn)證預(yù)測模型。
以實(shí)驗(yàn)室測量所得的光纖陀螺隨機(jī)誤差序列作為實(shí)驗(yàn)數(shù)據(jù),以驗(yàn)證EMD-SVR算法的有效性。通過對隨機(jī)誤差序列進(jìn)行分析,選擇包含500個(gè)采樣點(diǎn)的隨機(jī)誤差序列,構(gòu)建SVR預(yù)測模型,在預(yù)測過程中選取前450個(gè)數(shù)據(jù)作為訓(xùn)練集,余下50個(gè)數(shù)據(jù)作為測試集,以均方根誤差(Root mean squared error,RMSE)和平均絕對誤差(Mean absolute error,MAE)為指標(biāo)來衡量EMD-SVR算法對時(shí)間序列的預(yù)測能力[14],表達(dá)式如下
(13)
(14)
式中,Xreal,i為第i個(gè)數(shù)據(jù)的真實(shí)值,Xpre,i為第i個(gè)數(shù)據(jù)的預(yù)測值。選擇的光纖陀螺隨機(jī)誤差序列如圖2所示。
圖2 光纖陀螺隨機(jī)誤差Fig.2 Random error of FOG
原光纖陀螺隨機(jī)誤差序列具有較大的非線性與非平穩(wěn)性,采用EMD方法對隨機(jī)誤差序列分解之后,各IMF分量的復(fù)雜度得到有效降低,EMD分解之后的各序列如圖3所示。
圖3 EMD分解結(jié)果Fig.3 Result of EMD
以排列熵作為衡量信號復(fù)雜度的標(biāo)準(zhǔn)[15],各IMF分量的排列熵如圖4所示。
圖4 序列的排列熵Fig.4 Permutation entropy of series
根據(jù)EMD分解之后的各IMF序列及趨勢項(xiàng),構(gòu)建各自的SVR預(yù)測模型。針對排列熵較大的序列,選擇RBF核函數(shù)進(jìn)行時(shí)間序列預(yù)測;對于高階IMF分量及趨勢項(xiàng),選擇線性核函數(shù)進(jìn)行時(shí)間序列預(yù)測,利用交叉驗(yàn)證方法確定核函數(shù)參數(shù)及懲罰參數(shù);確定準(zhǔn)確的SVR預(yù)測模型之后,得到各IMF分量及趨勢項(xiàng)的RMSE及MAE如表1所示。
表1 各序列的預(yù)測指標(biāo)Tab.1 Prediction error of series
如表1所示,隨著IMF階數(shù)的增加,其序列的排列熵隨之降低,即序列的復(fù)雜程度降低,此時(shí)預(yù)測誤差也隨之減小,證明了EMD算法中降低IMF序列復(fù)雜程度的合理性。結(jié)合對EMD算法完備性的分析,分解得到的所有子序列重構(gòu)之后,與原時(shí)間序列的誤差量級為10-14。所以,將表1中各序列的預(yù)測結(jié)果相加,即可得到光纖陀螺隨機(jī)誤差序列的EMD-SVR結(jié)果,如圖5所示。
圖5 預(yù)測結(jié)果Fig.5 Prediction results
為驗(yàn)證EMD-SVR算法的準(zhǔn)確性,采用單個(gè)SVR及傳統(tǒng)的ARMA模型對同樣的光纖陀螺隨機(jī)誤差序列進(jìn)行建模分析,其中,ARMA模型采用AIC準(zhǔn)則進(jìn)行定階,確定其AR及MA的模型階數(shù)[16]。將所得到的預(yù)測結(jié)果與真實(shí)值進(jìn)行對比,其RMSE、MAE指標(biāo)如表2所示。
表2 各方法的預(yù)測指標(biāo)Tab.2 Prediction error of three algorithms
如表2所示,由于光纖陀螺隨機(jī)誤差序列的非線性及非平穩(wěn)性,序列的復(fù)雜程度較高,基于ARMA構(gòu)建的預(yù)測模型不能對其進(jìn)行準(zhǔn)確預(yù)測;而基于機(jī)器學(xué)習(xí)方法的SVR算法,其預(yù)測效果比ARMA模型有著一定程度的提升,表明了神經(jīng)網(wǎng)絡(luò)在時(shí)間序列建模中的優(yōu)越性。相比ARMA模型而言,預(yù)測模型更加準(zhǔn)確,預(yù)測指標(biāo)得到提高;然而,受限于隨機(jī)誤差序列的復(fù)雜程度,SVR算法的能力也受到了限制。在利用EMD算法對時(shí)間序列進(jìn)行分解之后,通過將原時(shí)間序列分解為多個(gè)IMF分量及趨勢項(xiàng),在一定程度上降低了原序列的復(fù)雜程度,此時(shí)采用SVR進(jìn)行建模,能夠有效地提高預(yù)測模型的準(zhǔn)確性,從而降低預(yù)測難度。與SVR方法進(jìn)行對比,其RMSE降低了78.4%,MAE降低了75.5%,有效提高了預(yù)測精度。
本文通過EMD方法對光纖陀螺隨機(jī)誤差序列進(jìn)行分解,得到多個(gè)時(shí)間序列復(fù)雜程度較低的IMF分量及趨勢項(xiàng),有效降低了光纖陀螺隨機(jī)誤差序列的非線性及非平穩(wěn)性;對分解得到的各個(gè)子序列分別建立其對應(yīng)的SVR預(yù)測模型,并將所得結(jié)果進(jìn)行匯總分析,完成光纖陀螺隨機(jī)誤差序列的預(yù)測工作。實(shí)驗(yàn)可得以下結(jié)論:
1)通過排列熵作為時(shí)間序列復(fù)雜程度指標(biāo),運(yùn)用EMD分解算法,可以有效降低光纖陀螺隨機(jī)誤差序列的復(fù)雜程度,有利于建立準(zhǔn)確的預(yù)測模型。
2)機(jī)器學(xué)習(xí)算法在預(yù)測模型建立過程中,比經(jīng)典的數(shù)學(xué)模型更具有精度優(yōu)勢,能夠建立更加準(zhǔn)確的預(yù)測模型。
3)運(yùn)用EMD-SVR算法進(jìn)行預(yù)測分析,可以更加有效地貼近原始數(shù)據(jù)序列的趨勢,所得預(yù)測結(jié)果的準(zhǔn)確度更高,具有一定的理論應(yīng)用價(jià)值。