羅珩娟 劉丙杰 張 慶
1.海軍潛艇學(xué)院戰(zhàn)略導(dǎo)彈與水中兵器系,青島 266199; 2.中國人民解放軍92330部隊,青島 266000
潛射導(dǎo)彈因其機動范圍廣、攻擊突然性強,裝彈數(shù)量多、反擊威力大等特點備受各大軍事強國重視。潛射導(dǎo)彈彈射出筒經(jīng)過水介質(zhì)出水至空中再進(jìn)入預(yù)定彈道,水下飛行段和出水段是潛射導(dǎo)彈發(fā)射所獨有的過程,對發(fā)射結(jié)果影響巨大。出筒速度是影響導(dǎo)彈水下彈道姿態(tài)和發(fā)射精度的關(guān)鍵因素之一[1],受眾多客觀條件影響,包括發(fā)射深度、海流速度、海浪高度、航速和氣幕彈等,其中發(fā)射深度是最重要的影響因素。因此,控制潛艇在適合深度發(fā)射導(dǎo)彈,對提高導(dǎo)彈發(fā)射的成功率、確保軍事任務(wù)完成率具有重要意義。目前,關(guān)于潛射導(dǎo)彈水中段飛行過程影響因素的研究主要包括海浪[2]、橫向流[3]和氣泡[4]等:文獻(xiàn)[2]通過構(gòu)建隨機海浪模型進(jìn)行統(tǒng)計仿真,得出了波浪對導(dǎo)彈彈道隨深度變化的規(guī)律。文獻(xiàn)[3]建立了導(dǎo)彈水下垂直發(fā)射橫向動力學(xué)模型,對出筒過程中的橫向振動進(jìn)行了仿真,提出了減小橫向流對導(dǎo)彈影響的有效方法。文獻(xiàn)[4]研究了發(fā)射筒口氣幕環(huán)境對導(dǎo)彈出筒過程中的受力影響并進(jìn)行了仿真計算,結(jié)果證明氣幕對出筒過程力學(xué)環(huán)境改變明顯,影響導(dǎo)彈水中姿態(tài)。
本文通過相關(guān)分析,找到了影響潛射導(dǎo)彈出筒速度的最關(guān)鍵因素,即發(fā)射深度。在實測發(fā)射試驗數(shù)據(jù)的基礎(chǔ)上,使用三次樣條差值方法,擴(kuò)充樣本數(shù)量并利用RBF神經(jīng)網(wǎng)絡(luò)、遺傳神經(jīng)網(wǎng)絡(luò)和支持向量回歸機分別對出筒速度模型進(jìn)行訓(xùn)練,分別預(yù)測不同發(fā)射深度條件下潛射導(dǎo)彈出筒速度,對確保導(dǎo)彈安全可靠的發(fā)射意義重大。
相關(guān)分析[5]是研究事物之間是否關(guān)聯(lián)且關(guān)聯(lián)程度的統(tǒng)計方法。兩個變量X,Y,如果X會隨著Y的變化而變化,則認(rèn)為兩個變量相關(guān),相關(guān)程度一般通過相關(guān)系數(shù)r表示。
(1)
相關(guān)系數(shù)r數(shù)值含義如表1所示。
表1 相關(guān)系數(shù)r含義表
利用SPSS分析軟件分別求的各影響因素與出筒速度的相關(guān)系數(shù)、顯著性如表2所示。
表2 各影響因素相關(guān)分析結(jié)果
可以看出出筒速度與發(fā)射深度相關(guān)性系數(shù)r=-0.634,顯著性為0.01,即出筒速度與發(fā)射深度負(fù)相關(guān),相關(guān)性較強,與海浪、波高、橫向海流等其他因素相比,對出筒速度影響更大。
RBF神經(jīng)網(wǎng)絡(luò)[6],稱為徑向基函數(shù)神經(jīng)網(wǎng)絡(luò),是一種單隱層的前饋神經(jīng)網(wǎng)絡(luò),其中隱層為徑向基層。RBF神經(jīng)網(wǎng)絡(luò)用徑向函數(shù)作為隱含層的“基”,輸入層變量可以直接映射到隱含層空間。徑向函數(shù)的中心點確定,映射關(guān)系對應(yīng)產(chǎn)生,不再進(jìn)行加權(quán)運算,所以收斂速度提高且不容易陷入局部最優(yōu),在工程領(lǐng)域應(yīng)用廣泛。RBF網(wǎng)絡(luò)訓(xùn)練時,不斷調(diào)整徑向函數(shù)中心、方差以及隱層到輸出層的權(quán)重值得到最優(yōu)解。徑向函數(shù)的選擇對網(wǎng)絡(luò)訓(xùn)練結(jié)果影響不大,最常用的是高斯函數(shù),表達(dá)式為:
(2)
式中X=(x1,x2,x3,…,xn)為n維輸入向量;cj為第j個基函數(shù)的中心;σj為第j個神經(jīng)元的標(biāo)準(zhǔn)化常數(shù),即高斯基函數(shù)的方差;n和p分別為輸入層和隱含層的神經(jīng)元的個數(shù)。網(wǎng)絡(luò)輸入和輸出之間的關(guān)系表達(dá)式為:
(3)
式中m為輸出層神經(jīng)元的個數(shù);yi為輸出層第i個神經(jīng)元的輸出值;wj,i為隱含層第j個單元與輸出層第i個單元之間的連接權(quán)值。
遺傳算法(Genetic Algorithm,GA)[7]是對自然進(jìn)化優(yōu)勝劣汰,適者生存過程的模擬,通過選擇、交叉、變異的三種運算方法進(jìn)行問題求解。遺傳算法有很好的全局優(yōu)化能力,可以將其與BP神經(jīng)網(wǎng)絡(luò)[7]相結(jié)合尋求問題最優(yōu)解。
遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)[8]主要可以分為3個環(huán)節(jié),即:BP神經(jīng)網(wǎng)絡(luò)的建立,GA優(yōu)化權(quán)重和閾值,BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練與預(yù)測,其基本流程如圖1所示。
具體步驟為:
1)創(chuàng)建神經(jīng)網(wǎng)絡(luò)
根據(jù)待解決問題需要建立神經(jīng)網(wǎng)絡(luò),確定網(wǎng)絡(luò)隱含層層數(shù),節(jié)點數(shù)和初始權(quán)重值和閾值。研究表明單隱層BP神經(jīng)網(wǎng)絡(luò)就可以解決絕大多數(shù)預(yù)測問題,故創(chuàng)建單隱層BP神經(jīng)網(wǎng)絡(luò)。
2)種群初始化與編碼
對輸入層到隱含層權(quán)重、隱含層閾值、隱含層到輸出層權(quán)重、輸出層閾值進(jìn)行編碼,并隨機選擇初始種群。
3)構(gòu)造適應(yīng)度函數(shù)
為了使BP網(wǎng)絡(luò)預(yù)測更加準(zhǔn)確,構(gòu)造預(yù)測值與真實值誤差函數(shù)倒數(shù)為適應(yīng)度函數(shù)。
圖1 遺傳神經(jīng)網(wǎng)絡(luò)建立流程
4)遺傳算法優(yōu)化權(quán)重和閾值
遺傳算子包括選擇算子、交叉算子和變異算子3種,概率為ps,pc和pm,選擇算子采用隨機選擇,交叉算子采用單點交叉方法,變異算子按pm概率產(chǎn)生變異基因數(shù),如原基因編碼為1,則變異為0,原基因編碼為0,則變異為1。
5)網(wǎng)絡(luò)訓(xùn)練和測試
將優(yōu)化后的權(quán)重和閾值代入BP神經(jīng)網(wǎng)絡(luò),計算預(yù)測誤差是否滿足用戶需求,如滿足網(wǎng)絡(luò)訓(xùn)練結(jié)束,如不滿足返回步驟3。
支持向量機(Support Vector Machines,SVM)是由Vapnik教授在1995年提出的,主要解決有限樣本的學(xué)習(xí)問題,是目前泛化能力最強的技術(shù)之一,也是最適合小樣本學(xué)習(xí)的技術(shù)之一。在SVM基礎(chǔ)上引入不敏感損失函數(shù)ε,從而得到支持向量回歸機(Support Vector Regression,SVR)[9],基本原理是尋找一個最優(yōu)面使所有訓(xùn)練樣本離該最優(yōu)面誤差最小。通過發(fā)射試驗結(jié)果基本可以看出出筒速度與發(fā)射深度是非線性關(guān)系,SVR將非線性關(guān)系的輸入向量映射到一個高維度空間,在高維空間做線性回歸分析,然后用一個核函數(shù)來代替高維空間中的內(nèi)積運算,減輕了運算的復(fù)雜程度。
假設(shè)我們用一個線性函數(shù)f(x)=ω·x+b表示(xi,yi),i=1,2,…,n的回歸方程,其中xi為輸入向量,yi為輸出向量,因此我們只需要求的ω和b即可確定回歸方程。
支持向量回歸機是基于統(tǒng)計學(xué)習(xí)理論的基于結(jié)構(gòu)風(fēng)險最小化原理,ε不敏感損失函數(shù)的定義是:
(4)
式中f(x)為回歸函數(shù)的預(yù)測值,y為真實值,即真實值與預(yù)測值之差小于等于ε時,則損失為0。引入ξ和ξ*為非負(fù)的松弛變量,目標(biāo)函數(shù)表示為
(5)
(6)
K(xi·x)是核函數(shù),常見的有多項式核函數(shù)、高斯核函數(shù)、徑向基數(shù)核函數(shù)和Sigmoid核函數(shù)等。
某型潛射導(dǎo)彈共進(jìn)行了25次發(fā)射試驗,試驗數(shù)據(jù)如表3所示,散點圖如圖2所示。
表3 導(dǎo)彈發(fā)射試驗數(shù)據(jù)
圖2 發(fā)射試驗結(jié)果散點圖
潛射導(dǎo)彈試驗次數(shù)有限,為提高模型訓(xùn)練準(zhǔn)確度,引入cubic spline插值法,增加樣本數(shù)量后訓(xùn)練模型。
樣條插值最早應(yīng)用于工業(yè)設(shè)計中,目的是為得到光滑的曲線,三次樣條插值法(Cubic Spline Interpolation)[10]是其中應(yīng)用較為廣泛的一種。在數(shù)學(xué)上,三次樣條插值主要用于函數(shù)擬合,使用三次多項式的擬合效果更好,更加符合實際要求。
經(jīng)過三次樣條插值處理,將原試驗25組數(shù)據(jù)基礎(chǔ)上擴(kuò)展至1000組數(shù)據(jù)并繪制曲線,水下發(fā)射試驗出筒速度與發(fā)射深度的對應(yīng)關(guān)系如圖3所示:
圖3 插值處理后發(fā)射試驗數(shù)據(jù)曲線圖
三種模型訓(xùn)練均使用Matlab R2013b軟件運行,取擴(kuò)展后的前500組數(shù)據(jù)進(jìn)行訓(xùn)練后,對全樣本進(jìn)行預(yù)測,運行環(huán)境如下:操作系統(tǒng):Window7,Intel(R)Core(TM)i5-4300M,主頻2.60GHz,內(nèi)存2.99GB。
3.2.1 RBF網(wǎng)絡(luò)訓(xùn)練
根據(jù)導(dǎo)彈發(fā)射試驗數(shù)據(jù),調(diào)用newrb函數(shù)建立RBF神經(jīng)網(wǎng)絡(luò)[11],訓(xùn)練函數(shù)為Levenberg-Marquardt函數(shù),訓(xùn)練方法為正交最小二乘法,收斂速度相對較快。網(wǎng)絡(luò)經(jīng)過訓(xùn)練后預(yù)測結(jié)果如圖4所示。
圖4 RBF神經(jīng)網(wǎng)絡(luò)預(yù)測結(jié)果
3.2.2 遺傳神經(jīng)網(wǎng)絡(luò)訓(xùn)練
利用遺傳神經(jīng)網(wǎng)絡(luò)預(yù)測出筒速度,調(diào)用newff函數(shù),創(chuàng)建單隱層BP神經(jīng)網(wǎng)絡(luò),隱層神經(jīng)元個數(shù)為32個,訓(xùn)練目標(biāo)為0.001,最大迭代次數(shù)16000次,遺傳算法運行參數(shù)設(shè)定如表4所示,優(yōu)化前后連接權(quán)重與閾值對比如表5所示。
表4 遺傳算法運行參數(shù)
表5 優(yōu)化前后網(wǎng)絡(luò)權(quán)重和閾值
使用隨機權(quán)重和閾值的BP神經(jīng)網(wǎng)絡(luò)進(jìn)行導(dǎo)彈出筒速度預(yù)測,經(jīng)過4297次訓(xùn)練迭代后,模型均方誤差縮小到9.968×10-4,誤差估值與原值間擬合效果如圖5和圖6所示。
圖5 BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練效果
圖6 BP神經(jīng)網(wǎng)絡(luò)擬合效果
使用遺傳算法優(yōu)化權(quán)重和閾值的BP神經(jīng)網(wǎng)絡(luò)進(jìn)行導(dǎo)彈出筒速度預(yù)測,經(jīng)過 3221次訓(xùn)練迭代后,模型均方誤差縮小到 9.872×10-4,誤差估值與原值間擬合效果如圖7和圖8所示。
圖7 遺傳神經(jīng)網(wǎng)絡(luò)訓(xùn)練效果
圖8 遺傳神經(jīng)網(wǎng)絡(luò)擬合效果
優(yōu)化后預(yù)測結(jié)果如圖所示:
圖9 遺傳神經(jīng)網(wǎng)絡(luò)預(yù)測結(jié)果
3.2.3 支持向量回歸機訓(xùn)練
利用SVR預(yù)測出筒速度,調(diào)用svmreg函數(shù),設(shè)定懲罰因子C為1111,ε為0.01。已證明RBF核函數(shù)對應(yīng)的模型泛化能力最好,選用高斯函數(shù)做核函數(shù),預(yù)測結(jié)果如圖10所示。
圖10 支持向量回歸機預(yù)測結(jié)果
綜合對比3種模型,訓(xùn)練時間與預(yù)測精度稍有差異,對比結(jié)果如表6所示:
表6 模型預(yù)測結(jié)果對比
根據(jù)表6可以看出基于GA-BP網(wǎng)絡(luò)模型的訓(xùn)練時間最長但預(yù)測精確度最高,基于SVR模型的訓(xùn)練時間最短,預(yù)測精度也較高,充分證明了SVR適合小樣本學(xué)習(xí)的優(yōu)勢。導(dǎo)彈發(fā)射對可靠性要求極高,因此模型預(yù)測精確最為重要,建議選用GA-BP或SVR模型進(jìn)行導(dǎo)彈出筒速度預(yù)測。
針對潛射導(dǎo)彈出筒速度影響因素的問題,根據(jù)基于實測潛射導(dǎo)彈發(fā)射試驗數(shù)據(jù),分析對比了導(dǎo)彈出筒速度與發(fā)射深度、海流速度和有效波高之間的相關(guān)程度并利用RBF神經(jīng)網(wǎng)絡(luò)、遺傳神經(jīng)網(wǎng)絡(luò)和支持向量回歸機建立模型,預(yù)測特定發(fā)射深度下的導(dǎo)彈水下發(fā)射出筒速度。結(jié)果表明:發(fā)射深度與導(dǎo)彈出筒速度呈負(fù)相關(guān),是最顯著的影響因素?;谥С窒蛄炕貧w機的模型訓(xùn)練時間最短,基于遺傳神經(jīng)網(wǎng)絡(luò)的模型預(yù)測精確度最高。為進(jìn)一步提高預(yù)測精度,未來將使用深度置信網(wǎng)絡(luò)、廣義回歸網(wǎng)絡(luò)等深度學(xué)習(xí)[12]方法建模預(yù)測,為探索潛射導(dǎo)彈的大深度發(fā)射提供依據(jù)。