王志浩,魏民祥,葉志鋒,吳 昊,楊佳偉
(南京航空航天大學 能源與動力學院,南京 210016)
航空發動機是航空裝備的動力來源,對其進行精準、可靠的控制是保證航空裝備使用安全的關鍵。許多發動機控制方法,如文獻[1-2]中提到的智能容錯控制方法、文獻[3-4]中涉及的發動機故障診斷方法等,都以發動機非線性映射模型為基礎,在發動機運行過程中將模型輸出結果與發動機狀態參數進行對比,從而制定相應的控制策略。對于諸如此類的模型基控制技術而言,發動機模型精度將直接影響控制效果。
目前,發動機建模主要有兩大研究方向:機理模型和數據驅動模型[5]。機理模型具有明確的物理意義,模型適應性強,但隨著發動機結構變得越來越復雜,其數學表達式的確定也越來越困難。區別于機理建模,數據驅動建模方式只需考慮系統的輸入和輸出,無需考慮系統的內部原理,能極大地降低建模復雜度[6]。隨著機器學習、人工智能等技術的飛速發展,數據驅動模型也成為研究熱點。
劉淵等[7]以CFM56-7B 發動機飛行數據為樣本,建立了航空發動機排氣溫度支持向量回歸模型,并利用堆疊降噪自編碼器網絡對輸入數據進行降噪和特征提取處理,提高了排氣溫度基線模型的精度。Lin 等[8]在航空發動機氣路性能預測的研究中,將長短期記憶神經網絡(long short-term memory neural network,LSTMNN)與決策樹相結合,消除了樣本差異對預測的影響,并采用某航空發動機真實運行數據驗證了模型的準確性和穩定性。與Lin 等所做工作相似,Zhou 等[9]引入殘差反向傳播神經網絡(residual-back propagation neural network,Res-BPNN),建立了航空發動機氣路回歸模型,提高了小樣本數據下的模型精度。
上述研究盡管表現出諸多優點,卻忽略了重要的一點:建模數據一般來自發動機各傳感器的歷史觀測值,采取離線方式進行訓練;然而發動機長期工作在惡劣環境中,會出現不可避免的性能退化現象,所采集數據的分布也會因此變化,導致采用歷史數據離線訓練出來的發動機模型“過時”[10],模型精度隨之下降。顯然,利用該模型設計的發動機控制方案存在未知風險,影響發動機性能表現。
有學者針對這種模型精度下降的問題進行了研究。Wang 等[11]將多輸入多輸出遞歸簡約最小二乘支持向量回歸機用于渦軸發動機的自適應建模,提高了模型精度和泛化能力,但該建模方法受模型超參數的影響大,尋找最優參數比較耗時。Zheng 等[12]提出了一種最小批量梯度下降神經網絡(min-batch gradient descent neural network,MGDNN)渦扇發動機自適應建模方法,該方法可一定程度上緩解模型精度下降問題,但由于沒有更新模型參數,所以只能起到抑制作用,不能從根本上解決模型精度下降的問題;之后,Zheng 等[13]又提出了一種采用參數在線反饋修正的航空發動機動態建模方法,當工況發生變化時,模型誤差可保持不變,但研究沒有考慮發動機性能退化時的情況。Kakati 等[14]利用粒子濾波算法對LSTMNN 進行在線更新,使模型參數時刻與發動機狀態相匹配,采用該模型進行發動機剩余有用壽命預測具有良好的效果,但LSTMNN 模型的記憶長度是有限的,所以模型精度會出現一定程度的下降。
綜上所述,本文中提出一種Online-RBFNN 的航空發動機動態模型,旨在解決模型精度隨發動機性能退化而下降的問題。模型采用在線學習的方式,能在發動機運行過程中不斷更新參數,與發動機實時匹配,最大程度地保證模型精度。
從本質上來說,動態模型屬于在線學習范疇,在線學習(online learning)是指在工程應用中訓練樣本隨著時間的推移逐條到來,每來一條訓練樣本就立即更新模型參數,達到實時學習的效果[15]。為構建Online-RBFNN 動態模型,對典型RBFNN 進行改進:采用連續K-Means 算法對其網絡中心等參數進行優化,再利用FTRL 在線學習算法對權重等參數進行更新,使模型具備在線學習功能。
Online-RBFNN 由典型RBFNN 改進而來,模型的原始結構就是典型RBFNN。典型RBFNN 包括輸入層、隱含層和輸出層3 層結構,圖1 為其結構示意圖。它的中心思想是把徑向基函數作為激勵函數,利用其強大的非線性能力,將輸入層數據映射到隱含層,再經過簡單的線性運算,從輸出層輸出。

