溫博文, 董文瀚, 解武杰, 馬駿
(空軍工程大學(xué) 航空航天工程學(xué)院, 陜西 西安 710038)
?
深度自編碼觀測器飛機操縱面快速故障診斷
溫博文, 董文瀚, 解武杰, 馬駿
(空軍工程大學(xué) 航空航天工程學(xué)院, 陜西 西安 710038)
為了避免擴展多模型自適應(yīng)估計故障診斷方法中的雅克比矩陣計算,解決飛機精確模型難以獲得的問題,降低在線故障診斷的計算量,提出了一種基于深度自編碼觀測器的飛機操縱面快速故障診斷方法?;陔x線訓(xùn)練、在線估計的思想,采用量測的飛行數(shù)據(jù)訓(xùn)練得到不同故障下的飛機模型,代替擴展多模型自適應(yīng)估計方法的卡爾曼濾波器進行狀態(tài)估計;基于基礎(chǔ)自編碼器的隱層節(jié)點數(shù)選取經(jīng)驗公式,推導(dǎo)了兩種深度自編碼器的隱層節(jié)點數(shù)選取的遞推公式。仿真結(jié)果表明,該方法無需精確的飛機模型,故障診斷速度快、精度高。
飛機操縱面故障; 狀態(tài)估計; 深度學(xué)習(xí); 故障診斷
操縱面是飛行控制系統(tǒng)中最重要的組成部分之一。飛機在飛行過程中會受到外界環(huán)境的影響,尤其是戰(zhàn)斗機在戰(zhàn)斗過程中將不可避免地產(chǎn)生各種操縱面故障,嚴重威脅飛行安全。因此,飛機操縱面故障診斷至關(guān)重要[1]。在能夠獲得系統(tǒng)精確數(shù)學(xué)模型的情況下,多模型自適應(yīng)估計方法是針對飛機操縱面故障的一種有效、快速的故障診斷方法[2];但是,該方法需要預(yù)先建立精確的數(shù)學(xué)模型,飛機發(fā)生故障時模型即發(fā)生變化。為了解決飛機模型具有高度非線性且難以獲得的問題,基于數(shù)據(jù)知識的神經(jīng)網(wǎng)絡(luò)故障診斷方法成為研究的熱點[3]。Hinton等[4]提出了逐層訓(xùn)練參數(shù)的思想,解決了多隱層神經(jīng)網(wǎng)絡(luò)參數(shù)初始化問題。對于高度復(fù)雜的非線性函數(shù),深度模型比淺層模型具有更強的表達力,展現(xiàn)了強大的從少數(shù)樣本集中學(xué)習(xí)數(shù)據(jù)集本質(zhì)特征的能力[5-6]。利用深度模型來描述數(shù)據(jù)間的復(fù)雜關(guān)系,能夠克服淺層學(xué)習(xí)算法的局限性,提高復(fù)雜函數(shù)表征能力[7]。同時,網(wǎng)絡(luò)的拓撲結(jié)構(gòu)直接影響學(xué)習(xí)能力和信息處理能力,因此研究人員高度重視隱層節(jié)點的選擇。隱層節(jié)點數(shù)與輸入輸出單元數(shù)量有著密切聯(lián)系[8]。隱層節(jié)點數(shù)對網(wǎng)絡(luò)性能有巨大影響,節(jié)點數(shù)越多,學(xué)習(xí)時間越長;但是節(jié)點數(shù)太少會導(dǎo)致網(wǎng)絡(luò)的容錯性能較差[9]。目前,大多數(shù)研究者基于經(jīng)驗或大量試驗結(jié)果選擇節(jié)點數(shù),還沒有一種自編碼優(yōu)化的方法來選擇最優(yōu)的網(wǎng)絡(luò)結(jié)構(gòu)。
本文針對飛機操縱面的典型故障,提出了一種基于深度自編碼優(yōu)化(Deep Auto-Encoder,DAE)的多模型深度學(xué)習(xí)快速故障診斷方法,并仿真驗證了該算法的有效性。
飛機非線性離散動力學(xué)方程為[10]:
(1)
其中:
x=[p,q,r,α,β]T
u=[δal,δar,δel,δer,δr,FT]T
基于深度自編碼優(yōu)化的多模型快速故障診斷方法如圖1所示。這需要訓(xùn)練i+1個DAE觀測器,用于觀測無故障和i種故障模式。
圖1 基于深度自編碼優(yōu)化的多模型故障診斷方法Fig.1 DAE based multiple-model diagnosis algorithm
深度神經(jīng)網(wǎng)絡(luò)模型使用BP算法訓(xùn)練網(wǎng)絡(luò)模型時,常常會陷入局部最小值。無監(jiān)督貪婪地逐層參數(shù)初始化是深度學(xué)習(xí)的核心思想。通過無監(jiān)督初始化的參數(shù)代替BP中隨機初始化值,有助于權(quán)值處于參數(shù)空間中較好的位置,避免陷入局部最小值。
為了解決深度網(wǎng)絡(luò)模型訓(xùn)練的問題,利用自編碼進行權(quán)值參數(shù)初始化,然后利用反向傳播算法進行微調(diào)。訓(xùn)練步驟如下:
步驟1:歸一化訓(xùn)練數(shù)據(jù),并利用自編碼初始化網(wǎng)絡(luò)參數(shù)。
自編碼器是一種盡可能復(fù)現(xiàn)輸入信號的神經(jīng)網(wǎng)絡(luò)[5]。傳統(tǒng)編碼器表示為:
(2)
sigmoid(x)=1/(1+exp(-x))
(3)
(4)
(1)初始化深度網(wǎng)絡(luò)參數(shù)W(1)。第1個自編碼網(wǎng)絡(luò)的輸入為飛機的控制輸入向量u,則用訓(xùn)練后的W(1)代替深度結(jié)構(gòu)網(wǎng)絡(luò)隨機初始化的參數(shù)W1;
(2)初始化網(wǎng)絡(luò)參數(shù)W(k)。訓(xùn)練第k個自編碼時,網(wǎng)絡(luò)的輸入為第k-1個自編碼網(wǎng)絡(luò)隱層的輸出。用訓(xùn)練后的參數(shù)W(1),W(2),…,W(k-1)代替初始化參數(shù)Wk,并計算隱層輸出;
(3)重復(fù)(2)至優(yōu)化完第n-1個網(wǎng)絡(luò)參數(shù);
(4)最后一層輸入作為監(jiān)督層的輸入。
步驟2:采用批量梯度下降法,對整個網(wǎng)絡(luò)參數(shù)進行有監(jiān)督的微調(diào)。
DAE觀測器必須經(jīng)過參數(shù)調(diào)優(yōu),一般選擇BP算法進行調(diào)整。調(diào)整的核心是把輸入層、輸出層、隱層看作一個整體,通過有監(jiān)督的學(xué)習(xí)調(diào)整網(wǎng)絡(luò)。經(jīng)過多次訓(xùn)練后,誤差和權(quán)值達到最優(yōu)。其過程為:
(1)對權(quán)值、誤差、閾值初始化;
(2)基于BP算法,用訓(xùn)練集訓(xùn)練網(wǎng)絡(luò)并計算每一層的輸出;
(3)計算每層的重構(gòu)誤差并調(diào)整權(quán)值和偏差;
(4)重復(fù)(2)~(3),直到整個網(wǎng)絡(luò)的輸出滿足性能要求。
定義如下深度神經(jīng)網(wǎng)絡(luò)的代價函數(shù):
J(θ)=JMSE(θ)+Jweight(θ)
(5)
其中:
Jweight(θ)限制權(quán)值在一個很小的范圍內(nèi)以避免過擬合。因此,循環(huán)一次參數(shù)W,b的更新公式為:
(6)
式中:η為學(xué)習(xí)速率。
根據(jù)反向傳播算法,代價函數(shù)可由下式計算:
(7)
定義輸出層第i個節(jié)點的誤差項為:
‖y-h(x)‖2
(8)
定義第k層第i個神經(jīng)元節(jié)點的輸出誤差項為:
(9)
根據(jù)反向傳播算法,第k層代價函數(shù)對參數(shù)W,b的偏導(dǎo)數(shù)為:
(10)
將式(10)代入式(7),經(jīng)過一定次數(shù)的循環(huán)更新,即可得到優(yōu)異的網(wǎng)絡(luò)參數(shù)W,b。
深度自編碼觀測器的模型結(jié)構(gòu),如隱層數(shù)以及隱層節(jié)點數(shù),對于重構(gòu)性能至關(guān)重要。本文根據(jù)3層神經(jīng)網(wǎng)絡(luò)隱層節(jié)點數(shù)選擇的經(jīng)驗公式,推導(dǎo)了兩種隱層節(jié)點數(shù)選擇的遞推公式。
在N層DAE觀測器的預(yù)處理過程中,每一隱層是一個基礎(chǔ)自編碼器,如圖2(a)所示。一個基礎(chǔ)的自編碼器由3層神經(jīng)網(wǎng)絡(luò)構(gòu)成,是一種簡單的包含一個隱層的神經(jīng)網(wǎng)絡(luò),能夠像編碼器一樣重構(gòu)輸入。圖2(b)為兩層自編碼器。
圖2 自編碼器結(jié)構(gòu)Fig.2 Structure of auto-encoder
圖中:ni,no分別為輸入層節(jié)點、輸出層節(jié)點;hk為第k層節(jié)點。如ni+h1+h2+no代表一個輸入層為ni、輸出層為no、隱層節(jié)點為h1和h2的深度網(wǎng)絡(luò)。
對于任一個自編碼器,隱層節(jié)點h可以通過3層神經(jīng)網(wǎng)絡(luò)的經(jīng)驗公式來選擇,即:
(11)
h=
(12)
第k隱層自編碼器的輸入為上一隱層的輸出,即第k層的輸入ni為前一隱層節(jié)點數(shù)hk-1,因此可以通過以下兩種迭代公式計算第k層節(jié)點數(shù):
(13)
(14)
第一隱層的輸入為系統(tǒng)輸入ni,即h0=ni。
4.1 仿真條件
仿真中,對文獻[10]中的六旋翼非線性模型采用PID控制,并且加入傳感器的量測噪聲,噪聲模型均值為0.001的白噪聲。利用Matlab進行數(shù)據(jù)采集,包括需要的正常數(shù)據(jù)和故障數(shù)據(jù)。訓(xùn)練數(shù)據(jù)的采樣時間為90 s,采樣周期為0.01 s,共9 001組樣本。無故障數(shù)據(jù)采集時,選取正常狀態(tài)下的飛機控制輸入和實際輸出,輸入的方波信號分別為:(1)t=0~20 s,俯仰角跟隨頻率0.1 Hz,振幅15°;(2)t=30~50 s,滾轉(zhuǎn)角跟隨頻率0.08 Hz,振幅10°;(3)t=60~80 s,偏航角跟隨頻率0.06 Hz,振幅12°。
4.2 DAE觀測器結(jié)構(gòu)選擇及訓(xùn)練結(jié)果
表1為不同網(wǎng)絡(luò)結(jié)構(gòu)的試驗結(jié)果,通過改變隱層節(jié)點數(shù)和隱層數(shù)來評估DAE觀測器的性能。
表1 不同結(jié)構(gòu)的DAE觀測器仿真結(jié)果
Table 1 Simulation results of different DAE structures
隱層數(shù)層節(jié)點數(shù)計算方法網(wǎng)絡(luò)結(jié)構(gòu)JMSE(θ)ttrain/s2隨機數(shù)16+4+5+51459510028隨機數(shù)26+20+28+51654646631隨機數(shù)36+150+200+513759381410式(13)6+11+12+51067927056式(14)6+7+8+511378184433隨機數(shù)16+4+5+4+51413513624隨機數(shù)26+20+28+25+51798768533隨機數(shù)36+150+200+250+51331970818式(13)6+11+12+13+51034541357式(14)6+7+8+8+511445257664隨機數(shù)16+4+5+4+6+51554317427隨機數(shù)26+20+28+25+17+52021486443隨機數(shù)36+150+200+250+200+5158181014528式(13)6+11+12+13+13+51450253255式(14)6+7+8+8+8+51562134608
可以看出,網(wǎng)絡(luò)結(jié)構(gòu)采用6+11+12+13+5能夠得到最佳性能。其中,6為輸入層節(jié)點數(shù);11,12,13分別為隱層h1,h2,h3的節(jié)點數(shù);5為輸出層節(jié)點數(shù)。隨機節(jié)點數(shù)的性能是不穩(wěn)定的:節(jié)點數(shù)越少,訓(xùn)練結(jié)果均方誤差越大;節(jié)點數(shù)越多,訓(xùn)練時間越長。本文方法節(jié)點數(shù)選擇精度高、訓(xùn)練時間短。
圖3給出了無故障情況下調(diào)優(yōu)過程代價函數(shù)收斂圖。可以看出,在訓(xùn)練循環(huán)2 000次左右時,基本收斂到恒定值。此時可以認為網(wǎng)絡(luò)參數(shù)為最優(yōu)參數(shù)。本文方法選擇的網(wǎng)絡(luò)結(jié)構(gòu)收斂速度最快。
圖3 代價函數(shù)收斂曲線Fig.3 Convergence curves of cost function
圖4給出了無故障情況下,利用操縱系統(tǒng)各操縱面無故障時的數(shù)據(jù)對網(wǎng)絡(luò)進行測試,側(cè)滑角的DAE觀測器訓(xùn)練結(jié)果??梢钥闯鼍W(wǎng)絡(luò)輸出值與真實值擬合良好,說明所建立的網(wǎng)絡(luò)可靠。
圖4 無故障時側(cè)滑角DAE觀測器訓(xùn)練結(jié)果Fig.4 Training results of DAE observer for sideslip angle without fault
4.3 典型故障診斷仿真驗證
訓(xùn)練后,DAE觀測器的參數(shù)θ固定不變,并作為深度學(xué)習(xí)故障診斷系統(tǒng)的輸入。故障診斷仿真共采樣300 s:t=10~40 s時,左副翼卡死在20°的位置;t=70~100 s時,右副翼卡死在-15°的位置;t=130~160 s時,方向舵卡死在-2°的位置;t=190~220 s時,左升降舵卡死在-20°的位置;t=250~280 s時,右升降舵卡死在-15°的位置。
針對一系列故障,利用測試數(shù)據(jù)對多模型系統(tǒng)進行故障診斷。定義在一段檢測時間內(nèi),如果故障概率達到90%,則認為操縱面發(fā)生故障;如果故障概率不足5%,則認為操縱面正常。圖5給出了根據(jù)不同的故障檢測方法得到的故障概率圖。
圖5 故障概率Fig.5 Failure probability
由圖5可以看出,故障均能被準確診斷,而且比普通的EMMAE方法[10]縮短了故障檢測時間。EMMAE方法計算得到的狀態(tài)估計的均方根誤差為40.799 2,測試時間為11.504 5 s;DAE方法均方根誤差為13.534 2,測試時間為4.203 4 s?;贒AE觀測器的故障診斷方法均方根誤差更低,提高了飛行狀態(tài)的估計精度,降低了故障診斷時間。
圖6比較了有噪聲和無噪聲時的測量結(jié)果,給出了基于不同故障診斷方法的概率加權(quán)得到的飛機狀態(tài)估計結(jié)果??梢钥闯?EMMAE 方法[10]得到的狀態(tài)能夠基本擬合真實值;DAE觀測器的效果更好,能夠較好地擬合真實值。
圖6 概率加權(quán)狀態(tài)估計Fig.6 Probability-weighted state estimation
本文提出了一種基于深度自編碼觀測器的多模型快速故障診斷方法,該方法避免了卡爾曼濾波器雅克比矩陣的計算,無需飛機精確的數(shù)學(xué)模型,即可診斷飛機操作面的故障,提高了故障診斷的速度和狀態(tài)估計的精度。后續(xù)將進一步研究同時出現(xiàn)多個故障的診斷問題。
[1] Odendaal H M,Jones T.Actuator fault detection and isolation: an optimised parity space approach[J].Control Engineering Practice,2014,26(11):222-232.
[2] Ma J,Ni S,Xie W,et al.An improved strong tracking multiple-model adaptive estimation:a fast diagnosis algorithm for aircraft actuator fault [J].Transactions of the Institute of Measurement and Control,2015,38(7):846-854.
[3] Singh S,Murthy T V R.Neural network-based sensor fault accommodation in flight control system[J].Journal of Intelligent Systems,2013,22(3):317-333.
[4] Hinton G E,Osindero S,Teh Y W.A fast learning algorithm for deep belief nets[J].Neural Computation,2006,18(7):1527-1554.
[5] Liu X,Zhang W,Huang Y,et al.Neural network-based sensor online fault diagnosis and reconfiguration for flight control systems[C]//The Sixth World Congress on Intelligent Control and Automation.Dalian:IEEE,2006:5577-5580.
[6] Yuan H,Lu C,Xiong Z,et al.Fault detection for an aileron actuator under variable conditions based on bi-step neural network[J].Applied Mechanics and Materials,2015,764-765:740-746.
[7] Yuan H,Lu C,Ma J,et al.Neural network-based fault detection method for aileron actuator[J].Applied Mathematical Modelling,2015,39(19):5803-5815.
[8] Napolitano M R,Silvestr G I,Windon D A,et al.Sensor validation using hardware-based on-line learning neural networks[J].IEEE Transactions on Aerospace and Electronic Systems,1998,34(2):456-468.
[9] Zhang G,Wang B.Fault diagnosis of flying control system servo actuator based on Elman neural network[C]//2011 10th International Conference on Electronic Measurement and Instruments (ICEMI).Chengdu:IEEE,2011:46-49.
[10] Ducard G,Geering H P.Effcient nonliner actuator fault detection and isolation system for unmanned aerial vehicles[J].Journal of Guidance,Control,and Dynamics,2008,31(1):225-237.
(編輯:李怡)
Fast fault diagnostic method for aircraft actuators with deep auto-encoder observer
WEN Bo-wen, DONG Wen-han, XIE Wu-jie, MA Jun
(Aeronautics and Astronautics Engineering College, AFEU, Xi’an 710038, China)
To avoid the calculation of Jacobi matrix in traditional multiple model adaptive estimation method, solve the problem of difficult to obtain accurate plane model and reduce the amount of calculation for online fault diagnosis, a deep auto-encoder observer multiple-model fault diagnosis algorithm for aircraft actuator fault was proposed. Based on the thought of off-line training and online estimation, the method replaced Kalman filters in traditional multiple model adaptive estimation with different fault aircraft models obtained by training measured flight data. Based on the empirical formula of the basic auto-encoder hidden layer node number selection, two recursive formulas for deep auto-encoder hidden layer node number selection were derived. The simulation results show that the method does not require accurate aircraft models and has fast speed and high accuracy for fault diagnosis.
aircraft actuator fault; state estimation; deep learning; fault diagnosis
2016-04-29;
2016-07-25;
時間:2016-09-28 09:52
溫博文(1992-),男,四川眉山人,碩士研究生,主要研究方向為數(shù)據(jù)處理。
V249.1
A
1002-0853(2016)06-0034-05