李戰(zhàn)武,彭明毓,高春慶,楊愛武,徐安,方誠喆
(1.空軍工程大學(xué) 航空工程學(xué)院,西安 710038;2.空軍工程大學(xué) 研究生院,西安 710038;3.中國人民解放軍 94582 部隊,信陽 464194)
近年來,隨著空戰(zhàn)進(jìn)程的加快,空戰(zhàn)目標(biāo)的狀態(tài)預(yù)測需求隨之愈加迫切,因而信息化戰(zhàn)場下,如何通過海量數(shù)據(jù)進(jìn)行分析已成為一個熱點問題。在空戰(zhàn)對抗過程中,飛行員可通過海量的目標(biāo)狀態(tài)數(shù)據(jù)進(jìn)行挖掘分析,挖掘出目標(biāo)狀態(tài)信息中利于作戰(zhàn)決策的價值信息,從而及時、有效地獲取目標(biāo)潛在的作戰(zhàn)規(guī)律,客觀地分析、總結(jié)敵方的作戰(zhàn)方式及特點,進(jìn)而實現(xiàn)對戰(zhàn)場態(tài)勢的實時感知與獲得優(yōu)勢占位[1]。因此,通過空戰(zhàn)目標(biāo)狀態(tài)數(shù)據(jù)進(jìn)行目標(biāo)機動預(yù)測,對飛行員作戰(zhàn)決策及獲取先敵優(yōu)勢具有重要意義。
目前,目標(biāo)機動軌跡預(yù)測主要有2 類途徑。其中,一類的主要思想是利用卡爾曼濾波算法的傳統(tǒng)預(yù)測思想進(jìn)行軌跡預(yù)測。該方法具備優(yōu)異的估計能力,對于運動狀態(tài)變化大且隨機性高、運動方式多樣的目標(biāo)軌跡有較強的適用性,因而能夠?qū)崿F(xiàn)目標(biāo)實時的狀態(tài)估計與預(yù)測,并適用于有限維度的線性和非線性目標(biāo)時空運動軌跡。例如,姜佰辰等[2]針對目標(biāo)運動模式變化多及機動幅度較大的情況,提出了一種基于多項式卡爾曼濾波的運動軌跡預(yù)測算法;趙帥兵等[3]針對歷史位置信息存在缺失的情況,提出了一種具有系統(tǒng)噪聲估計的改進(jìn)卡爾曼濾波算法,對目標(biāo)機動軌跡進(jìn)行預(yù)測;喬少杰等[4]針對傳統(tǒng)軌跡預(yù)測算法精度和實時性不足,提出了一種基于卡爾曼濾波的動態(tài)軌跡預(yù)測算法;翟岱亮等[5]針對高階目標(biāo)運動模型存在的高度非線性、數(shù)據(jù)處理難度大及預(yù)測精度低等問題,提出了一種改進(jìn)的交互多模型軌跡預(yù)測算法。上述預(yù)測算法都只適用于目標(biāo)運動特性相對簡單的軌跡預(yù)測問題,但是在空戰(zhàn)過程中,目標(biāo)的運動往往是高度復(fù)雜的時序過程,傳統(tǒng)的軌跡預(yù)測算法不能準(zhǔn)確地學(xué)習(xí)目標(biāo)的機動特性,同時也存在建模復(fù)雜度高和算法適應(yīng)性差的問題,并且算法的預(yù)測精度難以滿足空戰(zhàn)對抗需求。
另一類方法主要以智能算法為核心,結(jié)合大數(shù)據(jù)建立目標(biāo)機動軌跡預(yù)測模型。例如,楊彬和賀正洪[6]針對廣義回歸神經(jīng)網(wǎng)絡(luò)(generalized regression neural network, GRNN)模型對非線性數(shù)據(jù)有較好的預(yù)測性能,且容錯性及魯棒性較好,將該預(yù)測模型運用于高超聲速飛行器的軌跡預(yù)測當(dāng)中;針對BP 神經(jīng)網(wǎng)絡(luò)存在對初值敏感且全局搜索能力較差的問題,譚偉[7]和甘旭升[8]等分別利用遺傳算法(genetic algorithm, GA)、粒子群算法對預(yù)測模型參數(shù)進(jìn)行尋優(yōu)此外,目標(biāo)機動軌跡預(yù)測的本質(zhì)是對時間序列數(shù)據(jù)進(jìn)行預(yù)測,因而具有高度非線性和時變性的特點[9]。理論和實踐表明,Volterra泛函級數(shù)模型對于非線性系統(tǒng)可以很好的表征,同時對時間序列可以進(jìn)行精確預(yù)測。然而,高階Volterra泛函級數(shù)模型核函數(shù)的求解是其應(yīng)用瓶頸。目前,V olterra泛函級數(shù)參數(shù)辨識方法有傳統(tǒng)的最小二乘法[10-13]及智能啟發(fā)式優(yōu)化算法[14-18]。但是,最小二乘法在辨識參數(shù)時必須滿足目標(biāo)函數(shù)是連續(xù)可導(dǎo)的條件,同時搜索時利用梯度信息而容易陷入局部極值。因此,可以采用智能算法克服傳統(tǒng)辨識算法的缺點,但傳統(tǒng)的智能算法在結(jié)構(gòu)和優(yōu)化的實時性方面仍存在很多的不足。
蝙蝠算法(bat algorithm, BA)是受蝙蝠回聲定位行為啟發(fā)而提出的一種新型搜索優(yōu)化算法[19],其模型較為簡單,且算法參數(shù)少、普適性強。因此,本文將蝙蝠算法引入到Volterra 泛函級數(shù)模型的優(yōu)化中,同時為解決基本蝙蝠算法中存在的易陷入局部最優(yōu)和求解精度低的問題[20-21],運用變異機制和自適應(yīng)步長控制機制改進(jìn)蝙蝠算法,并將其用于優(yōu)化Volterra 泛函級數(shù)模型,構(gòu)建一種基于改進(jìn)蝙蝠算法優(yōu)化的Volterra 泛函級數(shù)目標(biāo)機動軌跡預(yù)測模型。通過仿真實驗證明,該模型的預(yù)測性能優(yōu)于基于基本蝙蝠算法、粒子群算法、蟻群(ant colony optimization, ACO)算法優(yōu)化的Volterra 泛函級數(shù)模型和反向傳播神經(jīng)網(wǎng)絡(luò)(back- propagation neural network, BPNN)預(yù)測模型,同時也驗證了該預(yù)測方法的有效性。


