王 琪 廖志忠
中國空空導(dǎo)彈研究院,洛陽 471009
現(xiàn)代戰(zhàn)爭中,空空導(dǎo)彈和地空導(dǎo)彈的主要任務(wù)是成功攔截空中目標(biāo),同時優(yōu)化能量使用效率以增加射程。為了提高制導(dǎo)精度,多種導(dǎo)彈制導(dǎo)技術(shù)蓬勃發(fā)展起來,包括比例導(dǎo)引律(Proportional Navigation Guidance, PNG)、增強比例導(dǎo)引律(Augmented Proportional Navigation Guidance, APNG)、最優(yōu)導(dǎo)引律(Optimal Guidance Law, OGL)和滑模導(dǎo)引律(Sliding-Mode Guidance, SMG)[1-3]。PNG導(dǎo)引律最易于工程實現(xiàn),在實際的導(dǎo)彈攔截作戰(zhàn)中被廣泛使用。然而,在存在制導(dǎo)參數(shù)不確定性和目標(biāo)機動等外部干擾的情況下,PNG的效果并不理想。APNG和OGL導(dǎo)引律是在假設(shè)目標(biāo)加速度已知的情況下推導(dǎo)出來的,但是準(zhǔn)確的預(yù)測或估計目標(biāo)的機動策略和加速度并不容易實現(xiàn)?;?刂评碚撎峁┝艘环N魯棒控制方法,可以鎮(zhèn)定存在未建模誤差和匹配不確定性的系統(tǒng),但大多數(shù)滑??刂戚斎胧遣贿B續(xù)的,采用滑模制導(dǎo)律時會出現(xiàn)抖振現(xiàn)象[4]。
微分博弈理論提供了一種解決兩個獨立個體之間博弈對抗的理論框架,對于導(dǎo)彈和目標(biāo)的追-逃博弈問題,微分博弈導(dǎo)引律既能體現(xiàn)導(dǎo)彈攔截方的策略,又能體現(xiàn)目標(biāo)逃逸方的策略。對于非線性的導(dǎo)彈-目標(biāo)攔截動力學(xué)模型,通過求解相應(yīng)的Hamilton-Jacobi-Isaacs (HJI)方程可以獲得博弈雙方的最優(yōu)控制策略。然而,對于非線性的微分博弈系統(tǒng),用解析方法求解其納什均衡解通常是非常困難或不可實現(xiàn)的,這限制了微分博弈導(dǎo)引方法的應(yīng)用。為了獲得HJI方程的解析解,劉利軍等通過構(gòu)建改進的視線極坐標(biāo)系,簡化了導(dǎo)彈目標(biāo)相對運動方程[5],得到了一個解析解。另一方面,在工程應(yīng)用中,通常不可能獲得被控對象的精確模型,只能通過有限的觀測值來獲得一個不精確的系統(tǒng)模型,將這個模型應(yīng)用于實際控制系統(tǒng)的設(shè)計時,由近似模型導(dǎo)出的控制輸入將不會達(dá)到最佳性能。
近年來,在計算智能領(lǐng)域和機器學(xué)習(xí)領(lǐng)域,自適應(yīng)動態(tài)規(guī)劃方法(Adaptive Dynamic Programming, ADP)得到了廣泛的研究,該方法可以獲得最優(yōu)控制問題或博弈問題的近似最優(yōu)解[6-8]。自適應(yīng)動態(tài)規(guī)劃基于數(shù)據(jù)驅(qū)動,可通過離線或在線的迭代計算方法求解近似最優(yōu)控制[9-10]。在計算科學(xué)領(lǐng)域自適應(yīng)動態(tài)規(guī)劃被稱為強化學(xué)習(xí)[11-12],自適應(yīng)動態(tài)規(guī)劃算法包括值迭代(Value Iteration, VI)和策略迭代(Policy Iteration, PI)算法。ADP算法不試圖直接求解HJB方程,而是在可容許的控制策略空間中進行定向或隨機探索。事實上,PI算法需要2步迭代:1)策略評估,計算和評估與可容許控制策略相關(guān)聯(lián)的值函數(shù);2)策略改進,通過最小化值函數(shù)得到一個新的控制策略。重復(fù)上述2個步驟,直到策略改進步驟不改變當(dāng)前策略,表明控制策略收斂到最優(yōu)控制。必須指出,PI算法運行的前提是初始控制策略是容許控制,只有當(dāng)算法初始化時的控制策略滿足可容許條件時,才能對值函數(shù)進行評估。
基于ADP技術(shù)的計算智能導(dǎo)引律主要采用機器學(xué)習(xí)技術(shù),通過離線訓(xùn)練[13]或在線優(yōu)化實現(xiàn),然后通過學(xué)習(xí)訓(xùn)練數(shù)據(jù)中的隱性特征信息生成制導(dǎo)指令[14-16]。與傳統(tǒng)制導(dǎo)律的設(shè)計理念不同,計算智能導(dǎo)引律生成制導(dǎo)控制指令的過程不需要大量的離線設(shè)計、增益調(diào)整或任務(wù)前規(guī)劃,而是完全依賴迭代算法來處理動態(tài)變化的場景和復(fù)雜任務(wù),從而獲得近似的最優(yōu)解?;趶娀瘜W(xué)習(xí)算法,譚浪等研究了基于深度強化學(xué)習(xí)的追逃博弈制導(dǎo)律、可實現(xiàn)末端攻擊角度約束的深度強化元學(xué)習(xí)制導(dǎo)律等[17-20],但基于強化學(xué)習(xí)的方法都需要進行離線訓(xùn)練。孫磊等針對反高超聲速武器攔截制導(dǎo)問題設(shè)計了一種基于ADP技術(shù)的微分對策導(dǎo)引律,采用VI算法在線實時求解最優(yōu)值函數(shù),但文中給出的方法需要已知完整的系統(tǒng)動態(tài)模型[21]。Wang等研究了系統(tǒng)內(nèi)動態(tài)未知、僅已知系統(tǒng)輸入動態(tài)下的基于在線ADP技術(shù)的最優(yōu)導(dǎo)引律[16]。
本文提出了一種基于自適應(yīng)動態(tài)規(guī)劃的微分博弈導(dǎo)引律設(shè)計方法,該方法利用神經(jīng)網(wǎng)絡(luò)實現(xiàn)Actor/Critic結(jié)構(gòu),可在線求解導(dǎo)彈-目標(biāo)攔截非線性微分博弈系統(tǒng)的近似最優(yōu)控制問題,并且不需要非線性系統(tǒng)的內(nèi)動態(tài)模型知識。本文提出的方法基于PI算法,給定的初始容許控制策略為比例導(dǎo)引控制律,然后評估給定初始容許控制的代價函數(shù),并通過計算值函數(shù)的鞍點以獲得新的博弈雙方的控制策略。在狀態(tài)空間的可行域內(nèi),對于導(dǎo)彈來說,新的控制策略比之前的策略具有更小的相關(guān)值函數(shù);對于目標(biāo)來說,新的控制策略比之前的策略具有更大的相關(guān)值函數(shù)。重復(fù)進行策略評估和策略改進這2個步驟,直到策略改進步驟不再更新,表明達(dá)到了微分博弈問題的近似最優(yōu)解。
考慮一類連續(xù)時間仿射非線性系統(tǒng)
(1)
式中,x∈n表示系統(tǒng)狀態(tài)向量,u∈m和v∈k表示博弈系統(tǒng)兩個參與者的控制輸入向量,f(x)∈n表示系統(tǒng)內(nèi)動態(tài),g(x)∈n×m和k(x)∈n×k表示輸入動態(tài)和擾動系數(shù)矩陣。假設(shè)f(x),g(x)和k(x)在緊集Ω∈n上滿足局部Lipschitz連續(xù),并且有f(0)=0,即x=0是系統(tǒng)平衡點。
定義如下無限時域值函數(shù)
(2)
式中,Q(x)≥0是正半定函數(shù),R1和R2為相應(yīng)維數(shù)的對稱正定矩陣。微分博弈的主要目標(biāo)是尋找控制輸入u最小化值函數(shù),尋找控制輸入v最大化值函數(shù)。
定義系統(tǒng)漢密爾頓函數(shù)為:
(3)
根據(jù)Hamilton-Jacobi-Isaacs理論,最優(yōu)值函數(shù)可通過求解下列Isaacs方程得到:
(4)
假設(shè)微分博弈鞍點存在且唯一,則給定微分博弈問題的最優(yōu)控制輸入對為:
(5)
將式(5)的最優(yōu)控制輸入代入Isaacs方程得到HJI方程:
(6)
這是最優(yōu)值函數(shù)需要滿足的一個充分條件[22]。如果系統(tǒng)是線性的,并且考慮了二次值函數(shù),博弈代數(shù)Riccati方程(Game Algebraic Riccati Equation, GARE)等價于這個HJI方程。為了求出系統(tǒng)的最優(yōu)控制輸入,只需求解HJI方程(6)的最優(yōu)值函數(shù),然后代入式(5)得到最優(yōu)控制輸入函數(shù)。然而,由于HJI方程是一個非線性偏微分方程,通常很難找到解析解。此外,要求解方程(6),還需要獲得動力學(xué)系統(tǒng)的完整知識。為此,研究了一系列數(shù)值算法,通過迭代法獲得HJI方程的近似最優(yōu)解。
文獻[23-25]研究了微分博弈問題的策略迭代求解方法,并給出了收斂性的證明。假設(shè)u,v∈L2[0,∞),PI算法包含如下2個步驟:
1) 策略評估
給定控制策略和擾動u(i),v(i)∈L2[0,∞),求解滿足如下李雅普諾夫方程的值函數(shù):
(7)
值函數(shù)滿足V(0)=0。
2)策略改進
求Hamiltonian函數(shù)的鞍點以更新控制策略:
(8)
為了實現(xiàn)PI算法中方程(7)和(8)給出的迭代方案,只需要已知系統(tǒng)狀態(tài)方程中的輸入-輸出動態(tài)模型,即公式(8)中策略改進所需的g(x)和k(x)函數(shù)。在線數(shù)據(jù)采樣時系統(tǒng)內(nèi)狀態(tài)函數(shù)f(x)的信息嵌入在t和t+T時刻的狀態(tài)信息中,因此PI算法不需要內(nèi)狀態(tài)動力學(xué)知識f(x)。
獲得非線性連續(xù)時間系統(tǒng)李雅普諾夫方程解的關(guān)鍵是使用神經(jīng)網(wǎng)絡(luò)函數(shù)進行逼近,可以通過離線或在線訓(xùn)練獲得方程的近似解。上述由策略評估和策略改進兩步迭代構(gòu)成的PI算法,可以組成Actor/Critic結(jié)構(gòu),Critic模塊采用神經(jīng)網(wǎng)絡(luò)擬合值函數(shù),Actor模型采用神經(jīng)網(wǎng)絡(luò)擬合控制輸入。PI算法交替調(diào)整這兩個神經(jīng)網(wǎng)絡(luò)來依次求解方程(7)和(8)。對Critic神經(jīng)網(wǎng)絡(luò)進行調(diào)整,以評估當(dāng)前控制策略的性能(在此期間控制策略保持不變),從而近似求解方程(7)。
采用神經(jīng)網(wǎng)絡(luò)擬合值函數(shù)及其導(dǎo)數(shù),值函數(shù)擬合公式為:
(9)
其中神經(jīng)網(wǎng)絡(luò)激活函數(shù)向量為φ1(x)∈N,W1是權(quán)重向量,ε(x)是神經(jīng)網(wǎng)絡(luò)逼近誤差。選擇激活函數(shù)構(gòu)成一個完備的基集,則神經(jīng)網(wǎng)絡(luò)可以一致逼近值函數(shù)V(x)和其導(dǎo)數(shù)。根據(jù)Weierstrass高階逼近理論[26],V(x)足夠光滑時,當(dāng)N→∞時,ε(x)→0。
(10)
采用神經(jīng)網(wǎng)絡(luò)擬合值函數(shù)后,式(3)漢密爾頓函數(shù)變?yōu)?
(11)
通過引入神經(jīng)網(wǎng)絡(luò)擬合值函數(shù),式(7)變?yōu)椋?/p>
(12)
式中,Δ(i)為近似誤差。
(13)
對于連續(xù)時間系統(tǒng),該誤差可被視為連續(xù)時間系統(tǒng)的時間差分(Temporal Difference, TD)殘差,最小化該誤差得到時間差分學(xué)習(xí)方法[27]。采用最小二乘法對該誤差最小化,可以計算出神經(jīng)網(wǎng)絡(luò)參數(shù),即最小化如式(14)指標(biāo):
(14)
式(14)的最小化等價于計算式(15):
(15)
采用內(nèi)積符號表示Lebesgue積分后,可得到式(16):
(16)
假設(shè)式(17)所表述的矩陣可逆,則可以得到神經(jīng)網(wǎng)絡(luò)權(quán)值更新計算公式如式(18)所示。
Θ=〈[φ1(x(t))-φ1(x(t+T))],
[φ1(x(t))-φ1(x(t+T))]T〉Ω
(17)
(18)
文獻[8]給出了T>0和Θ可逆的存在性證明,神經(jīng)網(wǎng)絡(luò)擬合值函數(shù)的權(quán)值可以按照上式進行更新計算。完成策略評估后,按照式(19)計算策略改進值
(19)
在這種實現(xiàn)方法中,采用Critic神經(jīng)網(wǎng)絡(luò)激活函數(shù)的梯度以獲得式(19)中Actor神經(jīng)網(wǎng)絡(luò)的激活函數(shù),并且Actor和Critic神經(jīng)網(wǎng)絡(luò)的權(quán)重使用相同的數(shù)值。
基于Critic/Actor結(jié)構(gòu)的控制系統(tǒng)設(shè)計方法允許自適應(yīng)的在線學(xué)習(xí)獲得最優(yōu)控制函數(shù),而無需了解動態(tài)系統(tǒng)的內(nèi)部動力學(xué)。這是一種連續(xù)/離散混合自適應(yīng)控制結(jié)構(gòu),具有連續(xù)時間響應(yīng)特性。當(dāng)前的控制策略通過離散時間數(shù)據(jù)采樣進行評估。從控制理論的角度來看,ADP算法可以在線實現(xiàn)。因為在時刻ti+1觀察到狀態(tài)x(ti+1)、并實時更新控制策略后,該策略可以用來實現(xiàn)系統(tǒng)在未來時間間隔(ti+1,ti+1+T]內(nèi)的穩(wěn)定運行。
該方法實施過程中涉及的計算是在離散時間點對監(jiān)督級別的系統(tǒng)進行測量和采樣,并進行相應(yīng)的計算和執(zhí)行。這種先進的混合智能控制結(jié)構(gòu)實現(xiàn)了PI算法。對于在給定控制策略下運行的連續(xù)時間控制系統(tǒng),采用Critic神經(jīng)網(wǎng)絡(luò)對性能值函數(shù)進行參數(shù)化。先進的監(jiān)控結(jié)構(gòu)基于離散時間點的采樣數(shù)據(jù)對系統(tǒng)控制策略進行決策,進而改進Actor和Critic神經(jīng)網(wǎng)絡(luò)的參數(shù)。采用Actor神經(jīng)網(wǎng)絡(luò)擬合近似最優(yōu)控制策略函數(shù),可以實現(xiàn)連續(xù)時間控制。最終的控制方案是將連續(xù)時間控制器納入連續(xù)時間控制和離散時間評估的自適應(yīng)評價結(jié)構(gòu)中。
在實際系統(tǒng)的實現(xiàn)過程中,當(dāng)沿著狀態(tài)軌線收集足夠多的采樣數(shù)據(jù)點后,公式(18)中給出的神經(jīng)網(wǎng)絡(luò)權(quán)值可以實時求解。當(dāng)連續(xù)兩步評估的系統(tǒng)指標(biāo)之間的偏差低于指定的閾值時,可以停止迭代計算。
本節(jié)首先給出導(dǎo)彈-目標(biāo)攔截場景的非線性連續(xù)時間動態(tài)系統(tǒng)模型,然后將導(dǎo)彈-目標(biāo)攔截問題考慮為一個非線性系統(tǒng)的微分博弈控制問題。
在導(dǎo)彈-目標(biāo)攔截階段,導(dǎo)彈、目標(biāo)運動關(guān)系如圖1所示。圖中VM為導(dǎo)彈速度、α為導(dǎo)彈飛行航跡角、μM為導(dǎo)彈加速度,VT為目標(biāo)速度、β為目標(biāo)飛行航跡角、νT為目標(biāo)加速度。θ為彈目視線角,r為彈目距離。
圖1 導(dǎo)彈目標(biāo)交戰(zhàn)幾何
導(dǎo)彈與目標(biāo)攔截場景的運動學(xué)模型為:
(20)
制導(dǎo)的目的是使零控脫靶量(Zero Effort Miss Distance,ZEMD)達(dá)到最小,零控脫靶量計算公式為[28]:
(21)
(22)
注意到在導(dǎo)彈的實際制導(dǎo)過程飛行中,導(dǎo)引頭存在一個最小作用距離r0。當(dāng)導(dǎo)彈目標(biāo)距離小于該距離(即r≤r0)時,制導(dǎo)過程結(jié)束。因此,導(dǎo)彈與目標(biāo)之間的距離不會為0,系統(tǒng)動態(tài)方程滿足局部Lipschitz連續(xù)。此外,從動力學(xué)方程(22)可知,|β-θ|=π/2和|α-θ|=π/2是一種不穩(wěn)定的平衡。因此,制導(dǎo)律的應(yīng)用可行域在以下條件的約束范圍內(nèi):
Π={x:|α-θ|=π/2,|β-θ|=π/2,
r≠0,Vr<0}
(23)
本文的仿真中,假設(shè)導(dǎo)彈和目標(biāo)速度為常數(shù),VM=600m/s,VT=240m/s。導(dǎo)彈和目標(biāo)的初始飛行航跡角為α0=0°,β0=30°。導(dǎo)彈和目標(biāo)初始位置為(xM,yM)=(0,0)m和(xT,yT)=(5000,0)m。神經(jīng)網(wǎng)絡(luò)包含8個神經(jīng)元,激活函數(shù)為:
(24)
基于本文提出的制導(dǎo)方案,導(dǎo)彈與目標(biāo)交戰(zhàn)過程的仿真結(jié)果如圖2~6所示。從圖2中的導(dǎo)彈目標(biāo)飛行軌跡可以看出,所提出的制導(dǎo)律設(shè)計方法能夠成功攔截目標(biāo)。圖3顯示了視線角速度曲線,可以看出,在末制導(dǎo)期間,視線角速度被調(diào)整到0附近。此外,圖4顯示了沿彈目視線的距離變化率,Vr保持為負(fù)值。圖3~4表明系統(tǒng)狀態(tài)滿足有效攔截條件的要求,導(dǎo)彈能夠成功攔截目標(biāo)。圖5顯示了制導(dǎo)過程中導(dǎo)彈和目標(biāo)的橫向加速度。圖6顯示了由神經(jīng)網(wǎng)絡(luò)擬合值函數(shù)過程中Hamiltonian函數(shù)的變化情況,Hamiltonian函數(shù)達(dá)到0,表明導(dǎo)彈和目標(biāo)控制輸入達(dá)到了微分博弈問題的平衡點。
圖2 導(dǎo)彈目標(biāo)交戰(zhàn)軌跡
圖3 視線角速度
圖4 彈目接近速度
圖5 導(dǎo)彈目標(biāo)加速度
圖6 Hamiltonian函數(shù)
將導(dǎo)彈-目標(biāo)攔截問題考慮成非線性系統(tǒng)微分博弈問題,針對非線性系統(tǒng)微分博弈提出了一種基于自適應(yīng)動態(tài)規(guī)劃的計算智能制導(dǎo)律實現(xiàn)方法,采用神經(jīng)網(wǎng)絡(luò)擬合值函數(shù),并通過PI迭代算法在線迭代求解微分博弈問題。該方法能快速、方便地學(xué)習(xí)導(dǎo)彈與目標(biāo)雙方的最優(yōu)解。同時該方法通過在線的數(shù)據(jù)采樣實現(xiàn),不需要使用非線性系統(tǒng)的內(nèi)部動力學(xué)顯性知識。最后,文中給出的仿真實例說明了該方法的有效性。