張明楠,宮秀良,程 博,胡小梅*
(1.上海大學 機電工程與自動化學院 上海市智能制造及機器人重點實驗室,上海 200444;2.西北工業(yè)大學 網(wǎng)絡空間安全學院,陜西 西安 710072; 3.中國航天科工集團第六研究院六〇一所,內(nèi)蒙古 呼和浩特 010076; 4.西北工業(yè)大學 計算機學院,陜西 西安 710072)
近年來,我國的航空航天事業(yè)和國防科技事業(yè)不斷發(fā)展,火箭發(fā)動機作為各種火箭和導彈的推進裝置,更是受到國家和行業(yè)的重點關注[1-2]。固體火箭發(fā)動機長期以來憑借著推力大、可靠性高、結(jié)構(gòu)簡單、可貯存時間長以及維護和部署方便等優(yōu)勢成為主要的發(fā)動機類型,普遍應用于戰(zhàn)略或戰(zhàn)術導彈、火箭彈及航天運載火箭上[3]。地面點火試驗是檢驗固體火箭發(fā)動機是否能夠滿足飛行要求的最直接有效的手段,一種型號的火箭發(fā)動機要進行數(shù)次的地面點火試驗來完成性能、安全、穩(wěn)定、精度等方面的驗證[4-6]。由于固體火箭發(fā)動機具有造價高和運輸儲存要求高等特點,因此在地面點火試驗之前進行正確的性能預測對于實際試驗情況布置與處理、預測模型校正、固體火箭發(fā)動機研發(fā)設計、減少研發(fā)投用周期都有著至關重要的作用。
早期的固體火箭發(fā)動機主要是利用發(fā)動機在設計過程中的設計因素對性能參數(shù)中的比沖進行預測,主要是使用經(jīng)驗法和綜合分析法,并且在使用綜合分析法的過程中依然需要經(jīng)驗法的輔助[7]。隨著人工神經(jīng)網(wǎng)絡的快速發(fā)展和普遍應用,近年來有人使用各種神經(jīng)網(wǎng)絡以及相關的改進算法在火箭發(fā)動機預測方面進行了大量研究。許亮等[8]提出了一種改進粒子群優(yōu)化的小波神經(jīng)網(wǎng)絡對火箭發(fā)動機的故障進行預測。Yu等[9]提出了基于自適應遺傳算法優(yōu)化的BP(Back Propagation,反向傳播)神經(jīng)網(wǎng)絡來對傳感器數(shù)據(jù)進行實時預測,并基于收集的實際數(shù)據(jù)使用閾值判斷機制來對火箭發(fā)動機的故障情況進行判別。Zavoli等[10]使用深度前饋神經(jīng)網(wǎng)絡對混合動力火箭發(fā)動機的性能進行預測,并使用訓練集驗證了模型的準確性和泛化能力。Zhou等[11]使用多種機器學習方法對固體推進劑破碎效率進行預測,結(jié)果表明機器學習技術是預測水射流影響固體推進劑破碎效率的有效工具。Sengupta等[12]使用自回歸貝葉斯模型來預測壓力幅值的變化,從而預測發(fā)動機的熱聲不穩(wěn)定性。但由于預測模型結(jié)構(gòu)較為簡單,優(yōu)化算法不成熟等因素,使得模型存在預測精度低和泛化效果差等缺點,這也造成了無法充分利用相近型號試驗數(shù)據(jù)的問題。隨著科技的不斷發(fā)展,在地面試驗過程中越來越重視對飛行環(huán)境的模擬再現(xiàn),然而現(xiàn)有模型的影響因素通常只考慮設計因素,并沒有考慮環(huán)境影響。為了解決上述問題,提高預測模型的精度和泛化能力,本文提出了LSTM-ECGRU(Long Short-Term Memory-Error Correction Gate Recurrent Unit,長短期記憶-誤差修正門控單元)模型對固體火箭發(fā)動機性能參數(shù)進行預測和誤差修正,并使用經(jīng)過處理的數(shù)據(jù)進行試驗對比分析,驗證了此模型的預測效果和可靠性。
基于模擬高空試驗裝置的發(fā)展和應用,綜合考慮性能影響的全面性和地面試驗的預測準確性,本文引入環(huán)境影響因素,使其與設計因素同時作為模型的輸入?yún)?shù)。固體火箭發(fā)動機地面試驗數(shù)據(jù)具有歷史數(shù)據(jù)量較少、輸入?yún)?shù)較多、各參數(shù)間的復雜度較高和數(shù)據(jù)不平穩(wěn)等特征,并且相似型號發(fā)動機的數(shù)據(jù)參數(shù)關聯(lián)較為密切,可以生成數(shù)據(jù)序列。而LSTM神經(jīng)網(wǎng)絡在序列預測方面具有良好的應用效果,因此選擇使用LSTM神經(jīng)網(wǎng)絡作為基礎模型進行性能預測[13-15]。同時,采用基于誤差修正分析和趨勢判斷的ECGRU神經(jīng)網(wǎng)絡模型對LSTM模型的預測結(jié)果進行誤差修正。
為了能夠全面考慮數(shù)據(jù)影響和擴大影響參數(shù)范圍,綜合考慮固定性(設計)因素和非固定性(環(huán)境)因素對固體火箭發(fā)動機性能參數(shù)的影響,提出將設計參數(shù)(如裝藥質(zhì)量、燃速、特征速度和喉部燃燒速度)與環(huán)境參數(shù)(如溫度和壓強)統(tǒng)一作為神經(jīng)網(wǎng)絡的輸入?yún)?shù)進行性能預測。在神經(jīng)網(wǎng)絡訓練和預測之前需要對輸入數(shù)據(jù)進行歸一化處理以消除各個輸入?yún)?shù)之間因量綱問題造成的影響,故設計因素和環(huán)境因素中的參數(shù)量都會被歸一化為統(tǒng)一范圍的數(shù)據(jù)后再進行神經(jīng)網(wǎng)絡模型訓練和預測。但是,無論是在輸入?yún)?shù)中引入環(huán)境因素還是在后續(xù)的歸一化處理中消除量綱影響,環(huán)境因素都在一定程度上增加了數(shù)據(jù)復雜度和預測不確定性,性能預測結(jié)果也會受到相應的影響。
為了提高模型的預測精度、降低預測誤差,本文提出一種基于誤差修正分析的ECGRU神經(jīng)網(wǎng)絡模型,基于LSTM模型輸入?yún)?shù)及預測結(jié)果的分析,設計并確定誤差影響因素,建立二次預測模型來對預測結(jié)果進行誤差修正。由于LSTM預測模型的輸出結(jié)果為推力和比沖這2個參數(shù),并且ECGRU模型的輸入數(shù)據(jù)是基于這2個參數(shù)分別進行計算得到的,無法使用一個ECGRU模型同時對推力和比沖預測結(jié)果進行誤差修正,因此需要對這2個性能參數(shù)分別建立誤差修正模型。
ECGRU模型的輸出分別為推力誤差和比沖誤差,由于此模型建立的主要目的是消除環(huán)境因素引起的誤差,并且考慮到基礎模型采用的LSTM具有序列預測特性,因此二次神經(jīng)網(wǎng)絡模型的輸入主要有3個變量:溫度差、壓強差以及推力波動或者比沖波動。
假設已經(jīng)使用訓練數(shù)據(jù)對LSTM神經(jīng)網(wǎng)絡預測模型進行了訓練和預測,則ECGRU神經(jīng)網(wǎng)絡模型訓練數(shù)據(jù)求解示意圖如圖1所示。
圖1 ECGRU神經(jīng)網(wǎng)絡模型訓練數(shù)據(jù)求解示意圖
ECGRU神經(jīng)網(wǎng)絡模型輸入、輸出參數(shù)的訓練數(shù)據(jù)的計算過程如下。
① 輸入?yún)?shù)。首先,使用LSTM神經(jīng)網(wǎng)絡訓練數(shù)據(jù)中當前序列時刻的溫度量減去前一時刻的對應溫度量(壓強同理),得到序列溫度差和序列壓強差,如圖1中左側(cè)中間部分所示。k序列時刻溫度差TD,k和壓強差PD,k的計算公式為
TD,k=Tk-Tk-1
(1)
PD,k=Pk-Pk-1
(2)
式中:Tk為k時刻LSTM模型訓練數(shù)據(jù)的溫度值;Pk為k時刻LSTM模型訓練數(shù)據(jù)的壓強值。
其次,使用k時刻的推力預測值減去前一時刻的推力真實值得到序列推力誤差,序列比沖誤差同理,如圖1中左側(cè)下方部分所示。k時刻序列推力誤差STE,k和序列比沖誤差SSIE,k的計算公式為
STE,k=TP,k-TT,k-1
(3)
SSIE,k=SIP,k-SIT,k-1
(4)
式中:TP,k為k時刻LSTM訓練數(shù)據(jù)的預測推力;TT,k-1為k-1時刻LSTM訓練數(shù)據(jù)的真實推力;SIP,k為k時刻LSTM訓練數(shù)據(jù)的預測比沖;SIT,k-1為k-1時刻LSTM訓練數(shù)據(jù)的真實比沖。
② 輸出參數(shù)。誤差修正預測模型的輸出參數(shù)為推力誤差值或者比沖誤差值,只需要使用LSTM預測模型的當前時刻預測值減去對應真實值便可以得到(此處的預測值是使用訓練數(shù)據(jù)預測得到的,并且在網(wǎng)絡中加入了Dropout層,防止在此過程中產(chǎn)生過擬合現(xiàn)象),如圖1中右側(cè)所示。k時刻推力誤差TE,k和比沖誤差SIE,k的計算公式為
TE,k=TP,k-TT,k
(5)
SIE,k=SIP,k-SIT,k
(6)
LSTM-ECGRU神經(jīng)網(wǎng)絡主要包括2次神經(jīng)網(wǎng)絡模型的建立。第1次建立的LSTM 模型是基礎的推力和比沖預測模型,主要是根據(jù)地面試驗數(shù)據(jù)劃分成的訓練數(shù)據(jù)和測試數(shù)據(jù)進行模型的訓練和性能參數(shù)的初步預測。在此過程中使用1個LSTM模型同時預測推力和比沖,即模型輸出參數(shù)的數(shù)量為2個。第2次建立的ECGRU模型是對推力誤差和比沖誤差的預測,由于在誤差預測過程中,使用的輸入?yún)?shù)不相同,因此需要建立2個ECGRU模型來分別預測推力誤差和比沖誤差。根據(jù)第1次LSTM模型中的訓練數(shù)據(jù)、測試數(shù)據(jù)和預測結(jié)果,經(jīng)過計算得到ECGRU模型輸入?yún)?shù)數(shù)據(jù)和輸出參數(shù)數(shù)據(jù),并且把這2份數(shù)據(jù)劃分成訓練數(shù)據(jù)和預測數(shù)據(jù),從而進行ECGRU模型的訓練和推力誤差及比沖誤差的預測。最后,根據(jù)推力和比沖的不同計算方法用ECGRU模型的預測結(jié)果對LSTM模型的預測結(jié)果進行校正,從而提高整體的預測精度。
根據(jù)固體火箭發(fā)動機地面試驗數(shù)據(jù)集劃分30組訓練數(shù)據(jù)和30組測試數(shù)據(jù),每組包括6個輸入(裝藥質(zhì)量、燃速、特征速度、喉部燃燒速度、溫度和壓強)和2個輸出(推力和比沖)。LSTM-ECGRU神經(jīng)網(wǎng)絡模型的處理流程如圖2所示。
圖2 LSTM-ECGRU神經(jīng)網(wǎng)絡的處理流程圖
計算流程步驟如下。
(1) 劃分出30組訓練數(shù)據(jù)A和30組測試數(shù)據(jù)B。
(2) 搭建LSTM神經(jīng)網(wǎng)絡模型,確定模型初始化參數(shù),并根據(jù)A進行訓練得到LSTM模型1。
(3) 使用LSTM模型1基于A的輸入數(shù)據(jù)對輸出性能參數(shù)進行預測,得到50組性能預測值PA。
(4) 根據(jù)A和PA按1.1節(jié)得到推力誤差修正模型的訓練數(shù)據(jù)C和比沖誤差修正模型的訓練數(shù)據(jù)D。
(5) 搭建ECGRU推力誤差預測模型和ECGRU比沖誤差預測模型,確定相應的模型初始化參數(shù),并根據(jù)訓練數(shù)據(jù)C、D進行相應的模型訓練,得到ECGRU推力誤差模型2和ECGRU比沖誤差模型3。
(6) 使用LSTM模型1對測試數(shù)據(jù)B進行性能預測,得到初步預測值:推力P1和比沖P2,并按照1.1節(jié)的方法求出ECGRU推力誤差模型2和ECGRU比沖誤差模型3分別對應的測試數(shù)據(jù)E、F。
(7) 使用ECGRU推力誤差模型2和ECGRU比沖誤差模型3對測試數(shù)據(jù)E、F進行誤差預測,得到推力誤差預測值PE1和比沖誤差預測值PE2。
(8) 基于LSTM模型和ECGRU模型得到預測值和預測誤差值后,根據(jù)這2個值求出最終的預測值。
① 對于推力參數(shù),最終推力預測值PT為LSTM模型預測值(初始狀態(tài)的推力預測值P1)減去ECGRU模型預測值(推力誤差預測值PE1),即
PT=P1-PE1
(7)
② 對于比沖參數(shù),經(jīng)過多次測試后,發(fā)現(xiàn)式(7)無法對初始狀態(tài)的比沖預測值起到修正效果。因此提出了趨勢判斷法:結(jié)合數(shù)據(jù)特征和序列特征發(fā)現(xiàn),當初始狀態(tài)預測比沖P2大于(小于)前一時刻實際比沖PT-1,A2時,如預測比沖誤差大于0,為了防止修正后數(shù)據(jù)過于發(fā)散導致誤修正,使用初始狀態(tài)預測比沖P2減預測比沖誤差PE2,反之同理。趨勢判斷法用于最終比沖預測值PSI的計算,計算公式為
(8)
在經(jīng)過異常數(shù)據(jù)處理之后,最終能夠進行試驗的數(shù)據(jù)有120組(包括方法擴充后的數(shù)據(jù),每組包括6個輸入?yún)?shù)和2個輸出參數(shù))。為了能夠測試預測模型對不同數(shù)據(jù)的穩(wěn)定性,使用了不同的數(shù)據(jù)進行了多次試驗,每次試驗訓練集和預測集的數(shù)量劃分為30組訓練樣本和30組預測樣本。每組對30個預測樣本進行預測后,根據(jù)相應的計算公式求出模型評價指標。本文使用了4種量化指標進行對比:平均絕對誤差(Mean Absolute Error,MAE)、平均絕對百分比誤差(Mean Absolute Percentage Error,MAPE)、均方根誤差(Root Mean Square Error,RMSE)和R2(R Squared)[16-17]。相關的計算公式為
(9)
(10)
(11)
(12)
同時使用BP神經(jīng)網(wǎng)絡、廣義回歸神經(jīng)網(wǎng)絡(General Regression Neural Network,GRNN)、LSTM神經(jīng)網(wǎng)絡與LSTM-ECGRU模型進行對比,綜合9組數(shù)據(jù)預測評價結(jié)果的均值,得到的不同神經(jīng)網(wǎng)絡模型在推力和比沖預測方面的平均結(jié)果對比如表1所示。
表1 不同神經(jīng)網(wǎng)絡模型在推力和比沖預測方面的結(jié)果對比表
從表1中可以看出,BP神經(jīng)網(wǎng)絡和GRNN在推力和比沖方面的整體預測結(jié)果都不如LSTM神經(jīng)網(wǎng)絡和LSTM-ECGRU神經(jīng)網(wǎng)絡,具有較大的差距。雖然LSTM神經(jīng)網(wǎng)絡的整體預測效果已經(jīng)較好,但LSTM-ECGRU神經(jīng)網(wǎng)絡在推力和比沖方面的預測效果都有進一步的改善,整體預測精度有所提高。
本文結(jié)合LSTM模型和基于誤差修正分析及趨勢判斷的ECGRU神經(jīng)網(wǎng)絡模型,提出了LSTM-ECGRU模型,同時將環(huán)境變量引入輸入?yún)?shù),使研究人員能夠更全面地掌握各種因素對性能的影響變化。試驗結(jié)果表明:相比于BP、GRNN、LSTM這3種預測模型,LSTM-ECGRU模型效果更好、泛化能力更強、預測精度更高,充分驗證了LSTM-ECGRU模型的穩(wěn)定性和實際應用價值。
雖然LSTM-ECGRU模型已經(jīng)表現(xiàn)出了較好的預測效果,但是針對后續(xù)新試驗數(shù)據(jù)的補充以及新數(shù)據(jù)對模型性能預測的影響,LSTM-ECGRU模型還存在無法自動做出適應性結(jié)構(gòu)調(diào)整的問題,這是未來進一步完善模型的目標和方向。