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