式中:ai為 基于 Volterra泛函級數(shù)核函數(shù)的對稱性引入的權(quán)系數(shù),并且滿足如下關(guān)系:

當(dāng)模型取合適的記憶長度時,在誤差允許的范圍內(nèi),e (k)可忽略不計。
蝙蝠算法是Yang[19]在2010 年提出的模擬蝙蝠覓食特征的啟發(fā)式群智能隨機搜索算法。該算法通過模擬蝙蝠在覓食過程中向外發(fā)出的一些超聲波,根據(jù)其特征(包括脈沖頻率 f、響度 A及發(fā)射率R等)的變化而建立的尋優(yōu)模型。在算法尋優(yōu)迭代的過程中,可將蝙蝠個體 i的參數(shù)變化描述為
式中:d 為算法此刻正進(jìn)行的迭代次數(shù);β ∈[0,1]為隨機數(shù),且服從均勻分布;v 為速度;x*為算法此時最優(yōu)的全局解。
在算法的全局最優(yōu)解附近,應(yīng)對其進(jìn)行局部搜索,采取如下策略:
式中:ε為 [-1,1]之 間的隨機數(shù);Ad為當(dāng)前蝙蝠種群的響度平均值。
算法的脈沖響度 A和脈沖發(fā)射率 R按照如下策略進(jìn)行更新:
式中:α為蝙蝠響度的衰減系數(shù);γ為脈沖頻率的增加系數(shù)。其中,α 和 γ都是常量,同時通過選取合適的 α 和 γ可以有效平衡算法全局搜索及局部搜索的能力。隨著算法深入,可以得到
蝙蝠群體在接近覓食目標(biāo)時,為不被發(fā)現(xiàn)且能夠?qū)崟r監(jiān)察目標(biāo)的運動狀態(tài),采取提高超聲波發(fā)射率 R,同時減小脈沖響度 A的策略。因此,基于上述分析可以看出,該算法的尋優(yōu)能力與脈沖響度 A及脈沖發(fā)射率 R的動態(tài)變化息息相關(guān)。尋優(yōu)初期,局部極值可能出現(xiàn)多個,此時的脈沖響度 A較大,因而在解空間內(nèi)應(yīng)采取更多的全局搜索策略。此時,可將脈沖響度與算法的全局搜索能力相結(jié)合,以使算法實現(xiàn)全局搜索能力的自適應(yīng)調(diào)整。尋優(yōu)后期,算法初步進(jìn)入極值區(qū)域,發(fā)射率 R較高,因而應(yīng)采取更多的局部搜索策略。此時,可將發(fā)射率 R與算法的局部尋優(yōu)能力相結(jié)合,以使算法實現(xiàn)更優(yōu)的局部尋優(yōu)能力。基于上述分析,基于自適應(yīng)蝙蝠算法(selfadaptive bat algorithm, SABA)利用自適應(yīng)步長控制機制和變異機制[20]改進(jìn)傳統(tǒng)的蝙蝠算法。
2.2.1 自適應(yīng)步長控制機制
對于蝙蝠個體i 的速度更新方式,可借鑒粒子群算法[24]中的速度更新規(guī)則方式。在原有的更新機制中,對速度更新加入了慣性權(quán)重因子,即
式中:ω為慣性權(quán)重因子,其可以影響蝙蝠算法的全局搜索及局部搜索的能力,改進(jìn)算法參照粒子群算法中的調(diào)整策略,采取線性遞減的慣性權(quán)重方法,算法前期 ω的數(shù)值較大,可以使算法具備較強的全局搜索能力,算法后期 ω的數(shù)值應(yīng)選取較小值,使算法在最優(yōu)解附近具備較強的局部尋優(yōu)能力,同時加快收斂;h*為 蝙蝠個體的歷史最優(yōu)解;x*為當(dāng)前蝙蝠種群的最優(yōu)解;f1和 f2為 脈沖頻率;r1和 r2為取值在(0,1)之間的均勻分布的隨機數(shù)。
通過對改進(jìn)后的蝙蝠個體速度更新公式分析可以看出,不僅慣性權(quán)重對蝙蝠速度更新有影響,同時脈沖頻率 f1和 f2也對蝙蝠速度更新有影響。算法初期,選取較大的脈沖頻率 f1可以增加群體的多樣性,改善全局尋優(yōu)能力;在算法后期的局部尋優(yōu)中,選取較小的脈沖頻率 f2能夠提高算法的局部尋優(yōu)能力,同時加快收斂。因此,本文提出一種自適應(yīng)改變脈沖頻率的機制,以提高脈沖頻率 f1和 f2隨算法進(jìn)程的自適應(yīng)學(xué)習(xí)能力,其更新公式如下:
式中:Favg為蝙蝠種群的所有個體適應(yīng)度的平均值;Fbest為當(dāng)前迭代次數(shù)下蝙蝠種群中的最優(yōu)個體;脈沖頻率 f1在 不同的迭代次數(shù) d中,由不同的適應(yīng)度平均值 Favg決 定,其2 種影響因素權(quán)重分別為 γ 和 α;fmin為脈沖頻率最小控制量。
針對算法在局部尋優(yōu)后期階段過程中的搜索策略,改進(jìn)的蝙蝠算法將當(dāng)前迭代次數(shù) d融入至主要尋優(yōu)參數(shù)脈沖發(fā)射率 R與脈沖響度當(dāng)中。其結(jié)合步驟如下:
1)選取一個隨機參數(shù) β ∈[0,1]。當(dāng) β小于蝙蝠脈沖發(fā)射率 R時,算法將進(jìn)入局部尋優(yōu)階段。隨著算法進(jìn)程的不斷深入,迭代次數(shù)增加,蝙蝠脈沖頻率也將增加,從而在算法后期階段,局部搜索最優(yōu)解的概率也會增大。

