任樂亮,鮮勇,李少朋,2,雷剛,伍薇,李冰
1.火箭軍工程大學(xué) 作戰(zhàn)保障學(xué)院,西安 710025
2.清華大學(xué) 自動化系,北京 100084
為應(yīng)對反導(dǎo)防御系統(tǒng)的攔截威脅,彈道導(dǎo)彈中段機動突防是目前最有效的方式之一。隨著反導(dǎo)攔截系統(tǒng)的升級完善,傳統(tǒng)采用射前突防/彈道/制導(dǎo)規(guī)劃[1],發(fā)射后只能沿給定彈道和給定策略進(jìn)行機動突防的方法,面臨戰(zhàn)場動態(tài)適應(yīng)能力不足的問題[2]。而基于彈載感知系統(tǒng)、智能決策算法和姿軌控動力系統(tǒng)的實時感知-自主決策-大機動的突防方式,將更加適應(yīng)高動態(tài)的攻防對抗態(tài)勢[3-4]。在該突防方式下,為保證落點精度,其制導(dǎo)方法設(shè)計面臨嚴(yán)峻的挑戰(zhàn),主要原因:①彈道導(dǎo)彈大機動突防意味著大幅度偏離無機動標(biāo)準(zhǔn)彈道,基于無機動標(biāo)準(zhǔn)彈道設(shè)計制導(dǎo)算法將難以滿足精度需求;②由于反導(dǎo)系統(tǒng)部署位置、攔截策略和攔截時機的不確定性,導(dǎo)致彈道導(dǎo)彈機動方向、機動時機和機動次數(shù)均具有一定的不確定性,從而無法在地面進(jìn)行射前規(guī)劃以解算機動突防標(biāo)準(zhǔn)彈道[5]。
而傳統(tǒng)的彈道導(dǎo)彈制導(dǎo)方法主要是攝動制導(dǎo)[6]和閉路制導(dǎo)[7],其中攝動制導(dǎo)依賴小偏差理論,無法滿足大機動突防彈道導(dǎo)彈制導(dǎo)精度需求;閉路制導(dǎo)根據(jù)目標(biāo)點及導(dǎo)彈飛行狀態(tài),按照控制泛函進(jìn)行實時解算,并引入虛擬目標(biāo)降低彈上計算復(fù)雜度,能夠適應(yīng)更大的彈道偏差。同時,閉路制導(dǎo)通常依據(jù)導(dǎo)彈當(dāng)前狀態(tài)和目標(biāo)點狀態(tài)實時更新虛擬目標(biāo)點,進(jìn)一步增強了算法的魯棒性,而虛擬目標(biāo)點的更新需要落點預(yù)測模型的支撐。針對大機動突防彈道導(dǎo)彈精確制導(dǎo)需求,文獻(xiàn)[5]建立了一種基于模型預(yù)測控制思想[8]的落點預(yù)測制導(dǎo)方法[9-10],由神經(jīng)網(wǎng)絡(luò)模型根據(jù)導(dǎo)彈當(dāng)前運動狀態(tài)預(yù)測落點,再與目標(biāo)點進(jìn)行對比,利用落點偏差解算制導(dǎo)控制量,進(jìn)而完成落點修正??梢钥闯?,閉路制導(dǎo)和文獻(xiàn)[5]制導(dǎo)方法的關(guān)鍵都是如何解決彈道導(dǎo)彈落點的實時高精度預(yù)測問題。
目前,落點預(yù)測方法主要有彈道積分外推法[11]、基于橢圓彈道理論的預(yù)測方法[12]、基于近似解析表達(dá)式預(yù)測法[13-22]、神經(jīng)網(wǎng)絡(luò)非線性擬合法[23-26]。其中,第1 類方法預(yù)測精度高,但實時性差[27],第2 類方法預(yù)測精度差,但實時性好,第3、4 類方法則在一定程度上兼顧了預(yù)測精度和實時性。基于近似解析表達(dá)式的預(yù)測法主要有狀態(tài)空間攝動法[13-17]、經(jīng)典fg 級數(shù)修正法[18]、中間軌道法[19]、非正交分解法[20-21]和平均軌道要素法[22]等,大量學(xué)者就此進(jìn)行了研究,以解決閉路制導(dǎo)中在線計算虛擬目標(biāo)的需求。其中,狀態(tài)空間攝動法精度高于其他方法,同時,由于經(jīng)典fg 級數(shù)修正法、中間軌道法、平均軌道要素法以時間為自變量,非正交分解法以射程角為自變量,因此當(dāng)終端條件為地心距時,需要迭代計算,降低了計算效率,而狀態(tài)空間攝動法則具有無需迭代計算的優(yōu)點[15]。文獻(xiàn)[13-17]基于狀態(tài)空間攝動法對地球非球形攝動影響因素進(jìn)行了解析建模,建立了無需迭代計算且具有較高精度的解析補償模型,進(jìn)而支撐了閉路制導(dǎo)在線補償方法的研究。
但總體而言,基于近似解析表達(dá)式的預(yù)測法的解析建模門檻高、模型復(fù)雜,且相較于神經(jīng)網(wǎng)絡(luò)非線性擬合法而言,計算復(fù)雜度較高。神經(jīng)網(wǎng)絡(luò)非線性擬合法則具有簡明的表達(dá)形式、規(guī)范的建模過程,同時由于其基于數(shù)據(jù)學(xué)習(xí)的特點,具有能夠降低無解析模型因素對落點預(yù)測精度影響的特性。
近年來,學(xué)者們利用神經(jīng)網(wǎng)絡(luò)非線性擬合能力強和計算量小的特點,研究了其在落點預(yù)測中的應(yīng)用,旨在平衡計算速度與預(yù)測精度,但現(xiàn)有神經(jīng)網(wǎng)絡(luò)落點預(yù)測方法仍有較大的改進(jìn)空間。一是為提高落點預(yù)測精度,網(wǎng)絡(luò)結(jié)構(gòu)偏大,存在降低實時性的問題,如文獻(xiàn)[26]設(shè)計的神經(jīng)網(wǎng)絡(luò)隱藏層節(jié)點數(shù)多達(dá)100 個,導(dǎo)致模型計算量較大。二是在網(wǎng)絡(luò)輸入輸出量設(shè)計方面研究不足,導(dǎo)致學(xué)習(xí)難度大,如文獻(xiàn)[5]通過改進(jìn)激活函數(shù)、優(yōu)化網(wǎng)絡(luò)輸入和解耦落點坐標(biāo)等方法,在較小網(wǎng)絡(luò)結(jié)構(gòu)下實現(xiàn)了較高的預(yù)測精度,但由于仍采用神經(jīng)網(wǎng)絡(luò)輸出落點坐標(biāo)的設(shè)計模式,預(yù)測效率仍有提升空間。三是訓(xùn)練策略上有待深入研究,此類中小型網(wǎng)絡(luò)通常在CPU 上采用LM(Levenberg-Marquardt)算法進(jìn)行優(yōu)化,具有收斂快、優(yōu)化效果好的優(yōu)點,但是隨著樣本數(shù)量及網(wǎng)絡(luò)參數(shù)的增大,訓(xùn)練耗時將急劇增加。利用GPU 進(jìn)行加速訓(xùn)練將極大地降低時間成本,但是在樣本數(shù)量及網(wǎng)絡(luò)參數(shù)較大的情況下,LM 算法對顯存需求量很大。文獻(xiàn)[28]所改進(jìn)的LM 算法雖然有效降低了算法對存儲量的需求,但是不利于GPU 并行計算。由此可知,研究多塊GPU 訓(xùn)練環(huán)境下針對LM 算法的并行加速訓(xùn)練策略,是大樣本神經(jīng)網(wǎng)絡(luò)落點預(yù)測模型的基礎(chǔ)。
通常,雖然通過簡化模型得到的預(yù)測結(jié)果存在一定的偏差,但是該偏差量相對于預(yù)測真值小很多,因此,以偏差量作為神經(jīng)網(wǎng)絡(luò)輸出將有利于降低學(xué)習(xí)難度。比如,文獻(xiàn)[26-30]分別針對落點預(yù)測問題、Lambert 制導(dǎo)和助推段彈道預(yù)測,以簡化模型的預(yù)測偏差作為神經(jīng)網(wǎng)絡(luò)模型的學(xué)習(xí)量,得到了較好的預(yù)測結(jié)果。
基于上述分析,為降低神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)難度,本文建立了一種神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)橢圓彈道落點預(yù)測偏差的方法。本文主要貢獻(xiàn)如下:①設(shè)計了一種彈道導(dǎo)彈落點預(yù)測框架,該框架由橢圓彈道落點預(yù)測模型和神經(jīng)網(wǎng)絡(luò)落點偏差預(yù)測模型組成,具有預(yù)測精度高、網(wǎng)絡(luò)結(jié)構(gòu)小和實時性好的特點;②基于Levenberg-Marquardt 算法設(shè)計了一種并行學(xué)習(xí)優(yōu)化器,降低了算法對顯存的需求量且縮短了學(xué)習(xí)耗時;③對同一型號導(dǎo)彈而言,無需射前對神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,有利于縮短諸元準(zhǔn)備時間。
本文建立的落點預(yù)測模型旨在為中段大機動突防彈道導(dǎo)彈制導(dǎo)方法研究提供參考,在制導(dǎo)方法誤差評價范圍內(nèi)表示落點預(yù)測誤差。因此,不考慮彈道導(dǎo)彈實際再入過程中的氣動系數(shù)、大氣參數(shù)和風(fēng)場與地面解算彈道使用的氣動系數(shù)、大氣參數(shù)和風(fēng)場之間偏差等非制導(dǎo)因素對落點影響[31]?;炯僭O(shè)如下:
1) 地球模型采用考慮J2項攝動影響的旋轉(zhuǎn)橢球體模型。
2) 彈道導(dǎo)彈再入大氣層后,保持零攻角和低速慢旋穩(wěn)定狀態(tài)進(jìn)行無動力飛行,忽略馬格努斯力的影響。
3) 考慮到不同季節(jié)的大氣參數(shù)和風(fēng)場有所差異[31-32],因此,針對不同季節(jié)生成相應(yīng)的訓(xùn)練樣本并進(jìn)行訓(xùn)練。射擊前,根據(jù)季節(jié)選擇相應(yīng)的神經(jīng)網(wǎng)絡(luò)落點預(yù)測模型裝訂上彈。后續(xù)將以特定的大氣模型作為落點預(yù)測仿真分析的基礎(chǔ),不影響制導(dǎo)方法誤差評價范圍內(nèi)落點預(yù)測模型的精度和計算復(fù)雜度研究。
根據(jù)彈道導(dǎo)彈彈道學(xué)可知,在標(biāo)準(zhǔn)彈道條件下,以任一飛行狀態(tài)為起始點,對應(yīng)唯一一條彈道,這也是落點可預(yù)測的基礎(chǔ)。因此,可以建立落點預(yù)測的形式化描述如式(1)所示,其關(guān)鍵是如何得到式(1)中的映射f。
式中:S0∈Rn×1表示導(dǎo)彈運動狀態(tài)矢量,n為運動狀態(tài)變量的個數(shù);P∈R3×1表示落點矢量。為方便描述,如不特指文中均采用列矢量形式。
在地心地固(Earth-Centered Earth-Fixed,ECEF)坐標(biāo)系下,建立考慮旋轉(zhuǎn)橢球體和再入阻力模型的動力學(xué)方程:
式中:t為飛行時間;Xs和Vs分別為t時刻彈道導(dǎo)彈在ECEF 坐標(biāo)系下的位置和速度矢量和分別為t時刻彈道導(dǎo)彈在ECEF 坐標(biāo)系下引力、空氣動力、牽連慣性力和柯氏慣性力的加速度矢量,可由式(3)計算得到:
式中:μ為地球引力常數(shù)為導(dǎo)彈地心距;J2為地球形狀動力學(xué)系數(shù);ae為地球長半軸;φs為地心緯度;ωe=[0,0,ωe]T為ECEF 坐標(biāo)系下的地球自轉(zhuǎn)角速度矢量,其中,ωe為地球自轉(zhuǎn)角速度大??;mw為質(zhì)量;ρ為大氣密度;CD為阻力系數(shù);Sw為最大橫截面積;Vs,wind=Vs-Vwind為ECEF 坐標(biāo)系下導(dǎo)彈相對于空氣的速度[33],Vwind為ECEF 坐標(biāo)系下的風(fēng)速;“×”表示叉乘。
采用阿達(dá)姆斯數(shù)值積分方法[34]對式(2)進(jìn)行求解,即可得到落點,積分結(jié)束條件為
式中:rm為目標(biāo)點的地心距;rs為導(dǎo)彈地心距。
為方便描述,定義落點預(yù)測時刻的ECEF 坐標(biāo)系為地心慣性(Earth-Centered Inertial,ECI)坐標(biāo)系,即落點預(yù)測瞬間ECEF 坐標(biāo)系與ECI 坐標(biāo)系一致,但由于ECEF 坐標(biāo)系隨地球自轉(zhuǎn)而旋轉(zhuǎn),其他時間不再重合。ECI 坐標(biāo)系與ECEF 坐標(biāo)系運動狀態(tài)矢量之間的轉(zhuǎn)換關(guān)系為
式中:XECI和XECEF分別為ECI 坐標(biāo)系和ECEF 坐標(biāo)系下的位置矢量;VECI和VECEF分別為ECI 坐標(biāo)系和ECEF 坐標(biāo)系下的速度矢量(Δt)為ECI 坐標(biāo)系與ECEF 坐標(biāo)系的轉(zhuǎn)換矩陣,其表達(dá)式如式(6)所示;Δt為ECEF 坐標(biāo)系相對ECI 坐標(biāo)系旋轉(zhuǎn)的時間,可知,落點預(yù)測時刻Δt=0,導(dǎo)彈落地時刻Δt=tf,tf為導(dǎo)彈自當(dāng)前狀態(tài)飛行至落地所經(jīng)歷的時間。
由于橢圓彈道理論忽略了地球非球形攝動以及再入大氣阻力影響,在ECI 坐標(biāo)系下為平面彈道,利用該特點可建立落點預(yù)測解析模型。為方便求解落點,以軌道根數(shù)E描述橢圓彈道:
式中:h、i、Ω、e、ω和θ分別為比角動量的模、軌道傾角、升交點赤經(jīng)、偏心率、近地點幅角和真近點角,如圖1 所示,其中:h為比角動量矢量;e為偏心率矢量;Oe為地心。
圖1 軌道根數(shù)示意圖Fig.1 Schematic diagram of orbital elements
2.1.1 解算落地時刻的軌道根數(shù)
式中:h0、i0、Ω0、e0、ω0和θ0分別為落點預(yù)測時刻的比角動量的模、軌道傾角、升交點赤經(jīng)、偏心率、近地點幅角和真近點角。
在橢圓彈道假設(shè)下,導(dǎo)彈與地球為二體系統(tǒng),可得導(dǎo)彈落地時刻的軌道根數(shù)Ef為
式中:θf為落地時刻的真近點角,考慮到導(dǎo)彈落地時的徑向速度小于0,可得θf為
2.1.2 解算ECEF 坐標(biāo)系的落點矢量
根據(jù)落地時刻的地心距和真近點角,可得近焦點坐標(biāo)系[35]下落點為
根據(jù)近焦點坐標(biāo)系與ECI 坐標(biāo)系轉(zhuǎn)換關(guān)系可得ECI 坐標(biāo)系下落點為
式中:為近焦點坐標(biāo)系到ECI 坐標(biāo)系的轉(zhuǎn)換矩陣[35]。
由于地球旋轉(zhuǎn)因素影響,為得到ECEF 坐標(biāo)系下的位置,需要進(jìn)一步求解飛行時間tf??紤]到平近點角反映了軌道的平均角運動,可得tf為
式中:T為軌道周期;M0和Mf分別為落點預(yù)測時刻和落地時刻的平近點角。
將式(11)~式(13)代入式(5)后可得ECEF坐標(biāo)系下的橢圓彈道預(yù)測落點矢量為
為方便描述,將基于橢圓彈道的落點預(yù)測模型表示為fET,可得
2.2.1 坐標(biāo)系定義
為降低神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)難度,在坐標(biāo)系建立神經(jīng)網(wǎng)絡(luò)落點偏差預(yù)測模型。與文獻(xiàn)[5]中定義的坐標(biāo)系類似,不同的是文獻(xiàn)[5]坐標(biāo)原點定義在彈下點m0處,而本文坐標(biāo)原點定義在當(dāng)前飛行位置m1處,具體定義為:以m1為坐標(biāo)原點,軸過地心Oe與m1連線,且指向天為正軸指向VECEF與軸的叉乘方向,軸與軸、軸構(gòu)成右手直角坐標(biāo)系,如圖2 所示。
圖2 坐標(biāo)系示意圖Fig.2 Schematic diagram of coordinate system
坐標(biāo)系與ECEF 坐標(biāo)系的轉(zhuǎn)換關(guān)系為
式中:為導(dǎo)彈在坐標(biāo)系的位置矢量;為ECEF 坐標(biāo)系到北東坐標(biāo)系的旋轉(zhuǎn)矩陣[36],如式(17)所示;為北東坐標(biāo)系到坐標(biāo)系的轉(zhuǎn)換矩陣,如式(18)所示;H0為落點預(yù)測時刻導(dǎo)彈的高度。
式中:φs,0和λs,0分別為落點預(yù)測時刻的地心緯度和地心經(jīng)度。
式中:γ為軸與正北的夾角,當(dāng)軸在北向偏東時為正。令導(dǎo)彈在北東坐標(biāo)系下的速度可得:
2.2.2 神經(jīng)網(wǎng)絡(luò)模型設(shè)計
1)神經(jīng)網(wǎng)絡(luò)輸入輸出量設(shè)計
考慮到落點在坐標(biāo)系的不同分量具有較大的差異性,為降低學(xué)習(xí)難度,構(gòu)建3 個神經(jīng)網(wǎng)絡(luò)(多層感知機形式)分別學(xué)習(xí)橢圓彈道落點預(yù)測誤差在坐標(biāo)系的3 個分量,因此,構(gòu)建神經(jīng)網(wǎng)絡(luò)落點偏差預(yù)測模型為
神經(jīng)網(wǎng)絡(luò)輸入量的選取,將直接影響模型學(xué)習(xí)的難易??紤]到不同緯度φs,0、不同飛行高度H0、不同高度差ΔH=H0-Hm(Hm為目標(biāo)點高度)對落點有影響,同時加入當(dāng)?shù)貜椀纼A角Θ0、速度方位角σ0和ECEF 坐標(biāo)系下的速度大小作為網(wǎng)絡(luò)輸入有助于模型學(xué)習(xí)[5],令網(wǎng)絡(luò)x、y和z的輸入和分別為
2)神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計
fxNN(·)、fyNN(·) 和fzNN(·) 采用多層感知機形式,所不同的是網(wǎng)絡(luò)模型的輸入輸出量、隱藏層層數(shù)以及節(jié)點數(shù)目。圖3 給出了含有2 個隱藏層的神經(jīng)網(wǎng)絡(luò)示意圖。
圖3 網(wǎng)絡(luò)結(jié)構(gòu)示意圖Fig.3 Schematic diagram of network structure
在確定fxNN(·)、fyNN(·)和fzNN(·)的隱藏層層數(shù)和節(jié)點數(shù)時,為了使神經(jīng)網(wǎng)絡(luò)獲得良好的泛化能力進(jìn)而獲得更好的預(yù)測效果,可以在一定程度上增加網(wǎng)絡(luò)的隱藏層層數(shù)和節(jié)點數(shù)量。但過多的隱藏層會導(dǎo)致學(xué)習(xí)時間過長和學(xué)習(xí)過程不穩(wěn)定,并會導(dǎo)致網(wǎng)絡(luò)出現(xiàn)“退化”現(xiàn)象[37],因此設(shè)定最多采用2 個隱藏層的網(wǎng)絡(luò)結(jié)構(gòu)。
為降低神經(jīng)網(wǎng)絡(luò)模型的計算復(fù)雜度,在確定網(wǎng)絡(luò)結(jié)構(gòu)時,應(yīng)在滿足精度要求的前提下盡可能減小網(wǎng)絡(luò)結(jié)構(gòu),即選擇合適的隱藏層層數(shù)及節(jié)點數(shù)。根據(jù)Kosmogorov 定理可知,含有1 個隱藏層的神經(jīng)網(wǎng)絡(luò)可以完成任意的n維到m維的映射[38]。因此,在確定網(wǎng)絡(luò)結(jié)構(gòu)時首選隱藏層數(shù)為1,但是隨著隱藏層節(jié)點數(shù)的增加,網(wǎng)絡(luò)計算復(fù)雜度將逐漸變大??紤]到增加隱藏層層數(shù)會提高神經(jīng)網(wǎng)絡(luò)預(yù)測精度,因此,合理設(shè)計雙隱藏層的節(jié)點數(shù),在相同預(yù)測精度下,具有比一個隱藏層更小計算復(fù)雜度的可能性。
同時,考慮到隱藏層層數(shù)和節(jié)點數(shù)不僅與輸入輸出層的節(jié)點數(shù)有關(guān),更與需解決問題的復(fù)雜程度、激活函數(shù)以及樣本數(shù)據(jù)的特性等因素有關(guān)[39]。因此,為建立適用于高精度快速落點預(yù)測的神經(jīng)網(wǎng)絡(luò)模型,采用網(wǎng)絡(luò)結(jié)構(gòu)增長型方法進(jìn)行仿真計算[38],確定隱藏層層數(shù)以及節(jié)點數(shù)量,詳細(xì)仿真實驗見3.1 節(jié)。
3)激活函數(shù)選取
激活函數(shù)的選擇對神經(jīng)網(wǎng)絡(luò)而言十分重要,通常在淺層網(wǎng)絡(luò)中采用Sigmoid 和Tansig 函數(shù)作為激活函數(shù),具有較強的非線性擬合能力。但是,由于此類激活函數(shù)中包含指數(shù)運算,計算量較大,不利于提高模型實時性。因此,采用文獻(xiàn)[5]建立的S-Sigmoid 激活函數(shù)。該函數(shù)具有與Sigmoid函數(shù)相近的擬合水平,但是計算量小于Sigmoid函數(shù)。S-Sigmoid 激活函數(shù)為
式中:x為S-Sigmoid 函數(shù)輸入量。
2.2.3 神經(jīng)網(wǎng)絡(luò)樣本生成
為提高神經(jīng)網(wǎng)絡(luò)預(yù)測精度,學(xué)習(xí)樣本需覆蓋落點預(yù)測時刻所有可能的飛行狀態(tài)范圍。定義落點預(yù)測時刻的飛行狀態(tài)集合S為
式中:H0、Hm、φ0、、σ0和Θ0分別為離散化后的初始飛行高度、目標(biāo)點高度、緯度、速度大小、速度方位角和當(dāng)?shù)貜椀纼A角集合,離散間隔分別為δH,0、δH,m、δφ、δV、δσ和δΘ。
考慮樣本范圍越大,則需要越大的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)來完成較高精度的擬合,為降低神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)大小,提高計算效率,按照高度對落點預(yù)測時刻的飛行狀態(tài)空間集合S進(jìn)行分解。 令Si?S(i=1,2,…),則可得
式中:H0,i?H0,同時
針對集合Si生成訓(xùn)練集并進(jìn)行訓(xùn)練,從而得到對應(yīng)的神經(jīng)網(wǎng)絡(luò)模型;在彈上落點預(yù)測階段,根據(jù)飛行高度選擇對應(yīng)的神經(jīng)網(wǎng)絡(luò)模型即可完成落點預(yù)測。
集合Si的訓(xùn)練集樣本的生成過程為,即神經(jīng)網(wǎng)絡(luò)的樣本輸入,根據(jù)文獻(xiàn)[5]的方法將其轉(zhuǎn)換到ECEF 坐標(biāo)系,得到式(2)所給微分方程組的初值,再根據(jù)1.1節(jié)給出的精確落點解算模型得到落點在ECEF 坐標(biāo)系的落點。結(jié)合式(16)可得神經(jīng)網(wǎng)絡(luò)樣本輸出ΔpET的標(biāo)簽為
集合Si的測試集樣本生成方法為:以H0,i、Hm、φ0、、σ0和Θ0確定的上下界為范圍,令各變量服從均勻分布,隨機生成初始狀態(tài),并采用與生成訓(xùn)練集樣本相同的方法,得到樣本輸出ΔpET。
2.2.4 神經(jīng)網(wǎng)絡(luò)訓(xùn)練
1)歸一化處理及損失函數(shù)選取
為克服輸入向量的不同維尺度不統(tǒng)一帶來的訓(xùn)練效率低的問題,采用min-max 歸一化方法對數(shù)據(jù)進(jìn)行歸一化處理:
式中:p表示變量;pmin表示變量的最小值;pmax表示變量的最大值;p?為歸一化后的結(jié)果。
模型學(xué)習(xí)采用MSE 損失函數(shù):
式中:M為樣本數(shù)量;N為神經(jīng)網(wǎng)絡(luò)輸出值的數(shù)量;yi,j和分別為第i個樣本的第j個輸出量的預(yù)測值和標(biāo)簽值。
2)優(yōu)化器設(shè)計
LM 算法是中等規(guī)模神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)算法中最快的一種[40-41],屬于牛頓法的改進(jìn),是一類二階優(yōu)化器,相較于AdaGrad[42]、RMSPRop[43]和Adam[44]等一階優(yōu)化器而言具有整體收斂速度快、優(yōu)化精度高等特點。其迭代公式為
式中:mn=M·N為所有樣本標(biāo)簽值的數(shù)量;下標(biāo)l表示迭代代數(shù);x∈Rk×1為網(wǎng)絡(luò)參數(shù)組成的向量,即各網(wǎng)絡(luò)層的權(quán)值和閾值,其中,k為網(wǎng)絡(luò)參數(shù)的數(shù)量;J∈Rmn×k為輸出量對網(wǎng)絡(luò)參數(shù)的雅克比矩陣;E∈Rmn×1為神經(jīng)網(wǎng)絡(luò)預(yù)測值相對于標(biāo)簽值的誤差向量;I∈Rk×k為單位矩陣;μ'為動態(tài)更新的參數(shù),若更新網(wǎng)絡(luò)參數(shù)減小了網(wǎng)絡(luò)預(yù)測誤差,則令μ'←μ' kμ',否則令μ'←μ'·kμ',再次計算網(wǎng)絡(luò)參數(shù)更新量,其中,kμ'為大于1 的超參數(shù)。
J和E的大小會隨著M的增大而增大,當(dāng)采用GPU 加速學(xué)習(xí)時,求解J和E以及執(zhí)行JTJ和JTE運算會占用大量顯存,將無法在小顯存GPU上運行。本文在文獻(xiàn)[28]基礎(chǔ)上,進(jìn)一步借鑒矩陣分塊思想對LM 算法進(jìn)行改進(jìn),以降低顯存需求量,同時,針對改進(jìn)的LM 優(yōu)化器設(shè)計了一種多GPU 并行加速機制,有效提高了學(xué)習(xí)效率,稱之為改進(jìn)的數(shù)據(jù)并行LM 優(yōu)化器(Improved Data Parallel Levenberg-Marquardt,IDP-LM)。
① 改進(jìn)Levenberg-Marquardt 優(yōu)化器
對J和E分塊:
式 中 :Ji(i=1,2,…,NGPU) 和Ei(i=1,2,…,NGPU)分別為J和E的子矩陣;NGPU為參與學(xué)習(xí)的GPU 的數(shù)量。
根據(jù)分塊矩陣運算法則可得
由式(30)可知,第i塊GPU 僅需要求解Ji、Ei、JTi Ji和JTi Ei,由此可實現(xiàn)JTJ和JTE的并行求解,提高學(xué)習(xí)效率。
為降低每塊GPU 對顯存的需求量,進(jìn)一步將Ji和Ei均勻分塊為
式中:Ji,j(j=1,2,…,?i) 和Ei,j(j=1,2,…,?i)分別為Ji和Ei的子矩陣;?i=[mi ζi]+1 為子矩陣的個數(shù),其中,mi為Ji和Ei行數(shù),ζi為Ji,j和Ei,j(j<?i)的行數(shù),[·]表示取整。
將式(31)代入式(30)得:
由于第i塊GPU 一次僅需要求解Ji,j、Ei,j、,j和,j(j≤?i),在一定程度上能夠減輕算法對每塊GPU 顯存的需求量。
將式(32)代入式(28)可得IDP-LM 算法的網(wǎng)絡(luò)參數(shù)更新公式為
② 并行學(xué)習(xí)流程
為更好地說明IDP-LM 并行學(xué)習(xí)流程,以2 塊GPU 并行學(xué)習(xí)為例,如圖4 所示,給出其并行學(xué)習(xí)流程如下:
圖4 IDP-LM 并行學(xué)習(xí)框架Fig.4 Parallel learning framework of IDP-LM
步驟1將學(xué)習(xí)數(shù)據(jù)均勻分發(fā)到GPU 1 和GPU 2。
步驟2將GPU 1 中網(wǎng)絡(luò)模型的參數(shù)分發(fā)到GPU 2,并據(jù)此更新GPU 2 中模型的參數(shù)。
步驟3GPU 1 和GPU 2 分別將各自的數(shù)據(jù)代入網(wǎng)絡(luò)模型,得到各自的雅克比矩陣和誤差向量,并分別計算1與1J2與2。
步驟4將GPU 2 中的2與2發(fā)送到GPU 1,并在GPU 1 計算式(30)。
步驟5在GPU 1 中根據(jù)式(33)計算網(wǎng)絡(luò)參數(shù)更新量并更新GPU 1 中的網(wǎng)絡(luò)參數(shù),然后轉(zhuǎn)到步驟2。
2.2.5 總體框架
結(jié)合式(15)、式(16)和式(20)可得落點預(yù)測模型為
建立落點預(yù)測總體框架如圖5 所示,預(yù)測算法流程如算法1 所示。
圖5 落點預(yù)測總體框架Fig.5 Overall framework of impact point prediction
為對建立的落點預(yù)測算法進(jìn)行驗證,在加入機動突防條件下,以H0,1=[100,200] km 為例,通過大量彈道仿真,確定落點預(yù)測時刻的飛行狀態(tài)集合S1的范圍如表1 所示。
表1 仿真參數(shù)范圍Table 1 Range of simulation parameters
在表1 所給飛行狀態(tài)范圍和離散間隔的基礎(chǔ)上,利用第2節(jié)訓(xùn)練集樣本生成方法得到859 320個樣本作為訓(xùn)練集。為更好地測試神經(jīng)網(wǎng)絡(luò)預(yù)測模型的泛化能力,再結(jié)合第2 節(jié)測試集樣本生成方法,以表1 給出的各變量的上下界為范圍,得到生成12 000 個隨機樣本,將其中10 000 個樣本作為測試集,另外2 000 個樣本作為驗證集。仿真平臺性能如下:操作系統(tǒng)為Ubuntu 18.04,CPU為Intel酷睿10980XE,內(nèi)存為32 GB,深度學(xué)習(xí)框架為Pytorch 1.10,顯卡為英偉達(dá)3090(24 GB)。
在2.2.2 節(jié)基礎(chǔ)上,進(jìn)一步確定神經(jīng)網(wǎng)絡(luò)預(yù)測模型的隱藏層層數(shù)和節(jié)點數(shù)。為提高網(wǎng)絡(luò)計算速度,確定神經(jīng)網(wǎng)絡(luò)各隱藏層的節(jié)點數(shù)時,在落點預(yù)測精度的約束下,應(yīng)盡可能減小隱藏層節(jié)點數(shù)。在網(wǎng)絡(luò)模型、和均含有1 個隱藏層情況下,仿真分析了不同節(jié)點數(shù)對預(yù)測精度的影響。為方便描述,定義E3σ為訓(xùn)練集預(yù)測誤差集合和測試集預(yù)測誤差集合并集的3σ值。針對每種情況各訓(xùn)練10 次,最大訓(xùn)練代數(shù)為10 000,統(tǒng)計10 次E3σ得到箱線圖如圖6~圖8所示。
?
圖6 含1 個隱藏層條件下的E3σ 箱線圖Fig.6 Boxplot of E3σ for with one hidden layer
圖7 含1 個隱藏層條件下的E3σ 箱線圖Fig.7 Boxplot of E3σ for with one hidden layer
圖8 含1 個隱藏層條件下的E3σ 箱線圖Fig.8 Boxplot of E3σ for with one hidden layer
由圖6~圖8 可得,隨著節(jié)點數(shù)的增加,3 個網(wǎng)絡(luò)模型的預(yù)測精度均逐漸提高。當(dāng)模型和的隱藏層節(jié)點數(shù)分別達(dá)到8 和5 時,E3σ的中位數(shù)小于5.0 m;當(dāng)模型的節(jié)點數(shù)為18時,E3σ的中位數(shù)在10.0 左右。而隨著節(jié)點數(shù)的增加,預(yù)測精度提高緩慢,若采用增加節(jié)點數(shù)的方法來提高預(yù)測精度,不利于網(wǎng)絡(luò)結(jié)構(gòu)的減小。因此,為進(jìn)一步探索更小的網(wǎng)絡(luò)結(jié)構(gòu),將網(wǎng)絡(luò)模型設(shè)計為2 個隱藏層,并令、和的隱藏層1 的節(jié)點數(shù)分別為11、6 和5,仿真得到隱藏層2 節(jié)點數(shù)取不同值時對預(yù)測精度的影響,如圖9~圖11 所示。
圖9 含2 個隱藏層條件下的E3σ 箱線圖Fig.9 Boxplot of E3σ for with two hidden layers
圖10 含2 個隱藏層條件下的E3σ 箱線圖Fig.10 Boxplot of E3σ for with two hidden layers
圖11 含2 個隱藏層條件下的E3σ 箱線圖Fig.11 Boxplot of E3σ for with two hidden layers
表2 本文模型網(wǎng)絡(luò)結(jié)構(gòu)Table 2 Network architecture of the proposed method
為驗證所提方法在預(yù)測精度上的優(yōu)勢,對訓(xùn)練集和測試集中共869 320 個樣本進(jìn)行測試,其中,10 000 個測試樣本的存在,可以驗證模型的泛化能力。圖12 給出了預(yù)測模型對ΔpET3 個分量預(yù)測誤差的絕對值以及落點預(yù)測誤差大小‖ΔpET‖的箱線圖。由圖12 可知,預(yù)測模型的精度較高,預(yù)測誤差的3σ值和平均值分別為4.97 m和1.16 m,說明本文預(yù)測方法具有較強的泛化能力,能夠滿足制導(dǎo)方法對落點預(yù)測精度的需求。
圖12 落點預(yù)測誤差箱線圖Fig.12 Boxplot of impact point prediction deviations
為進(jìn)一步分析神經(jīng)網(wǎng)絡(luò)落點預(yù)測模型精度的影響因素,利用控制變量法對落點預(yù)測時刻的飛行高度、目標(biāo)點高度、緯度、速度大小、速度方位角和當(dāng)?shù)貜椀纼A角對預(yù)測精度的影響進(jìn)行了仿真分析,即分別固定上述變量不變而其他變量按照表1 所給范圍進(jìn)行離散采樣,得到不同影響因素對落點預(yù)測誤差大小的箱線圖如圖13 所示。
圖13 不同因素對落點預(yù)測精度的影響Fig.13 Influence of different factors on impact point prediction accuracy
由圖13 可知,總體來看,處于飛行狀態(tài)范圍邊界的預(yù)測精度低于預(yù)測范圍中間的預(yù)測精度;同時,由圖13 (a)、圖13(c)和圖13(d)可知,隨著飛行高度、緯度和速度大小的增大,預(yù)測誤差呈現(xiàn)增大趨勢,其中,飛行高度和速度大小因素對應(yīng)的趨勢更明顯。由圖13 (b)可知,隨著目標(biāo)點高度的增大,預(yù)測精度呈現(xiàn)變好的趨勢;由圖13 (f)可知,隨著當(dāng)?shù)貜椀纼A角逐漸增大,落點預(yù)測誤差的平均值和3σ值曲線上升明顯,說明當(dāng)?shù)貜椀纼A角對預(yù)測精度影響較大。同時,在當(dāng)?shù)貜椀纼A角小于-15.5°時,其3σ預(yù)測誤差小于3.5 m,而其他因素對應(yīng)預(yù)測誤差的3σ值均高于3.5 m,說明當(dāng)?shù)貜椀纼A角對預(yù)測精度的影響高于其他因素。
分析上述原因可知,當(dāng)?shù)貜椀纼A角增大、高度變大、速度變大、緯度變高以及目標(biāo)點高度變小將引起飛行時間增長,增大了由于再入阻力和非球形攝動引起的落點非線性化程度,進(jìn)而增加了預(yù)測難度。
由圖13 (e)的平均值曲線可知,當(dāng)速度方位角在90°和270°附近時,曲線處于波峰狀態(tài),說明預(yù)測模型對于向東或向西飛行的導(dǎo)彈的落點預(yù)測誤差相對較大,同時,預(yù)測誤差的3σ曲線的波峰和波谷相近,說明由于速度方位角不同而引起的預(yù)測誤差差別不大。
為進(jìn)一步驗證本文方法在網(wǎng)絡(luò)結(jié)構(gòu)上的優(yōu)勢,與文獻(xiàn)[5]進(jìn)行了對比仿真分析,其中,為適應(yīng)本文落點預(yù)測問題的背景,在文獻(xiàn)[5]所給3 個神經(jīng)網(wǎng)絡(luò)模型的基礎(chǔ)上,增加ΔH作為輸入量,同時,以落點在m1x'n yn z'n坐標(biāo)系的3 個分量作為輸出,將上述3 個網(wǎng)絡(luò)分別記為(·)(·)和(·)。令文獻(xiàn)[5]模型的各隱藏層節(jié)點數(shù)如表3 所示,本文方法各隱藏層節(jié)點數(shù)如表2 所示。針對每種方法各訓(xùn)練10 次,本文方法最大訓(xùn)練代數(shù)為10 000,文獻(xiàn)[5]最大訓(xùn)練代數(shù)為20 000,統(tǒng)計10 次E3σ得到箱線圖如圖14 所示??紤]到神經(jīng)網(wǎng)絡(luò)模型的復(fù)雜度基本由乘法量和激活函數(shù)個數(shù)來決定,因此,為初步計算網(wǎng)絡(luò)模型復(fù)雜度,統(tǒng)計各方法的激活函數(shù)個數(shù)和乘法量如表4所示。
表3 文獻(xiàn)[5]網(wǎng)絡(luò)結(jié)構(gòu)Table 3 Network architecture of Ref.[5]
表4 本文方法和文獻(xiàn)[5]模型的復(fù)雜度Table 4 Computational complexity of the proposed method and Ref.[ 5]
圖14 本文方法和文獻(xiàn)[5]模型的E3σ 箱線圖Fig.14 Boxplot of E3σ for the method in this paper and in Ref.[5]
由圖14 可以看出,在上述網(wǎng)絡(luò)結(jié)構(gòu)下,本文方法的預(yù)測精度優(yōu)于文獻(xiàn)[5]方法;同時,由表4 可知,本文方法的網(wǎng)絡(luò)結(jié)構(gòu)遠(yuǎn)小于文獻(xiàn)[5]的網(wǎng)絡(luò)結(jié)構(gòu),激活函數(shù)個數(shù)少于后者,且乘法量僅為后者的51.5%。說明以橢圓彈道預(yù)測誤差作為標(biāo)簽,有利于降低網(wǎng)絡(luò)學(xué)習(xí)難度,從而可以降低網(wǎng)絡(luò)結(jié)構(gòu)大小,降低模型計算復(fù)雜度。
考慮到初始飛行狀態(tài)范圍變大時,會增加學(xué)習(xí)的難度,進(jìn)一步仿真分析了本文方法和文獻(xiàn)[5]方法在針對該問題上的敏感性,即測試初始飛行狀態(tài)范圍變大時,同一網(wǎng)絡(luò)結(jié)構(gòu)對應(yīng)預(yù)測模型的精度是否受到較大影響。分別在H0,1、Hm、φ0和Θ0原有范圍(如表1所示)的基礎(chǔ)上,增加1 倍對應(yīng)離散間隔,針對每種情況訓(xùn)練10次并記錄相應(yīng)的E3σ,統(tǒng)計2種方法的E3σ箱線圖如圖15所示。
圖15 增大初始狀態(tài)范圍后本文方法和文獻(xiàn)[5]模型的E3σ 箱線圖Fig.15 Boxplot of E3σ for the proposed method and Ref.[5] after expanding range of initial states
可以看出,初始飛行狀態(tài)范圍的變大對2 種模型關(guān)于落點z方向的預(yù)測精度影響最小,而關(guān)于x、y方向的預(yù)測精度影響較大。分析原因可知,由于導(dǎo)彈近似在坐標(biāo)系的平面飛行,使得落點z軸分量與x、y軸分量解耦,故落點的x、y軸分量受飛行狀態(tài)范圍影響較大,從而增加了網(wǎng)絡(luò)模型學(xué)習(xí)落點的x、y軸分量的難度。同時,改變不同變量范圍對2 種神經(jīng)網(wǎng)絡(luò)模型預(yù)測精度影響不同,總體而言,本文方法受初始飛行狀態(tài)范圍變大的影響更小,具有“小網(wǎng)絡(luò)預(yù)測大范圍”的潛力。
為測試本文方法的各模塊對整體預(yù)測精度提高的有效性,設(shè)計消融試驗研究了各模塊對預(yù)測精度的影響。
3.3.1 在m1x'n yn z'n坐標(biāo)系表示落點對預(yù)測精度的影響
圖16 以不同坐標(biāo)系下落點作為標(biāo)簽的E3σ 箱線圖Fig.16 Boxplot of E3σ for network architecture with the impact point as label in different coordinate systems
總體來看,以ΔpET作為樣本標(biāo)簽對應(yīng)的網(wǎng)絡(luò)預(yù)測精度高于另外兩者,以作為樣本標(biāo)簽對應(yīng)的網(wǎng)絡(luò)預(yù)測精度最低,說明在坐標(biāo)系表示樣本標(biāo)簽有利于神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)。
3.3.2 建立3個網(wǎng)絡(luò)分別預(yù)測落點3個分量有效性
為檢驗建立3 個網(wǎng)絡(luò)分別預(yù)測落點3 個分量的有效性,需要驗證該方法是否在降低網(wǎng)絡(luò)結(jié)構(gòu)大小的同時保持了預(yù)測精度。建立映射fNN1如式(35)所示,該網(wǎng)絡(luò)模型含有2 個隱藏層,輸出節(jié)點數(shù)為3。
針對fNN1隱藏層1 和2 分別為15 和10、17 和16 以及20 和15 這3 種情況,分別稱之為工況1、工況2 和工況3,對模型fNN1訓(xùn)練10 次,最大訓(xùn)練代數(shù)為10 000,統(tǒng)計神經(jīng)網(wǎng)絡(luò)輸出二范數(shù)‖‖ΔpET的E3σ得到箱線圖如圖17 所示。同時,圖17 給出了采用本文方法得到‖‖ΔpET的E3σ箱線圖??梢钥闯?,本文方法與隱藏層1 和2 分別為17 和16 的fNN1模型精度相當(dāng),優(yōu)于隱藏層1 和2 分別為15和10 的fNN1模型,略差于隱藏層1 和2 分別為20和15 的fNN1模型。在網(wǎng)絡(luò)結(jié)構(gòu)大小方面,隱藏層1 和2 分別為17 和16 的fNN1的乘法量達(dá)到了473,是本文方法的1.58 倍;隱藏層1 和2 分別為20 和15 的fNN1的乘法量達(dá)到了525,是本文方法的1.75 倍,可知本文方法的網(wǎng)絡(luò)結(jié)構(gòu)遠(yuǎn)小于此兩者。說明利用3 個網(wǎng)絡(luò)分別預(yù)測落點3 個分量有利于提高預(yù)測精度,降低網(wǎng)絡(luò)結(jié)構(gòu)大小。
圖17 不同網(wǎng)絡(luò)模型的E3σ 箱線圖Fig.17 Boxplot of E3σ for different network models
3.3.3 IDP-LM 算法有效性
LM 優(yōu)化器收斂速度快、訓(xùn)練效果好,但顯存需求量大,因此,在樣本數(shù)量大且網(wǎng)絡(luò)結(jié)構(gòu)大的學(xué)習(xí)場景下,往往面臨顯存不足的問題;同時,在單個GPU 上的訓(xùn)練耗時較長。為驗證本文建立的IDP-LM 優(yōu)化器對顯存需求和并行計算上的優(yōu)勢,以本文中出現(xiàn)的5 個不同網(wǎng)絡(luò)模型為驗證對象,統(tǒng)計各模型訓(xùn)練的顯存占用量和訓(xùn)練耗時如表5 所示。
表5 訓(xùn)練耗時和顯存占用量Table 5 Training runtime and GPU memory consumption
表5 給出了不同模型在單個GPU 上訓(xùn)練以及采用IDP-LM 優(yōu)化器在2 個GPU 上各訓(xùn)練10 次的平均耗時,其中,每次均訓(xùn)練1 000 代??梢钥闯?,當(dāng)網(wǎng)絡(luò)結(jié)構(gòu)較大時,采用IDP-LM 優(yōu)化器能夠顯著降低訓(xùn)練耗時,如fNN1模型隱藏層1和2 分別為20 和15 時,訓(xùn)練耗時降低率高達(dá)49.18%,即相比于傳統(tǒng)LM 優(yōu)化器而言可以降低一半的訓(xùn)練耗時;而對于網(wǎng)絡(luò)結(jié)構(gòu)較小的模型而言,采用IDP-LM 優(yōu)化器能夠降低耗時,但效果不太明顯,如模型隱藏層1 和2 分別為5和2 時,耗時降低率僅為32.3%。其主要原因是,IDP-LM 優(yōu)化器在多個GPU 間存在一定的通信損耗,同時,由步驟4 和步驟5 可知,需要在GPU1 上進(jìn)行串行計算。由于該部分耗時很小,因此,在網(wǎng)絡(luò)結(jié)構(gòu)較大時,占總耗時比例很小;而在網(wǎng)絡(luò)結(jié)構(gòu)較小時,其耗時所占比重有所增加。由此可知,針對網(wǎng)絡(luò)結(jié)構(gòu)較大的落點預(yù)測模型訓(xùn)練而言,能夠有效降低訓(xùn)練耗時。
表5 給出了不同模型在單個GPU 上訓(xùn)練以及采用IDP-LM 優(yōu)化器在2 個GPU 上訓(xùn)練的顯存占用情況。可以看出,在GPU 數(shù)量一定的情況下,?1=?2=1 對應(yīng)的顯存占用量大于?1=?2=2;在?1和?2一定的情況下,單個GPU 訓(xùn)練對應(yīng)的顯存占用量大于2 個GPU 訓(xùn)練對應(yīng)的顯存占用量。同時,由于Pytorch 深度學(xué)習(xí)框架自身占用一定的顯存,因此,對于網(wǎng)絡(luò)結(jié)構(gòu)較小的模型訓(xùn)練而言,采用IDP-LM 優(yōu)化器后顯存占用降低不太明顯;而對于網(wǎng)絡(luò)結(jié)構(gòu)較大的模型訓(xùn)練而言,IDP-LM 優(yōu)化器在降低顯存占用方面作用明顯。
3.2 節(jié)初步給出了網(wǎng)絡(luò)結(jié)構(gòu)大小的初步衡量方法,但是難以衡量激活函數(shù)個數(shù)不同且乘法量不同模型的網(wǎng)絡(luò)結(jié)構(gòu)大小。因此,為更精確地衡量網(wǎng)絡(luò)結(jié)構(gòu)大小,同時檢驗落點預(yù)測算法的實時性,以STM32F407 單片機為實驗平臺,對本文算法和文獻(xiàn)[5]算法的CPU 耗時進(jìn)行了測試,其中,單片機運算數(shù)據(jù)類型為double,網(wǎng)絡(luò)結(jié)構(gòu)分別如表2 和表3 所示。表6 給出了單次預(yù)測總耗時、神經(jīng)網(wǎng)絡(luò)模型耗時、橢圓彈道預(yù)測耗時以及其他耗時(神經(jīng)網(wǎng)絡(luò)模型輸入輸出數(shù)據(jù)處理耗時等)。
表6 不同模型計算耗時Table 6 Runtime of different models
由表6 可得,本文方法的預(yù)測總耗時比文獻(xiàn)[5]方法的預(yù)測總耗時少0.41 ms。其中,橢圓彈道預(yù)測耗時為0.634 ms,占總耗時的24.53%,該部分耗時不受網(wǎng)絡(luò)結(jié)構(gòu)大小的影響;神經(jīng)網(wǎng)絡(luò)模型耗時為1.250 ms,占總耗時的48.36%。由3.2 節(jié)可知,表2 和表3 給出的網(wǎng)絡(luò)結(jié)構(gòu)對應(yīng)的落點預(yù)測精度相當(dāng),但本文方法的神經(jīng)網(wǎng)絡(luò)耗時相比于文獻(xiàn)[5]的神經(jīng)網(wǎng)絡(luò)耗時少1.049 ms,降低了45.6%。由此可得,本文預(yù)測模型能夠降低預(yù)測耗時,提高模型的實時性;同時,由于神經(jīng)網(wǎng)絡(luò)預(yù)測模型的計算復(fù)雜度隨著初始飛行狀態(tài)范圍的變大而增加,而橢圓彈道預(yù)測模型的計算復(fù)雜度基本穩(wěn)定,因此,在大范圍飛行狀態(tài)的預(yù)測問題中,本文方法具有更大的優(yōu)勢。
針對彈道導(dǎo)彈大機動突防后的制導(dǎo)方法設(shè)計面臨的落點預(yù)測需求,建立了一種神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)橢圓彈道落點預(yù)測偏差模型,在一定程度上為該問題的解決提供了較好的參考,具體內(nèi)容總結(jié)如下:
1)建立了一種基于神經(jīng)網(wǎng)絡(luò)的彈道導(dǎo)彈落點預(yù)測模型。該模型以橢圓彈道落點預(yù)測偏差為輸出,相比于直接以落點坐標(biāo)為輸出而言,網(wǎng)絡(luò)結(jié)構(gòu)大幅減小,同時,制導(dǎo)方法誤差評價范圍內(nèi)的預(yù)測精度較高,3σ預(yù)測誤差為4.97 m,實現(xiàn)了小網(wǎng)絡(luò)模型對大范圍飛行狀態(tài)對應(yīng)落點的預(yù)測。
2)為降低神經(jīng)網(wǎng)絡(luò)訓(xùn)練對顯存需求量以及縮短訓(xùn)練時間,采用分塊矩陣運算法則對LM 算法進(jìn)行了改進(jìn),在并行學(xué)習(xí)策略設(shè)計的基礎(chǔ)上,建立了一種IDP-LM 優(yōu)化器。采用該二階優(yōu)化器進(jìn)行訓(xùn)練后,訓(xùn)練耗時縮短約49.18%,且在一定程度上避免了顯存不足問題的出現(xiàn)。
3)以STM32F407 單片機為實驗平臺,對預(yù)測算法復(fù)雜度進(jìn)行了檢驗,仿真結(jié)果表明,預(yù)測實時性好,預(yù)測耗時為2.585 ms,其中,神經(jīng)網(wǎng)絡(luò)耗時為1.250 ms,橢圓彈道預(yù)測耗時為0.634 ms,其他耗時為0.696 ms。同時,本文方法在大范圍飛行狀態(tài)的預(yù)測問題中具有較大的潛力。
需要指出的是,本文僅考慮了對落點影響最大的J2項攝動和再入阻力因素,實際上,擾動引力、日月引力、太陽光壓等因素對落點也有一定的影響。而考慮這些因素后,樣本空間將成倍增加,對網(wǎng)絡(luò)模型設(shè)計和訓(xùn)練方法提出了更高的要求。在本文建立的神經(jīng)網(wǎng)絡(luò)模型和IDP-LM 優(yōu)化器的基礎(chǔ)上,進(jìn)一步研究針對上述落點影響因素的修正網(wǎng)絡(luò),將有助于提高工程應(yīng)用性。