圖1 典型RBFNN 結構示意圖
通常選用高斯函數作為典型RBFNN 的激勵函數[16]。對于輸入樣本矩陣x,隱含層輸出值為

式中:x=[x1,…,xt,…,xN]T,xt是在離散時間或步驟t 上輸入的單個樣本向量;c 為網絡中心;γ 為擴展系數。
隱含層與輸出層之間通過權值連接,是簡單的線性計算,所以隱含層的輸出值為

式中:y=[y1,…,yt,…,yN]T,yt是xt對應的輸出值,w 為連接權值。
理論上,典型RBFNN 能以任意精度逼近任意函數[17],并且具有較快的學習速度,但完成訓練后,其參數就不再改變,一旦測試樣本的分布發生變化,其精度就會下降。
顯然,典型RBFNN 不具備動態性,這也是認為其“原始”的原因,故后文將把典型RBFNN 改進成為Online-RBFNN,使模型參數能實時更新,具備在線學習的能力。
徑向基函數神經網絡的準確率主要取決于數據中心的選擇[18]。本文中采用連續K-Means 聚類算法對動態模型的中心點c 和擴展系數γ 進行優化。
連續K-Means 聚類算法和K-Means 聚類算法是有所區別的。K-Means 算法常用于典型RBFNN中心點c 的選取,一般通過式(3)所示的目標函數來實現聚類優化[19]:

式中:E 為目標函數值;k 為聚類總數;C 為聚類中的簇;x 為同一簇中的樣本;c 為簇的中心。
K-Means 聚類算法將樣本與簇中心點的歐式距離作為聚類標準,按照最小距離原則進行聚類。一次聚類結束后,判斷目標函數值E 是否符合要求,若不符合要求,則將同簇中所有樣本的質心作為該簇的新中心點,經過數次迭代,直至E 滿足要求或達到最大迭代次數。此時,k 個簇中心c1,c2,…,ck即可作為典型RBFNN 的網絡中心。雖然KMeans 算法結構簡單、收斂速度快、精度高,但聚類完成后的中心固定不變,無法根據新樣本做出中心調整。
作為優化,連續K-Means 聚類(sequential KMeans clustering)算法能有效解決網絡中心不能改變的問題,其方法是在初步選出的中心c1,c2,…,ck的基礎上,每接收1 個樣本(xt,yt),就將最接近xt的中心點更新1 次,新中心點為

式中:a 為0~1 范圍的常數;cnear,t為最接近樣本xt的中心點。
擴展系數γt也隨中心點的變化而更新,假設中心點兩兩之間的最大距離為dmax,t,那么接收新樣本(xt,yt)后,擴展系數為:

式中:μ 為可調參數。
通過上述方法在線更新動態模型原始結構的中心點和擴展系數,每次只更新1 個中心點,計算復雜度低,計算速度快。
動態模型采用FTRL 在線學習算法對原始結構的權重w 進行優化。FTRL 算法綜合了向前向后切(forward backward splitting,FOBOS)算法和正則對偶平均(regularized dual averaging,RDA)算法的優點,具有更好的稀疏性和泛化能力,被廣泛用于工程實踐中。
對于典型RBFNN 的權重w,在FTRL 框架下的更新公式[20]為:

對式(6)做以下解釋:
1)λ1是L1 正則化系數,其值越大越能產生稀疏解,λ2是L2 正則化系數,其值越大越能防止過擬合。
2)g1:t=,g 是損失函數L(w)對權重w的梯度,采用平方損失作為模型的損失函數,即

對w 求偏導,得

3)σ 是學習率η 的函數,兩者關系可表示為

為了保證充分學習樣本特征,避免對樣本的某一維特征產生依賴,將學習率η 與梯度g 建立聯系,使η 在每個維度上都是不同的,有

式中:α 為初始學習率,β 為常數,通常取1。所以式(9)可改寫為:

進一步地,將式(6)展開并求最優解[20-22]得:

式中:zt-1=,運算關系σs?ws表示矩陣σs與矩陣ws對應位置的元素相乘。
可以看出,式(6)就轉化成了g 的函數,所以在t 時刻,只需要計算出gt的值,然后按式(12)即可對權重wt進行更新。
Online-RBFNN 由典型RBFNN 改進而來,是動態模型的核心,圖2 為其結構框圖。1 個實時樣本(xt,yt)從輸入層進入Online-RBFNN 后,首先,連續K-Means 算法根據式(4)和式(5)更新中心點ct和擴展系數γt;然后,FTRL 算法根據式(12)更新權重wt;最后,隱含層的輸出Gt與權重wt進行矩陣乘法運算,得到模型估計值并從輸出層輸出。

圖2 Online-RBFNN 結構框圖
圖3 是動態模型的整體架構,根據任務的不同,將動態模型分為初始學習、成長學習和成熟學習3 個階段,其中初始學習屬于離線學習,成長學習和成熟學習屬于在線學習。圖3 中Online-RBFNN 框代表圖2 的Online-RBFNN 結構。
為了建立航空發動機Online-RBFNN 動態模型,主要經歷3 個步驟:
步驟1初始學習階段。使用少量發動機運行數據,根據典型K-Means 算法對輸入樣本聚類,為Online-RBFNN 架構中連續K-Means 算法提供初始中心點c0和擴展系數γ0。
步驟2成長學習階段,這是模型的緩沖階段。因為在線學習過程早期學習時長較短,模型精度還達不到要求,因此在這一階段模型實時接收新樣本,利用Online-RBFNN 更新模型參數,當模型精度滿足Acc>δ 時才能進入下一過程。本文中,用校正決定系數表示模型精度Acc,將在第2.3節中進行詳細描述。
步驟3成熟學習階段。這一階段的模型精度滿足要求,模型繼續接收實時樣本,利用Online-RBFNN 實時更新模型參數,并輸出結果。
科學的數據是確保有效研究的前提,本文中采用某型渦扇發動機的運行數據[23]。數據集包含了同型號但不同飛行包線區域和不同退化形式的幾組渦扇發動機從正常運行到最終故障時的數據。值得說明的是,該數據集通常用于飛機剩余使用壽命預測或故障檢測,但本文中只使用發動機正常退化部分的數據來建立發動機動態模型,并對動態模型做相關分析和研究。
數據集通過調節發動機不同轉子部件流量或效率的健康系數θ(θ≤0)來模擬退化效應,θ 值越小退化越嚴重。以其中的1 個發動機為例,其退化形式為風扇流量和效率的退化。圖4 是風扇流量健康系數fan_Eff_θ 和風扇效率健康系數fan_Flow_θ 隨時間變化的曲線。

圖4 健康系數曲線
圖4 中,橫坐標為發動機運行時間,單位為cycles,即周期,飛機每執行1 次飛行任務記為1 個周期。對此發動機而言,1 周期約為5 h。從圖4中可以看出,fan_Eff_θ 和fan_Flow_θ 隨時間逐漸下降,所以周期數越大發動機退化越嚴重。在30周期以前,健康系數θ 下降比較緩慢,可以認為是發動機性能的正常退化,所以選取30 周期之前的共451 843 條樣本用于后續建模研究,并按表1 劃分為訓練集、驗證集和測試集。為了避免模型對樣本分布產生依賴,將第1 周期中的樣本做隨機亂序處理,然后按照4∶1 的比例劃分為訓練集和驗證集,測試集保持時間序列不變,以模擬數據的實時采集。

表1 數據集劃分
為方便表述,將表1 的數據稱為數據1,用于3.1 節中模型精度與實時性的驗證。為了在3.2節中驗證模型的自適應能力,提供另外2 組數據,與數據1 有所區別,分別稱為數據2 和數據3。3組數據的對比情況如表2 所示,以數據1 為比較標準,說明3 組數據的異同:產生3 組數據的發動機同型號;產生數據1 和數據2 的發動機具有相同的退化形式,但2 個發動機運行在不同的飛行包線區域上;產生數據1 和數據3 的發動機運行在相同飛行包線區域上,但2 個發動機具有不同的退化形式。

