劉勝道,何保委,趙文春,周國(guó)華
(海軍工程大學(xué) 電氣工程學(xué)院, 湖北 武漢 430033)
磁隱身技術(shù)是保障潛艇生命力的重要手段,主要方法是潛艇定期前往消磁站進(jìn)行消磁處理,以降低大部分固定磁場(chǎng);其次,消磁系統(tǒng)能夠有效地補(bǔ)償感應(yīng)磁場(chǎng)和部分剩余固定磁場(chǎng)。由于地球磁場(chǎng)、海浪沖擊、鐵磁設(shè)備運(yùn)行等因素影響,潛艇的固定磁場(chǎng)會(huì)逐漸積累,最終超出控制指標(biāo),而目前的消磁系統(tǒng)不能實(shí)時(shí)監(jiān)測(cè)和補(bǔ)償固定磁場(chǎng)的變化[1-2]。為實(shí)現(xiàn)對(duì)潛艇生命力的最佳保護(hù),提高消磁保障效率,應(yīng)對(duì)潛艇的固定磁場(chǎng)進(jìn)行實(shí)時(shí)跟蹤和補(bǔ)償。
由內(nèi)部磁場(chǎng)來(lái)推算外部磁場(chǎng)是其中一種有效的監(jiān)測(cè)手段,即在潛艇內(nèi)部特征位置安裝多個(gè)磁傳感器,通過(guò)測(cè)量潛艇內(nèi)部磁場(chǎng)來(lái)實(shí)時(shí)推算其在某一深度或高度的磁場(chǎng)值。文獻(xiàn)[3-5]推導(dǎo)了基于虛擬磁源法的磁場(chǎng)推算模型,文獻(xiàn)[6]在此基礎(chǔ)上進(jìn)行了空心圓筒實(shí)驗(yàn);文獻(xiàn)[7-8]采用了徑向基神經(jīng)網(wǎng)絡(luò)算法,并提高了推算精度。上述實(shí)驗(yàn)中,內(nèi)部磁傳感器懸吊在船模內(nèi)部的方式并不符合實(shí)際。從安全性出發(fā),內(nèi)部磁傳感器一般布置在兩層殼體之間,此時(shí)傳感器距離殼體和鐵磁設(shè)備非常接近,其測(cè)量值所受影響也相當(dāng)大,而且固定磁場(chǎng)的變化具有不確定性,因此其外推方法一直制約著閉環(huán)消磁技術(shù)的發(fā)展。
在艦艇消磁勤務(wù)中,通常十?dāng)?shù)次通電即可完成消磁任務(wù),而神經(jīng)網(wǎng)絡(luò)算法一般需要大量數(shù)據(jù)用于訓(xùn)練模型,傳統(tǒng)的深度換算更不可能進(jìn)行外部磁場(chǎng)推算。本文提出了基于最小二乘支持向量機(jī)(Least Squares Support Vector Machine, LS-SVM)的潛艇內(nèi)外磁場(chǎng)映射方法,采用雙殼體潛艇模型作為實(shí)驗(yàn)平臺(tái),將內(nèi)部磁傳感器布置在夾層之間,以潛艇外部垂向固定磁場(chǎng)為研究對(duì)象,進(jìn)行了仿真分析和艇模實(shí)驗(yàn)。
磁場(chǎng)的變化來(lái)源于磁矩的變化[5]。對(duì)于同一個(gè)磁源來(lái)說(shuō),測(cè)量點(diǎn)的磁場(chǎng)變化量與磁矩變化量的關(guān)系式為:
ΔH=C·ΔM
(1)
式中:ΔH是磁場(chǎng)變化量,C是測(cè)量點(diǎn)磁場(chǎng)和磁源的關(guān)系矩陣,ΔM是磁矩變化量。
對(duì)于同一艘潛艇,可以分別得到其內(nèi)外磁場(chǎng)與磁源的關(guān)系。
(2)
其中:ΔHn和ΔHw分別是潛艇內(nèi)外磁場(chǎng)變化量,Cn和Cw分別是內(nèi)外磁場(chǎng)和磁源的關(guān)系矩陣,[ΔM1ΔM2…ΔMk]是每一個(gè)磁矩的變化量。
式(2)最終可化為:
ΔHw=K·ΔHn
(3)
式中,K是由內(nèi)到外的磁場(chǎng)映射矩陣。測(cè)量點(diǎn)一旦固定,K即為常數(shù)。這表明只需得到多組潛艇內(nèi)外磁場(chǎng)值用于求解K,即可通過(guò)內(nèi)部磁場(chǎng)直接推算出外部磁場(chǎng)。
潛艇內(nèi)部結(jié)構(gòu)復(fù)雜,鐵磁設(shè)備繁多,固定磁場(chǎng)在航行過(guò)程中不斷積累和變化,具有不確定性,直接求解K十分困難。
最小二乘支持向量機(jī)是基于支持向量機(jī)的改進(jìn)算法,它區(qū)別于神經(jīng)網(wǎng)絡(luò)中依賴樣本數(shù)量的經(jīng)驗(yàn)風(fēng)險(xiǎn)最小化原理,采用了結(jié)構(gòu)風(fēng)險(xiǎn)最小化準(zhǔn)則[9],不單純追求損失函數(shù)最小化,有效避免了在小樣本條件下的過(guò)擬合現(xiàn)象。
LS-SVM用于回歸預(yù)測(cè)的基本思想是將樣本映射至高維空間,通過(guò)構(gòu)建決策函數(shù),把非線性問(wèn)題轉(zhuǎn)化為線性問(wèn)題。LS-SVM能夠解決具有小樣本、特征點(diǎn)多、局部變化等特點(diǎn)的分類與回歸問(wèn)題,非常適用于解決固定磁場(chǎng)推算這類應(yīng)用。其基本原理如下:
給定樣本D={(xi,yi),i=1,2,…,k,xi∈Rm,yi∈Rn},xi和yi分別為輸入和輸出矩陣,通過(guò)映射函數(shù)φ(x)將樣本映射至高維空間。
y=ωΤφ(x)+b
(4)
式中:ω為權(quán)值矩陣,b為偏置量。
基于結(jié)構(gòu)風(fēng)險(xiǎn)最小化原理,該模型需要解決以下規(guī)劃問(wèn)題:
(5)
yi=ωΤφ(xi)+b+ei,i=1,2,…,k
(6)
其中:J為懲罰函數(shù),e為輸出誤差,γ為懲罰參數(shù)。
此時(shí)對(duì)式(5)和式(6)引入拉格朗日函數(shù),則有:
(7)
式中,?i為拉格朗日系數(shù)。
分別對(duì)參數(shù)ω、b、e、?求偏導(dǎo),根據(jù)KKT條件[10]消除變量ω和e,式(4)的最終回歸函數(shù)為:
(8)
LS-SVM模型參數(shù)的選取對(duì)訓(xùn)練效果影響巨大,其中最主要的是樣本懲罰參數(shù)γ和核函數(shù)參數(shù)σ,常用的尋優(yōu)方法有交叉驗(yàn)證法、粒子群算法、網(wǎng)格搜索法和遺傳算法[11]等。采用網(wǎng)格搜索法結(jié)合10折交叉驗(yàn)證法來(lái)尋找最佳參數(shù),優(yōu)化映射模型,既能保證訓(xùn)練精度也能滿足訓(xùn)練效率。交叉驗(yàn)證法基本流程如下:
步驟1:不重復(fù)抽樣將原始數(shù)據(jù)隨機(jī)分成10份。
步驟2:每一次挑選其中1份作為測(cè)試集,剩余9份作為訓(xùn)練集。
步驟3:多次重復(fù)步驟2,使得每個(gè)子集都有一次機(jī)會(huì)作為測(cè)試集。
步驟4:每次訓(xùn)練得到一個(gè)模型,用這個(gè)模型在測(cè)試集上測(cè)試,保存模型的參數(shù)指標(biāo)。
步驟5:計(jì)算10組測(cè)試結(jié)果的誤差平均值作為該模型的最終性能指標(biāo)。
仿真分析采用雙殼體潛艇簡(jiǎn)易模型,其參數(shù)見(jiàn)表1。
表1 潛艇模型參數(shù)
表1中,艇模的磁導(dǎo)率為200,內(nèi)部含有若干小立方體殼模擬鐵磁設(shè)備。27個(gè)內(nèi)部磁傳感器環(huán)繞內(nèi)殼沿艇??v向分布,15個(gè)外部磁傳感器沿龍骨正下方放置于標(biāo)準(zhǔn)測(cè)量平面,如圖1所示。
圖1 艇模內(nèi)部示意圖Fig.1 Sketch map of submarine model
將艇模剖分成若干單元,每個(gè)單元的磁化強(qiáng)度可認(rèn)為是常數(shù)。由積分方程法[12]反演得到磁矩,通過(guò)改變固定磁矩大小,同時(shí)得到若干組內(nèi)外固定磁場(chǎng)用于后續(xù)的數(shù)值計(jì)算。值得注意的是,任何物體的磁矩都不是獨(dú)立的,相鄰的磁矩間存在連續(xù)性,即單個(gè)磁矩不能發(fā)生過(guò)強(qiáng)的突變。因此,在給定磁矩變化量時(shí),相鄰磁矩的變化量必定是連續(xù)變化的。積分方程法流程如圖2所示。
圖2 積分方程法流程圖Fig.2 Diagram of integral equation method
仿真共獲取100組內(nèi)外磁場(chǎng)值,將第一組作為測(cè)試樣本,其余組作為訓(xùn)練樣本,研究在樣本數(shù)目不同的情況下,對(duì)外部磁場(chǎng)推算結(jié)果的影響。定義誤差計(jì)算公式為:
(9)
式中:ΔH′w為推算值,ΔHw為仿真值,n為外部測(cè)量點(diǎn)數(shù)。
將外部垂向磁場(chǎng)仿真值作為標(biāo)準(zhǔn)值,分別計(jì)算LS-SVM算法和徑向基神經(jīng)網(wǎng)絡(luò)(Radius Basis Function Neural Network, RBFNN)算法推算值的誤差,結(jié)果見(jiàn)表2。
表2 訓(xùn)練樣本不同時(shí)LS-SVM和RBFNN推算誤差比較
由表2可知,隨著訓(xùn)練樣本的減少,LS-SVM算法的誤差相差不大,而RBFNN算法因?yàn)槭チ瞬糠钟行?shù)據(jù),誤差有所增大。
因此,將每一組數(shù)據(jù)作為測(cè)試樣本,其余99組作為訓(xùn)練樣本,得到每一組測(cè)試樣本所對(duì)應(yīng)的外部磁場(chǎng)推算值,推算誤差如圖3所示。
圖3 仿真分析下LS-SVM和RBFNN推算誤差比較Fig.3 Extrapolation error comparison of LS-SVM and RBFNN of simulated analysis
最小二乘支持向量機(jī)的推算精度明顯優(yōu)于徑向基神經(jīng)網(wǎng)絡(luò)算法,其誤差一般在4%以下,最大誤差為10.02%。由于固定磁場(chǎng)變化復(fù)雜,訓(xùn)練樣本過(guò)少,造成RBFNN推算結(jié)果誤差很大甚至失真。相比之下,LS-SVM能夠降低因上述問(wèn)題所帶來(lái)的誤差。
在潛艇的兩層殼體之間布置27個(gè)三分量磁傳感器作為內(nèi)部測(cè)量點(diǎn),潛艇模型外殼封裝完畢后,將其放在測(cè)量平臺(tái)上,在龍骨正下方標(biāo)準(zhǔn)測(cè)量深度平面放置15個(gè)磁傳感器作為外部測(cè)量點(diǎn)。實(shí)驗(yàn)過(guò)程如下:
步驟1:測(cè)量艇模原始磁場(chǎng)。
步驟2:隨機(jī)改變縱向、橫向或垂向補(bǔ)償線圈電流,同時(shí)給工作線圈施加交變衰減的電流,從而改變艇模的固定磁場(chǎng)。
步驟3:每次通電完畢后,斷開(kāi)所有電流,記錄此時(shí)的內(nèi)外磁場(chǎng)值,再進(jìn)行下一次通電。
步驟4:將所有磁場(chǎng)值匯總處理。
實(shí)驗(yàn)共獲取100組磁場(chǎng)值,取其中1組作為測(cè)試樣本,其余99組作為訓(xùn)練樣本,得到每一組測(cè)試樣本所對(duì)應(yīng)的外部磁場(chǎng)推算值。將外部垂向磁場(chǎng)測(cè)量值作為標(biāo)準(zhǔn)值,分別計(jì)算LS-SVM算法和RBFNN算法推算值的誤差,結(jié)果如圖4所示。
圖4 實(shí)驗(yàn)分析下LS-SVM與RBFNN推算誤差比較Fig.4 Extrapolation error comparison of LS-SVM and RBFNN of experimental analysis
在艇模實(shí)驗(yàn)中,最小二乘支持向量機(jī)的推算精度同樣明顯優(yōu)于徑向基神經(jīng)網(wǎng)絡(luò)算法,其誤差一般在 6%以下,最大誤差為12.76%。
仿真和實(shí)驗(yàn)結(jié)果都證明了基于LS-SVM的內(nèi)外映射法能夠準(zhǔn)確得到潛艇外部固定磁場(chǎng)的變化量。其中實(shí)驗(yàn)結(jié)果產(chǎn)生誤差的原因主要有以下兩個(gè)方面:
1)實(shí)驗(yàn)過(guò)程中,磁傳感器受外界環(huán)境干擾而發(fā)生變化;
2)傳感器存在測(cè)量誤差以及算法本身的計(jì)算誤差。
本文采用基于LS-SVM的內(nèi)外磁場(chǎng)映射方法來(lái)推算潛艇外部垂向固定磁場(chǎng),仿真和實(shí)驗(yàn)結(jié)果吻合較好,在誤差范圍內(nèi)能夠滿足技術(shù)要求。與RBFNN算法相比,LS-SVM有著更好的泛化能力和推算精度,且不需要大量的樣本用于訓(xùn)練模型,符合艦艇消磁勤務(wù)工作實(shí)際,具有較強(qiáng)的實(shí)用性。下一步研究考慮在該方法的基礎(chǔ)上,對(duì)內(nèi)部磁傳感器的安裝位置及數(shù)目進(jìn)行優(yōu)化,不斷提高推算精度。