姜 添,李 健,戈嗣誠
(北京空間機電研究所, 北京 100094)
降落傘技術是飛行器進入、下降和著陸[1](Entry, Descent, and Landing,EDL)關鍵技術的核心部分,降落傘的典型工作過程包括傘系拉直、充氣展開、穩定減速三個階段。其中傘衣的充氣展開最為重要,該過程的研究關注點主要面向傘的載荷變化和應力分布、傘衣變形和阻力面積等,工程應用及科學探索對該階段的常用研究手段包括以下三種:完全試驗法、數值模擬法與半理論半試驗法。其中,完全試驗法一般用風洞實驗[2]或空投試驗[3]等方式直接獲取傘的相關數據,準備周期長、試驗成本高,適用于理論研究與產品的初樣驗證,工程設計階段已很少采用;數值模擬法多以任意拉格朗日-歐拉法[4](Arbitrary Lagrange-Eulerian method,ALE)以及變空間域/穩定時間-空間法[5](Deforming-Spatial-Domain / Stabilized Space-Time, DSD/SST)等計算機仿真方法處理物傘系統的流固耦合問題,并在實踐中有所應用[6-7],但受限于技術能力,數值模擬法目前難以滿足產品初步設計過程中計算簡單、快速應用的需求;為了對一些典型應用工況進行快速、準確的計算分析,有學者結合大量的傘系試驗總結出應用于物傘系統的經驗公式[8],而后發展成為半理論半試驗法,這類方法可以讓研究人員迅速獲取給定條件下的開傘力及飛行速度等重要參數的預測數值并據此判斷傘的性能狀態是否滿足設計要求,是工程中常用和高效的方法,不足之處是具有非常強的經驗參數依賴性和應用場景局限性,很多學者針對此問題對經驗公式進行了改進與優化[9-10],但仍存在較大的提升空間。近年來快速發展的機器學習理論憑借其強大的非線性擬合與泛化性能受到了部分研究者的關注,進行傳統方法結合機器學習的學科交叉研究可以為提高經驗公式模型的精度與適用性提供一種新的研究思路。
由于機器學習的細分種類繁雜,選擇合適的模型對提升訓練的效率與準確性大有裨益。考慮空投試驗中飛行器與降落傘的飛行狀態變化,將空投過程在時間維度上進行離散,可以認為:物傘系統每一時刻的飛行狀態與前一時刻或幾個時刻的狀態量密切相關;與較遠時刻狀態的相關性較小;與后續時刻狀態無關。這種以時間序列為基礎的數據特性尤其適用于循環神經網絡(Recurrent Neural Networks,RNN)模型[11],該類網絡與其變種——長短時記憶網絡[12](Long Short-Term Memory,LSTM)目前在處理序列問題中表現出較大優勢,并廣泛應用于互聯網中的自然語言處理相關領域,在部分非互聯網行業中也有涉獵[13-15]。而在降落傘的相關行業中,國內外使用機器學習方法進行研究的參考案例較少,且大部分限于對傘綢透氣性[16]及傘衣織物強度[17]的研究,對展開過程中載荷特性等問題的探索有限,循環網絡與降落傘的交叉應用具有很大的挖掘空間。
本文針對開傘過程中開傘力的預測,提出了一種使用循環網絡結合經驗公式的補償計算模型,包括模型架構的詳細設計以及對訓練集與測試集的數據預處理方法等。使用3種不同的網絡模型對開傘力的仿真結果進行比較分析并探索循環網絡中超參數對訓練結果的影響,給出本模型的最優訓練參數。
半理論半試驗法中常用的計算方法有充氣距離法與充氣時間法,二者由動量方程的自變量不同進行區分,本文使用的是以充氣時間作為自變量的充氣時間法。
降落傘與回收物在開傘過程中的平面受力情況如圖 1所示。建立該系統運動方程時,首先給定以下假設條件:①該運動為雙質點運動,傘質心位于傘衣底邊中心且相對底邊位置不發生變化;②忽略物傘系統升力;③物傘軸線始終重合;④忽略傘繩彈性,物傘相對位置不發生變化。