引入分段函數(shù) g(d′)是為了在算法初期具有較大的搜索步長,從而擴大算法的搜索區(qū)域;進(jìn)入算法局部尋優(yōu)階段時,調(diào)整較小的搜索步長,有利于提升尋優(yōu)精度。
2.2.2 變異機制
2.2.1 節(jié)引入的自適應(yīng)步長控制機制僅僅能夠有效改善算法的全局搜索能力,但不能保證算法一定能夠搜索到全局最優(yōu)解,并且在算法后期,隨著脈沖頻率 f1的減小,導(dǎo)致算法的全局搜索能力下降,因此算法仍可能陷入局部極值解當(dāng)中。主要原因是:在基本的蝙蝠算法中,算法后期的個體響度減少為0,發(fā)射率增大為1,使得蝙蝠個體無法采取變異操作。因此,對響度 A及 發(fā)射率 R進(jìn)行相關(guān)限定約束,使算法后期也可變異操作而不易陷入局部最優(yōu)。脈沖響度 A和 發(fā)射率 R的更新規(guī)則為
式中:fmax為最大脈沖頻率限制。其中,脈沖頻率f1和 f2由當(dāng)前迭代次數(shù)及種群適應(yīng)度平均共同決定,因此隨著算法深入,脈沖響度及發(fā)射率產(chǎn)生相應(yīng)的自適應(yīng)變化。
結(jié)合上述對蝙蝠覓食過程特點的分析,為實現(xiàn)變異操作,本文提出一種結(jié)合脈沖響度的變異機制。其變異操作過程如下:對于隨機數(shù) β1∈[0,1],如果滿足 β1<A條件,同時算法中的蝙蝠個體未進(jìn)入局部搜索階段,則繼續(xù)生成一個隨機數(shù) β2∈[0,1];如果隨機數(shù) β2滿 足條件 β2≥ρ ∈[0,1](ρ為閾值),則對該蝙蝠個體進(jìn)行隨機重置。
上述自適應(yīng)步長控制機制及變異機制是在全面分析了解蝙蝠覓食行為特征的基礎(chǔ)上,充分結(jié)合蝙蝠覓食時發(fā)出的超聲波特征參數(shù),以避免算法過早在尋優(yōu)過程中尋到局部最優(yōu)值,同時也提升了后期的最優(yōu)解求解精度。SABA 算法的具體流程如下[20-21]:

步驟 2 對第 i只蝙蝠個體的位置 xi、速度 vi、發(fā)射率 Ri及 響度 Ai分別進(jìn)行初始化,同時根據(jù)目標(biāo)函數(shù)求解第i只蝙蝠個體的適應(yīng)度值。
步驟 3 根據(jù)式(20)和式(21)更新蝙蝠的脈沖頻率 f,根據(jù)式(26)和式(27)更新蝙蝠的脈沖響度A及 發(fā)射率 R。
步驟 4 根據(jù)式(19)對蝙蝠個體的速度進(jìn)行更新,根據(jù)式(14)對蝙蝠個體的位置進(jìn)行更新,依據(jù)定義的適應(yīng)度函數(shù)計算蝙蝠個體適應(yīng)度。
步驟 5 判斷蝙蝠個體是否符合進(jìn)行局部搜索操作的條件。如果符合,則根據(jù)式(22)~式(25)轉(zhuǎn)入局部搜索操作,計算蝙蝠個體的適應(yīng)度,并轉(zhuǎn)到步驟7。
步驟 6 判斷蝙蝠個體是否符合變異的條件。如果符合,則對蝙蝠個體采取變異操作,并得到每個蝙蝠個體的適應(yīng)度值。
步驟 7 判斷算法是否達(dá)到結(jié)束條件。如果未達(dá)到,轉(zhuǎn)至步驟3。
Volterra 泛函級數(shù)模型是非線性動力學(xué)系統(tǒng)中最基本的模型,具有線性和非線性的特性,同時綜合線性濾波器、非線性濾波器及預(yù)測的功能,因而具備滿足系統(tǒng)實時性要求的能力[22-23]。利用截斷之后的Volterra 泛函級數(shù)模型對目標(biāo)機動軌跡進(jìn)行預(yù)測的關(guān)鍵在于確定核參數(shù),其辨識精度直接影響目標(biāo)機動軌跡預(yù)測的精度。對Volterra 泛函級數(shù)核參數(shù)進(jìn)行辨識實質(zhì)上是一個多維度參數(shù)優(yōu)化問題,可通過改進(jìn)后的SABA 算法優(yōu)化Volterra 泛函級數(shù)模型的核參數(shù)。
將Volterra 泛函級數(shù)核參數(shù)作為待優(yōu)化變量,且將模型輸入的軌跡時序數(shù)據(jù)與核參數(shù)向量之間得到乘積值。其中,SABA 算法的適應(yīng)度函數(shù)為其乘積值與真實輸出值向量的均方差。SABA 算法通過不斷迭代進(jìn)行尋優(yōu)的方式,使得預(yù)測模型輸出不斷逼近真實值,從而得到核參數(shù)。采用SABA 算法優(yōu)化Volterra 泛函級數(shù),待優(yōu)化的核參數(shù)向量可以表示為
將核參數(shù)向量作為SABA 算法的個體位置,算法搜索空間維度為
式中:F(*) 為 計算預(yù)測輸出 y?和 理想輸出 ye的均方誤差(MSE);H?d為算法第 d次迭代所優(yōu)化的核參數(shù)向量值。
基于SABA 算法優(yōu)化的 Volterra 泛函級數(shù)目標(biāo)機動軌跡預(yù)測流程如圖1 所示。

