孟耀, 張秀鳳, 陳雨農
(大連海事大學 航海學院,遼寧 大連 116026)
船舶操縱運動數學模型主要分為整體型數學模型、分離型數學模型、響應型數學模型。整體型數學模型需要計算大量的水動力導數,且有的水動力導數物理意義不明確;分離型數學模型起源于日本,在我國運用較廣泛;響應型數學模型以舵角為輸入,船舶艏向角和轉艏角速度為輸出,在控制領域運用廣泛,且已被應用到了船舶航向、航跡自動保持控制中[1]。船舶響應型模型準確的參數值對于船舶運動狀態預報至關重要,其中K、T指數的計算方法有野本標準Z形操縱試驗法、回歸公式估算法等[2]。早期船舶運動數學模型參數辨識算法有最小二乘[3]、拓展卡爾曼濾波[4]、最大似然估計[5]、反步法[6]等。
隨著智能算法及控制理論的發展,多新息理論[7-8]和非線性新息理論[9-10]被應用于傳統算法的優化研究,并利用優化后的辨識算法實現了船舶分離型數學模型、船舶響應型數學模型的參數辨識。新息理論的應用使得傳統算法的收斂性、精確性提高,預報結果更加貼近于試驗數據。除此之外,一些智能算法被應用于船舶數學模型的參數辨識。褚式新等[11]利用粒子群算法對遞推最小二乘算法到的參數辨識結果進一步優化,得到更加準確的無人艇響應模型操縱性指數。謝朔等[12]、張心光等[13]利用支持向量機(support vector machine, SVM)在線辨識了船舶響應型數學模型的操縱性指數,證實了SVM是一種有效的在線參數辨識方案。另外,SVM也被應用到其他領域[14-15]?;依撬惴?grey wolf optimizer, GWO)具有參數少、易調節、搜索能力強以及尋優速度快等優點,應用于較多的研究領域[16-17],如機器學習算法的超參數優化[18]、路徑規劃[19]以及參數辨識[20]等方面,并且在這些應用領域都取得了較好的研究成果。
由于環境干擾、樣本數據選擇以及算法參數設置不合理等影響,算法的回歸精度會降低,辨識的參數會不準確。因此,本文利用改進灰狼算法(modified grey wolf optimizer, MGWO)對辨識參考值進一步優化,使回歸預報、參數辨識的結果更加準確。將從高精度航海模擬器中獲得的大型油輪的10°/10°、20°/20° Z形試驗數據進行處理,并應用SVR和MGWO算法實現大型油輪操縱性指數辨識。為了提高參數辨識的準確度,本文利用支持向量回歸(support vector regression, SVR)辨識10°/10° Z形試驗數據得到K、T指數的辨識參考值。當參考值不準確時,利用MGWO算法對參考值進行優化。將本文算法得到的辨識結果與基于遺忘因子的遞推最小二乘(recursive least squares with forgetting factor, FFRLS)[21]得到的結果進行對比,驗證優化后辨識結果的準確性。
船舶響應型數學模型可以用來描述船舶操縱性能,其反映的是船舶艏向角對舵角變化的響應,在控制領域運用廣泛。本文所用一階和二階艏向角響應線性方程分別為:

(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為待辨識參數,采樣間隔h=1 s;n為樣本總數,系統的輸入輸出數據如表1所示。

表1 系統輸入輸出數據Table 1 System input and output data
表1中,一階線性響應模型辨識值轉換為K、T指數分別為:
(5)
將二階線性響應型數學模型辨識值轉換為K、T:
(6)
SVR的原理是將樣本數據變換到高維特征空間,在高維特征空間中對樣本數據進行回歸擬合[22]。本文通過建立的輸入、輸出樣本數據(xi,yi),建立高維空間的回歸擬合函數,并引入不敏感損失函數及懲罰函數,分別為:
f(x)=ωφ(x)+b
(7)

(8)
式中:f(x)為回歸擬合函數;ω為權重;φ(x)為非線性映射函數;b為偏置;R為懲罰函數;C為懲罰因子;Lε(y)為不敏感損失函數;ε為不敏感系數;n為樣本總量。
引入非負松弛變量ξ、ξ*,得到最小化風險函數fc以求取ω和b:
(9)

(10)
GWO算法[23]受啟發于灰狼捕食獵物的行為,該算法主要包含4個階段,分別為劃分狼群、包圍獵物、追捕獵物、攻擊獵物。
1)劃分狼群:按照適應度值的高低,將狼群劃分為4個等級,由高到低依次為α、β、η、ω。
2)包圍獵物:對GWO算法的線性收斂因子進行改進,使得該算法的全局搜索能力加強。在包圍獵物時,每個灰狼的位置不斷更新,更新方式為:
(11)
式中:D是灰狼與獵物之間的距離向量;X是灰狼位置向量;XP是獵物位置向量;A、C是系數向量;a是改進的非線性收斂因子;r1、r2是[0,1]的隨機數;i為當前迭代次數;I為最大迭代次數。
3)追捕獵物:在將獵物包圍之后,狼群ω由α,β,η領導來追捕獵物,狼群位置得到更新。由于適應度函數值不同,α狼更加靠近于獵物,所以狼群的更新策略應更側重于α,其次是β,最后是η。改進種群更新策略后的GWO算法為:
(12)
式中:X1是α的更新后的位置向量;Xα是α的位置向量;Dα是α的距離向量;Wα是α的權重;fα是α的適應度值,以此類推。
4)攻擊獵物:灰狼完成狩獵,算法得到最優解。
MGWO算法在GWO算法的基礎上做出了以下的改進:1)采用非線性收斂因子。GWO算法中收斂因子對算法的搜索能力影響較大,且GWO算法中收斂因子為線性遞減的,這種線性減小的策略弱化了算法的全局搜索能力,于是本文對其進行了改進,將線性收斂因子改為非線性收斂因子,全局搜索能力時間變長,使算法前期的全局搜索能力增加,從而有效避免了算法陷入局部極值的情況;2)引入位置更新權重。將灰狼種群的更新策略進行修正,增加位置更新權重,使得灰狼種群位置更加接近于α狼,即更接近于最優解。
為了驗證MGWO算法和GWO算法的搜索性能,本文利用Sphere函數(單峰函數)和Rastrigin函數(多峰函數)來測試2種算法的可靠性[24]。設置種群規模為30,最大迭代次數為300,循環做30次實驗,2種測試函數都存在最小值0。取30次中的最優值、最差值和平均值作為評判標準,具體的適應度值如表2所示。

