馬凱超, 宋筆鋒, 殷之平, 謝偉, 曹善成
(西北工業(yè)大學(xué) 航空學(xué)院, 陜西 西安 710072)
一種基于神經(jīng)網(wǎng)絡(luò)的飛機載荷參數(shù)識別方法
馬凱超, 宋筆鋒, 殷之平, 謝偉, 曹善成
(西北工業(yè)大學(xué) 航空學(xué)院, 陜西 西安 710072)
提出一種經(jīng)遺傳算法優(yōu)化的Kalman濾波神經(jīng)網(wǎng)絡(luò)(GA-KFNN)方法,對飛機特定機動下的載荷進行參數(shù)識別。首先,構(gòu)建Kalman濾波神經(jīng)網(wǎng)絡(luò)(KFNN),設(shè)計了相關(guān)改進算法抑制濾波發(fā)散,提高了網(wǎng)絡(luò)的預(yù)測精度和抗噪能力;其次,利用遺傳算法(GA)優(yōu)化KFNN的相關(guān)參數(shù),使網(wǎng)絡(luò)能迅速收斂,提高了運算效率。載荷識別結(jié)果顯示,改進和優(yōu)化后的GA-KFNN運行穩(wěn)定,收斂迅速,具有良好的識別精度和泛化能力,滿足工程實際需求。
神經(jīng)網(wǎng)絡(luò); Kalman濾波; 遺傳算法; 載荷識別
基于飛行參數(shù)的載荷識別(以下簡稱參數(shù)識別)是飛機疲勞載荷監(jiān)控的主要手段[1],其用途有:(1)驗證飛機載荷理論計算方法和計算精度;(2)在新機定型試飛中通過識別載荷擴展飛行包線;(3)建立的參數(shù)識別模型可用于使用中飛機的疲勞載荷監(jiān)控[2]。常用的參數(shù)識別技術(shù)有回歸分析、神經(jīng)網(wǎng)絡(luò)和混合型識別等[2],其中含單隱層的神經(jīng)網(wǎng)絡(luò)已經(jīng)能達到足夠的載荷識別精度[3]。
目前,國內(nèi)外已經(jīng)開展許多基于神經(jīng)網(wǎng)絡(luò)的參數(shù)識別研究。其中,由于飛機的機動載荷是疲勞損傷和使用壽命最重要的影響因素之一[1],所以有研究專門針對特定機動下的載荷進行參數(shù)識別,取得了較為精確的結(jié)果,具有較高的實用價值[1,3]。
本文沿襲以上思路,采用某機動下的飛行參數(shù)和載荷,提出一種經(jīng)遺傳算法優(yōu)化的Kalman濾波神經(jīng)網(wǎng)絡(luò)(GA-KFNN)方法,完成參數(shù)識別過程,并給出算例說明了該方法的準確性與實用性。
初始數(shù)據(jù)經(jīng)過濾波、平滑等預(yù)處理后,取其中的高度、馬赫數(shù)、重量、迎角、重心法向過載等關(guān)鍵參數(shù)[1,4]作為輸入,以某部位的A,B,C三種載荷作為輸出,建立GA-KFNN模型。為便于對預(yù)測精度做出評價,引入如下指標[5]:
(1)最大誤差應(yīng)控制在實測載荷的20%以內(nèi);
(2)平均誤差應(yīng)控制在實測載荷的3%以內(nèi)。
常規(guī)反向傳播神經(jīng)網(wǎng)絡(luò)(BPNN)原理見文獻[1,6]。飛行參數(shù)與不可預(yù)知的偏差作為輸入u0,經(jīng)過“輸入層→隱層→輸出層”兩次加權(quán)求和與非線性映射,輸出u2作為載荷的預(yù)測值;通過與載荷的實測值z比較,來反向調(diào)整各層權(quán)值Wi(i=0,1,2;表示網(wǎng)絡(luò)層號,下同)。網(wǎng)絡(luò)代價函數(shù)為:
(1)
若非線性函數(shù)選為S型函數(shù),則有:
(2)
式中,γ1和γ2分別為兩個S型函數(shù)的斜率,對網(wǎng)絡(luò)誤差和迭代次數(shù)有較大影響。
由于神經(jīng)網(wǎng)絡(luò)的訓(xùn)練過程可以視為一個線性離散時間系統(tǒng)[7],所以可用Kalman濾波算法構(gòu)建KFNN完成上述過程。穩(wěn)定的KFNN不依賴于Wi初值的選取,且精度更高,收斂速度更快[6-7]。但KFNN常假設(shè)過程噪聲w和量測噪聲v為零均值的白噪聲(方差分別為R和Q),仍給預(yù)測結(jié)果帶來一定誤差,且有可能出現(xiàn)濾波發(fā)散現(xiàn)象[7]。本文采用如下算法進行改進:
(1)為了抑制濾波發(fā)散,采用“衰減記憶濾波”法[8],引入遺忘因子λi(i=1,2)來取代R和Q對濾波增益的改變效果,λi的具體形式為:
(3)
在先驗知識不足的情況下,可讓λi從較大值退火到[0,1]之間的某一個較小值,從而逐漸主導(dǎo)濾波增益陣的改變[7-8]。
(4)
(5)
對于i=1,2,若設(shè)學(xué)習(xí)效率為μ,則有:
(6)
其中濾波增益陣、估計誤差方差陣分別為:
(7)
(8)
輸入層-隱層、隱層-輸出層之間的誤差:
(9)
3.1GA的引入
已建立的KFNN包含兩層S型函數(shù)的斜率γ1和γ2、遺忘因子的最終值λ1和λ2、學(xué)習(xí)效率μ等待優(yōu)化參數(shù)。在多種適用于神經(jīng)網(wǎng)絡(luò)的優(yōu)化算法中,GA的運算規(guī)模較小、算法復(fù)雜度低、易于獲得全局最優(yōu)解[10],因此采用GA優(yōu)化這5種參數(shù)。將上述參數(shù)編碼成為特定長度的二進制串,每串代表一個個體,采用式(1)計算個體的適應(yīng)度,其余過程見圖1,相關(guān)參數(shù)設(shè)置見表1。
圖1 GA-KFNN流程Fig.1 GA-KFNN flowchart
參數(shù)數(shù)值種群大小50進化代數(shù)20交叉概率05變異概率03γ1和γ2取值范圍[005,30]μ取值范圍[005,05]λ1和λ2最終值取值范圍[05,1]
3.2 交互驗證的引入
交互驗證是一種有效避免神經(jīng)網(wǎng)絡(luò)出現(xiàn)過學(xué)習(xí)或欠學(xué)習(xí)的方法[11]。本文采用較為精確的K-CV法:將飛行參數(shù)和載荷的訓(xùn)練樣本平均分為K組,以每個子集的數(shù)據(jù)分別作一次預(yù)測集,同時其余的K-1組作為訓(xùn)練集,得到每個個體可能出現(xiàn)的K個適應(yīng)度,以其中的最大值作為該個體的最終適應(yīng)度。所有個體的交互驗證完成后,最終適應(yīng)度最小的個體為最優(yōu)個體,這樣便得到一組最優(yōu)參數(shù)。
下面給出GA-KFNN對特定機動下飛機某部位載荷的預(yù)測結(jié)果。訓(xùn)練樣本容量5 700組,預(yù)測樣本容量180組。輸入為前文提到的關(guān)鍵飛行參數(shù),輸出為A,B,C三種載荷。
4.1GA優(yōu)化結(jié)果
KFNN收斂過程如圖2所示,可見GA的引入使GA-KFNN收斂較快,經(jīng)過一次訓(xùn)練已基本達到最小均方誤差,而未經(jīng)GA優(yōu)化的KFNN則顯示出較慢的收斂速度。
最終得到的一組最優(yōu)參數(shù)為:
γ1=2.397 4,γ2=0.752 0,λ1=0.999 89,λ2=0.998 42,μ=0.299 03。
圖2 KFNN收斂過程Fig.2 KFNN convergence process
4.2GA-KFNN識別精度
該機動下GA-KFNN對三種載荷的預(yù)測結(jié)果(局部)如圖3所示;作為對比,圖中同時給出BPNN的預(yù)測結(jié)果(局部)。
數(shù)據(jù)對比如表2所示。
由圖3和表2可知,GA-KFNN的最大絕對誤差、最大相對誤差和平均相對誤差均低于BPNN,且能滿足指標要求;而大量實驗中BPNN的平均相對誤差很難低于3%,不滿足指標要求??梢奊A-KFNN具有較高的精度,可以應(yīng)用在工程實際問題中。
圖3 GA-KFNN與BPNN的預(yù)測結(jié)果Fig.3 Prediction results of GA-KFNN and BPNN
方法載荷最大絕對誤差/N·m最大相對誤差/%平均相對誤差/%GA?KFNNA621255728224754B391077939114848C282138604027962BPNNA664426458632196B7490211756962379C4728910116964903
4.3GA-KFNN泛化能力
泛化能力是指網(wǎng)絡(luò)訓(xùn)練好后,對新的輸入數(shù)據(jù)能給出準確的輸出結(jié)果,或當原輸入數(shù)據(jù)受到噪聲污染時,仍具有一定的輸出精度[12]。GA-KFNN具有較好的泛化能力,現(xiàn)設(shè)計驗證方法如下:
(1)對訓(xùn)練樣本的馬赫數(shù)、迎角、重心法向過載等3個關(guān)鍵輸入?yún)?shù)進行噪聲污染:對其1/2樣本數(shù)據(jù)加減隨機數(shù)或直接變?yōu)殡S機數(shù)(計算機任意選擇方式;隨機數(shù)取值范圍與原數(shù)據(jù)相同),1/4樣本數(shù)據(jù)置零,其余樣本數(shù)據(jù)不做處理,以此模仿原數(shù)據(jù)受到污染、歪曲和遺漏等情況;3個參數(shù)的污染過程是獨立的;
(2)對訓(xùn)練樣本的輸出不做任何修改;對預(yù)測樣本的輸入和輸出均不做任何修改;
(3)用污染后的樣本進行訓(xùn)練和預(yù)測,分別采用GA-KFNN方法和BPNN方法。兩種方法的預(yù)測結(jié)果(局部)如圖4所示,數(shù)據(jù)對比見表3。
圖4 GA-KFNN與BPNN對污染數(shù)據(jù)的預(yù)測結(jié)果Fig.4 Predicted results for the polluted data by GA-KFNN and BPNN
方法載荷最大絕對誤差/N·m最大相對誤差/%平均相對誤差/%GA?KFNNA885148323233754B504168942533056C5011711801062060BPNNA18944026675066301B13784032994072638C6775519816044624
由以上圖表可見,對關(guān)鍵輸入?yún)?shù)作較大變動后,BPNN的誤差較大,尤其是峰谷值點,導(dǎo)致其最大相對誤差遠遠超出指標允許的范圍;而GA-KFNN的最大相對誤差仍低于20%,平均相對誤差略高于3%(其中載荷A和載荷B在4%以內(nèi),載荷C為6.2%),在峰谷值點未發(fā)生大的偏差。這在工程上具有實際意義。當飛機的數(shù)據(jù)采集系統(tǒng)發(fā)生故障時,往往會出現(xiàn)誤采或漏采。在這種情況下,GA-KFNN仍能根據(jù)有限的可靠信息給出具有一定參考價值的預(yù)測結(jié)果,體現(xiàn)出較強的實用性。
當然,大量實驗中也觀測到:GA-KFNN對載荷C的預(yù)測精度一般要低于載荷A和B,如圖3和圖4所示。初步的分析是對于這種多輸入多輸出的樣本,GA-KFNN還存在兩方面的問題:一是初始數(shù)據(jù)的檢驗和預(yù)處理尚不充分;二是模型的適應(yīng)能力等還有待提升。這些都是未來工作的重點。
通過本文研究得出以下結(jié)論:(1)利用神經(jīng)網(wǎng)絡(luò)方法,針對特定機動的參數(shù)識別可以獲得較為精確的結(jié)果;(2)用GA優(yōu)化得到的最佳參數(shù)訓(xùn)練神經(jīng)網(wǎng)絡(luò)模型,可以加速模型的收斂,提高運算效率;(3)GA-KFNN不依賴于網(wǎng)絡(luò)權(quán)值的初值,具有較高的識別精度;(4)GA-KFNN具有較強的泛化能力,表現(xiàn)為訓(xùn)練樣本發(fā)生嚴重的噪聲污染時仍能給出具有一定精度的預(yù)測結(jié)果;(5)目前GA-KFNN尚存在多輸出精度不對等的問題,表現(xiàn)在對載荷C的識別精度總是低于載荷A和B,其原因下一步將重點進行研究。
[1] 蔣祖國,田丁栓,周占廷.飛機結(jié)構(gòu)載荷/環(huán)境譜[M].北京:電子工業(yè)出版社,2012:77-88,252-254,357-358.
[2] 劉文廷.結(jié)構(gòu)可靠性設(shè)計手冊[M].北京:國防工業(yè)出版社,2008:323-332.
[3] Tikka J A.Flight parameter based fatigue analysis approach for a fighter aircraft[J].The Aeronautical Journal,2008,112(1):79-91.
[4] 劉文廷,王智,隋福成,等.單機壽命監(jiān)控技術(shù)指南[M].北京:國防工業(yè)出版社,2010:40-49.
[5] Kaneko H,Furukawa T.Operational loads regression equation development for advanced fighter aircraft[C]//Paper ICAS 24th International Congress of the Aeronautical Sciences.Japan,2004:1-9.
[6] Ravindra V J.Flight vehicle system identification:a time domain methodology[M].USA:American Institute of Aeronautics and Astronautics,2006:265-274.
[7] 付夢印,鄧志紅,閆莉萍,等.Kalman濾波理論及其在導(dǎo)航系統(tǒng)中的應(yīng)用[M].第二版.北京:科學(xué)出版社,2010:175-198.
[8] Godrad D.Channel equalization using a Kalman filter for fast data transmission[J].Communication,1974,18(5):267-273.
[9] Scalero R S,Tepedelenlioglu N.A fast algorithm for training feed-forward neural networks[J].IEEE Transactions on Signal Processing,1992,40(1):202-210.
[10] Nicolas Garcia-Pedrajas,Domingo Drtiz-Boyer,Cesar Hervas-Martinez.An alternative approach for neural network evolution with a genetic algorithm:crossover by combinatorial optimization[J].Neural Networks,2006,19(4):514-528.
[11] 史峰,王小川,郁磊,等.Matlab神經(jīng)網(wǎng)絡(luò)30個案例分析[M].北京:北京航空航天大學(xué)出版社,2010:121-132.
[12] 賀昱曜,方忠,徐德民.基于卡爾曼濾波的二次型神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)算法及收斂性分析[J].系統(tǒng)工程與電子技術(shù),1999,21(8):57-59.
Analternativeapproachforparameterbasedflightloadsidentificationusingtheneuralnetworks
MA Kai-chao, SONG Bi-feng, YIN Zhi-ping, XIE Wei, CAO Shan-cheng
(College of Aeronautics, NWPU, Xi’an 710072, China)
This paper describes a parameter based flight loads identification approach under specific maneuvers by developing Genetic Algorithm improved Kalman Filter Neural Networks (GA-KFNN). Firstly, in order to overcome the defects of conventional Back-propagation Neural Networks (BPNN), KFNN are constructed and improved by updated algorithms to restrain filtering divergence, whilst be more precise in prediction and robust to noise. Secondly, GA is applied to optimize the parameters of KFNN, so that the networks can converge more quickly and have higher efficiency. The results of loads identification show that GA-KFNN operates stably, converge rapidly, and have good recognition accuracy and generalization ability, which meet the demands of engineering practice.
neural networks; Kalman filter; genetic algorithm; load identification
V215.2
A
1002-0853(2013)04-0363-04
2012-11-30;
2013-03-28; < class="emphasis_bold">網(wǎng)絡(luò)出版時間
時間:2013-06-06 12:24
國家自然科學(xué)基金青年科學(xué)基金資助(11102158)
馬凱超(1988-),男,北京人,碩士研究生,研究方向為飛行器系統(tǒng)辨識。
(編輯:方春玲)