圖1 基于SABA 算法優(yōu)化的Volterra 泛函級數(shù)目標(biāo)機動軌跡預(yù)測流程Fig.1 Flow chart of target maneuver trajectory prediction based on Volterra functional series optimized by SABA algorithm
仿真通過基于4 種智能算法優(yōu)化的 Volterra泛函級數(shù)模型進(jìn)行目標(biāo)機動軌跡的預(yù)測,并進(jìn)行對比分析。同時,為了更好地發(fā)揮預(yù)測模型的性能,對目標(biāo)歷史機動軌跡數(shù)據(jù)進(jìn)行了歸一化和反歸一化處理[25]。假設(shè)目標(biāo)歷史機動軌跡的原始數(shù)據(jù)為X=(x1,x2,···,xN),X ∈RN,進(jìn)行歸一化的方法如下:
式中:N為目標(biāo)歷史機動軌跡時間序列的長度;x(t)為 待歸一化處理的初始數(shù)據(jù);x′(t)∈[0,1]為經(jīng)過歸一化處理之后的軌跡數(shù)據(jù);xmax為 原始數(shù)據(jù) X中的最大值;xmin為 X中的最小值。
假設(shè)基于智能算法優(yōu)化的 Volterra泛函級數(shù)預(yù)測模型仿真輸出為 Y=(y1,y2,···,yN),Y ∈[0,1],對其進(jìn)行反歸一化的方法為
式中:y(t) 為模型得到的預(yù)測值;y′(t)為經(jīng)過反歸一化處理之后的預(yù)測軌跡值;ymax為預(yù)測得到序列Y 中的最大值;ymin為 預(yù)測得到序列 Y中的最小值。
為獲得原始數(shù)據(jù)的相空間結(jié)構(gòu),可通過相空間重構(gòu)進(jìn)行處理[25]。該處理可利用一維時序數(shù)據(jù)逆向重構(gòu)出原始系統(tǒng)的相空間結(jié)構(gòu)。Takens 定理[26]證明了在原始的系統(tǒng)中,其任一分量的演化均由其他及其相關(guān)的分量確定。假設(shè)獲得的分量為x,研究的時間序列為 x(t),t=1,2,···,N,則其重構(gòu)的相空間可表示為
式中:τ為時間延遲;m為嵌入維數(shù)。選擇合適的時間延遲和嵌入維數(shù)可以對未來 t +η時刻的目標(biāo)機動軌跡值 x(t+η) 進(jìn) 行預(yù)測,其中,η為預(yù)測步長。當(dāng)η=1時 ,即對目標(biāo)機動軌跡進(jìn)行單步預(yù)測;當(dāng)η >1時,即對目標(biāo)機動軌跡進(jìn)行多步預(yù)測。
仿真采用4 種智能算法優(yōu)化的 Volterra 模型和BPNN 模型對目標(biāo)機動軌跡時間序列進(jìn)行單步預(yù)測并分析。首先,對目標(biāo)機動軌跡時間序列進(jìn)行相空間重構(gòu)[26]。根據(jù)C-C 法[26]確定目標(biāo)機動軌跡x方向嵌入維數(shù)mx=6和 時間延遲 τx=8;y 方向的時間延遲 τy=7,嵌入維數(shù) my=7;z 方向的時間延遲 τz=5,嵌入維數(shù) mz=7。其中,采用單步預(yù)測方式,即設(shè)置預(yù)測步數(shù)η =1。仿真中,采用4 種智能算法優(yōu)化的二階和三階 Volterra模型對目標(biāo)機動軌跡的三維坐標(biāo)進(jìn)行空間位置預(yù)測,預(yù)測結(jié)果經(jīng)平滑后如圖2 所示。