圖1 平面物傘系統力學模型Fig.1 Mechanical model of object-parachute system
在上述假設條件的前提下,可建立物傘系統合速度V關于時間t的微分方程以及降落傘拉力Fk的表達式:
(1)
(2)
其中:θ為物傘系統軸線與水平方向夾角;mw為回收物質量;ms為降落傘質量;mf為附加質量,
mf=ρkfC1.5
(3)
C表示降落傘的瞬時阻力特征,
(4)
式中,tm1表示初始充氣時間,tm表示充滿時間,且各參數滿足關系式:
(5)
式(1)~(5)中其余物理量及參數含義為:D0表示傘衣名義直徑,VL表示拉直速度,C1表示初始充氣時期的傘衣阻力特征,Cs表示充滿傘衣的阻力特征,Cw表示回收物的阻力特征;kf表示附加質量系數,λ1是與傘型有關的常數,λ2是與傘衣透氣性有關的常數,指數p在充氣時間法中通常取1~5。
上述系數和常數為經驗參數,是充氣時間理論的核心部分,一般通過大量試驗測試綜合總結獲得。
循環網絡相當于是以時間順序串聯的前饋網絡(Feedforward Neural Networks, FNN),其模型原理和隱層細胞結構如圖 2所示。標準3層RNN結構下t時刻網絡的前向傳播過程可由下列公式計算:
(6)
式中:x(t)、h(t)、y(t)分別表示輸入向量、隱層向量與輸出向量;U、V、W分別表示輸入與隱層、隱層與輸出層、隱層與隱層之間的權重參數;b和c分別表示隱層與輸出層神經元的閾值;σ為sigmoid函數。

圖2 RNN模型及其隱層細胞結構Fig.2 RNN model and cell structure of hidden layer
標準RNN模型的缺點是時間序列過長時,訓練梯度會趨向于消失或者爆炸,該現象被稱為循環網絡的長期依賴挑戰。為了緩解這一問題,近年來學者們研究了RNN的多種變體,其中的LSTM模型較為有效,其隱層細胞結構如圖3所示。

圖3 LSTM細胞結構Fig.3 Cell structure of LSTM
LSTM具有內部的循環(自環)結構,引入了狀態單元C與“門控”的概念,包括輸入門、遺忘門和輸出門。新結構的加入使LSTM對細胞內部信息的處理變得更加細化,信息的存儲與更新也更有效率,訓練過程不再是簡單的輸入量與循環單元之間的仿射變換。相較RNN,LSTM的網絡復雜度與網絡性能均有所上升,其前向傳播公式為:
(7)
式中:f、i、C、o分別表示遺忘門、輸入門、狀態單元和輸出門,h、y表示當前隱層向量與輸出向量,b、U、W表示對應門控的閾值、輸入連接權重和隱層連接權重,σ為sigmoid函數,⊙表示向量積運算。
訓練數據需通過Min-max標準化方法處理后,使用基于時間的反向傳播算法(Back Propagation Through Time,BPTT)結合批梯度下降法(Batch Gradient Descent, BGD)進行訓練,其中批尺寸B取100。
本文所使用的基于充氣時間法的經驗公式已經具備一定的工程應用價值,開傘載荷補償模型的原理是將基于該經驗公式的理論拉力計算值代入循環網絡進行訓練,其目的是將理論值向試驗真值進行補償,并獲取成熟的網絡訓練結果,使補償后的載荷計算值更加接近試驗真值,以此提高最終結果的預測精度。
考慮所能夠使用的有效數據量和數據特征,并滿足循環神經網絡的應用能力,構建開傘載荷補償計算模型框架如圖 4所示,該框架主要包括經驗公式、網絡訓練和輸出預測三個功能模塊。該模型的運行思路如下:①利用經驗公式初步獲得某工況條件下開傘過程中的開傘力預測初值;②將預測值經過數據預處理,獲得可以進行網絡訓練的輸入特征向量;③選用相應的網絡模型進行訓練;④訓練集的網絡輸出參與反向傳播更新網絡權重,測試集的網絡輸出經過反標準化方法獲得補償后的開傘力輸出值。

圖4 開傘載荷補償模型框架Fig.4 Compensation model framework of parachute deployment load
3.2.1 訓練數據獲取
試驗數據來源于4種條件下的低空開傘空投試驗:配重質量為6 040 kg,降落傘傘型為盤-縫-帶傘,傘名義面積為200 m2,設計無限質量開傘方式。試驗過程中使用拉力傳感器同時采集時間與拉力信號,采樣頻率為2 kHz,同時搭配GPS接收機采集其他試驗數據。經驗公式法的初始條件由空投試驗要求給定,氣象條件使用當地月平均氣象數據或探空氣球實測數據。
本文的主要研究對象是傘充氣階段的開傘力變化,對開傘過程中傘系拉直至載荷峰值時間和開傘載荷均進行了統一的標準化處理,如圖 5所示,具體數據處理方式如下:

(a) 開傘力真值(a) Truth force (b) 公式計算值(b) Calculated value 圖5 開傘力數據處理過程Fig.5 Parachute deployment data processing
1)對空投試驗拉力及經驗公式計算拉力進行有效數據截取,選取區間固定為傘系拉直時刻至拉力峰值時刻;
2)通過插值方法將上述區間內的拉力數據統一規范至相同維度,本文選取的數據維度為4 000,即單次試驗參與網絡訓練的有效數據有4 000個;
3)將所有拉力數據采用Min-max標準化方法進行歸一化處理,數據序列上下限選取為(0,200)。
經過上述步驟處理的拉力數據在時間與量級兩個方面實現了歸一化,以經驗公式法的計算值作為網絡輸入、以空投試驗數據作為目標值參與網絡訓練。
3.2.2 樣本劃分與驗證方法
為了滿足網絡訓練要求與樣本數據量,需要對歸一化的數據進行分割,以獲取訓練集的輸入向量與目標向量。由上節可知,單次空投條件下由經驗公式產生的訓練樣本及對應真值為:
(8)
設循環網絡輸入向量維度為n,輸出向量維度為m,時間維度為τ,從x1開始順序選取連續n個數據構成單一時刻內的輸入,同理,從y1順序選取連續m個數據作為對應的目標向量,則第i組向量的表達式為:
(9)
式中,1≤i≤4 000-[max(n,m)-1]。
再從x1和y1開始分別順序選取τ個向量構成滿足時間維度的網絡輸入與目標矩陣:
(10)
式中,1≤i≤4 002-max(n,m)-τ。
由x′i、y′i組成對應數組di=[x′i,y′i],將di代入網絡即是完成對RNN/LSTM的一次訓練,遍歷所有樣本視為完成一次循環。由此可以得到一組試驗數據產生的訓練樣本:
(11)
式中,1≤i≤4 002-max(n,m)-τ。
本文共使用了4組空投試驗數據,選取其中3組用作網絡訓練,共產生樣本d1、d2、d3,將所有樣本進行混合,然后再亂序排列,即可得到訓練集總樣本:
{d|d=(di)}
(12)
式中:1≤i≤3×[4 002-max(n,m)-τ]。
驗證集數據的處理相對簡單,將未參與訓練的1組數據用作結果驗證,首先按照上述方法獲得d4,代入網絡計算并獲得輸出矩陣,其形式為:
(13)
式中,1≤i≤4 002-max(n,m)-τ。

(14)
式中,2≤k≤4 000-[max(n,m)-1]。
使用該方式的目的:一是為了盡量減小驗證過程中初始隨機隱層的影響;二是考慮到循環網絡的計算特點,過去時刻的數據會對當前時刻的樣本預測結果產生影響,該種數據處理的形式可以提高樣本的利用率。
使用FNN、RNN與LSTM三種網絡結構進行實驗。其中FNN為5層結構,包括輸入層、3層全連接隱藏層、輸出層,每層神經元個數均為4 000,與輸入層維度相同,網絡信息遺失率(Dropout)取0.5。經過前期試錯,FNN采用的訓練方案是以整體經驗公式計算結果作為輸入,以整體空投真值作為目標值,該方法在網絡層數為3層和4層時無法收斂,在5層結構下可以獲得有效結果。RNN和LSTM模型則是使用3.2節介紹的數據處理方式與訓練方法,二者均采用輸入層—隱藏層—輸出層的3層結構,網絡輸入維度n=10,隱層維度h=6,輸出維度m=1,學習率η=0.05,時間序列τRNN=50、τLSTM=100。圖 6給出了驗證集數據經過不同模型進行補償后的拉力變化曲線。

圖6 補償模型的擬合結果Fig.6 Fitting result with compensation model
從圖 6可以看出,在載荷曲線的比較中,總體上看三種補償結果均能正確地反映拉力變化趨勢,相較經驗公式計算的開傘力,補償后計算值更加貼合試驗真值;在開傘力峰值的比較中,補償值與真值之間的相對誤差明顯縮小,但是FNN的補償結果整體低于循環網絡;在實驗方法的比較中,兩種循環網絡的計算結果相近,且均優于FNN。
圖 7給出了各模型的歸一化載荷絕對誤差變化曲線。由圖可知,經驗公式計算值在前40%的時間內與真值的絕對誤差小于0.02,之后二者的誤差迅速攀升,FNN模型約在60%的時刻后才出現誤差的明顯增長,RNN與LSTM則將該時間點向后推延至70%,這些曲線分歧點的延后可以說明模型仿真能力的增強,保證了擬合結果在分歧點前與試驗真值的一致性。