表2 3 組數據的比較情況
對渦扇發動機各截面溫度的監視是航空發動機狀態監控的主要內容,建立相應的截面溫度模型對發動機控制具有重要意義,所以本文以發動機低壓渦輪機(LPT)出口截面為例,建立LPT 出口總溫度Online-RBFNN 動態模型。
影響LPT 出口總溫度T50的主要參數有:飛行高度H、馬赫數Ma、風機進口總溫度T2、低壓轉子轉速Nf和高壓轉子轉速Nc,所以模型輸入層有5個神經元,輸出層只有1 個神經元。LPT 出口總溫度Online-RBFNN 動態模型的輸入輸出滿足:

式中:xt為t 時刻輸入動態模型的樣本向量;ct、γt和wt分別為t 時刻模型中心點、擴展系數和權重,它們處于實時變化之中;為t 時刻對應的模型輸出值,即模型對T50的估計值;f 表征xt與之間的函數關系。
利用多種評價指標量化模型精度是比較模型優劣的常用手段,多種評價指標比單一指標更能體現模型的優劣。本文中使用以下3 種多元回歸模型常用的評價指標來對比各模型的質量。
1)平均絕對誤差MAE:

2)均方根誤差RMSE:


在式(14)—(17)中,N 為總樣本數量,yt為第t 個樣本的觀測值,為所有樣本觀測值的平均值,R2為決定系數,p 為樣本特征數量。
MAE 與RMSE 都能反映樣本估計值與觀測值的誤差,值越小時模型精度越高;反映的是估計值對觀測值的解釋程度,值越接近1 則模型精度越高。與決定系數R2相比,校正決定系數還考慮樣本數量和樣本特征數量對結果的影響,比單一的決定系數描述更準確。
為了綜合比較所提出的Online-RBFNN 動態模型的精度和穩定性,提供其他幾種模型進行對比,分別是典型RBFNN 模型、最小批量梯度下降反向傳播神經網絡(min-batch gradient descent back propagation neural network,MGD-BPNN)模型和LSTMNN 模型。在數據1 上,利用網格交叉驗證[7]的方法,為模型的每個優化參數選取一個合理區間和搜索步長,計算不同參數組合下模型的精度,從而獲得1 組最佳參數組合。由式(4)、式(5)和式(12)得知,影響Online-RBFNN 動態模型精度的參數包括常數a、μ,初始學習率α,正則化系數λ1和λ2,另外還有隱含層神經元個數。各模型最佳參數組合如表3 所示,表3 中H_size 為隱含層神經元個數,Batch 為每批次輸入樣本的數量,Lr 為學習率,Layers 為LSTMNN 堆疊的層數。

表3 各模型最佳參數組合
利用各模型最佳參數組合得到的最終建模結果如圖5 所示。由于測試集數據量較大,模型輸出結果展現在1 張圖中比較擁擠,所以這里只列出了其中4 個周期的輸出比較,以解釋模型在發動機不同退化程度(周期數越大,退化程度越大)下的精度。
從圖5 中可以看出,Online-RBFNN 動態模型除了在第2 周期剛開始時輸出結果與觀測值有較大誤差外,其他情況下都能很好地與觀測值擬合。實際上,第2 周期是在線學習的開始,Online-RBFNN 動態模型正處于成長學習階段,在訓練了8 000 個左右的樣本后模型才達到精度要求,進入成熟學習階段。而其他模型雖然在第2 周期與觀測值的誤差較小,但隨著發動機性能退化程度的增加,模型輸出結果逐漸偏離觀測值,在第30 周期上表現明顯。特別是RBFNN 模型,它完全依賴歷史數據,在發動機運行過程中不會更新模型參數,發動機運行周期數越大,RBFNN 模型輸出結果誤差越大。MGD-BPNN 模型將前幾次的樣本作為輸入,模型精度比RBFNN 模型高,但同樣沒有對模型參數進行更新,輸出結果誤差也在逐漸變大。雖然LSTMNN 模型有記憶功能,但其記憶長度是有限的,也出現了誤差變大的問題。

圖5 不同模型的輸出結果
圖6 是各模型不同評價指標的計算結果,可以更直觀地看出各模型的優劣。在第2 周期后,Online-RBFNN 動態模型精度迅速提高,MAE 值穩定在0.59 左右,RMSE 值在1.7 左右,同樣值穩定在0.997 8 左右。而其他模型隨著時間的增加,MAE 值和RMSE 值都有不同程度的增加,值也在逐漸下降。