圖2 基于二、三階Volterra 模型目標(biāo)空間預(yù)測結(jié)果對比Fig.2 Comparison of target space prediction results based on second-order and third-order Volterra models
通過圖2 中預(yù)測結(jié)果及誤差對比可以看出,5 種預(yù)測模型的預(yù)測值與目標(biāo)機動軌跡的實際值的變化大體上保持一致,說明4 種智能算法優(yōu)化的二階、三階Volterra 級數(shù)模型和BPNN 模型可以對目標(biāo)機動軌跡進(jìn)行有效預(yù)測。但是從整體上可以看出,基于SABA 算法優(yōu)化的Volterra 泛函級數(shù)模型預(yù)測結(jié)果較其他模型更加接近真實值,二階Volterra模型比三階Volterra 模型更接近真實值,但各個預(yù)測模型的預(yù)測精度具體效果還需要進(jìn)行進(jìn)一步的誤差分析仿真實驗。
仿真中,主要對比SABA-Volterra 模型與其他預(yù)測模型在預(yù)測精度方面的性能差異。仿真實驗利用平均絕對誤差(Mad)、均方誤差(Mse)、平均絕對百分比誤差(Mape)及相關(guān)系數(shù)(Cor)等4 個指標(biāo)進(jìn)行衡量對比。其性能指標(biāo)定義如下:
式中:y?(k)為 模型輸出的目標(biāo)軌跡預(yù)測值;y(k)為樣本中目標(biāo)軌跡的真實值;yˉ 為 y的 平均值;σ (y?) 為 y?的標(biāo)準(zhǔn)差;yˉ? 為 y? 的 平均值;σ(y) 為 y的 標(biāo)準(zhǔn)差;n為樣本個數(shù)。
限于篇幅,仿真實驗以3 個坐標(biāo)構(gòu)成三維空間位置精度進(jìn)行計算分析。其中,空間相關(guān)系數(shù)取3個坐標(biāo)預(yù)測結(jié)果與真實值的相關(guān)系數(shù)的平均值。
為進(jìn)一步分析Volterra 泛函級數(shù)的預(yù)測性能,對SABA-Volterra 算法進(jìn)行多步預(yù)測仿真,并與BAVolterra[27]、SABA-Volterra、ACO-Volterra[16]、GAVolterra、BPNN[7]等預(yù)測模型進(jìn)行對比分析。如表1~表3 所示,分別進(jìn)行了2、4 和8 步預(yù)測。其中,考慮到Volterra 泛函級數(shù)的實時性和單步預(yù)測的優(yōu)異性能,采用單步遞歸方法進(jìn)行多步預(yù)測仿真[28]。即將 t 時刻下得到的單步預(yù)測結(jié)果 yt與前時序序列 Xt=(xt-m,xt-m+1,···,xt)組合成新的時序序列Xt+1=(xt-m+1,···,xt,yt)作為輸入,直至預(yù)測所需步數(shù)。該多步預(yù)測方法對算法的單步預(yù)測性能要求更高,以減少多步遞歸導(dǎo)致的預(yù)測誤差累積。
通過圖2 和表1~表3 可以看出:①基于智能算法優(yōu)化的Volterra 泛函級數(shù)模型,可以利用目標(biāo)歷史機動軌跡數(shù)據(jù)有效地反映出目標(biāo)未來運動趨勢,并可以較高精度地實現(xiàn)對目標(biāo)未來軌跡一步預(yù)測,且預(yù)測結(jié)果較為穩(wěn)定,實現(xiàn)簡便、快捷;②基于SABA 優(yōu)化后的Volterra 泛函級數(shù)的單步預(yù)測較其他算法優(yōu)化后的Volterra 及BPNN 預(yù)測模型有更高的預(yù)測精度,從而實現(xiàn)較優(yōu)的單步遞歸方法下的多步預(yù)測性能;③基于4 種智能算法優(yōu)化的二階Volterra泛函級數(shù)模型具有運算速度快、預(yù)測精度高的優(yōu)點,且硬件容易實現(xiàn)。

