張超然,呂余海
(海軍研究院,上海 200020)
機載武器攻擊區是飛行員判斷導彈發射時機的重要依據,準確的攻擊區是有效完成空戰任務的重要保證。目前,機載武器攻擊區計算主要包括理論計算法、插值算法和擬合算法等[1]。理論計算法利用武器模型,根據發射條件,通過解算微分方程組得到攻擊區[2-3],計算的攻擊區較為精確,但是計算量大,實時性不高。插值算法需要離線計算全面的攻擊區數據,建立攻擊區數據表,再根據當前狀態進行插值計算,需要龐大的存儲資源。擬合算法是利用離線樣本數據,擬合導彈發射參數與攻擊區間的映射關系,將擬合參數裝載到火控系統[4],火控系統根據實時的發射狀態計算攻擊區。
傳統擬合算法包括多項式擬合、三角函數擬合等,此類方法依賴于模型的準確性,而由于攻擊區的高度非線性,無法進行精確的擬合。基于神經網絡的擬合算法無需對函數進行建模,可以利用輸入輸出樣本,直接對神經網絡進行訓練,可有效提高攻擊區計算精度[5-6]。
神經網絡擬合算法的估計效果嚴重依賴于樣本的數量與質量,受到飛行試驗成本的限制,可利用的導彈真實飛行數據往往較少且不全面,攻擊區擬合算法一般需要大量飛行仿真數據作為訓練樣本。然而,由于仿真與導彈實際飛行的真實性存在差距,仿真得到的數據置信度往往低于實際飛行試驗數據[7],由于傳統神經網絡算法無法區分不同樣本,導致少量實際飛行數據對估計結果的影響很小,算法無法有效的利用這些數據的信息。
文中研究基于置信度神經網絡的機載武器攻擊區擬合方法,區分不同置信度的訓練樣本,既能有效利用仿真飛行數據的全面性,又能有效利用少量飛行樣本數據的真實性,擬合得到更為精確的機載武器攻擊區。
機載武器攻擊區主要由載機高度、發射速度、離軸角、目標高度、速度、以及目標過載等因素決定,攻擊區是這些因素的復雜非線性函數,可表示為:
Rmax=f(ha,va,θat,ht,vt,nt)
(1)
式中:Rmax為最大攻擊距離;ha為載機高度;va為載機速度;θat為導彈發射離軸角;ht為目標高度;vt為目標速度;nt為目標水平過載。
神經網絡擬合方法是將X=[ha,va,θat,ht,vt,nt]等導彈發射參數作為網絡輸入,將Y=[Rmax]等作為網絡輸出,利用大量樣本對網絡進行訓練,得到訓練后的網絡Y=net(X)。在機載火控系統計算時,根據不同的輸入參數,利用訓練后的網絡對攻擊區進行估計。神經網絡擬合算法流程如圖1所示。

圖1 神經網絡機載武器攻擊區擬合方法流程
步驟1,建立神經網絡模型。根據攻擊區計算的輸入輸出個數、非線性映射特點,建立神經網絡的結構。根據式(1)的攻擊區擬合問題,輸入層為6個節點,輸出層節點數根據需要得到的攻擊距離個數確定,可利用3層或4層神經網絡逼近該非線性映射。
步驟2,神經網絡初始化。神經網絡初始化包括各連接權值、閾值的初始化,以及彈道樣本的歸一化等處理。對彈道樣本歸一化的處理,可把高度、速度、角度等數據轉化為0~1的數,取消不同物理量之間的數量級差別,避免樣本因數量級差別過大造成網絡訓練失敗,歸一化可以使用最大最小法、平均數方差法等。
步驟3,利用樣本對神經網絡進行訓練。訓練主要包括隱藏層輸出計算、輸出層輸出計算、誤差計算、權值更新、閾值更新等。
隱藏層輸出的計算,根據樣本中的發射參數等輸入及連接權值、閾值,并采用激勵函數計算隱藏層輸出,為保證神經元的非線性,可選用S型傳遞函數作為激勵函數;輸出層的計算,根據隱藏層輸出、隱藏層-輸出層連接權值以及輸出層閾值,并采用激勵函數計算輸出。誤差的計算,利用樣本減去神經網絡輸出,獲得神經網絡的預測誤差。根據網絡預測誤差,利用學習算法更新網絡中各連接權值和節點閾值。
步驟4,判斷神經網絡是否訓練結束。根據預設的訓練次數或者期望達到的誤差門限判斷是否完成訓練。如果未完成訓練,則再進行網絡訓練,如果訓練結束則保存網絡參數。
步驟5,機載火控系統攻擊區計算。前4個步驟均是在地面離線完成,完成訓練后將網絡參數加載到機載火控系統中,機載火控系統根據當前時刻導彈發射參數,實時計算機載武器攻擊區。
機載武器的實際飛行數據個數遠少于仿真飛行數據個數,而且由于仿真條件與真實環境存在一定的差距,大多數情況下,仿真得到的樣本相對于真實情況都存在誤差,這導致了仿真飛行數據與實際飛行數據存在不同的置信度。如果將其簡單的組合,利用傳統神經網絡同時處理,實際飛行數據所起的作用很小,甚至在實際飛行數據偏離仿真飛行數據較大時,可能會導致真實數據被視為野點,或者導致網絡的過擬合。
因此,需要對具有不同置信度的數據進行區分處理,既能更好地擬合少量高置信度數據樣本,又能充分的利用低置信度樣本信息。
基于置信度神經網絡的機載武器攻擊區擬合方法主要分為兩步:第一步利用仿真飛行數據對網絡進行訓練,得到先驗網絡net1(X);第二步利用實際飛行樣本對標準神經網絡的輸出誤差修改,進行二次訓練,得到置信度神經網絡net2(X)。
如果兩次神經網絡都是經過良好訓練的,先驗神經網絡輸出可視為置信度神經網絡的輸出加入誤差:
net1(X)=net2(X)+ε(X)
(2)
由于仿真飛行樣本誤差來源的復雜性,噪聲既包含一部分確定成分又包含一定自相關性的不確定成分,因此噪聲一般包含常值偏置部分以及隨機偏差部分。
文獻[8]根據貝葉斯公式,建立并推導了net1(X)與net2(X)之間的誤差期望E(ε(X))范圍,根據εi=Yi-net1(Xi)的正負將E(ε(X))的范圍分為以下3種情況:
(3)
式中:‖‖表示取范數;ri為實際飛行樣本的影響范圍,超出該范圍后,誤差期望值受實際飛行樣本的影響將衰減到10%以下。
利用式(3)可以求出每一個仿真飛行樣本的誤差容量區間[edj,euj],容量區間的上、下限對應式(3)的最大、最小值。利用誤差容量區間對net2(X)的網絡預測誤差進行修正,再利用修正后的誤差對網絡的權值、閾值進行訓練,訓練學習算法會在net1(X)+ed和net1(X)+eu之間尋找到一個相對合適的綜合神經網絡模型,實現提高對實際飛行數據樣本擬合程度,以及充分利用仿真飛行數據信息的目的。具體實現流程如圖2所示。