表2 GWO算法與MGWO算法適應度值對比Table 2 The comparison of fitness values between GWO algorithm and MGWO algorithm
當SVM用于回歸、參數辨識時,被稱為SVR,該方法是基于風險最小化原則,適用于小樣本數據的學習,已被廣泛運用到船舶操縱運動辨識建模與預報中[25]。但是由于數據集的影響(樣本的選擇)[26-27]或者超參數設置不恰當[25],難免會導致辨識的結果不準確,即由于人為因素或者數據集的原因,會導致SVR辨識結果不理想。因此,當SVR辨識結果精度較差時,本文利用MGWO算法較強的搜索能力對SVR的辨識參數進行范圍內優化,使得辨識結果更準確。
本文采用的試驗樣本數據來自于360°高精度全任務航海模擬器,該模擬器利用6自由度MMG分離型運動數學模型進行解算船舶的運動狀態,仿真精度高,性能可靠[28]。在航海模擬器中選擇一艘大型油輪進行了10°/10°、20°/20° Z形試驗,數據采樣周期為1 s。10°/10° Z形試驗數據作為訓練數據,其仿真時間為931 s;20°/20° Z形試驗數據作為泛化性驗證數據,其仿真時間為928 s。油輪的主要尺度參數如表3所示。大型油輪方形系數和排水體積較大,從而使得其與普通噸級船舶的操縱性性能相差較大。大洋航行時,大型油輪的舵效、追隨性以及航向穩定性較差,對操舵的響應也較為遲鈍。因此,基于大型油輪的這些航行特性,對其的操縱性研究可以為駕駛人員安全操舵提供一定的參考。

表3 油輪主要尺度參數Table 3 The main dimensions of tanker
對處理好的10°/10° Z形試驗數據,利用SVR進行參數辨識。設置線性SVR的懲罰因子為104,不敏感系數為10-7,得到辨識參考值(a11,b11)?;赟VR辨識得到的參數值,設定MGWO算法的尋優范圍。一階船舶響應模型中的參數尋優的上下限X′min、X′max分別為:
(13)
設置完尋優范圍后,對灰狼種群進行初始化,設置初始灰狼個數為500個,最大迭代次數為200次,根據上述的MGWO算法的尋優原理及參數尋優范圍,利用均方誤差(mean square error, MSE)作為評判標準[29],對辨識參考值進一步優化,并將優化后得到的一階船舶響應數學模型的辨識參數值與SVR、FFRLS辨識得到的辨識參數值進行對比。其中,FFRLS中遺忘因子設置為0.98。最終的預報結果如圖1所示,辨識參數以及適應度函數曲線如圖2所示。將辨識得到的參數值轉換為船舶響應型數學模型中的操縱性指數,并與野本標準Z形試驗理論值進行比較,具體數值如表4所示。

圖2 一階船舶響應型數學模型收斂曲線Fig.2 The convergence curve for first order ship response mathematical model

