王新, 楊任農, 左家亮, 徐西蒙, 岳龍飛
(空軍工程大學 空管領航學院, 陜西 西安 710051)
軌跡預測是根據目標以往的運動軌跡,學習和推斷其運動規律,進而對未來的運動做出判斷的過程[1]。在航空作戰領域中,對機動目標進行航跡預測有著十分重要的意義。一方面對自身的未來軌跡做出正確判斷,可以事先采取相應的措施,規避障礙,保證自身及友機的飛行安全,提升運行效率[2];另一方面,在日益復雜的空戰環境中,對敵機未來時刻的位置進行快速、準確地預測,能夠使我機提前占領優勢地位,提高獲勝機率[3]。
近幾年對運動目標的軌跡預測主要有兩大類方法。一種是基于卡爾曼濾波算法、α/β濾波算法以及線性回歸模型和質點運動模型的傳統方法。例如文獻[4]提出了利用基本飛行模型對航跡進行預測的方法;文獻[5]結合目標加速度和軌跡偏轉角的預測模型以及歷史軌跡,對移動目標進行了軌跡預測;文獻[6]基于卡爾曼濾波的動態軌跡預測算法,實現了對軌跡位置的連續預測;文獻[7]針對民航飛機的軌跡預測問題,提出了基于改進的自適應粒子濾波算法。文獻[8]針對單一模型估計和多模型估計的不足,提出交互式多模型算法,在一定程度上解決了單一模型預測精度差,多模型算法復雜度高的問題。上述方法針對運動過程相對簡單的目標有較高的軌跡預測精度,但是航空器的運動是復雜多變的非線性時序過程,受到多種因素的綜合影響。傳統的預測模型不僅難以描述其全部信息,而且模型復雜度高,對目標運動多樣性和不確定性的適應度較差,提高軌跡預測的精度相對較難[9]。
另一種是以各類神經網絡為主的機器學習方法。例如文獻[10]利用目標群航跡對BP神經網絡進行訓練,建立航跡預測模型,實現對飛行軌跡的提前預測。但BP神經網絡對初始值的依賴程度較高且不具備全局搜索能力[11]。針對這類問題,文獻[2]和文獻[12]分別利用具有全局搜索能力的遺傳算法和粒子群算法優化神經網絡權值提高預測精度。此外,軌跡預測的本質是動態數據的時間序列預測,具有高度的非線性和時變性[13]。而傳統的BP神經網絡為前饋靜態神經網絡,只能實現靜態非線性映射關系[9],往往導致軌跡預測精度相對較低。為解決傳統神經網絡動態性能不足的問題,文獻[14]針對飛行性能模型預測中的航跡預測,提出了基于NARX神經網絡的預測方法;文獻[15]利用進食粒子群算法,優化具有局部動態遞歸能力的Elman神經網絡的權值,進而實現對飛行軌跡的預測。這類方法無需建立運動模型,預測耗時較短,具有較高的實時性,但是神經網絡在訓練過程中容易陷入局部最優,且訓練數據較少,預測結果說服力不強。綜上,尋找一種能對目標機軌跡進行快速準確預測的方法是急需解決的問題。
Elman神經網絡是一種具有多層動態遞歸結構的循環神經網絡,其結構特點和BPTT[16](backpropagation through time)網絡訓練算法使其對歷史數據具有高度敏感性和動態記憶能力,更適合處理時間序列問題[17]。本文將時間收益因子引入到Elman網絡的目標函數中,提出了一種改進的Elman神經模型——TPFENN(time profit elman neural network)。為了進一步提高模型的訓練速度和預測精度,本文利用雜交粒子群算法對TPFENN網絡的初始權值和閾值進行優化,構建了HPSO-TPFENN模型。創新預測方法,將三維坐標進行獨立的預測,并利用空戰訓練測量儀(air combat maneuvering instrument,ACMI)中記錄的實測空戰軌跡數據構造包括目標航向角和俯仰角在內的數據樣本,保證了數據的真實性與可靠性。通過訓練HPSO-TPFENN,使模型對戰斗機在一定空戰態勢下的運動規律進行學習,進而對目標機的空戰軌跡進行預測。仿真結果表明該模型方法可以對目標機的軌跡進行準確、快速地預測,為解決軌跡預測問題提供了新途徑。
粒子群算法(particle swarm optimization,PSO)是由Eberhart等基于鳥群覓食行為提出的群智能優化算法[18]。由于其算法簡單且具有良好的全局搜索能力,在神經網絡初始化領域得到了廣泛應用。但已有研究表明,原始粒子群算法在搜索初期,種群會過早向當前最優粒子聚集,使算法陷入局部最優。基于以上特點,本文借鑒遺傳算法[19](genetic algorithm,GA)中的雜交概念,在迭代過程中,根據雜交率隨機抽取一定數目的粒子放入雜交池中,使其兩兩雜交,進而產生相同數量的子代粒子。通過上述方式可以增加粒子多樣性,優化算法收斂性并避免其陷入局部最優[20]。
子代位置通過父代位置進行交叉得到
nx=i*mx(1)+(1-i)*mx(2)
(1)
式中,nx為子代粒子的位置;i為0到1之間的隨機數,mx為父代粒子的位置。
子代速度根據父代速度間的向量關系,由(2)式求得
(2)
式中,mv為父代粒子速度,nv為子代粒子速度。其速度關系如圖1所示。
基于雜交的混合粒子群流程如圖2所示。