圖2 置信度神經網絡攻擊區擬合方法流程
步驟1,建立標準神經網絡,利用仿真飛行數據樣本(Xj,Yj)對神經網絡進行訓練,獲得神經網絡Y=net1(X)。
步驟2,計算每一個實際飛行數據樣本(Xi,Yi)與該神經網絡輸出之間的誤差εi=Yi-nets(Xi),根據實際飛行數據的影響范圍ri求出每個仿真飛行數據樣本的容量區間[edj,euj],容量區間的上下限對應式(3)的最大最小值。
步驟3,利用實際飛行數據樣本、仿真飛行數據樣本進行第二次神經網絡訓練,將仿真飛行數據樣本的神經網絡預測誤差修改為:
(4)

步驟4,根據發射參數輸入,利用net2(X)網絡進行機載武器攻擊區計算。
選取某型空空導彈的理論攻擊區進行仿真分析,在理論攻擊區上疊加隨機噪聲、常值偏差作為仿真飛行數據樣本,選取部分理論攻擊區數據作為實際飛行數據樣本,分別對傳統神經網絡以及置信度神經網絡進行訓練,對比傳統神經網絡和置信度神經網絡的攻擊區擬合效果。神經網絡的結構為6-7-1,即輸入層6個節點,隱藏層7個節點,輸出層1個節點,隱藏層激勵函數為sigmoid函數,輸出層的激勵函數為purelin函數,并采用Levenberg-Maquardt方法進行訓練。
圖3為攻擊區擬合結果,圖3(a)為在隨機噪聲情況下的估計結果;圖3(b)為隨機噪聲加負常值偏差情況下的估計結果;圖3(c)為隨機噪聲加正常值偏差情況下的結果。仿真飛行數據樣本遠多于實際飛行數據樣本,實際飛機數據樣本只有4個,從結果中可以看出,置信度神經網絡能夠得到更好的擬合實際飛行數據樣本,估計的攻擊區與理論攻擊區之間的誤差更小。在存在負常值偏差的情況下,傳統神經網絡算法擬合的攻擊區明顯偏小,導致失機發射概率過大。在存在正常值偏差的情況下,傳統神經網絡擬合的攻擊區明顯偏大,導致界外發射概率過大,這兩種情況會導致飛行員對武器攻擊邊界誤判,而置信度神經網絡可以有效的利用實際飛行數據樣本將擬合的攻擊區進行修正。
對兩種算法的失機發射概率Pml、界外發射概率Pab和成功發射概率Pst進行統計,結果如表1所示。從表1中可以看出在各種噪聲情況下,置信度神經網絡算法能夠有效抑制仿真飛行數據樣本的常值偏差和隨機噪聲影響,能夠有效減小攻擊區估計誤差,提高武器發射成功概率。

表1 兩種擬合方法的結算精度比較
提出了一種基于置信度神經網絡的機載武器攻擊區擬合算法,算法可將實際飛行數據有效的應用于攻擊區的校核,有效提高機載攻擊區計算的準確性,是將少量的實際飛行數據應用于攻擊區估計的有效手段。在作戰實驗、演習中應注重實際飛行數據的采集,并可利用該算法對現有攻擊區進行修正,進一步提高估計的準確性。