楊秀霞, 姜子劼, 張 毅, 王 聰
(海軍航空大學, 山東 煙臺 264001)
飛行器制導(導引)律是根據目標的位置、速度等狀態信息,引導飛行器接近目標,實施攔截的技術手段,是實現精確打擊或攔截導引的火控系統關鍵技術之一[1],制導律設計是否合理對飛行器能否精準攔截目標起到了至關重要的作用。
比例導引律由于形式簡單、導引精度高等諸多優點,是目前應用最為廣泛的制導律[2-4],它通過在飛行器上施加過載,抑制視線旋轉,從而實現制導。Yang等[5]通過對描述相對運動的3個耦合非線性二階狀態方程進行解析求解,推導了攔截非機動目標和小機動目標的三維真比例導引律,當目標不機動且飛行器與目標的速度為常值時,該制導方法被證實為一種最優制導律[6],而當目標具有強機動性時,比例導引律的制導性能將急劇下降[1]。
對此,研究人員紛紛提出改進措施,滑模變結構制導律[7]、自適應模糊制導律[8-9]等新型制導律應運而生,與此同時,最優導引律也因為能夠解決帶狀態約束的制導問題,而獲得了更為廣泛的應用。最優導引律以最優控制理論為基礎,根據飛行器制導的實際情況,將包括終端脫靶量、制導時間、能量消耗在內的諸多性能指標納入考慮,并通過優化性能函數得到具有最優性能的導引律。Kishi等[10]首次將最優控制理論應用到制導律設計當中,其后Hughes等[11]、Rusnak等[12]學者紛紛效仿,并對攻擊角約束、加速度約束下的制導問題展開研究[13-14]。目前,基于線性二次型最優理論的導引律已進入實用階段。但是,由于全局優化的最優導引律要求目標運動信息全部已知,這對飛行器的測量元件而言是難以實現的,并且,由于制導過程中需要實時估計終端時刻,這在目標運動加速度信息未知的條件下亦是極為困難的,因此部分學者開始將目光投向局部最優導引律。
局部最優導引律采用滾動式的有限時域優化策略。與全局最優導引律不同,局部最優導引律的優化過程不是一次離線完成的,而是通過優化相對于某一時刻的局部性能指標,得到從該時刻起到未來有限時間的最優導引律,并且隨著時間反復不斷地進行在線優化,直到完成制導過程。這一方法的優勢在于無需估計終端時間,僅需要對未來一段時間內的未知信息進行預測,同時由于能夠實時地進行反饋校正,因而具有較強的魯棒性。但是,在無法求得最優控制解析解的情況下,采用迭代法求解最優控制數值解是一項耗時的工作,如果不需要在每一個時域內反復求解最優控制,局部最優導引律將取得更廣泛的應用。
近年來,隨著機器學習技術不斷發展,各領域都在嘗試與之進行結合,不少學者也在飛行器制導領域進行了相關探索,Li等[15]基于模型預測控制理論,在有限時域上利用原始-對偶神經網絡求解約束二次規劃問題,并利用其在線解實時做出制導決策;Shao等[16]利用徑向基函數神經網絡實時估計目標信息,減少三維運動模型中的耦合干擾;Liang等[17]基于模型預測路徑積分控制,提出了一種適用于執行器失效情況下的深度強化學習制導方案;劉揚等[18]通過對制導問題的狀態和動作進行設計,實現了從環境交互數據中學習回報最優的制導決策。
受此啟發,為了解決目標機動策略未知條件下的三維空間制導問題,本文在滾動時域優化框架下提出了基于深度神經網絡(deep neural networks, DNN)的實時制導策略。首先,用零效脫靶量(zero effort miss, ZEM)代替相對距離作為局部終端指標,改進性能函數,利用極小值原理推導性能函數最小化的必要條件,并設計粒子群優化算法求解有限時域內的最優控制;其次,針對目標可能采取的若干種隨機機動形式,利用粒子群優化算法分別進行滾動優化求解,提取求解過程中產生的狀態量、控制量,組成網絡訓練樣本數據,對DNN進行離線訓練,使經過訓練的網絡能夠根據狀態輸入自行解算制導指令;再次,針對目標角速度等狀態信息難以直接觀測的問題,利用單隱含層神經網絡對目標歷史運動狀態進行時序分析,在線預測目標未來運動狀態;最后,將飛行器當前狀態、目標未來狀態預測結果組成特征向量,輸入DNN,實時輸出飛行器制導指令。仿真實驗結果表明,相較于傳統制導律,本文設計的制導策略具有更好的制導性能,且提升了局部最優導引律的在線優化效率,可以為基于數據和學習方式的飛行器制導指令實時解算提供參考和支持。
本文主要研究單個飛行器對單個機動目標的三維攔截制導問題,主要性能判據為(全局)終端脫靶量和飛行器能量消耗。在制導律推導過程中做出如下假設:
(1) 飛行器控制系統具有理想動態特性,信息傳輸及控制指令傳遞無延遲;
(2) 飛行器與目標在運動過程中可視為質點,二者速度均為常值;
(3) 飛行器與目標運動可在水平面與鉛垂面解耦。
在三維制導問題中,飛行器與目標的運動學方程分別為
(1)
(2)