圖2 HPSO算法流程
算法的具體流程描述如下:
Step1 初始化粒子群,包括粒子群體規模N、各個粒子的位置xi和速度vi。
Step2 計算評價每個粒子的適應度
Step3 對于每個粒子,用它的適應度值Fit(i)和個體極值pbest(i)比較,如果Fit(i)?pbest(i),則用Fit(i)代替pbest(i)。
Step 4 對于每個粒子,用它的適應度值Fit(i)和全局極值gbest(i)比較,如果Fit(i)?gbest(i),則用Fit(i)代替gbest(i)
Step 5 更新粒子位移和速度
(3)
式中,c1,c2為學習因子,也稱加速常數;r1,r2為[0,1]范圍內的均勻隨機數,j=1,2,…,d。
Step 6 根據雜交概率選取指定數量的粒子放入雜交池中,池中的粒子隨機兩兩雜交產生相同數目的子代粒子,子代位置和速度為
(4)
Step 7 當算法達到停止條件時,停止搜索并輸出結果,否則返回到第(2)步,繼續搜索。
Elman神經網絡是在Hopfield網絡[21]基礎之上發展而來的模型,具有內部反饋結構,能夠更好地處理時間序列問題。該網絡一般由輸入層、隱含層、輸出層及承接層組成,網絡模型如圖3所示。

圖3 Elman神經網絡模型
其中承接層又稱上下文節點層,它的激活函數一般為恒等函數,用于存儲記憶隱含層單元上一時刻的輸出,可以當作一步延時算子。
假設在時刻t,網絡輸入為U(t),隱含層輸出為X(t),網絡輸出為y(t),w1~w3分別為輸入層與隱含層、承接層與隱含層、隱含層與輸出層之間的連接權值,a和b分別代表隱含層與輸出層的偏置。則Elman神經網絡的計算過程可以表示為:
X(t)=f(w1U(t)+a),t=0
X(t)=f(w1(U(t))+w2X(t-1)+a),t>0
y(t)=g(w3X(t)+b)
(5)
Elman采用BPTT算法進行學習和訓練,其目標函數為
(6)
式中,yd(t)為期望輸出。
當網絡的輸入為時間序列數據時,數據距離當前預測時刻越近,它對預測值的影響就越大。Refenes在打折最小二乘法(discounted least square function)中介紹了時間收益因素fTP(t)[22]。時間收益因素可以增強較近時刻樣本數據對預測結果的作用,而減小較遠時刻數據的影響。由于Elman神經網絡的輸入為具有時間序列的歷史數據,本文考慮在神經網絡的目標函數中引入時間收益因素fTP(t),提出基于時間收益因素的TPFENN模型。時間收益因素和改進后的目標函數由下式表示
(7)

(8)
式中,a為打折率,k為樣本數量,t為迭代次數。
根據BPTT算法分別令ETP(t)對各權值的偏導為0,可得各類權值的修正量如下所示:
(9)
式中,η1,η2,η3為w1,w2,w3的學習步長,i=1,2,…,m;j=1,2,…n;q=1,2,…,r;l=1,2,…n。
TPFENN神經網絡的訓練方式與傳統神經網絡一致,都是基于權值和閾值的修正過程,它們的訓練結果對網絡初始化的依賴度很強。如果網絡初始化不當,就容易造成收斂速度慢、訓練時間長,或陷入局部最優,無法滿足精度要求[23]。
基于此,本文引入HPSO對TPFENN網絡的初始權值、閾值進行優化,提高其訓練速度和學習能力。HPSO-TPFENN算法流程如圖4所示。