圖7 多模型歸一化載荷絕對誤差變化曲線Fig.7 Normalized load absolute error of multiple compensation models
各種擬合模型與真值的誤差出現較大增長的主要因素是未能反映出圖 6空投試驗數據的拉力平臺期現象,基于經驗公式的網絡補償方法在結果上表現出的數據規律仍與經驗公式較為相似。文獻[18]中利用RNN以同源數據的不同方案擬合出的載荷曲線可以展示出該拉力波動,表明循環網絡具有訓練出盤-縫-帶傘充氣展開過程中拉力波動的能力,說明本文實驗的預測結果存在過擬合的成分,補償模型與訓練方式仍有改進的空間;文中使用的3組訓練樣本相較其他機器學習案例來說仍然是偏少的,3.2.2節的數據預處理過程即是針對循環網絡樣本不足問題所采取的數據增強手段,以求在一定程度上彌補數據量缺失的弱勢。本實驗中的樣本數據相對有限且訓練特征較為單一,結果容易存在過擬合,這樣的情況在FNN中更為突出,這也是FNN訓練結果不如RNN與LSTM的因素之一。
除此之外,本文比較了學習率、輸入層維度、隱層維度等超參數對網絡性能的影響。超參數是在開始進行訓練之前設置的參數值,不是通過訓練得到的參數,神經網絡的訓練目的之一是對超參數進行優化而提高網絡的學習性能。
圖8給出了不同學習率下三種網絡的峰值誤差與均方誤差的變化情況,具體數據如表1所示,訓練條件與圖6所示案例相同。

圖8 不同學習率的模型精度對比Fig.8 Comparison of model accuracy with different learning rate

表1 不同學習率的模型精度
學習率影響著網絡訓練過程中梯度下降的速度,學習率過低容易使網絡在訓練過程中陷入局部極小,太大又會出現訓練發散的情況。從圖 8中可以看出,FNN的均方誤差波動增長,且峰值誤差明顯大于RNN與LSTM,開傘試驗中峰值誤差對開傘成功率的影響更為重要,從這兩個方面看,FNN的性能不如循環網絡;在兩種循環網絡的比較中,RNN的均方誤差對學習率的變化并不敏感,LSTM的均方誤差先減小后增大,整體變化范圍較小且η=0.05時有最小值,二者的峰值誤差隨著學習率的增大有逐漸下降的趨勢,且學習率較小時LSTM的峰值誤差變化率較大。綜合圖8與表1數據,在使用循環網絡模型進行訓練時,為保證訓練要求,學習率選取0.05,訓練結果穩定且精度較高。
實驗還比較了學習率為0.05時,LSTM網絡在不同輸入維度與隱層維度下的峰值誤差,如圖9所示。其中,輸入層維度變化時,固定隱層維度h=8;隱層維度變化時,固定輸入層維度n=10。從圖中可以明顯看出,當輸入層維度n=10、隱藏層維度h=8時,峰值誤差取得最小值,模型訓練結果具有最優解。

(a) 不同輸入層的峰值誤差變化(a) Peak error variation of different input layers
上述實驗的訓練過程中發現,隱層維度取某些值時,網絡訓練極易成功,而取某些值時卻連續多次訓練未收斂,由此現象本文探究了隱層維度對網絡訓練成功率的影響。由于計算資源有限,本實驗統計了5個隱層維度下各20次訓練后的網絡收斂次數,圖 10為統計數據融合峰值誤差的結果,以顏色表示訓練的難易程度。其中隱層維度h=8時訓練成功次數明顯高于其他情況,隨著隱層維度的變化,訓練成功率曲線整體類似于正態分布曲線。因此,綜合圖 8、圖 9及圖 10三組實驗結果可知,本文采用的開傘載荷補償模型在使用LSTM時的參考超參數為:學習率η=0.05、輸入層維度n=10、隱層維度h=8。采用該參數組合時最容易獲得優質補償結果,且結果可復現能力強。

圖10 不同隱層維度下的網絡收斂次數Fig.10 Number of convergence with different hidden layer dimension
針對降落傘開傘載荷的預測,建立了一種利用循環網絡的載荷補償方法,該方法在經驗公式的計算結果上進行二次計算,使最終結果更加貼近試驗真值。本文比較了三種網絡模型的補償結果,探討了學習率對實驗精度的影響,并重點分析了LSTM模型中超參數的選擇,得到以下結論:
1)開傘載荷補償模型可以正確反映拉力變化趨勢,相較經驗公式計算的開傘力,經過補償的曲線更加貼合試驗真值。
2)本模型中循環網絡性能明顯優于前饋網絡,隨著學習率增大,兩種循環網絡的峰值誤差逐漸減小,為保證訓練要求,用于訓練的推薦學習率為0.05。
3)當學習率為0.05時,LSTM在輸入層維度n=10、隱層維度h=8的條件下最容易獲得優質補償結果,且結果可復現能力強。
另外,本文建立的開傘載荷補償模型作為機器學習與經典力學兩種方向的交叉學科研究,目前仍處于初步探索階段,方法仍有很大的改進空間,如預測結果的數據規律未能表現出盤-縫-帶傘的拉力波動變化以及參與訓練的樣本特征較為單一等;除此之外,結合實踐經驗,還有高低空開傘試驗數據歸一化方法引起的數據分布不均與不同組試驗傳感器差異引起的樣本特征種類不一致等問題有待進一步的解決,上述方向可為其他學者的繼續研究提供一定的參考。