圖6 不同評價指標的計算結果
本次仿真對各模型的訓練速度進行比較,Online-RBFNN 動態模型、典型RBFNN 模型、MGDBPNN 模型和LSTMNN 模型完成訓練所用時間分別為22、34、93 和127 s。嚴格意義上來說,Online-RBFNN 模型沒有“完成訓練用時”的概念,因為它一直持續地在線訓練并更新模型參數,所以這里Online-RBFNN 模型完成訓練的時間是指初始學習階段和成長學習階段所用時間。雖然Online-RBFNN 模型和RBFNN 模型都需要尋找最佳中心點,但前者需要的隱含層神經元個數(即中心點個數)更少,所以前者用時更少。MGD-BPNN 模型輸入參數多,且需要迭代優化,而LSTMNN 模型結構復雜,兩模型用時較Online-RBFNN 模型更多。另外,在成熟學習階段,Online-RBFNN 模型每更新1次參數所用時間小于1 ms,實時性較好。
由此可見,Online-RBFNN 動態模型能夠在發動機出現不同程度的退化時保證更高、更穩定的模型精度,并且具有良好的實時性。
模型自適應能力是指同初始化參數的模型機載在不同運行狀態的飛機上,能夠調整自身參數,保證模型精度的能力。為了驗證所提出的動態模型的自適應能力,依然以建立發動機LPT 出口總溫度Online-RBFNN 動態模型為例,討論2 種仿真情況,動態模型在各學習階段使用的數據如表4所示。

表4 模型在各學習階段使用的數據
為了保證2 個仿真中的模型具有相同的初始化參數,首先使用數據1 的訓練集線下初始化動態模型,然后將初始化后的模型分別用不同數據進行在線學習。仿真1 中,動態模型在成長學習階段和成熟學習階段使用的是數據2,以模擬動態模型機載在不同飛行包線區域飛機上的情況。同理,仿真2 模擬動態模型機載在不同退化形式飛機上的情況。由于2 個仿真中的動態模型在初始化學習階段是一樣的,所以后文只對成長學習階段和成熟學習階段的動態模型表現做對比和評價。仿真1 的相關結果見圖7 和圖8。仿真2 的相關結果見圖9 和圖10。
仿真1、仿真2 中模型輸出值與觀測值的比較如圖7、圖9 所示。訓練前期,2 個仿真中的模型均處于成長學習階段,模型輸出結果與觀測值的差距均比較大,但隨著訓練的繼續,模型輸出結果與觀測值的差距在迅速減小,2 個仿真中的模型分別訓練了2 600 和3 000 個左右的樣本后進入成熟學習階段。從局部放大圖中可以看出,在成熟學習階段,模型輸出值與觀測值基本一致。仿真1、仿真2 中模型輸出結果誤差如圖8、圖10 所示,從圖8 和圖10 中也能得到相同的結論,訓練開始時模型輸出結果誤差較大,但模型輸出結果誤差迅速減小并穩定下來,2 種仿真中模型輸出結果誤差基本穩定在[-9,8]K 和[-10,9]K 范圍內。

圖7 仿真1 中模型輸出值與觀測值

圖8 仿真1 中模型輸出結果誤差

圖9 仿真2 中模型輸出值與觀測值

圖10 仿真2 中模型輸出結果誤差
由此可見,在2 種仿真中,模型輸出結果誤差均較小且相對穩定,驗證了所提出的動態模型機載在不同飛行包線區域和不同退化形式飛機上良好的自適應能力。因此,對于同型號發動機而言,可機載初始化參數相同的動態模型,省去繁瑣的模型線下訓練過程,從而提高工作效率。
1)與典型RBFNN 模型、MGD-BPNN 模型和LSTMNN 模型相比,Online-RBFNN 動態模型在發動機發生不同程度退化時具有更高的、更穩定的精度,MAE 值為0.59、RMSE 值為1.7、值為0.997 8;同時,Online-RBFNN 動態模型完成訓練用時為22 s,并且每更新1 次樣本用時小于1 ms,實時性好。
2)在不同飛行包線區域的數據上,動態模型輸出結果誤差可基本控制在[-9,8]K 范圍內;在不同退化形式的數據上,誤差可基本控制在[-10,9]K 范圍內,驗證了Online-RBFNN 動態模型機載在不同飛行包線區域和不同退化形式飛機上良好的自適應能力。