圖4 HPSO-TPFENN算法流程
在一段時間內,戰斗機的運動狀態具有一定的連續性,其運動軌跡不會發生跳變,這就說明其在某一時刻的位置與過去時刻的位置具有一定的相關性。在目標機軌跡上按照一定的時間間隔選取n個位置點,而tn+1時刻目標機的位置未知。根據軌跡連續性的性質,就可以利用前n個時刻的位置,對tn+1時刻的位置進行預測。
根據上述原因,本文將軌跡預測問題轉化為時間序列的預測問題,利用HPSO-TPFENN網絡挖掘軌跡數據的內部相關性,解決軌跡預測問題。
在慣性坐標系中,飛機位置用x,y,z三維坐標表示。傳統的預測方法是將三維坐標視為整體作為神經網絡的輸入和輸出,而本文考慮到x,y坐標的變化與航向角直接相關,而俯仰角影響z坐標的變化,因此對目標機軌跡預測時,對x,y,z坐標分別進行獨立預測,其中對x,y坐標進行預測時,結合航向角的數據;對z坐標進行預測時,結合俯仰角的變化。在下文中,將傳統預測方法稱為整體法,將本文所提方法稱為獨立法。
本文利用從ACMI中截取的時間連續的1 500組飛行數據,數據記錄的時間間隔為0.25 s,每個數據包包含該時刻目標機的x,y,z三維坐標及其航向角和俯仰角數據。該段數據記錄的飛行軌跡如圖5所示。

圖5 目標機飛行軌跡
以對x坐標進行預測為例,假設利用前n個時刻的軌跡數據,預測tn+1時刻x坐標。其函數映射關系為
Xn+1=f(L1,L2,…,Ln)
(10)
式中,Li=(xi,αi)T,i∈[1,n+1]為目標機在ti時刻的x坐標和航向角,Xn+1為飛機在tn+1時刻的x坐標值。
選取L1-Ln為第一組輸入數據,輸出數據為xn+1;以L2-Ln+1為第二組輸入數據,輸出數據為xn+2。依次類推,形成如下式所示的訓練樣本輸入數據和訓練樣本輸出數據。測試數據的構建方法與訓練樣本數據一致。
(11)

(12)
樣本數據構建完成之后,為防止各數據取值范圍較大對預測誤差帶來的不利影響,對所有數據進行歸一化處理。
樣本數據構建完成之后,確定TPFENN網絡的結構,并利用雜交粒子群算法優化網絡的初始值,進而利用樣本數據訓練神經網絡,進行目標機三維軌跡的預測。模型流程如圖6所示。

圖6 軌跡預測模型流程圖
為對比3.2節中提到的整體預測方法與本文所提獨立法的預測效果,同時為驗證HPSO-TPFENN模型的優勢,本文將針對上述2種預測方法分別采用BP、Elman、TPFENN和HPSO-TPFENN 4種神經網絡模型進行軌跡預測。
以往利用神經網絡算法進行軌跡預測的大部分研究,一般均輸入過去5個時刻的位置信息,輸出預測后的下一時刻坐標位置[2,24]。本文主要驗證算法的可行性,故也將采用上述的神經網絡輸入輸出方式。
采用將三維坐標分別進行獨立預測方法時,以對x坐標進行預測為例,每組輸入樣本數據為10×1的列向量,每組輸出樣本數據為1×1的列向量。此時神經網絡的輸入節點數為10,輸出節點數為1。
采用將三維坐標視為整體作為網絡輸入和輸出的傳統預測方法時,每組輸入樣本數據為15×1的列向量,每組輸出樣本數據為3×1的列向量。此時神經網絡的輸入節點數為15,輸出節點數為3。
由3.2節可知,原始飛行數據為15 00組時序數據。輸入樣本數據和輸出樣本數據均為1 495組,其中訓練樣本為前900組,測試樣本數據為后595組。圖5中虛線為訓練樣本軌跡,實線為測試樣本軌跡。
其中圖7為測試樣本的詳細軌跡。

