孟耀, 張秀鳳, 陳雨農(nóng)
(大連海事大學(xué) 航海學(xué)院,遼寧 大連 116026)
船舶操縱運(yùn)動(dòng)數(shù)學(xué)模型主要分為整體型數(shù)學(xué)模型、分離型數(shù)學(xué)模型、響應(yīng)型數(shù)學(xué)模型。整體型數(shù)學(xué)模型需要計(jì)算大量的水動(dòng)力導(dǎo)數(shù),且有的水動(dòng)力導(dǎo)數(shù)物理意義不明確;分離型數(shù)學(xué)模型起源于日本,在我國(guó)運(yùn)用較廣泛;響應(yīng)型數(shù)學(xué)模型以舵角為輸入,船舶艏向角和轉(zhuǎn)艏角速度為輸出,在控制領(lǐng)域運(yùn)用廣泛,且已被應(yīng)用到了船舶航向、航跡自動(dòng)保持控制中[1]。船舶響應(yīng)型模型準(zhǔn)確的參數(shù)值對(duì)于船舶運(yùn)動(dòng)狀態(tài)預(yù)報(bào)至關(guān)重要,其中K、T指數(shù)的計(jì)算方法有野本標(biāo)準(zhǔn)Z形操縱試驗(yàn)法、回歸公式估算法等[2]。早期船舶運(yùn)動(dòng)數(shù)學(xué)模型參數(shù)辨識(shí)算法有最小二乘[3]、拓展卡爾曼濾波[4]、最大似然估計(jì)[5]、反步法[6]等。
隨著智能算法及控制理論的發(fā)展,多新息理論[7-8]和非線(xiàn)性新息理論[9-10]被應(yīng)用于傳統(tǒng)算法的優(yōu)化研究,并利用優(yōu)化后的辨識(shí)算法實(shí)現(xiàn)了船舶分離型數(shù)學(xué)模型、船舶響應(yīng)型數(shù)學(xué)模型的參數(shù)辨識(shí)。新息理論的應(yīng)用使得傳統(tǒng)算法的收斂性、精確性提高,預(yù)報(bào)結(jié)果更加貼近于試驗(yàn)數(shù)據(jù)。除此之外,一些智能算法被應(yīng)用于船舶數(shù)學(xué)模型的參數(shù)辨識(shí)。褚式新等[11]利用粒子群算法對(duì)遞推最小二乘算法到的參數(shù)辨識(shí)結(jié)果進(jìn)一步優(yōu)化,得到更加準(zhǔn)確的無(wú)人艇響應(yīng)模型操縱性指數(shù)。謝朔等[12]、張心光等[13]利用支持向量機(jī)(support vector machine, SVM)在線(xiàn)辨識(shí)了船舶響應(yīng)型數(shù)學(xué)模型的操縱性指數(shù),證實(shí)了SVM是一種有效的在線(xiàn)參數(shù)辨識(shí)方案。另外,SVM也被應(yīng)用到其他領(lǐng)域[14-15]?;依撬惴?grey wolf optimizer, GWO)具有參數(shù)少、易調(diào)節(jié)、搜索能力強(qiáng)以及尋優(yōu)速度快等優(yōu)點(diǎn),應(yīng)用于較多的研究領(lǐng)域[16-17],如機(jī)器學(xué)習(xí)算法的超參數(shù)優(yōu)化[18]、路徑規(guī)劃[19]以及參數(shù)辨識(shí)[20]等方面,并且在這些應(yīng)用領(lǐng)域都取得了較好的研究成果。
由于環(huán)境干擾、樣本數(shù)據(jù)選擇以及算法參數(shù)設(shè)置不合理等影響,算法的回歸精度會(huì)降低,辨識(shí)的參數(shù)會(huì)不準(zhǔn)確。因此,本文利用改進(jìn)灰狼算法(modified grey wolf optimizer, MGWO)對(duì)辨識(shí)參考值進(jìn)一步優(yōu)化,使回歸預(yù)報(bào)、參數(shù)辨識(shí)的結(jié)果更加準(zhǔn)確。將從高精度航海模擬器中獲得的大型油輪的10°/10°、20°/20° Z形試驗(yàn)數(shù)據(jù)進(jìn)行處理,并應(yīng)用SVR和MGWO算法實(shí)現(xiàn)大型油輪操縱性指數(shù)辨識(shí)。為了提高參數(shù)辨識(shí)的準(zhǔn)確度,本文利用支持向量回歸(support vector regression, SVR)辨識(shí)10°/10° Z形試驗(yàn)數(shù)據(jù)得到K、T指數(shù)的辨識(shí)參考值。當(dāng)參考值不準(zhǔn)確時(shí),利用MGWO算法對(duì)參考值進(jìn)行優(yōu)化。將本文算法得到的辨識(shí)結(jié)果與基于遺忘因子的遞推最小二乘(recursive least squares with forgetting factor, FFRLS)[21]得到的結(jié)果進(jìn)行對(duì)比,驗(yàn)證優(yōu)化后辨識(shí)結(jié)果的準(zhǔn)確性。
船舶響應(yīng)型數(shù)學(xué)模型可以用來(lái)描述船舶操縱性能,其反映的是船舶艏向角對(duì)舵角變化的響應(yīng),在控制領(lǐng)域運(yùn)用廣泛。本文所用一階和二階艏向角響應(yīng)線(xiàn)性方程分別為:
(1)
(2)
令p=T1T2,q=T1+T2,將式(1)和式(2)向前差分離散化,得到:
r(k+1)=a11r(k)+b11δ(k)
(3)
r(k+1)=a21r(k)+a22r(k-1)+b21δ(k)+
b22δ(k-1)
(4)
式中:k為樣本序列;a11、a21、a22、b11、b21、b22為待辨識(shí)參數(shù),采樣間隔h=1 s;n為樣本總數(shù),系統(tǒng)的輸入輸出數(shù)據(jù)如表1所示。
表1 系統(tǒng)輸入輸出數(shù)據(jù)Table 1 System input and output data
表1中,一階線(xiàn)性響應(yīng)模型辨識(shí)值轉(zhuǎn)換為K、T指數(shù)分別為:
(5)
將二階線(xiàn)性響應(yīng)型數(shù)學(xué)模型辨識(shí)值轉(zhuǎn)換為K、T:
(6)
SVR的原理是將樣本數(shù)據(jù)變換到高維特征空間,在高維特征空間中對(duì)樣本數(shù)據(jù)進(jìn)行回歸擬合[22]。本文通過(guò)建立的輸入、輸出樣本數(shù)據(jù)(xi,yi),建立高維空間的回歸擬合函數(shù),并引入不敏感損失函數(shù)及懲罰函數(shù),分別為:
f(x)=ωφ(x)+b
(7)
(8)
式中:f(x)為回歸擬合函數(shù);ω為權(quán)重;φ(x)為非線(xiàn)性映射函數(shù);b為偏置;R為懲罰函數(shù);C為懲罰因子;Lε(y)為不敏感損失函數(shù);ε為不敏感系數(shù);n為樣本總量。
引入非負(fù)松弛變量ξ、ξ*,得到最小化風(fēng)險(xiǎn)函數(shù)fc以求取ω和b:
(9)
(10)
GWO算法[23]受啟發(fā)于灰狼捕食獵物的行為,該算法主要包含4個(gè)階段,分別為劃分狼群、包圍獵物、追捕獵物、攻擊獵物。
1)劃分狼群:按照適應(yīng)度值的高低,將狼群劃分為4個(gè)等級(jí),由高到低依次為α、β、η、ω。
2)包圍獵物:對(duì)GWO算法的線(xiàn)性收斂因子進(jìn)行改進(jìn),使得該算法的全局搜索能力加強(qiáng)。在包圍獵物時(shí),每個(gè)灰狼的位置不斷更新,更新方式為:
(11)
式中:D是灰狼與獵物之間的距離向量;X是灰狼位置向量;XP是獵物位置向量;A、C是系數(shù)向量;a是改進(jìn)的非線(xiàn)性收斂因子;r1、r2是[0,1]的隨機(jī)數(shù);i為當(dāng)前迭代次數(shù);I為最大迭代次數(shù)。
3)追捕獵物:在將獵物包圍之后,狼群ω由α,β,η領(lǐng)導(dǎo)來(lái)追捕獵物,狼群位置得到更新。由于適應(yīng)度函數(shù)值不同,α狼更加靠近于獵物,所以狼群的更新策略應(yīng)更側(cè)重于α,其次是β,最后是η。改進(jìn)種群更新策略后的GWO算法為:
(12)
式中:X1是α的更新后的位置向量;Xα是α的位置向量;Dα是α的距離向量;Wα是α的權(quán)重;fα是α的適應(yīng)度值,以此類(lèi)推。
4)攻擊獵物:灰狼完成狩獵,算法得到最優(yōu)解。
MGWO算法在GWO算法的基礎(chǔ)上做出了以下的改進(jìn):1)采用非線(xiàn)性收斂因子。GWO算法中收斂因子對(duì)算法的搜索能力影響較大,且GWO算法中收斂因子為線(xiàn)性遞減的,這種線(xiàn)性減小的策略弱化了算法的全局搜索能力,于是本文對(duì)其進(jìn)行了改進(jìn),將線(xiàn)性收斂因子改為非線(xiàn)性收斂因子,全局搜索能力時(shí)間變長(zhǎng),使算法前期的全局搜索能力增加,從而有效避免了算法陷入局部極值的情況;2)引入位置更新權(quán)重。將灰狼種群的更新策略進(jìn)行修正,增加位置更新權(quán)重,使得灰狼種群位置更加接近于α狼,即更接近于最優(yōu)解。
為了驗(yàn)證MGWO算法和GWO算法的搜索性能,本文利用Sphere函數(shù)(單峰函數(shù))和Rastrigin函數(shù)(多峰函數(shù))來(lái)測(cè)試2種算法的可靠性[24]。設(shè)置種群規(guī)模為30,最大迭代次數(shù)為300,循環(huán)做30次實(shí)驗(yàn),2種測(cè)試函數(shù)都存在最小值0。取30次中的最優(yōu)值、最差值和平均值作為評(píng)判標(biāo)準(zhǔn),具體的適應(yīng)度值如表2所示。
表2 GWO算法與MGWO算法適應(yīng)度值對(duì)比Table 2 The comparison of fitness values between GWO algorithm and MGWO algorithm
當(dāng)SVM用于回歸、參數(shù)辨識(shí)時(shí),被稱(chēng)為SVR,該方法是基于風(fēng)險(xiǎn)最小化原則,適用于小樣本數(shù)據(jù)的學(xué)習(xí),已被廣泛運(yùn)用到船舶操縱運(yùn)動(dòng)辨識(shí)建模與預(yù)報(bào)中[25]。但是由于數(shù)據(jù)集的影響(樣本的選擇)[26-27]或者超參數(shù)設(shè)置不恰當(dāng)[25],難免會(huì)導(dǎo)致辨識(shí)的結(jié)果不準(zhǔn)確,即由于人為因素或者數(shù)據(jù)集的原因,會(huì)導(dǎo)致SVR辨識(shí)結(jié)果不理想。因此,當(dāng)SVR辨識(shí)結(jié)果精度較差時(shí),本文利用MGWO算法較強(qiáng)的搜索能力對(duì)SVR的辨識(shí)參數(shù)進(jìn)行范圍內(nèi)優(yōu)化,使得辨識(shí)結(jié)果更準(zhǔn)確。
本文采用的試驗(yàn)樣本數(shù)據(jù)來(lái)自于360°高精度全任務(wù)航海模擬器,該模擬器利用6自由度MMG分離型運(yùn)動(dòng)數(shù)學(xué)模型進(jìn)行解算船舶的運(yùn)動(dòng)狀態(tài),仿真精度高,性能可靠[28]。在航海模擬器中選擇一艘大型油輪進(jìn)行了10°/10°、20°/20° Z形試驗(yàn),數(shù)據(jù)采樣周期為1 s。10°/10° Z形試驗(yàn)數(shù)據(jù)作為訓(xùn)練數(shù)據(jù),其仿真時(shí)間為931 s;20°/20° Z形試驗(yàn)數(shù)據(jù)作為泛化性驗(yàn)證數(shù)據(jù),其仿真時(shí)間為928 s。油輪的主要尺度參數(shù)如表3所示。大型油輪方形系數(shù)和排水體積較大,從而使得其與普通噸級(jí)船舶的操縱性性能相差較大。大洋航行時(shí),大型油輪的舵效、追隨性以及航向穩(wěn)定性較差,對(duì)操舵的響應(yīng)也較為遲鈍。因此,基于大型油輪的這些航行特性,對(duì)其的操縱性研究可以為駕駛?cè)藛T安全操舵提供一定的參考。
表3 油輪主要尺度參數(shù)Table 3 The main dimensions of tanker
對(duì)處理好的10°/10° Z形試驗(yàn)數(shù)據(jù),利用SVR進(jìn)行參數(shù)辨識(shí)。設(shè)置線(xiàn)性SVR的懲罰因子為104,不敏感系數(shù)為10-7,得到辨識(shí)參考值(a11,b11)。基于SVR辨識(shí)得到的參數(shù)值,設(shè)定MGWO算法的尋優(yōu)范圍。一階船舶響應(yīng)模型中的參數(shù)尋優(yōu)的上下限X′min、X′max分別為:
(13)
設(shè)置完尋優(yōu)范圍后,對(duì)灰狼種群進(jìn)行初始化,設(shè)置初始灰狼個(gè)數(shù)為500個(gè),最大迭代次數(shù)為200次,根據(jù)上述的MGWO算法的尋優(yōu)原理及參數(shù)尋優(yōu)范圍,利用均方誤差(mean square error, MSE)作為評(píng)判標(biāo)準(zhǔn)[29],對(duì)辨識(shí)參考值進(jìn)一步優(yōu)化,并將優(yōu)化后得到的一階船舶響應(yīng)數(shù)學(xué)模型的辨識(shí)參數(shù)值與SVR、FFRLS辨識(shí)得到的辨識(shí)參數(shù)值進(jìn)行對(duì)比。其中,FFRLS中遺忘因子設(shè)置為0.98。最終的預(yù)報(bào)結(jié)果如圖1所示,辨識(shí)參數(shù)以及適應(yīng)度函數(shù)曲線(xiàn)如圖2所示。將辨識(shí)得到的參數(shù)值轉(zhuǎn)換為船舶響應(yīng)型數(shù)學(xué)模型中的操縱性指數(shù),并與野本標(biāo)準(zhǔn)Z形試驗(yàn)理論值進(jìn)行比較,具體數(shù)值如表4所示。
圖2 一階船舶響應(yīng)型數(shù)學(xué)模型收斂曲線(xiàn)Fig.2 The convergence curve for first order ship response mathematical model
表4 一階船舶響應(yīng)型數(shù)學(xué)模型操縱性指數(shù)Table 4 The maneuverability indices of first order ship response mathematical model
航海模擬器是基于6自由度MMG分離型數(shù)學(xué)模型解算船舶的運(yùn)動(dòng)狀態(tài)并且MMG分離型數(shù)學(xué)模型與響應(yīng)型數(shù)學(xué)模型求解方法有所不同。因此,從操縱性指數(shù)驗(yàn)證方面,本文采用的驗(yàn)證方案為:利用野本標(biāo)準(zhǔn)Z形試驗(yàn)得到的理論值進(jìn)行仿真以得到試驗(yàn)數(shù)據(jù),并將辨識(shí)得到的參數(shù)代入式(1)以得到預(yù)報(bào)結(jié)果。一階線(xiàn)性船舶響應(yīng)型數(shù)學(xué)模型中需要辨識(shí)的參數(shù)只有2個(gè),參數(shù)之間的相互影響較小,從圖1中可以看出,3種辨識(shí)算法都得到了較好的預(yù)報(bào)效果,其中,SVR得到的預(yù)報(bào)結(jié)果與仿真試驗(yàn)結(jié)果具有較高的一致性,這也證明了SVR是一種有效的建模方式。相較于本文所提算法和SVR,FFRLS的預(yù)報(bào)效果較差,在經(jīng)過(guò)MGWO算法優(yōu)化后的預(yù)報(bào)結(jié)果與SVR相近。在艏向角預(yù)報(bào)結(jié)果中,SVR的最大絕對(duì)誤差(max absolute error, MAE)為1.35°,FFRLS的MAE為4.75°,MGWO算法優(yōu)化后的MAE為2.75°。從表4可以看出SVR辨識(shí)得到的K最接近理論值,但是T與理論值有一定的偏差。
從預(yù)報(bào)結(jié)果中可以看出,SVR得到的預(yù)報(bào)結(jié)果誤差較小。本文所提算法的初衷是將預(yù)報(bào)結(jié)果較差的辨識(shí)參數(shù)進(jìn)行范圍內(nèi)尋優(yōu)。根據(jù)圖2(a)和(b)可知,a11、b11最終分別穩(wěn)定在1和0附近。
針對(duì)于本文建立的二階船舶響應(yīng)型數(shù)學(xué)模型,為了使FFRLS的辨識(shí)結(jié)果更加的準(zhǔn)確,將FFRLS的遺忘因子值設(shè)置為0.99,其他參數(shù)不做修正。利用SVR得到辨識(shí)參數(shù)的參考值,根據(jù)參數(shù)尋優(yōu)上下限實(shí)現(xiàn)模型參數(shù)尋優(yōu),得到范圍內(nèi)優(yōu)化的參數(shù)辨識(shí)值,辨識(shí)參數(shù)及適應(yīng)度函數(shù)收斂曲線(xiàn)如圖3所示,二階船舶響應(yīng)型數(shù)學(xué)模型的運(yùn)動(dòng)變量預(yù)報(bào)結(jié)果如圖4所示,二階船舶響應(yīng)型數(shù)學(xué)模型的操縱性指數(shù)值如表5所示。二階船舶響應(yīng)型數(shù)學(xué)模型參數(shù)尋優(yōu)的上下限X″min、X″max分別為:
圖3 二階船舶響應(yīng)型數(shù)學(xué)模型收斂曲線(xiàn)Fig.3 The convergence curve of second order ship response mathematical model
表5 二階船舶響應(yīng)型數(shù)學(xué)模型操縱性指數(shù)Table 5 The maneuverability indices of second order ship response mathematical model
(14)
從圖3的參數(shù)收斂曲線(xiàn)圖中可以看出,a21、a22在參數(shù)收斂時(shí)發(fā)生了振蕩并最終收斂于一個(gè)定值,但是對(duì)MGWO算法的適應(yīng)度函數(shù)值并無(wú)影響。
2個(gè)參數(shù)最終分別穩(wěn)定于1.6和-0.6附近,b21、b22穩(wěn)定于0附近。將SVR得到的辨識(shí)參數(shù)值代入到式(2)進(jìn)行解算時(shí),方程出現(xiàn)了發(fā)散的現(xiàn)象,因此,未將SVR的預(yù)報(bào)結(jié)果列入到圖4中。導(dǎo)致SVR辨識(shí)參數(shù)發(fā)散的原因?yàn)?1)算法超參數(shù)設(shè)置的原因;2)訓(xùn)練數(shù)據(jù)集選擇以及構(gòu)造問(wèn)題;3)辨識(shí)參數(shù)較多,辨識(shí)參數(shù)之間相互影響較嚴(yán)重。
從圖4的預(yù)報(bào)結(jié)果圖中可以看出,盡管SVR辨識(shí)得到參數(shù)準(zhǔn)確性較低,但是,相較于FFRLS得到的預(yù)報(bào)結(jié)果,經(jīng)過(guò)MGWO算法優(yōu)化后的預(yù)報(bào)結(jié)果具有較高的精度。這也體現(xiàn)出了所提算法的搜索能力以及收斂能力。將MGWO算法優(yōu)化后的參數(shù)代入到式(2)中,艏向角預(yù)報(bào)結(jié)果的MAE為3.07°。從表5中也可以看出,SVR辨識(shí)得到的操縱性指數(shù)偏離理論值較大,相對(duì)來(lái)看,經(jīng)過(guò)優(yōu)化后的結(jié)果更加接近于理論值。
本文利用MGWO優(yōu)化SVR的方法辨識(shí)了10°/10° Z形試驗(yàn)數(shù)據(jù),得到了一階、二階船舶響應(yīng)型模型的參數(shù)辨識(shí)值。在一階、二階船舶響應(yīng)模型辨識(shí)實(shí)驗(yàn)中,驗(yàn)證了所提算法的可行性以及有效性,即在2組辨識(shí)實(shí)驗(yàn)中,所提算法都得到了較好的預(yù)報(bào)結(jié)果。為了驗(yàn)證算法的泛化性能,利用本文算法得到的辨識(shí)參數(shù)結(jié)果,代入一階、二階船舶響應(yīng)型數(shù)學(xué)模型中,獲得2種不同模型下的20°/20° Z形試驗(yàn)預(yù)報(bào)數(shù)據(jù),預(yù)報(bào)結(jié)果如圖5、6所示。
圖5 一階船舶響應(yīng)型數(shù)學(xué)模型泛化性預(yù)報(bào)結(jié)果Fig.5 The generalization verification of first order ship response mathematical model
由于操縱性指數(shù)T1、T2、T3較難測(cè)量,因此,20°/20° Z形試驗(yàn)利用式(1)解算。將MGWO算法優(yōu)化后的K、T1、T2、T3代入式(2)得到二階船舶響應(yīng)型數(shù)學(xué)模型的泛化性結(jié)果。根據(jù)圖5和圖6可知,所提算法的預(yù)報(bào)結(jié)果與仿真試驗(yàn)數(shù)據(jù)相差較小,其中,一階船舶響應(yīng)型數(shù)學(xué)模型泛化性驗(yàn)證結(jié)果中艏向角的MAE為5.15°,二階船舶響應(yīng)型數(shù)學(xué)模型泛化性驗(yàn)證結(jié)果中艏向角的MAE為5.00°。另外,對(duì)于一階船舶響應(yīng)型數(shù)學(xué)模型,仿真試驗(yàn)的第一超越角為36.49°,預(yù)報(bào)結(jié)果的第一超越角為33.09°。對(duì)于二階船舶響應(yīng)型數(shù)學(xué)模型,預(yù)報(bào)結(jié)果的第一超越角為33.96°,預(yù)報(bào)結(jié)果與仿真試驗(yàn)結(jié)果誤差相對(duì)較小。
圖6 二階船舶響應(yīng)型數(shù)學(xué)模型泛化性預(yù)報(bào)結(jié)果Fig.6 The generalization verification of second order ship response mathematical model
當(dāng)SVR辨識(shí)效果較差時(shí),可以利用MGWO算法對(duì)其得到的參數(shù)辨識(shí)結(jié)果進(jìn)行范圍內(nèi)優(yōu)化以得到更好的預(yù)報(bào)效果。同時(shí),實(shí)驗(yàn)結(jié)果也表明了MGWO算法是一種高效的尋優(yōu)算法,在有大致的參考值情況下,可以為船舶響應(yīng)型數(shù)學(xué)模型尋找到貼近于理論值的操縱性指數(shù)。
1)當(dāng)參考值不準(zhǔn)確時(shí),利用MGWO算法對(duì)參考值進(jìn)行范圍內(nèi)尋優(yōu)以得到較好的預(yù)報(bào)結(jié)果。
2)對(duì)GWO算法進(jìn)行改進(jìn)以提高算法的全局搜索能力并采用單峰、多峰基準(zhǔn)函數(shù)作為算法搜索性能測(cè)試。最終的測(cè)試結(jié)果驗(yàn)證了MGWO算法的搜索性能。
3)SVR是一種有效的辨識(shí)建模方案。但在二階響應(yīng)型數(shù)學(xué)模型參數(shù)辨識(shí)中,SVR的辨識(shí)效率下降,利用MGWO算法對(duì)SVR辨識(shí)結(jié)果優(yōu)化。優(yōu)化后的操縱性指數(shù)與理論值偏差較小。