表4 一階船舶響應型數學模型操縱性指數Table 4 The maneuverability indices of first order ship response mathematical model
航海模擬器是基于6自由度MMG分離型數學模型解算船舶的運動狀態并且MMG分離型數學模型與響應型數學模型求解方法有所不同。因此,從操縱性指數驗證方面,本文采用的驗證方案為:利用野本標準Z形試驗得到的理論值進行仿真以得到試驗數據,并將辨識得到的參數代入式(1)以得到預報結果。一階線性船舶響應型數學模型中需要辨識的參數只有2個,參數之間的相互影響較小,從圖1中可以看出,3種辨識算法都得到了較好的預報效果,其中,SVR得到的預報結果與仿真試驗結果具有較高的一致性,這也證明了SVR是一種有效的建模方式。相較于本文所提算法和SVR,FFRLS的預報效果較差,在經過MGWO算法優化后的預報結果與SVR相近。在艏向角預報結果中,SVR的最大絕對誤差(max absolute error, MAE)為1.35°,FFRLS的MAE為4.75°,MGWO算法優化后的MAE為2.75°。從表4可以看出SVR辨識得到的K最接近理論值,但是T與理論值有一定的偏差。
從預報結果中可以看出,SVR得到的預報結果誤差較小。本文所提算法的初衷是將預報結果較差的辨識參數進行范圍內尋優。根據圖2(a)和(b)可知,a11、b11最終分別穩定在1和0附近。
針對于本文建立的二階船舶響應型數學模型,為了使FFRLS的辨識結果更加的準確,將FFRLS的遺忘因子值設置為0.99,其他參數不做修正。利用SVR得到辨識參數的參考值,根據參數尋優上下限實現模型參數尋優,得到范圍內優化的參數辨識值,辨識參數及適應度函數收斂曲線如圖3所示,二階船舶響應型數學模型的運動變量預報結果如圖4所示,二階船舶響應型數學模型的操縱性指數值如表5所示。二階船舶響應型數學模型參數尋優的上下限X″min、X″max分別為:


圖3 二階船舶響應型數學模型收斂曲線Fig.3 The convergence curve of second order ship response mathematical model

表5 二階船舶響應型數學模型操縱性指數Table 5 The maneuverability indices of second order ship response mathematical model
(14)
從圖3的參數收斂曲線圖中可以看出,a21、a22在參數收斂時發生了振蕩并最終收斂于一個定值,但是對MGWO算法的適應度函數值并無影響。
2個參數最終分別穩定于1.6和-0.6附近,b21、b22穩定于0附近。將SVR得到的辨識參數值代入到式(2)進行解算時,方程出現了發散的現象,因此,未將SVR的預報結果列入到圖4中。導致SVR辨識參數發散的原因為:1)算法超參數設置的原因;2)訓練數據集選擇以及構造問題;3)辨識參數較多,辨識參數之間相互影響較嚴重。
從圖4的預報結果圖中可以看出,盡管SVR辨識得到參數準確性較低,但是,相較于FFRLS得到的預報結果,經過MGWO算法優化后的預報結果具有較高的精度。這也體現出了所提算法的搜索能力以及收斂能力。將MGWO算法優化后的參數代入到式(2)中,艏向角預報結果的MAE為3.07°。從表5中也可以看出,SVR辨識得到的操縱性指數偏離理論值較大,相對來看,經過優化后的結果更加接近于理論值。
本文利用MGWO優化SVR的方法辨識了10°/10° Z形試驗數據,得到了一階、二階船舶響應型模型的參數辨識值。在一階、二階船舶響應模型辨識實驗中,驗證了所提算法的可行性以及有效性,即在2組辨識實驗中,所提算法都得到了較好的預報結果。為了驗證算法的泛化性能,利用本文算法得到的辨識參數結果,代入一階、二階船舶響應型數學模型中,獲得2種不同模型下的20°/20° Z形試驗預報數據,預報結果如圖5、6所示。

圖5 一階船舶響應型數學模型泛化性預報結果Fig.5 The generalization verification of first order ship response mathematical model
由于操縱性指數T1、T2、T3較難測量,因此,20°/20° Z形試驗利用式(1)解算。將MGWO算法優化后的K、T1、T2、T3代入式(2)得到二階船舶響應型數學模型的泛化性結果。根據圖5和圖6可知,所提算法的預報結果與仿真試驗數據相差較小,其中,一階船舶響應型數學模型泛化性驗證結果中艏向角的MAE為5.15°,二階船舶響應型數學模型泛化性驗證結果中艏向角的MAE為5.00°。另外,對于一階船舶響應型數學模型,仿真試驗的第一超越角為36.49°,預報結果的第一超越角為33.09°。對于二階船舶響應型數學模型,預報結果的第一超越角為33.96°,預報結果與仿真試驗結果誤差相對較小。

圖6 二階船舶響應型數學模型泛化性預報結果Fig.6 The generalization verification of second order ship response mathematical model
當SVR辨識效果較差時,可以利用MGWO算法對其得到的參數辨識結果進行范圍內優化以得到更好的預報效果。同時,實驗結果也表明了MGWO算法是一種高效的尋優算法,在有大致的參考值情況下,可以為船舶響應型數學模型尋找到貼近于理論值的操縱性指數。
1)當參考值不準確時,利用MGWO算法對參考值進行范圍內尋優以得到較好的預報結果。
2)對GWO算法進行改進以提高算法的全局搜索能力并采用單峰、多峰基準函數作為算法搜索性能測試。最終的測試結果驗證了MGWO算法的搜索性能。
3)SVR是一種有效的辨識建模方案。但在二階響應型數學模型參數辨識中,SVR的辨識效率下降,利用MGWO算法對SVR辨識結果優化。優化后的操縱性指數與理論值偏差較小。