表1 不同預(yù)測模型進(jìn)行2 步預(yù)測的性能對比Table 1 Performance comparison of two-step prediction with different prediction models

表2 不同預(yù)測模型進(jìn)行4 步預(yù)測的性能對比Table 2 Performance comparison of four-step prediction with different prediction models

表3 不同預(yù)測模型進(jìn)行8 步預(yù)測的性能對比Table 3 Performance comparison of eight-step prediction with different prediction models
對于目標(biāo)機動軌跡時間序列,二階Volterra 泛函級數(shù)模型能夠?qū)ζ溥M(jìn)行有效預(yù)測的本質(zhì)在于:二階截斷Volterra 泛函級數(shù)綜合了目標(biāo)機動軌跡時間序列中的線性和非線性因素,更符合系統(tǒng)的非線性本質(zhì)[29];而當(dāng)Volterra 泛函級數(shù)的截斷階數(shù)取值較大時,其導(dǎo)致存在大量的非線性耦合,而使得Volterra泛函級數(shù)模型的系數(shù)數(shù)量呈幾何級數(shù)增長,不僅確定模型參數(shù)困難,而且非線性項會造成智能算法優(yōu)化的Volterra 泛函級數(shù)參數(shù)不佳,進(jìn)而造成Volterra泛函級數(shù)的系數(shù)不收斂或者不穩(wěn)定[30],最終影響預(yù)測精度。
對目標(biāo)機動軌跡的三維坐標(biāo)分別進(jìn)行建模與預(yù)測時,GA-Volterra 算法、ACO-Volterra 算法、BAVolterra 算法及SABA-Volterra 算法的收斂曲線如圖3 所示。其中,縱坐標(biāo)為對數(shù)坐標(biāo)軸,且設(shè)定為各預(yù)測算法在空間位置中尋優(yōu)適應(yīng)度的對數(shù)值。

