柳長源, 何先平, 于會越
(哈爾濱理工大學(xué) 測控技術(shù)與通信工程學(xué)院,哈爾濱 150080)
渦輪發(fā)動機的工作狀態(tài)直接影響飛機的性能,而飛機由于其起飛后長時間滯空等客觀原因,其發(fā)生故障后不管是對人身安全方面的危害,還是經(jīng)濟方面的損失,都是無法估量的。為了保障渦輪發(fā)動機的運行的可靠性,并降低飛機的維修成本,美國等航空發(fā)達國家早在1977年就將故障預(yù)測和健康管理應(yīng)用于發(fā)動機的維修[1]。ISO13881-1定義故障預(yù)測為:對設(shè)備失效或出現(xiàn)風(fēng)險的時間點進行估計。而設(shè)備的剩余壽命(remaining useful life RUL)[2]指的是設(shè)備從初始狀態(tài)到設(shè)備完全失效這一階段的時間。預(yù)先精準的剩余壽命預(yù)測能夠使航空公司提前做出明智的維護決策,避免永久性損壞,顯著的降低了運營和維護成本。
渦輪發(fā)動機剩余壽命預(yù)測主要有2個方向,1)基于物理模型:在發(fā)動機失效原理基礎(chǔ)上建立模型后對剩余壽命進行預(yù)測操作;2)基于數(shù)據(jù)驅(qū)動,通過采集或者仿真發(fā)動機失效過程中的數(shù)據(jù),利用算法、機器學(xué)習(xí)等結(jié)合失效閾值進行剩余壽命預(yù)測,如基于滑動窗口的算法[3]、基于隱馬爾科夫的算法(HMM)[4]、基于K-Means的算法[5]、基于支持向量機的算法(SVM)[6]、基于卷積神經(jīng)網(wǎng)絡(luò)(CNN)和長短期記憶網(wǎng)絡(luò)(LSTM)的算法等[7-8];基于物理模型建立壽命預(yù)測模型的泛化性較差,所以本文采用第二種方式進行壽命預(yù)測。
基于支持向量回歸的算法不能良好利用性能參數(shù)對應(yīng)的提取時間來預(yù)測剩余壽命,而且SVR模型的參數(shù)較多,在實際應(yīng)用的在參數(shù)設(shè)置方面會耗費大量的資源,并且預(yù)測效果和算法的效率一般?;谏窠?jīng)網(wǎng)絡(luò)的算法受其搜索算法的控制,求解空間函數(shù)時若搜索步長過小容易陷入局部最優(yōu),存在局部極小、收斂速度慢的問題。隨著機器學(xué)習(xí)技術(shù)的成熟,集成學(xué)習(xí)也有了很大的發(fā)展。這種通過某些規(guī)則將多個機器學(xué)習(xí)的成果有效的整合在一起的方法也可以應(yīng)用在發(fā)動機壽命預(yù)測上。通過使用單邊梯度采樣和互斥特征綁定對梯度提升迭代決策樹(gradient boosting decision tree, GBDT)進行改進,該算法提高了樹算法中的殘差的近似值,選擇擬合損失函數(shù)的負梯度的方法來進行壽命預(yù)測,在保證預(yù)測性能指標的同時大大降低了模型的運行時間,提高了模型的預(yù)測效率。
GBDT模型是利用加法模型和前向分布算法實現(xiàn)學(xué)習(xí)優(yōu)化過程的一種集成模型。GBDT預(yù)測流程如圖1所示。
圖1 GBDT預(yù)測流程Fig.1 GBDT forecasting process
該模型基分類器為分類與回歸樹(classification and regression tree,CART),集成方為梯度下降(gradient boosting)[9]。GBDT在進行子樹構(gòu)建時將會產(chǎn)生相應(yīng)的殘差,將其數(shù)據(jù)傳輸給下一個子樹,并且按照子樹逐層構(gòu)建的順序來進行預(yù)測,最終將預(yù)測結(jié)果相加。
GBDT模型在訓(xùn)練過程中不斷調(diào)整殘差,最終通過相加來實現(xiàn)數(shù)據(jù)的回歸。訓(xùn)練數(shù)據(jù)集表示為
T={(x1,y1),(x2,y2),…,(xN,yN)},xi∈χ?Rn。
(1)
式中:x為輸入空間;yi∈Y?Rn,y為輸出空間。損失函數(shù)為L(y,f(x)),輸出為F(x)。損失函數(shù)訓(xùn)練數(shù)據(jù)集模型可以表示為決策樹的加法模型:
(2)
式中:T(x;θm)為決策樹;θm為決策樹參數(shù);M為樹的個數(shù)。
模型訓(xùn)練總輪數(shù)為M輪,每輪都會有一個弱分類器T(x;θm)產(chǎn)生。弱分類器的損失函數(shù)為
(3)
GBDT的每一次迭代都要輸入上一次迭代產(chǎn)生的殘差,擬合誤差會隨著迭代次數(shù)的增加逐步減小。因此,通過不斷的迭代,最終得到一個弱學(xué)習(xí)器T(x;θm),使樣本的損失盡可能變小。
Freidman通過采用損失函數(shù)的負梯度的方式來模擬最速下降法,從而得到擬合本輪損失的近似值[10],這種方法解決了損失函數(shù)擬合方法的問題,最后通過擬合得到一個CART回歸樹[11]。第M輪的第i個樣本的損失函數(shù)的負梯度表示為
(4)
利用(xi,rmi)(i=1,2,…,m)估計回歸樹葉節(jié)點區(qū)域。將第m顆樹的輸入空間χi分為j個無交集部分Rm1,Rm2,…,RmJ,每個部分的輸出為常量cmj,c為上一輪迭代后決策樹的輸出值,有
(5)
(6)
(7)
采用線性搜索來估計葉節(jié)點區(qū)域的值,使損失函數(shù)達到極小化,則樹由初始狀態(tài)(6)更新為式(7)。
最終得到回歸樹為
(8)
GBDT具有效率高、精度高等優(yōu)點,但由于GBDT在處理數(shù)據(jù)是需要掃描數(shù)據(jù)集的所有特征,在處理高維度、數(shù)據(jù)量大的數(shù)據(jù)集時非常耗時[12]。
本文使用基于梯度的單邊采樣和互斥特征捆綁這兩種算法對GBDT進行改進,改進的GBDT算法能夠很好的平衡運行效率和數(shù)據(jù)量。這種改進大幅度提高了計算速度、降低了內(nèi)存消耗,也更適應(yīng)于大數(shù)據(jù)的回歸。
1.3.1 單邊梯度采樣
單邊梯度采樣主要是通過減少樣本數(shù)據(jù),在保證較大梯度樣本數(shù)據(jù)不變的同時,隨機采樣部分的小梯度樣本,不僅極大地提升了計算速度,也有效地保證了計算精度。
較大梯度的數(shù)據(jù)能夠為計算信息增益的提供較大的幫助,當(dāng)某個樣本點的梯度已經(jīng)減小到足夠小時,此時該樣本的訓(xùn)練誤差已經(jīng)達到要求,即該樣本已經(jīng)被充分訓(xùn)練。因此,使用常量乘法器放大未充分訓(xùn)練。
為了保證數(shù)據(jù)的總體分布,首先針將數(shù)據(jù)的絕對值進行依次減少的順式排序,然后選取前a個樣本作為較大梯度的數(shù)據(jù)子集A,并對其余樣本進行隨機采樣,在剩下的較小梯度數(shù)據(jù)中選取b個樣本實例作為數(shù)據(jù)集B[13]。最后,通過計算所選取的a+b個樣本數(shù)據(jù),獲得信息增益,其計算方式為
(9)
1.3.2 互斥特征綁定
互斥特征綁定的定義是為提升計算效率,而將不完全互斥的特征進行融合捆綁來降低特征數(shù)量。為減少計算量,將特征按照非零值進行排序,非零值越多,越容易發(fā)生互斥,并將不完全發(fā)生互斥的2個特征進行捆綁,并使用特征合并法來降低算法復(fù)雜度。通過互斥綁定后的復(fù)雜度為O(數(shù)據(jù)×綁定后特征數(shù)目),此時使用的綁定后特征數(shù)目已經(jīng)大幅度降低,使得模型在保證精度的情況下減少訓(xùn)練時間。改進的GBDT算法存儲的不是連續(xù)的特征值而是離散的直方柱。通過向指定的直方柱添加偏移量解決原始特征值可識別問題。設(shè)定特征數(shù)組總共包含2個特征C,D。若C∈[0,8],D∈[0,16],向特征向量D添加8個單位的偏移量,則綁定后的范圍為[8,24]。
本實驗采用的是大型渦輪風(fēng)扇發(fā)動機GE90的仿真數(shù)據(jù)。該數(shù)據(jù)集共有4個子集,各個子集的操作模態(tài)和故障數(shù)目各不相同,每個子集都由200個及以上完整的運行單元組成。每個完整的運行單元由26維特征數(shù)據(jù)構(gòu)成。每一維數(shù)據(jù)都可以描述給定時間點上引擎狀態(tài)或受到其他列傳感器影響的數(shù)據(jù)。該矩陣第一列表示發(fā)動機ID,第二列表示發(fā)動機運行次數(shù),接下來的三列為運行環(huán)境設(shè)置,余下的21列則對應(yīng)傳感器數(shù)據(jù)。4個仿真數(shù)據(jù)子集的詳細設(shè)置如表1所示。
表1 C-MAPSS數(shù)據(jù)集
為了衡量算法效果,本文使用兩種評價指標來進行衡量。懲罰函數(shù)(Score)的大小衡量了壽命預(yù)測的合理性,有
(10)
而均方根誤差(RMSE)反映了預(yù)測壽命與實際壽命的擬合程度,表示為
(11)
其中Ei為真實壽命與預(yù)測壽命之差,當(dāng)Ei越小,即Score與RMSE越小,預(yù)測壽命越準確,預(yù)測效果越好。
早期的余壽預(yù)測領(lǐng)域所使用的目標函數(shù)大多數(shù)為一次遞減函數(shù),這種函數(shù)只能表示設(shè)備損耗與設(shè)備性能之間的線性下降的關(guān)系,無法顯示設(shè)備的損耗與時間的關(guān)系。機械設(shè)備工作初期設(shè)備磨損較小,機械設(shè)備在一段時間內(nèi)工作在穩(wěn)定狀態(tài)。而機械設(shè)備在經(jīng)過長時間的磨損之后,設(shè)備性能逐漸降低,當(dāng)磨損達到一個臨界值,設(shè)備的使用壽命逐漸下降[14]。因此,使用分段目標函數(shù)能夠更加準確的表示剩余壽命的發(fā)展趨勢,如圖2所示。
圖2 剩余壽命估計目標函數(shù)Fig.2 Remaining useful life of objective function
本文采用的分段函數(shù)是通過實驗確定,對于GE90的仿真數(shù)據(jù)集,其最長使用壽命為130能夠得到最優(yōu)的預(yù)測性能。對于一個完整運行壽命周期為200的實驗,設(shè)其最初運行時為最大使用壽命130,運行一段時間后到達第70個檢測采樣周期,此后電機壽命開始逐漸下降,呈線性衰減,直到實驗結(jié)束時剩余使用壽命衰減為0。
數(shù)據(jù)處理根據(jù)數(shù)據(jù)自身具有的特性,避免特征絕對值上小數(shù)據(jù)被大數(shù)據(jù)平均掉,幫助模型更好的適應(yīng)數(shù)據(jù)。
崇明島內(nèi)河水位主要是由沿江水閘控制的。在枯水期(1月、2月、11月、12月),島上的水閘一般采取西水東調(diào)、南引北排的方式進行調(diào)水工作;在平常的3月、4月、5月、10月,則根據(jù)長江內(nèi)的水質(zhì)情況,采取選擇性的引排方式,即選擇符合引水標準的南沿水閘進行引水、北沿水閘適當(dāng)排水。而在主汛期主要是以南引北排的方式進行,以控制內(nèi)河水位。
歸一化方程式為
(12)
式中:μi表示平均值;σi表示標準偏差。對發(fā)動機的21維傳感器參數(shù)進行歸一化處理后如圖3所示。
圖3 歸一化處理Fig.3 Normalization
本實驗的實驗環(huán)境如表2所示。
表2 實驗環(huán)境
圖4為改進的GBDT模型在FD001數(shù)據(jù)集和FD003數(shù)據(jù)集中的Score變化情況,這兩種數(shù)據(jù)集均工作在模態(tài)1下。實驗結(jié)果表明,改進的GBDT算法在FD001數(shù)據(jù)集和FD003數(shù)據(jù)集的Score指標上表現(xiàn)極其優(yōu)越。FD003數(shù)據(jù)集在Score指標表現(xiàn)上較FD001數(shù)據(jù)集表現(xiàn)稍差,這是由于FD003數(shù)據(jù)集是在高壓壓氣機和風(fēng)扇均故障下收集得到的。
圖4 FD001和FD003的Score對比Fig.4 Comparison of Score between FD001 and FD003
圖5為不同算法在FD001數(shù)據(jù)集和FD003數(shù)據(jù)集下的評價指標直方圖。由圖可以看出,改進后的GBDT算法在2種數(shù)據(jù)集中的RMSE值偏高,但由于RMSE值與Score值的相關(guān)性,綜合總體情況,改進后的GBDT算法更加適用于提前發(fā)出壽命預(yù)警,而對于飛機發(fā)動機而言,更早的發(fā)現(xiàn)發(fā)動機設(shè)備的受損情況能夠更早的進行設(shè)備維護工作,因此較早提出壽命預(yù)警是合理的。
圖5 FD001和FD003的RMSE對比Fig.5 Comparison of RMSE between FD001 and FD003
FD002數(shù)據(jù)集和FD004數(shù)據(jù)集在模態(tài)6下工作。通過對比實驗可知,改進GBDT模型的Score指標較剩余壽命預(yù)測領(lǐng)域經(jīng)典算法提升幅度小,各個算法的Score指標對比如圖6所示。
圖6 FD002和FD004的Score指標對比Fig.6 Comparison of Score between FD002 and FD004
復(fù)雜工況下改進的GBDT的RMSE表現(xiàn)較差,F(xiàn)D002數(shù)據(jù)集較FD004數(shù)據(jù)集稍好一些。RMSE直觀對比如圖7所示。更復(fù)雜的情況導(dǎo)致擬合較為困難,2個數(shù)據(jù)集下改進GBDT的RMSE指標都是僅僅比SVR表現(xiàn)略好。將兩種指標進行總體分析,改進的GBDT模型在復(fù)雜工況下,Score值較其他算法略有提升,RMSE較經(jīng)典算法略有提高,能夠在發(fā)電機剩余壽命結(jié)束前發(fā)出預(yù)警。
圖7 FD002和FD004的RMSE對比Fig.7 Comparison of RMSE between FD002 and FD004
通過分析改進的GBDT與其他算法在不同工況下的性能,可以得出改進的GBDT算法在Score指標上有較為明顯的提升,能夠較好的預(yù)測發(fā)動機的剩余壽命情況,尤其是在故障較少的FD001和FD002數(shù)據(jù)集下表現(xiàn)較為優(yōu)異,算法預(yù)測更為準確,而在復(fù)雜工況的下提升幅度較小。改進的GBDT算法在RMSE指標上也是在簡單工況的表現(xiàn)更好。因此,改進的GBDT算法能夠提早完成預(yù)測,適用于發(fā)動機剩余壽命預(yù)測。
從C-MAPSS中的FD001、FD002、FD003、FD004中分別隨機選擇一個時間周期,在保證其測試結(jié)果完整的情況下進行結(jié)果可視化,真實剩余壽命與預(yù)測剩余壽命的對比圖如圖8所示。其中折線為根據(jù)分段函數(shù)設(shè)定的發(fā)動機真實壽命,另一條為改進的GBDT預(yù)測壽命。
圖8 剩余使用壽命預(yù)測Fig.8 Prediction of remaining useful life
CMAPSS數(shù)據(jù)集的維數(shù)為26維,對一段完整的生命周期進行一次剩余壽命預(yù)測需要將近兩百個循環(huán),大量的數(shù)據(jù)在一定程度上保證了預(yù)測效果但也使得運行效率并不理想。通過將互斥程度較小的特征進行捆綁,減少特征維度,達到計算效率的提升。表3為改進后的GBDT模型與其他算法在不同工況下的剩余壽命預(yù)測時間。
表3 不同模型運行時間
為了進一步驗證模型的性能,做了多種不同的算法性能對比,Score指標結(jié)果對比如表4,RMSE指標結(jié)果如表5。
表4 Score指標結(jié)果
表5 RMSE指標結(jié)果
通過以上指標對比分析,改進的GBDT模型在不同數(shù)據(jù)集上的運行時間有較大幅度的提升,Score指標較幾種現(xiàn)有算法均有明顯提升,RMSE指標在FD002和FD004數(shù)據(jù)集上略有提升,在FD001和FD003數(shù)據(jù)集上略有下降,RMSE指標除SVR較差外,其他幾種方法與改進的GBDT算法大體相仿。
本文通過比較改進的GBDT模型與現(xiàn)有的SVR、CNN、LSTM、CNN-LSTM算法在不同工況下的性能指標,得到改進的GBDT模型在Score指標上有大幅度提升,RMSE指標相仿。結(jié)合實際情況可以得出改進的GBDT算法傾向于更早提出壽命預(yù)警,更適用于飛機發(fā)動機剩余壽命預(yù)測領(lǐng)域。同時,在保證預(yù)測性能指標的情況下,改進的GBDT模型在4個子數(shù)據(jù)集下的運行時間較經(jīng)典算法都下降60%以上,表明本文所提出的算法具有較高的實用價值。