圖1 飛行器(目標)三維運動示意圖Fig.1 Three dimensional motion diagram of aerocraft (target)
設控制量:

令:
(3)
則制導系統狀態方程為
(4)
式中:

實現精準快速的攔截是飛行器制導的首要目的。而在攔截大機動高速目標時,飛行器通過不斷地調整控制指令、糾正自身航向,來保證始終處于攔截目標的有利態勢,這一過程往往伴隨著大量的能量消耗,因此能否對能量進行動態高效的分配與管理,也是維持與保證飛行器制導效果的關鍵所在。出于以上考慮,將制導過程中的能量損耗作為積分指標,把終端脫靶量作為終端指標,設計制導問題的全局性能函數:
(5)
式中:tf為制導終止時刻。

滾動時域優化將整個控制時域[t0,tf]分隔為若干控制周期與預測周期。其中,預測周期TP是能夠較為準確地預測目標運動狀態的時間周期,該周期的主要任務為預測和優化,即利用目標先前的運動信息,對目標傾角速度、偏角速度等難以觀測獲得的信息進行預測,并借助預測結果,通過優化性能函數,確定飛行器在τ∈[t,t+TP](t為當前時刻)的最優控制序列a*(τ),u*(τ);控制周期TC為飛行器進行滾動控制的時間周期,該周期的主要任務為控制與反饋,即將最優控制序列中τ∈[t,t+TC]的部分作為實際控制指令作用于飛行器,實時反饋并觀測雙方狀態信息。完成當前控制周期后,即進入下一控制周期,并同時基于更新反饋的狀態信息進行新一輪預測和優化。如此循環,直到制導過程終止。該方法偽代碼如下:
t=t0
whilet solve minJ(t,TP) geta*(t),a*(t+Δt),…,a*(t+TP); u*(t),u*(t+Δt),…,u*(t+TP) a(t)←a*(t) ? a(t+TC)←a*(t+TC) u(t)←u*(t) ? u(t+TC)←u*(t+TC) t←t+TC End while 其中,Δt為采樣時間;TC,TP取為Δt的正整數倍。 關于滾動時域優化方法,還有以下兩點需要說明: (1) 不論采取何種預測方式,對于目標未來狀態的預測結果均會存在偏差,因此依賴于預測結果獲得的控制序列并非完全可靠,如果將其全部作用于飛行器,將會影響控制的精度。所以在TP與TC之間,通常有TP>TC; (2) 在預測周期以外,由于無法準確地預測目標未來狀態,亦無法通過優化性能函數求解飛行器最優控制指令,因此參照文獻[19],基于當前時刻t做出如下假設: 假設2當時間τ>t+TP時,對飛行器停控,即控制量a、u均為0。 在滾動時域優化框架下,全局最優制導問題式(5)被分解成多個子問題,這樣一來,每一個子問題的初始時刻和終端時刻便能固定下來(初始時刻即當前時刻t,終端時刻為t+TP),那么僅需對每一個具有相同形式的子問題進行優化求解,便能最終獲得全局制導問題的解。 由于目前所能查閱的文獻僅給出了二維平面ZEM的計算公式,因此需對三維空間ZEM表達式進行推導。 根據文獻[20]得到二維平面上ZEM的計算公式: (6) 式中:r表示飛行器與目標的相對距離;q表示飛行器與目標的視線角。用第1.1節所設狀態量,對xoy面的ZEMxoy進行描述: (7) 對qxoy和rxoy求導,得到 (8) (9) 將式(8)、式(9)代入式(7),得到 (10) 再對ZEMxoy取平方,并將其轉化為如下形式: (11) (12) (13) 據此,設計局部終端指標: (14) 改進后的局部性能函數為 (15) 一般來說,在整個制導過程中,飛行器與目標的相對距離持續減小,即飛行器與目標的相對速率始終為負,直至飛行器與目標的相對速率符號轉變瞬間,制導過程結束。此外,考慮到飛行器的動力學特性,對其傾角速度與偏角速度施加邊界約束。因此,制導問題的約束條件為 (16) 根據式(15),列寫Hamilton函數: H(x,a,u,λ,τ)=a2(τ)+u2(τ)+λTf(x,a,u,τ) 式中:λ(τ)為拉格朗日乘子向量函數: λT(τ)=[λ1(τ),λ2(τ),…,λ6(τ)] f(x,a,u,τ)=Ax(τ)+B1(τ)a(τ)+B2(τ)u(τ)+ 得到協態方程: (17) 橫截條件 (18) 式中: K(t+TP) 另外,由龐特里亞金極小值原理可知,在最優控制[a*(τ),u*(τ)]上,Hamilton函數取極小值。對H(x,a,u,λ,τ)求其關于a(τ),u(τ)的導數及二階導數: (19) 不難看出,當控制量a(τ),u(τ)不受邊界約束的條件,H(x,a,u,λ,τ)在 (20) (21) (22) (23) 至此,我們已經獲得了使性能函數J取極小值的全部必要條件,下面只需確定協態變量即可算出有限時域內的局部最優控制。 一般情況下,對于如式(15)所示的優化問題,我們很難得到其解析解表達式,此時往往需要采用數值方法求解。梯度法、共軛梯度法等直接方法是計算該類問題的通用范式,這類方法采取雙向積分方式,計算過程穩定,但也存在易落入局部最優、接近最優解時收斂過緩等缺陷。而邊界迭代法等間接方法涉及復雜的求逆運算,較易引入誤差,進而影響最優控制的求解精度。對此,提出一種基于粒子群優化算法的求解策略,該策略通過更新粒子飛行速度完成迭代,迭代過程中,粒子既可利用自身尋優的歷史信息,還可向優秀粒子學習,從而避免局部收斂。此外,該算法無需大量的求梯度、求逆運算,易于實現的同時保證了求解精度。 首先,對協態方程式(17)求其關于時間τ的積分,得到 (24) 基于粒子群優化算法求解最優控制的具體步驟描述如下: 步驟3根據橫截條件式(18)定義誤差向量為 (25) 適應度函數采用誤差向量的2-范數與性能函數之和的形式,定義為 (26) 步驟5更新粒子位置 (27) 更新粒子速度 (28) 其中,超參數wmax,wmin表示最大、最小慣性權重。相比于定值慣性權重,自適應慣性權重的優勢在于能夠根據粒子適應度調整搜索方式:當粒子適應度大于種群平均適應度時,其慣性權重越大,越有利于粒子跳出局部最優值進行全局搜索;反之,當粒子適應度小于種群平均適應度時,其慣性權重越小,越有利于粒子對當前區域進行精細的局部搜索。 步驟7根據粒子適應度,選出個體最優粒子和全局最優粒子,并進入下一次迭代。 步驟8迭代終止,輸出cbest=[c1best,c2best,…,c6best]T,根據式(22)和式(23)計算最優控制序列a*(τ),u*(τ)(t≤τ≤t+TP)。 至此,我們通過粒子群優化算法,在滾動時域優化框架下,得到了局部最優控制的數值解序列。但是對于狀態變換迅速、攻防對抗激烈的制導問題而言,如果在每一個控制周期都通過此類數值迭代方法求解最優控制,雖然能夠保證足夠的求解精度,但卻會耗費大量計算時間,從而造成控制延遲甚至失效。 為了滿足制導指令實時規劃的要求,利用DNN強大的泛化能力,提出一種制導指令在線生成的智能制導策略。 通過粒子群優化算法求解局部最優控制,為制導問題提供了一種解決方式,如果這種方式被保留下來,用以指導實際任務中的制導指令在線生成,將會大大提高制導指令的解算精度。神經網絡是一種進行分布式并行信息處理的算法,通過對網絡結構和訓練方式的合理設計,理論上可以使其逼近任意復雜的算法或模型。如果將神經網絡應用于實際制導過程中,通過一組輸入即可使其輸出容許范圍內的最優控制,那么制導指令的解算效率也將獲得大幅提升。 基于上述考慮,本節利用具有多隱含層的DNN對粒子群優化算法滾動求解得到的大量樣本數據進行離線學習,使之模仿飛行器動態決策行為,再將經過學習的網絡用于制導指令的在線生成。通過這種方式獲得制導指令,無需在每個控制周期反復地迭代求解最優控制,從而提高了指令生成速度,且能夠充分利用粒子群優化算法的求解信息,保證了指令求解精度,因此更適合作為一種在線制導策略。 離線學習是指對獨立的數據進行訓練,再將訓練得到的模型用于預測任務中的機器學習方式,其目的是使神經網絡更好地逼近實際模型,且在遇到新任務時具有較強的泛化能力。 3.1.1 樣本數據采集 為了使神經網絡適應目標可能采取的各種機動行為,基于幾種常見的隨機信號生成若干組目標傾角速度、偏角速度時間序列,根據式(1)得到若干目標運動狀態。 (29) (30) 其中,輸入矩陣行數為10,列數為樣本數量,記為Ns。 3.1.2 DNN構建 神經網絡由輸入層、隱含層及輸出層構成,為了使神經網絡更好地逼近實際模型,通常要基于實測數據對各種可行的網絡結構及訓練方式進行測試和對比,并從中選擇擬合程度較高、泛化能力較好的網絡模型應用于實際問題。 網絡結構由神經網絡層數和隱含層神經元個數共同決定,對于復雜模型來說,一般要通過隱含層數大于1的DNN進行學習,而在不增加隱含層數的情況下,盲目增加神經元數量并不會使網絡性能得到太大提升。 訓練方式取決于激活函數和優化算法。常用的激活函數有S型生長曲線函數(Sigmoid)、雙曲正切函數(tanh)以及線性整流函數(ReLU)等,而常用的優化算法主要包括梯度下降法、牛頓算法、共軛梯度法以及Levenberg-Marquardt算法等。 通過采用不同的網絡結構及訓練方式對第3.1.1節獲得的樣本數據進行學習發現,當隱含層數量為5時網絡擬合程度較高,采用tanh作為激活函數,Levenberg-Marquardt作為優化算法時訓練速度較快、性能較好。此外,為了保證預測精度,以控制量a與u作為輸出分別構建DNNa與DNNu。 3.1.3 離線學習 下面以控制量a作為輸出的神經網絡DNNa為例,介紹網絡離線學習過程。 將a′轉置后作為實際輸出,即網絡輸出目標值: Sout=[a′]T (31) 每一隱含層的神經元個數分別設為nhi(i=1,2,…,5)。于是可以確定權值、閾值矩陣維數:W1nh1×10,W2nh2×nh1,…,W5nh5×nh4,W61×nh5,B1nh1×1,B2nh2×1,…,B5nh5×1,B61×1。 激活函數采用tanh: 定義矩陣運算s(A)=[tanh(aij)]m×n,其中A=(aij)m×n,于是網絡前向傳遞過程可以描述為 H1out=s(W1Sin+B111×Ns) Hi+1 out=s(Wi+1Hi out+Bi+111×Ns),i=1,2,3,4 Nout=W6H5out+B611×Ns (32) 式中:1m×n表示元素全為1的m×n維矩陣;Hi out表示第i層隱含層輸出;Nout表示網絡輸出。 定義誤差向量: E=Sout-Nout (33) 損失函數: (34) 網絡訓練的目的是使網絡輸出值盡可能逼近目標值,即通過更新網絡參數,使L(E)<ε,其中ε為一較小正值。為了使損失函數收斂,傳統的梯度下降法基于梯度進行參數更新,從幾何意義上講,梯度代表函數增加最快的方向,因此沿著與之相反的方向便可以更快地找到損失函數的極小值。而不同于傳統的梯度下降算法,Levenberg-Marquardt算法不僅能夠找到函數下降的方向,還能合理地決定參數更新的速度,因此收斂速度快、收斂性好。 如果將神經網絡的某一參數矩陣鋪陳為nw維向量w,則基于Levenberg-Marquardt算法的參數更新方式為 (35) 式中:Jw表示誤差(向量)E關于參數(向量)w的Jacobian矩陣: 基于Levenberg-Marquardt算法的反向傳播過程描述如下: 步驟1隨機生成網絡權值矩陣、閾值矩陣; 步驟2當迭代次數小于最大迭代次數時執行步驟3和步驟4,否則轉步驟5; 步驟3根據式(32)~式(34)計算損失函數,當損失函數小于預設值時,轉步驟5; 步驟4根據式(35)更新網絡參數,進入下一次迭代并轉步驟2; 步驟5終止迭代,輸出網絡權值、閾值。 在完成網絡訓練之后,最終可以獲得最優網絡參數,當新的一組狀態量輸入網絡時,即可通過式(32)計算網絡輸出。 至此,利用粒子群優化算法求解得到的大量樣本數據,完成了基于DNN的制導指令生成器的設計。而在實際制導過程中,能否取得良好的制導效果不僅取決于生成器設計是否合理,還極大地依賴于對于目標運動狀態的估計是否準確。下面,基于淺層神經網絡,設計目標傾角、偏角速度的在線估計器。 由于目標傾角、偏角速度無法通過直接觀測獲得,因此在基于滾動時域優化的制導過程中,如果能夠準確地預測兩者的大小,將會極大地解決由于預測偏差引發的系統失穩等問題。一般來說,目標在某一時刻的機動指令并非完全隨機的,而是具有某些時間相關的變化特點,因此可通過分析目標運動狀態的歷史信息,預測其未來的運動狀態。而神經網絡作為一種通用的狀態估計器,同樣可以用于目標機動指令的時序分析與預測。為了兼顧預測精度和預測效率,基于單隱含層神經網絡設計目標傾角、偏角速度的在線估計器。 首先,將目標傾角、偏角速度的歷史信息組成網絡訓練樣本數據。以目標傾角速度為例,設當前時刻為t,歷史信息數量為m+n-1,則樣本數據矩陣為 (36) 網絡激活函數仍采用tanh,訓練過程采用基于Levenberg-Marquardt的反向傳播算法。由于上文已對該方法進行過詳細描述,此處不再贅述。 在t+Δt時刻到來時,則以t+Δt時刻為當前時刻,更新網絡訓練樣本數據,訓練神經網絡并產生新的預測值。 經過離線訓練的神經網絡可以根據當前狀態直接輸出制導指令,而無需考慮控制輸出延遲,因此為了充分利用雙方狀態的實際測量值,提升制導精度,把控制周期設定為采樣時間Δt。 至此,完成了制導指令在線生成的智能制導策略設計,下面通過算例對該制導策略的性能進行仿真驗證。 本文設定的實驗場景為目標初始位置、傾角、偏角以及飛行器初始位置、傾角、偏角已知,并且目標的位置、角度可實時獲取,目標機動策略未知且具有一定的隨機性。在制導過程中,飛行器制導指令延遲不做考慮。 飛行器與目標的初始狀態參數如表1所示。 表1 飛行器-目標初始狀態參數 基于隨機信號形成500組目標機動指令序列,根據初始狀態參數及狀態方程式(1)獲得各組目標運動狀態。設定預測周期為0.5 s,控制周期為0.1 s,利用粒子群-滾動時域優化算法對每組目標求解最優控制序列,生成20余萬組網絡訓練樣本數據。飛行器分別對具有不同機動形式的目標實施攔截的三維運動軌跡如圖2所示。 圖2 對具有不同機動形式的目標實施攔截的三維軌跡Fig.2 Three dimensional trajectories of intercepting targets with different maneuver forms 按照97.5%、2.5%的比例將樣本數據劃分為訓練集與測試集,利用訓練集分別對DNNa和DNNu進行離線訓練。網絡性能函數隨訓練次數的變化情況如圖3所示。分別經過406次與603次訓練,網絡輸出誤差達到預設要求。利用測試集測試網絡訓練效果,測試結果如圖4所示。 圖3 神經網絡離線訓練情況Fig.3 Off-line training of neural network 圖4 神經網絡測試結果Fig.4 Test results of neural network 從隨機常值機動、隨機正弦機動、隨機方波機動中任取兩種分別作為目標在縱向和側向的機動方式,對神經網絡-滾動時域優化制導策略的制導效果進行檢驗。 選取的目標機動方式為:(a)縱向常值機動、側向正弦機動;(b)縱向方波機動、側向常值機動;(c)縱向正弦機動、側>向方波機動。 針對上述3種組合機動方式,利用神經網絡-滾動優化制導策略對目標實施攔截,設定預測周期為0.5 s,控制周期為0.1 s。飛行器對目標運動狀態的滾動預測結果如圖5~圖7所示。 圖5 目標運動軌跡預測情況Fig.5 Prediction of target trajectory 圖6 目標傾角預測情況Fig.6 Prediction of target inclination angle 圖7 目標偏角預測情況Fig.7 Prediction of target deflection angle 將神經網絡-滾動優化制導策略的制導效果與三維比例導引律以及粒子群-滾動優化制導策略(預測周期為0.5 s,控制周期為0.1 s)進行對比,得到仿真結果如圖8~圖11所示。 圖8 飛行器-目標三維運動軌跡Fig.8 Three dimensional trajectory of aerocraft and target 圖9 飛行器-目標二維運動軌跡(目標縱向常值、側向正弦機動)Fig.9 Two dimensional trajectory of aerocraft and target(target longitudinal constant and lateral sinusoidal maneuver) 圖10 飛行器-目標二維運動軌跡(目標縱向方波、側向常值機動)Fig.10 Two dimensional trajectory of aerocraft and target(target longitudinal square wave and lateral constant maneuver) 圖11 飛行器-目標二維運動軌跡(目標縱向正弦、側向方波機動)Fig.11 Two dimensional trajectory of aerocraft and target(target longitudinal sinusoidal and lateral square wave maneuver) 圖12 飛行器-目標相對距離變化情況Fig.12 Relative distance between aerocraft and target 觀察飛行器-目標運動軌跡發現,由于能夠較為準確地預測目標運動信息,采取神經網絡-滾動優化制導策略與粒子群-滾動優化制導策略的飛行器提前針對目標機動行為做出反應,并且較快地接近目標。圖12表明,針對上述3種機動目標,神經網絡-滾動優化制導策略與粒子群-滾動優化制導策略均能夠引導飛行器以較小的終端脫靶量完成攔截。 在優化效果上,采取3種制導策略對上述3種目標實施攔截的性能指標(式(5))如表2所示。 表2 利用3種制導策略分別實施攔截的性能指標 可以看出,神經網絡-滾動優化制導策略的優化效果介于粒子群-滾動優化制導策略與比例導引律之間,但是在計算時間上,利用神經網絡-滾動優化制導策略生成制導指令平均耗時少于0.01 s,而利用粒子群-滾動優化制導策略生成制導指令平均耗時0.47 s,顯然,神經網絡-滾動優化制導策略大大提升了制導指令生成速度,相較于后者,更能滿足制導攔截任務的實際需要。 本文針對三維空間內目標機動策略未知條件下的制導攔截問題,基于滾動時域優化理論和神經網絡設計了一種制導指令在線實時規劃方案,并通過仿真實驗初步表明該方案具有良好的制導性能,可以為基于數據和學習方式的飛行器制導指令在線規劃提供參考和支持。在此后的工作中,考慮把本文的研究方法應用于多飛行器協同攔截制導問題,尋求一種基于機器學習的多飛行器協同智能制導方案。
2.2 基于ZEM的最優制導問題





2.3 最優制導問題的粒子群優化算法







3 基于神經網絡的滾動優化制導策略
3.1 神經網絡構建及離線學習



3.2 目標傾角、偏角速度在線滾動預測


3.3 實時滾動優化制導策略設計


4 仿真實驗與分析














5 結 論