圖3 不同智能算法優(yōu)化預(yù)測模型的空間適應(yīng)度函數(shù)值比較Fig.3 Comparison of spatial fitness function values of prediction models optimized by different intelligent algorithms
在圖3(a)中,二階情況下ACO-Volterra、BAVolterra、GA-Volterra 和SABA-Volterra 算法的適應(yīng)度函數(shù)值達(dá)到較小值且穩(wěn)定時的迭代次數(shù)分別為149、74、230、60;在圖3(b)中,三階情況下4 種算法的適應(yīng)度函數(shù)值達(dá)到較小值且穩(wěn)定時,其所迭代的次數(shù)分別為47、63、199、169。仿真中,將Volterra泛函級數(shù)的預(yù)測誤差設(shè)定為智能優(yōu)化算法的適應(yīng)度函數(shù),即適應(yīng)度函數(shù)值越大,Volterra 泛函級數(shù)的預(yù)測誤差越大。通過上述分析可知,本文提出的SABAVolterra 算法模型能夠?qū)崿F(xiàn)較高的預(yù)測精度及較快的收斂速度,同時也進(jìn)一步驗證了二階Volterra 更加適合于空戰(zhàn)目標(biāo)機動軌跡預(yù)測。
考慮到空戰(zhàn)對抗中對預(yù)測的實時性要求高,進(jìn)一步分析SABA-Volterra 模型的實時性能,并與其他算法進(jìn)行對比。各算法的訓(xùn)練及預(yù)測所需時間如圖4 所示。其中,迭代次數(shù)設(shè)置為250 次。

圖4 不同智能算法優(yōu)化預(yù)測模型的運行時間對比Fig.4 Comparison of running time of prediction models optimized by several intelligent algorithms
如圖4 所示,改進(jìn)后的SABA-Volterra 級數(shù)仍保持較高的實時性,并優(yōu)于其他傳統(tǒng)算法。同時,采取二階的Volterra 泛函級數(shù)模型,相比于三階能實現(xiàn)更高的實時性。這是由于三階Volterra 模型需要更多的核函數(shù),從而提高了算法運算的復(fù)雜度。因此,綜合預(yù)測精度與實時性對比,二階模型相比三階模型更適用于空戰(zhàn)目標(biāo)機動軌跡預(yù)測。
針對空戰(zhàn)目標(biāo)機動軌跡預(yù)測問題,引入Volterra泛函級數(shù)模型,針對其存在的不足,提出一種改進(jìn)的蝙蝠算法對其優(yōu)化,構(gòu)建一種基于SABA 算法優(yōu)化的Volterra 泛函級數(shù)目標(biāo)機動軌跡預(yù)測模型。通過理論分析和仿真實驗可以得出如下結(jié)論:
1)改進(jìn)后的SABA 算法具有自適應(yīng)步長控制機制和變異機制等能力,可適應(yīng)不同問題的解空間,從而能夠自適應(yīng)調(diào)整合適的步長,進(jìn)而提高算法求解精度。仿真結(jié)果表明,SABA 算法的尋優(yōu)性能較優(yōu)異。
2)改進(jìn)的蝙蝠算法能夠確定合適的Volterra泛函級數(shù)核系數(shù),所構(gòu)建的基于SABA 優(yōu)化的Volterra泛函級數(shù)模型能對目標(biāo)機動軌跡實現(xiàn)較高精度的實時預(yù)測。
3)不同的Volterra 泛函級數(shù)模型具有不同的預(yù)測精度。針對不同的預(yù)測問題,需要通過仿真實驗,得出最佳的截斷階數(shù)。