吉昱瑋, 吳紅蘭
(南京航空航天大學(xué) 民航學(xué)院,江蘇 南京 211106)
飛機(jī)引氣系統(tǒng)是飛機(jī)非常重要的系統(tǒng)之一,其主要作用是為飛機(jī)的空調(diào)系統(tǒng)、客艙增壓系統(tǒng)、發(fā)動機(jī)啟動系統(tǒng)、除冰系統(tǒng)、水箱和液壓油箱等提供特定溫度和壓力的氣源[1]。如果引氣系統(tǒng)發(fā)生故障會導(dǎo)致嚴(yán)重的事故后果,最終影響簽派放行導(dǎo)致出現(xiàn)航班延誤甚至航班取消的情況,這種后果會給航空公司造成嚴(yán)重的損失。在引氣系統(tǒng)故障檢測方面,航空公司通常是將飛機(jī)運(yùn)行產(chǎn)生的QAR(Quick Access Recorder,快速存取記錄器)數(shù)據(jù)和航空公司自己設(shè)定的閾值作比較,如果處于故障范圍則會采取相應(yīng)的措施進(jìn)行檢修,但是這種依靠工程經(jīng)驗(yàn)得到的結(jié)果有一定的局限性,可能會導(dǎo)致出現(xiàn)過度維修或者故障發(fā)現(xiàn)不及時(shí)等問題,影響航空公司效益。
為了解決以上問題,文獻(xiàn)[1] 以民機(jī)引氣系統(tǒng)為研究對象,使用QAR數(shù)據(jù)進(jìn)行引氣系統(tǒng)的健康檢測與診斷;文獻(xiàn)[2]使用RBF(Radial Basis Function)神經(jīng)網(wǎng)絡(luò)模型對A320引氣系統(tǒng)進(jìn)行故障診斷,識別故障原因;文獻(xiàn)[3] 使用改進(jìn)符號有向圖(Improved Signed Directed Graph,ISDG)模型的多故障診斷方法對引氣系統(tǒng)做故障診斷;文獻(xiàn)[4] 基于無跡卡爾曼濾波(Unscented Kalman Filter,UKF)算法對飛機(jī)引氣溫度控制系統(tǒng)的傳感器和閥門作動器進(jìn)行故障檢測和隔離;文獻(xiàn)[5] 將基于案例推理(Case-Based Reasoning,CBR)方法應(yīng)用于飛機(jī)引氣系統(tǒng)故障診斷和維修決策支持過程;文獻(xiàn)[6] 使用基于遺傳算法的小波神經(jīng)網(wǎng)絡(luò)對引氣系統(tǒng)進(jìn)行故障預(yù)測。
在故障檢測算法方面,SVM(Support Vector Machines,支持向量機(jī))算法是一種廣泛使用的二分類算法,在模式識別[7]、故障檢測和診斷[8]等方面被廣泛使用。對比傳統(tǒng)的數(shù)據(jù)分析算法,SVM可以利用較少量的訓(xùn)練樣本構(gòu)建具有較強(qiáng)擬合能力和泛化能力的模型[9],適合于引氣系統(tǒng)的故障檢測。本文使用引氣系統(tǒng)QAR數(shù)據(jù),基于自適應(yīng)粒子群算法優(yōu)化SVM尋找最優(yōu)參數(shù)建立引氣系統(tǒng)故障檢測模型,并使用實(shí)際收集到的QAR數(shù)據(jù)對模型進(jìn)行驗(yàn)證。
以空客A320為例,飛機(jī)氣源來自于地面氣源車引氣、APU(Auxiliary Power Unit)引氣和發(fā)動機(jī)引氣。其中,主要來源是發(fā)動機(jī)引氣。發(fā)動機(jī)引氣主要來源包括兩部分:9級高壓壓氣機(jī)和5級中級壓氣機(jī),如圖1所示。當(dāng)發(fā)動機(jī)處于慢車狀態(tài)時(shí),發(fā)動機(jī)轉(zhuǎn)速低,此時(shí)高壓活門開啟,通過9級高壓壓氣機(jī)提供壓力為36±4 psi左右的引氣;當(dāng)飛機(jī)進(jìn)入正常飛行狀態(tài)以后,高壓活門關(guān)閉,由5級中級壓氣機(jī)提供40 ±4 psi左右的引氣。在壓力調(diào)節(jié)閥以及預(yù)冷器的共同作用下,產(chǎn)生合適溫度和壓力的引氣,提供下游用戶使用[10]。
圖1 引氣系統(tǒng)原理
在引氣系統(tǒng)故障檢測過程中,除了需要監(jiān)控預(yù)冷器出口溫度和引氣壓力之外,還需要監(jiān)控發(fā)動機(jī)低壓轉(zhuǎn)子轉(zhuǎn)速(N1)和高壓轉(zhuǎn)子轉(zhuǎn)速(N2)、馬赫數(shù)等飛機(jī)狀態(tài)參數(shù),以及外界大氣參數(shù),如總溫(Total Air Temperature,TAT)、靜溫(Static Air Temperature,SAT)等,具體參數(shù)如表1所示。
表1 引氣系統(tǒng)故障檢測參數(shù)
為了方便建模,選取對引氣溫度和壓力影響較大的參數(shù)作為監(jiān)測參數(shù)進(jìn)行建模,使用皮爾遜相關(guān)系數(shù)將相關(guān)性較小的變量剔除。皮爾遜相關(guān)系數(shù)的計(jì)算公式如下:
(1)
由表2可知,N11、N12、N21、N22、MACH對左右發(fā)動機(jī)預(yù)冷器出口壓力和溫度的影響較大,故選擇以上參數(shù)作為故障檢測的判斷參數(shù)。
在確定監(jiān)控參數(shù)之后,選取巡航狀態(tài)下左、右機(jī)翼防冰開關(guān)關(guān)閉,左、右空調(diào)組件打開時(shí)的QAR數(shù)據(jù)建立故障檢測模型。在進(jìn)行運(yùn)算之前,需對風(fēng)險(xiǎn)預(yù)警參數(shù)集進(jìn)行歸一化處理,最終使數(shù)據(jù)的值收斂到[0,1]的范圍,從而提高模型的運(yùn)算速度和分類精度。數(shù)據(jù)歸一化的公式如下:
(2)
表2 引氣系統(tǒng)監(jiān)測參數(shù)的相關(guān)系數(shù)
在進(jìn)行歸一化以后,需要對數(shù)據(jù)集劃分為訓(xùn)練集和測試集,訓(xùn)練集用于訓(xùn)練模型,測試集用于檢測模型的訓(xùn)練效果。在劃分?jǐn)?shù)據(jù)集以后,將訓(xùn)練集數(shù)據(jù)帶入模型進(jìn)行訓(xùn)練,在測試集上檢驗(yàn)?zāi)P偷姆诸愋Ч?,從而測試模型的分類能力。
收集引氣系統(tǒng)數(shù)據(jù)構(gòu)建數(shù)據(jù)集,劃分為訓(xùn)練集和測試集。通過粒子群算法對SVM進(jìn)行優(yōu)化尋找最優(yōu)的C和σ,之后對SVM訓(xùn)練集進(jìn)行訓(xùn)練,使用測試集檢驗(yàn)故障檢測效果,具體過程如圖2所示。
圖2 引氣系統(tǒng)故障檢測流程
SVM是一種廣泛使用的二分類算法,其核心分類思想是在這組分布中找出一個(gè)超平面作為決策邊界,使模型在數(shù)據(jù)上的分類誤差盡量小,尤其是在未知數(shù)據(jù)集上的泛化誤差盡量小。為了提高分類準(zhǔn)確率和性能,將引氣系統(tǒng)的故障檢測數(shù)據(jù)集映射到高維空間,找出最優(yōu)分類面。在多維空間中的線性判別函數(shù)的一般表達(dá)式為f(x)=wx+b,w為超平面的法向量;b為偏移量,決定超平面與原點(diǎn)的距離。為了尋找最優(yōu)分類面需要求解如下問題:
(3)
式中,C>0;ξi為松弛變量。對問題(3)進(jìn)行求解,可以得出最優(yōu)的w和b為
(4)
式中,α為支持向量。
在核函數(shù)的選擇方面,本文選擇高斯核函數(shù)(RBF)作為核函數(shù)代替向量的內(nèi)積運(yùn)算。RBF的表達(dá)式如下:
(5)
在使用SVM算法對數(shù)據(jù)進(jìn)行分類時(shí),需要使參數(shù)C和σ的值達(dá)到最優(yōu),如果C過大會導(dǎo)致過擬合,最終會導(dǎo)致模型在測試集上的分類預(yù)測準(zhǔn)確度較差;如果C過小會導(dǎo)致欠擬合,使訓(xùn)練精度不足。參數(shù)σ決定了高斯核函數(shù)的效果,它可以很好地表現(xiàn)局部特性[11]。因此,為了找到最優(yōu)的C和σ值,使用改進(jìn)的粒子群尋優(yōu)算法來找到最優(yōu)的分類參數(shù)。
粒子群算法(Particle Swarm Optimization,PSO)的思想是將一個(gè)n維空間內(nèi)的每一個(gè)粒子看作是空間中的一個(gè)搜索個(gè)體,粒子具有速度和位置兩個(gè)屬性,每個(gè)粒子的初始位置可以看作是該優(yōu)化問題的初始解,每個(gè)粒子的飛行速度會根據(jù)最優(yōu)解的位置不斷發(fā)生變化。每個(gè)粒子單獨(dú)搜尋的最優(yōu)解叫做個(gè)體極值,粒子群中最優(yōu)的個(gè)體極值作為當(dāng)前全局最優(yōu)解。粒子群中的粒子不斷迭代,更新速度和位置,最終得到滿足終止條件的最優(yōu)解。具體步驟如下:
(1) 初始化粒子群。
在一個(gè)n維空間內(nèi),由m個(gè)粒子組成一個(gè)種群,記做X={X1,X2,…,Xm},其中Xi表示每個(gè)粒子的位置,Xi={xi1,xi2,…,xi3}。由于每個(gè)粒子都具有記憶性,在每一次迭代中,粒子群會根據(jù)局部最優(yōu)解Pid和全局最優(yōu)解Pgd不斷更新自己的位置。
(2) 粒子搜索狀態(tài)的更新。
每個(gè)粒子具有速度和位置兩個(gè)屬性,每個(gè)粒子的位置記做Pi={pi1,pi2,…,pim},速度記做Vi={vi1,vi2,…,vim},每個(gè)粒子的目前找到的最優(yōu)位置稱為個(gè)體極值Pbest,所有粒子目前找到的最優(yōu)位置稱為群體極值gbest。其中,pbest=(pi1,pi2,…,pim),gbest=(pg1,pg2,…,pgm),i=1,2,…,m。
(3) 自適應(yīng)變異。
為了防止陷入局部最優(yōu)解,需要加入慣性權(quán)重ω對算法的搜索功能進(jìn)行控制。將ω控制在一個(gè)范圍,隨著粒子的位置和速度不斷變化,最終使粒子能夠快速收斂取得最優(yōu)解。ω的計(jì)算公式如下:
(6)
式中,ωmax為慣性權(quán)重的最大值;ωmin為慣性權(quán)重的最小值;t為當(dāng)前迭代次數(shù)。
在引入慣性權(quán)重ω以后,粒子的位置和速度計(jì)算公式如下:
vid(t+1)=ω×vid(t)+c1r1(pid(t)-xid(t))+
c2r2(pgd(t)-xid(t))
xid(t+1)=xid(t)+vid(t+1)
(7)
式中,ω為慣性權(quán)重;d=1,2,…,n為種群維度;i=1,2,…,m為種群規(guī)模;t為當(dāng)前迭代次數(shù);c1和c2為學(xué)習(xí)因子;r1和r2是(0,1) 之間服從均勻分布的隨機(jī)數(shù)。
粒子的速度范圍在[-vmax,vmax]之間。
(8)
粒子群中的每個(gè)粒子不斷變異,將每次迭代產(chǎn)生的局部最優(yōu)解Pid和全局最優(yōu)解Pgd進(jìn)行比較,如果達(dá)到收斂條件則停止搜索,此時(shí)將獲得最優(yōu)解。通過改進(jìn)粒子群算法最終得出SVM的C和σ值,使分類效果達(dá)到最優(yōu)。
本文通過收集某航空公司機(jī)隊(duì)A320系列飛機(jī)的216組引氣系統(tǒng)QAR數(shù)據(jù),其中正常數(shù)據(jù)153組,故障數(shù)據(jù)63組,采樣頻率為1 Hz,采樣時(shí)間是飛機(jī)整個(gè)飛行循環(huán)。采集巡航狀態(tài)下機(jī)翼防冰開關(guān)關(guān)閉、左右空調(diào)組件均開啟時(shí)的QAR數(shù)據(jù)來建立故障檢測數(shù)據(jù)集D(x,y),x為引氣系統(tǒng)預(yù)警參數(shù),y為引氣數(shù)據(jù)樣本類別。在數(shù)據(jù)集中,x=(N11、N12、N21、N22、MACH、PRESS1、PRESS2、TEMP1、TEMP2),y=+1表示正常樣本,y=-1表示故障樣本,部分經(jīng)過預(yù)處理的數(shù)據(jù)樣本如表3所示。
表3 引氣數(shù)據(jù)樣本數(shù)據(jù)集(部分)
在使用改進(jìn)粒子群算法優(yōu)化SVM的過程中,SVM的核函數(shù)選擇RBF核函數(shù),使用改進(jìn)粒子群算法求解,得出最優(yōu)的C=20.4,σ=0.0145,此時(shí)分類準(zhǔn)確率為97.93%;在不使用粒子群算法優(yōu)化時(shí),分類準(zhǔn)確率為78.62%。兩種算法的分類準(zhǔn)確率對比如表4所示。
表4 兩種算法的分類準(zhǔn)確率對比
為了評估模型的泛化能力,本文將未經(jīng)優(yōu)化的SVM和經(jīng)過粒子群優(yōu)化算法優(yōu)化的SVM進(jìn)行比較,通過ROC(Receiver Operating Characteristic)曲線評估SVM分類模型的泛化能力,ROC曲線的橫坐標(biāo)表示假正率False Positive Rate(FPR),縱坐標(biāo)表示真正率True Positive Rate(TPR)。FPR和TPR的計(jì)算公式如下:
(9)
式中,TP(True Positive)為將正類預(yù)測為正類的個(gè)數(shù);FN(False Negative)為將正類預(yù)測為負(fù)類的個(gè)數(shù);FP(False Positive)為將負(fù)類預(yù)測為正類的個(gè)數(shù);TN(True Negative)為將負(fù)類預(yù)測為負(fù)類的個(gè)數(shù)。
圖3為未經(jīng)粒子群優(yōu)化的SVM的ROC曲線和經(jīng)過粒子群優(yōu)化算法的ROC曲線,可以看出兩條曲線有交叉。為了比較兩種分類方法的性能,可以根據(jù)兩條線下面的面積AUC(Area Under Curve)值進(jìn)行比較。兩種算法的AUC值如表5所示。
圖3 兩種算法的ROC曲線
表5 兩種曲線的AUC值
根據(jù)圖3可以得出,經(jīng)過粒子群尋優(yōu)算法改進(jìn)SVM的AUC值更大,分類效果更優(yōu)。
本文提出了一種使用改進(jìn)粒子群優(yōu)化算法尋找SVM最優(yōu)分類參數(shù)來進(jìn)行飛機(jī)引氣系統(tǒng)故障檢測的方法。根據(jù)收集到的飛機(jī)運(yùn)行過程中產(chǎn)生的QAR數(shù)據(jù)進(jìn)行參數(shù)選擇,形成數(shù)據(jù)集并劃分為訓(xùn)練集和測試集,通過訓(xùn)練集對模型進(jìn)行訓(xùn)練,得出最優(yōu)的分類參數(shù),在測試集上驗(yàn)證SVM的分類精確度。為了驗(yàn)證模型的泛化能力,引入ROC曲線來評價(jià)分類模型的效果,結(jié)果表明使用改進(jìn)粒子群算法優(yōu)化SVM可以提高對飛機(jī)引氣系統(tǒng)進(jìn)行故障檢測的準(zhǔn)確率,而且模型的泛化能力也更高。