【裝備理論與裝備技術(shù)】
基于神經(jīng)網(wǎng)絡(luò)的彈道修正彈落點(diǎn)預(yù)測方法
曹紅錦1,常思江2
(1.中國兵器工業(yè) 第五九研究所,重慶400039; 2.南京理工大學(xué) 動力工程學(xué)院,南京210094)
摘要:為了分析神經(jīng)網(wǎng)絡(luò)運(yùn)用于彈道預(yù)測的可行性,構(gòu)建了實用的彈道預(yù)測工具,建立了基于神經(jīng)網(wǎng)絡(luò)理論的彈道預(yù)測模型。利用二自由度質(zhì)點(diǎn)彈道模型,選取BP網(wǎng)絡(luò)和Elman網(wǎng)絡(luò)進(jìn)行神經(jīng)網(wǎng)絡(luò)彈道預(yù)測仿真?;谡`差反向傳播理論,比較了帶動量項算法與自適應(yīng)學(xué)習(xí)率算法這2種網(wǎng)絡(luò)權(quán)值訓(xùn)練速度。對2種網(wǎng)絡(luò)不同隱層節(jié)點(diǎn)數(shù)的學(xué)習(xí)誤差和預(yù)測誤差進(jìn)行了對比分析。數(shù)值仿真計算結(jié)果表明,神經(jīng)網(wǎng)絡(luò)具有較高的預(yù)測精度,36.7 km射程僅有不足100 m的射程誤差,12.3 km射高僅有不足70 m的高度誤差,預(yù)測結(jié)果滿足要求,利用神經(jīng)網(wǎng)絡(luò)進(jìn)行彈道預(yù)測是合理可行的。
關(guān)鍵詞:彈道預(yù)測;神經(jīng)網(wǎng)絡(luò);誤差反傳;數(shù)值仿真
收稿日期:2014-08-12
作者簡介:曹紅錦(1977—),女,高級工程師,主要從事科技情報研究。
doi:10.11809/scbgxb2015.01.005
中圖分類號:TJ303.4
文章編號:1006-0707(2015)01-0017-05
本文引用格式:曹紅錦,常思江.基于神經(jīng)網(wǎng)絡(luò)的彈道修正彈落點(diǎn)預(yù)測方法[J].四川兵工學(xué)報,2015(1):17-20.
Citationformat:CAOHong-jin,CHANGSi-jiang.StudyonProjectilesImpactPointPredictionMethodforTrajectoryCorrectionBasedonNeuralNetwork[J].JournalofSichuanOrdnance,2015(1):17-20.
StudyonProjectilesImpactPointPredictionMethodfor
TrajectoryCorrectionBasedonNeuralNetwork
CAOHong-jin1, CHANG Si-jiang2
(1.No. 59InstituteofChinaOrdnanceIndustries,Chongqing400039,China;
2.SchoolofEnergyandPowerEngineering,NanjingUniversityofScienceandTechnology,Nanjing210094,China)
Abstract:In order to discuss the feasibility of neural network uses for trajectory prediction, and to create a practical prediction trajectory tool, we built a trajectory predictive model based on neural network. It used two degrees of freedom particle trajectory model to do neural network trajectory prediction simulation by selected BP network and Elman network. Based error back propagation theory, it compared two types of weight training velocities from momentum back propagation and adaptive learning rate back propagation in the network structures, and the comparative analysis of the learning error and prediction error of the two networks in different amount of hidden nodes were discussed. Numerical results show that it is less than 100m range error of 36.7 km and less than 70 m height error of 12.3 km shot high. The neural network has high prediction accuracy, and its trajectory prediction results meet the requirements. The ballistic prediction using neural networks is reasonably practicable.
Keywords:ballisticprediction;neuralnetwork;errorbackpropagation;numericalsimulation
彈道修正彈就是在制式炮射彈藥加裝彈道修正模塊以提高炮彈的射擊精度。彈道探測技術(shù)、彈道解算技術(shù)、控制執(zhí)行機(jī)構(gòu)是彈道修正彈3大關(guān)鍵技術(shù)[1-3]。只有精確預(yù)測了落點(diǎn),才能推算出修正執(zhí)行機(jī)構(gòu)動作時間、工作時長等重要信息,最終使彈丸命中目標(biāo)。如果彈道預(yù)測不能很好完成,將嚴(yán)重影響彈道修正彈的射擊精度。
目前,國內(nèi)外已提出了一些落點(diǎn)預(yù)測方法[4-6],但這些預(yù)測方法往往需要大量的迭代運(yùn)算,計算量較大,現(xiàn)階段彈載計算機(jī)的運(yùn)算能力很難滿足要求,而神經(jīng)網(wǎng)絡(luò)[7-9]為此提供了新的解決辦法。訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)運(yùn)算量很少,現(xiàn)有彈載計算機(jī)完全可以勝任。神經(jīng)網(wǎng)絡(luò)在彈道預(yù)測中的應(yīng)用很好地解決了實時跟蹤和高精度預(yù)測的問題,該算法的引入從多方面提高了現(xiàn)有彈載計算機(jī)彈道預(yù)測的能力,使彈道預(yù)測的作用發(fā)揮得更加完善。
1基于神經(jīng)網(wǎng)絡(luò)的預(yù)測模型
1.1彈道預(yù)測用動力學(xué)模型
采用外彈道基本假設(shè)條件下的彈丸質(zhì)心運(yùn)動方程組,以時間t為自變量,采用直角坐標(biāo)形式和43年阻力定律,可得:
(1)
(2)
運(yùn)動學(xué)關(guān)系如下:
(3)
(4)
關(guān)聯(lián)方程
(5)
式中:x,y分別為距離和高度;u,w分別為距離和高度方向上的速度分量;c為彈道系數(shù);π(y)為氣壓函數(shù);K(vτ)為阻力函數(shù);θ為彈道傾角;g為重力加速度;τ為虛溫;τon為地面標(biāo)準(zhǔn)虛溫。
上述4個方程有4個未知數(shù),方程組封閉。聯(lián)立式(1)~式(4)即可求解。
1.2BP神經(jīng)網(wǎng)絡(luò)算法
BP算法的基本思想是,學(xué)習(xí)過程由信號的正向傳播與誤差的反向傳播2個過程組成。輸入信號由輸入層傳入,經(jīng)過隱層處理,由輸出層輸出。若輸出信號與期望輸出(即導(dǎo)師信號)不相符,則生成誤差信號,并經(jīng)由網(wǎng)絡(luò)反向傳遞。誤差反傳是誤差信號以某種形式通過隱層向輸入層傳遞,并將誤差信號根據(jù)一定計算方式平攤給各層所有節(jié)點(diǎn),以獲得各節(jié)點(diǎn)的誤差信號,此信號即是各節(jié)點(diǎn)權(quán)值修正的依據(jù)。由輸入信號計算出輸出信號,然后獲取誤差信號,再進(jìn)行權(quán)值調(diào)整,這個流程就是神經(jīng)網(wǎng)絡(luò)的一次學(xué)習(xí)過程。通過不斷重復(fù)這個學(xué)習(xí)過程,使網(wǎng)絡(luò)的輸出誤差減小到可接受范圍,或者是完成預(yù)定的學(xué)習(xí)次數(shù),便認(rèn)為神經(jīng)網(wǎng)絡(luò)已完成學(xué)習(xí)。
1.3標(biāo)準(zhǔn)BP算法及其改進(jìn)
在標(biāo)準(zhǔn)算法上進(jìn)行一些改進(jìn),可以提高BP網(wǎng)絡(luò)的適應(yīng)性及應(yīng)用能力。本文針對學(xué)習(xí)中出現(xiàn)振蕩、平坦區(qū)域?qū)W習(xí)緩慢這2個方面采用了2種改進(jìn)算法:帶動量項標(biāo)準(zhǔn)算法與帶動量項自適應(yīng)學(xué)習(xí)率算法。
1.3.1帶動量項標(biāo)準(zhǔn)算法
標(biāo)準(zhǔn)BP算法在調(diào)整權(quán)值矩陣時,只按t時刻誤差梯度下降方向調(diào)整,沒有考慮之前時刻的梯度方向,從而導(dǎo)致訓(xùn)練過程振蕩,收斂緩慢。因此,在權(quán)值調(diào)整公式中增加一動量項。其表達(dá)式為
ΔW(t)=ηδX+αΔW(t-1)
(6)
可以發(fā)現(xiàn),增加的動量項即從前次權(quán)值調(diào)整量中取出部分疊加至本次調(diào)整中,α為動量系數(shù),一般由α∈(0,1)。動量項反映了對調(diào)整經(jīng)驗的積累,對于當(dāng)前調(diào)整起到一定阻尼作用。
1.3.2自適應(yīng)學(xué)習(xí)率算法
在標(biāo)準(zhǔn)算法中,學(xué)習(xí)率η為常數(shù),但在實際應(yīng)用中,如同網(wǎng)絡(luò)結(jié)構(gòu)的選擇一樣,很難確定一個始終適合的最佳學(xué)習(xí)率。過小的η使得訓(xùn)練在誤差曲面平坦處進(jìn)行緩慢,而η過大可能會使訓(xùn)練在誤差變化劇烈區(qū)域跨過較窄的“凹坑”,導(dǎo)致訓(xùn)練出現(xiàn)振蕩。如果學(xué)習(xí)率可以在訓(xùn)練過程中進(jìn)行適應(yīng)性更改,便可以很好地解決這些問題。
本文所采用的自適應(yīng)學(xué)習(xí)率算法在權(quán)值調(diào)整中仍然加入動量項,并對上述2種算法的學(xué)習(xí)效果進(jìn)行對比。
1.4Elman網(wǎng)絡(luò)
動態(tài)網(wǎng)絡(luò)必須在網(wǎng)絡(luò)中引入短時記憶功能,可以通過2種方式進(jìn)行,一種是通過演示單元儲存以前的輸入狀態(tài),另一種則是引入反饋是網(wǎng)絡(luò)成為動態(tài)系統(tǒng)。Elman網(wǎng)絡(luò)便屬于后者。
Elman網(wǎng)絡(luò)可以采用靜態(tài)BP算法來使計算較為簡便。但作為動態(tài)網(wǎng)絡(luò),Elman網(wǎng)絡(luò)的輸出不僅與當(dāng)前時刻輸入有關(guān),還與過去時刻的輸入有關(guān),因此對于精確計算應(yīng)采用動態(tài)學(xué)習(xí)規(guī)則。對于BP網(wǎng)絡(luò)的學(xué)習(xí)算法推倒采用了鏈?zhǔn)椒▌t的算法,而在Elman網(wǎng)絡(luò)中,一般采用有序鏈?zhǔn)椒▌t的算法。
2算例仿真與分析
本文就2種神經(jīng)網(wǎng)絡(luò)的不同算法和不同節(jié)點(diǎn)數(shù)分別進(jìn)行算例仿真,前面提到的彈丸動力學(xué)模型將用于生成訓(xùn)練數(shù)據(jù)。
2.1BP網(wǎng)絡(luò)彈道預(yù)測模型
本文模擬了5個、6個和7個隱層節(jié)點(diǎn)數(shù)的3種不同神經(jīng)網(wǎng)絡(luò),網(wǎng)絡(luò)訓(xùn)練結(jié)果如圖1~圖8所示。圖1~圖6依次顯示了隱層節(jié)點(diǎn)數(shù)由5個變化至7個時,網(wǎng)絡(luò)學(xué)習(xí)過程中瞬時誤差平方與誤差平方梯度變化的情況。瞬時誤差平方曲線與誤差梯度下降曲線縱軸均采用對數(shù)坐標(biāo)軸,下文亦同。圖7與圖8顯示了3個網(wǎng)絡(luò)進(jìn)行彈道預(yù)測的誤差情況。計算參數(shù)如下:彈丸初速為1 000m/s,擾動初速為995m/s,射角為45°,學(xué)習(xí)率為0.01,動量參數(shù)為0.9,學(xué)習(xí)終止條件為E 仿真結(jié)果如下: 網(wǎng)絡(luò)1:隱層節(jié)點(diǎn)數(shù)為5,仿真結(jié)果如圖1、圖2所示。 圖1 節(jié)點(diǎn)網(wǎng)絡(luò)誤差下降曲線 圖2 節(jié)點(diǎn)誤差梯度下降曲線 網(wǎng)絡(luò)2:隱層節(jié)點(diǎn)數(shù)為6,仿真結(jié)果如圖3、圖4所示。 圖3 節(jié)點(diǎn)網(wǎng)絡(luò)誤差下降曲線 圖4 節(jié)點(diǎn)誤差梯度下降曲線 網(wǎng)絡(luò)3:隱層節(jié)點(diǎn)數(shù)為7,仿真結(jié)果如圖5、圖6所示。 由圖1,圖3,圖5可以看到,網(wǎng)絡(luò)初始權(quán)值的隨機(jī)性雖然導(dǎo)致其實誤差平方各不相同,但網(wǎng)絡(luò)幾乎都可以在開始很少的訓(xùn)練批次內(nèi)使誤差平方下降到10-1這個數(shù)量級。當(dāng)誤差梯度逐漸減小至幾乎不發(fā)生變化時,可以判斷到達(dá)了誤差曲面的平坦區(qū)域,進(jìn)入了誤差極小點(diǎn)區(qū)域。但是否為全局極小無法判斷,這也是BP算法的缺陷。 由圖7與圖8可以看出,神經(jīng)網(wǎng)絡(luò)進(jìn)行彈道預(yù)測有著很高精度。3個網(wǎng)絡(luò)在射程與高度上的預(yù)測誤差都基本在0.5%范圍內(nèi)。但不同節(jié)點(diǎn)數(shù)之間預(yù)測誤差差異較大,6節(jié)點(diǎn)顯然是比較合適的隱層節(jié)點(diǎn)數(shù)。節(jié)點(diǎn)過少可能使網(wǎng)絡(luò)不具有足夠復(fù)雜程度學(xué)習(xí)樣本規(guī)律,不能很好地預(yù)測。而過度復(fù)雜的網(wǎng)絡(luò)則出現(xiàn)過度學(xué)習(xí)而降低了泛化能力,使得網(wǎng)絡(luò)外推的能力下降,導(dǎo)致誤差增大。 圖5 節(jié)點(diǎn)網(wǎng)絡(luò)誤差下降曲線 圖6 節(jié)點(diǎn)誤差梯度下降曲線 圖7 x方向網(wǎng)絡(luò)預(yù)測誤差 圖8 y方向網(wǎng)絡(luò)預(yù)測誤差 2.2Elman網(wǎng)絡(luò)彈道預(yù)測模型 Elman網(wǎng)絡(luò)采用算法與BP算法類似,基本思想依然是誤差反傳。本節(jié)討論了自適應(yīng)學(xué)習(xí)率情況下網(wǎng)絡(luò)的訓(xùn)練情況,仿真條件與前文所述相同。 本節(jié)采用自適應(yīng)學(xué)習(xí)率算法進(jìn)行Elman網(wǎng)絡(luò)訓(xùn)練,對隱層節(jié)點(diǎn)數(shù)由5增至7時3種不同網(wǎng)絡(luò)結(jié)構(gòu)的仿真模擬。圖9~14依然是不同節(jié)點(diǎn)數(shù)網(wǎng)絡(luò)的瞬時誤差平方下降曲線與誤差梯度下降曲線,圖15和圖16對3個網(wǎng)絡(luò)預(yù)測結(jié)果進(jìn)行對比。 仿真結(jié)果如下: 網(wǎng)絡(luò)1:隱層節(jié)點(diǎn)數(shù)為5,仿真結(jié)果如圖9、圖10所示。 圖9 5節(jié)點(diǎn)網(wǎng)絡(luò)誤差下降曲線 圖10 5節(jié)點(diǎn)誤差梯度下降曲線 網(wǎng)絡(luò)2:隱層節(jié)點(diǎn)數(shù)為6,仿真結(jié)果如圖11、圖12所示。 網(wǎng)絡(luò)3:隱層節(jié)點(diǎn)數(shù)為7,仿真結(jié)果如圖13、圖14所示。 由圖9、圖11和圖13可以看到,網(wǎng)絡(luò)誤差平方下降趨勢依然是不斷振蕩中快速到達(dá)較小水平,是明顯的自適應(yīng)學(xué)習(xí)率算法的特征。同時可以看到,誤差平方曲線在由快速下降向平緩下降的轉(zhuǎn)折過程越來越誤差梯度變化與學(xué)習(xí)率變化間的關(guān)系也與前文所述相同,出現(xiàn)此消彼長的狀態(tài)。 圖15與圖16顯示了網(wǎng)絡(luò)最終的預(yù)測精度,可以看出,使用自適應(yīng)學(xué)習(xí)率算法的Elman網(wǎng)絡(luò)基本達(dá)到了本文所有仿真網(wǎng)絡(luò)誤差的最低水平。特別是5節(jié)點(diǎn)網(wǎng)絡(luò),其x方向的誤差最大不足0.066%,幾乎可以認(rèn)為是準(zhǔn)確預(yù)測。而其他節(jié)點(diǎn)數(shù)網(wǎng)絡(luò)x、y 2個方向上的預(yù)測誤差幾乎都在0.1%以內(nèi),僅7節(jié)點(diǎn)網(wǎng)絡(luò)在y方向上的誤差為1.2%~1.4%。 圖11 6節(jié)點(diǎn)網(wǎng)絡(luò)誤差下降曲線 圖12 6節(jié)點(diǎn)誤差梯度下降曲線 圖13 7節(jié)點(diǎn)網(wǎng)絡(luò)誤差下降曲線 圖14 7節(jié)點(diǎn)誤差梯度下降曲線 圖15 x方向網(wǎng)絡(luò)預(yù)測誤差 圖16 y方向網(wǎng)絡(luò)預(yù)測誤差 3結(jié)論 本文對不同神經(jīng)網(wǎng)絡(luò)在彈道預(yù)測中的應(yīng)用進(jìn)行了數(shù)值研究,得到以下主要結(jié)論: 計算結(jié)果表明:壩基輕壤土(或砂壤土)在地震烈度7度時,就有開始破壞的可能性,在8度及其以上時地表下砂壤土全部液化及地表下10 m范圍內(nèi)中細(xì)砂層開始液化。飽和輕壤土(或砂壤土)抗震穩(wěn)定性最差,是引起地基液化破壞的主要土層。 1) 使用神經(jīng)網(wǎng)絡(luò)進(jìn)行彈道預(yù)測是可行的,而且具較高的計算精度。 2) 自適應(yīng)學(xué)習(xí)率算法能夠在相同條件下使網(wǎng)絡(luò)訓(xùn)練獲得更高的預(yù)測精度,有較高的實用價值。 3)Elman網(wǎng)絡(luò)相較于BP網(wǎng)絡(luò)的預(yù)測能力更好,動態(tài)系統(tǒng)應(yīng)利用動態(tài)網(wǎng)絡(luò)建模以更好地反映系統(tǒng)內(nèi)在規(guī)律。 以上研究結(jié)果為神經(jīng)網(wǎng)絡(luò)在彈道預(yù)測中的實際工程應(yīng)用提供了理論基礎(chǔ)。 參考文獻(xiàn): [1]張成.脈沖修正彈藥射程預(yù)測控制方法[J].彈道學(xué)報,2010,22(1):19-23. [2]王中原,史金光,李鐵鵬.彈道修正中的控制算法[J].彈道學(xué)報,2011,23(2):19-21,27. [3]張民權(quán),劉東方,王冬梅,等.彈道修正彈發(fā)展綜述[J].兵工學(xué)報,2010,31(S2):127-130. [4]史金光,徐明友,王中原,等.卡爾曼濾波在彈道修正彈落點(diǎn)推算中的應(yīng)用[J].彈道學(xué)報,2008,20(3):41-43. [6]陳映,文樹梁,程臻.一種基于多模型算法的純彈道式彈道落點(diǎn)預(yù)報方法[J].宇航學(xué)報,2010,31(7):1825-1831. [7]陳烺中,樊蓉,王冠男,等.TBM末端機(jī)動彈道預(yù)測[J].電光與控制,2006,13(4):9-12. [8]WoosungPark,Chang-KyungRyoo,ByoungSooKim,etal.ANewPracticalGuidanceLawforaGuidedProjectile[C]//AIAAguidance,navigation,andcontrolconference,2011.2011(1):826-834. [9]史忠植.神經(jīng)網(wǎng)絡(luò)[M].北京:高等教育出版社,2009. (責(zé)任編輯周江川)