圖7 測試樣本軌跡

根據神經網絡結構,利用本文提出的預測方法進行軌跡預測時,Elman神經網絡及TPFENN網絡的輸入層至隱含層權值為10×25的矩陣,隱含層至輸出層權值為1×25的矩陣,承接層至隱含層權值為25×25的矩陣,加上隱含層和輸出層的閾值個數,則雜交粒子群中每個粒子維度為926。粒子群其余參數分別為:粒子個數10,學習因子1.2和1,慣性權重0.8,雜交概率0.7,雜交池的大小比例0.2,最大迭代次數20次。此外,時間收益函數打折率設為0.1。以此類推,采用整體法進行預測時,每個粒子維度為1 103,其余參數不變。
仿真實驗運行環境為:Intel(R) Core(TM) i5-3470 3.2 GHz處理器,4 GB內存,Win7 32位操作系統,運行平臺為MATLAB2014a。為了使實驗更具說服力,仿真結果為20次運行的平均值。
確定實驗參數后,按照圖6所示流程進行仿真實驗。利用900組訓練樣本分別根據2種預測方法對HPSO-TPFENN、TPFENN、Elman和BP進行訓練,而后對595組測試樣本進行預測。實驗結果如圖8~10所示。圖8為2種預測方法分別結合4種網絡在x,y,z坐標上的預測結果;圖9為預測結果的相對誤差;圖10為采用獨立預測方法時,4種算法的三維預測結果。

圖8 各坐標預測結果

圖9 各坐標預測結果相對誤差

圖10 測試樣本預測結果
由仿真結果可以看出,利用4種神經網絡模型進行軌跡預測時,將三維坐標獨立進行預測的相對誤差比將它們視為整體進行預測的相對誤差小,驗證了本文所提獨立預測方法的可行性;HPSO-TPFENN取得了最好的預測效果,預測相對誤差普遍不超過1%;Elman網絡取得了較好的預測效果,但其誤差明顯高于HPSO-TPFENN,說明利用雜交粒子群進行參數尋優并加入時間收益因子可以提高網絡的預測精度;而BP網絡的預測誤差相對較大,說明傳統的前饋神經網絡不適合處理時間序列的預測問題。
為分析2種預測方法結合4種算法進行軌跡預測的實時性,本文比較了8種預測模型對900組樣本數據的訓練效率和對595組測試數據的預測時間,實驗結果如圖11和表1所示。圖11為模型訓練過程中的誤差收斂曲線;表1為模型訓練后,對測試樣本的預測時間。
由圖11可以看出,采用某一固定預測方法時,HPSO-TPFENN的迭代次數比TPFENN和Elman的迭代次數少;采用獨立預測方法后,4種模型的迭代次數都明顯下降。這說明獨立的預測方法、時間收益因子的引入和HPSO的優化都有利于提高模型的訓練效率。

圖11 訓練誤差收斂曲線

表1 預測時間對比 s
由表1可以看出,采用某一固定預測方法時,BP、Elman、TPFENN和HPSO-TPFENN的預測時間逐漸減小;采用獨立預測方法后,四種神經網絡的預測時間都進一步減少。實驗結果表明,將三維坐標結合航向角、俯仰角數據,運用HPSO-TPFENN進行595次獨立預測耗時最少,大約需要42 ms左右,說明模型具有良好的預測效率。
1) 與傳統的BP、Elman以及TPFENN神經網絡相比,本文提出的HPSO-TPFENN方法在進行軌跡預測時,可以獲得更快的收斂速度,更小的預測時間和更高的預測精度。
2) 將三維坐標分別結合航向角或俯仰角數據進行獨立預測的軌跡預測方法,與傳統將三維坐標視為整體進行預測的方法相比,該方法取得了更快的收斂速度和更高的預測精度。
3) 利用ACMI記錄的實際空戰數據構建神經網絡數據樣本,解決了以往樣本數據量較小,且不真實的問題。
4) 本文提出的預測方法和預測模型具有良好的準確性。在實際運用時,可以采用滑動訓練、在線使用的方式,在一定的時間間隔內使用一個訓練好的模型,之后再利用更新訓練后的新模型進行實時預測。這樣既可以節約訓練成本又解決了完全離線訓練的缺點。