徐東星
(廣東海洋大學海運學院,廣東 湛江 524088)
船舶在海上航行時,通常會產生六自由度的搖蕩運動(橫搖、縱搖、艏搖、橫蕩、縱蕩及垂蕩)[1],其中,船舶產生劇烈縱搖時可能會使船舶發生拍底(易導致船首結構受損)、甲板上浪(易降低船舶穩性)、尾淹(易導致船舶航向不穩定,甚至打橫的風險)及螺旋槳空轉(易導致船舶產生較大的振動,螺旋槳推進效率降低)等;而劇烈的橫搖則會導致船上貨物移動穩性喪失,增加船舶傾覆的風險和船上工作人員的不適感等。因此,船舶運動姿態預測對船舶在海上安全航行有重要意義,精確的預測可提高船舶在海上的適航性及耐波性。船舶在海浪作用下運動規律極其復雜,船舶運動姿態時間序列表現為具有較強的非線性、隨機性和非平穩性等特點[2]。針對上述船舶運動的特點,目前許多學者采用自回歸模型、神經網絡模型、支持向量機、極限學習機等建立了船舶運動姿態預測模型[3-9],但參數設置會對神經網絡的預測精度產生較大的影響。張澤國等[10]利用變異粒子群算法優化BP 神經網絡參數的方法對海上船舶橫搖運動姿態進行預測,預測精度較為理想。除了船舶縱搖運動以外,海上航行的船舶可使用舵鰭聯合控制器使其它自由度運動趨于穩定。因此,開展對船舶縱搖運動規律的研究顯得尤為重要,掌握其運動規律可以為船舶海上安全航行提供支持。沈繼紅等[11]、趙爽等[12]利用灰色模型GM(1,1)、拓撲預測GM(1,1)模型對船舶縱搖運動姿態進行預測,但由于GM(1,1)模型僅有一個指數分量,不能清晰反映出船舶搖擺的趨勢。馬潔等[13]利用多層遞階預報方法將船舶縱搖運動當作非線性時變參數的動態系統,預測結果較好。柳成等[14]構建灰色模型與粒子群算法優化支持向量機核參數相結合的船舶縱搖運動預測模型,但粒子群搜索算法存在收斂速度慢,收斂精度低等缺陷。
為避免傳統數值優化方法(如最速下降法、牛頓法、擬牛頓法、單純形法)解決復雜優化問題的固有缺陷,人們借鑒大自然生物的群體搜索現象,開發了仿生智能計算算法來解決最優化問題。隨著人工智能科學的迅速發展,研究表明沒有一種優化算法適用于所有的優化問題[15],因此,不同的群智能優化算法應運而生,如粒子群優化算法(Partical swarm optimization,PSO)、遺傳算法(Genetic algorithm,GA)、灰狼優化算法(Grey wolf optimization,GWO)、飛蛾撲火優化算法(Moth-flame optimization algorithm,MFO)及海鷗優化算法(Seagull optimization algorithm,SOA)等[16-20]。Jiang 等[21]受到天牛覓食原理的啟發,提出一種新型的啟發式優化算法,即天牛須搜索算法(Beetle antennae search,BAS)。該算法易于實現、運算量小、僅需單個天牛個體來完成算法的尋優。天牛須算法現已廣泛應用于實際問題優化當中,如模式分類、PID 參數整定、機器人路徑規劃、風暴潮災害損失預測、圖像處理等領域[22-26]。但該算法同樣存在著易陷入局部最優、收斂速度慢、收斂精度低等缺陷。因此,許多學者提出改進的天牛須算法,如融入模擬退火過程以及自適應因子的天牛須搜索算法、適用于多目標優化的無參數調節的天牛須算法、具有隨機時滯與精英反向學習的天牛須搜索算法、量子天牛群算法等[27-30]。另外,Zhang等[31]基于人工蜂群算法(ABS)和天牛須搜索算法(BAS)的結構,提出一種有效的多任務天牛群算法(MBAS),并將其應用于極限學習機的輸入權值和偏差的優化。韓瑞達[32]將天牛須搜索算法和變異策略融入花朵授粉算法中,加快了 FPA(Flower pollination algorithm,FPA)的收斂速度和精度。鄭源等[33]基于相似度的混沌遷移策略和社會學習策略,提出混沌遷移的社會學習天牛群算法。陳婷婷等[34]在粒子群算法框架下,將每個粒子的更新規則按照天牛須搜索策略進行演化,提出用于降低投資風險的天牛群優化算法。Wang 等[35]提出一種新的天牛群優化算法(Beetle swarm optimization,BSO)。該算法將天牛的覓食機理與群優化算法相結合,具有良好的魯棒性和運行速度,但該算法同樣存在早熟收斂、對參數設置較敏感等問題?;诖?,本研究提出一種改進的天牛群搜索算法(Improved beetle swarm optimization,IBSO),即基于二階振蕩自適應變異的天牛群搜索算法,以期更加有效地解決船舶縱搖問題,提高船舶縱搖運動姿態預測精度,更好地應用于實際工程中。
天牛的初始位置對天牛須搜索算法的尋優結果有較大的影響。借鑒群智能優化算法的思想將天牛個體擴展為天牛群體,每個天牛代表一個優化問題的潛在解,天牛之間共享信息,但天牛之間的距離和方向取決于它們的速度和天牛須探測到的信息強度[35]。假設天牛群中天牛個體為N,則X=(X1,X2,...,XN)為天牛群在s維空間的位置,其中Xi=(x1,x2,...,xs)T,(i=1,2,3,...,N)為第i只天牛在s維空間的位置,也代表問題的一個潛在解。同樣第i只天牛在s維空間的速度矢量可表示為Vi=(v1,v2,...,vs)T。根據適應度函數,每只天牛個體的適應度值可根據其所處位置信息進行計算,記Pi=(P1,P2,...,Ps)為第i只天牛個體極值,Pg=(Pg1,Pg2,...,Pgs)為群體極值。第i只天牛的位置更新公式為

式(1)中,k為當前迭代次數;為第i只天牛個體位置移動增量函數;λ為正常數。為k+1 次迭代時第i只天牛的位置;為第k次迭代時第i只天牛的速度。
第i只天牛的速度更新公式為

式(2)中,c1,c2為學習因子;r1,2r為區間[0,1]上隨機數;ω為慣性權重。
為了增加算法的收斂精度,采用線性遞減慣性權重:

式(3)中,K為最大迭代次數;k為當前迭代次數;ωmax=0.9 為最大慣性權重;ωmin=0.4 為最小慣性權重。
第i只天牛個體位置移動增量函數ξ可表示為

式(4)中,δ為步長;Xr,Xl為天牛群中天牛個體左右須的位置,且滿足以下條件:

式(5)中,d為天牛兩須之間的距離。
針對天牛群搜索算法存在的早熟收斂、對參數設置較敏感等現象,本研究提出一種改進的天牛群搜索算法,該算法融合了二階振蕩環節、正余弦搜索策略及自適應t分布變異策略,有效地避免了天牛群搜索算法的早熟收斂現象,提高了算法的尋優能力。
天牛群中天牛個體的移動速度不僅與當前個體最佳位置、全局最優位置及當前個體位置有關,而且與天牛個體位置變化有關。為使得算法前期具有較好的全局搜索能力,算法后期具有較強的局部開發能力,在速度更新方程(2)中增加二階振蕩環節[36]。
為簡化分析,令

如僅考慮:

則可得

化簡得

如果取步長為1,則式(7)可變為歐拉差分方程:

對式(8)進行拉氏變換:


因 此,當q1>0 且時,λ∈,算法漸進收斂;當q1>0 且時,,算法振蕩收斂。

在迭代前期為使算法全局搜索能力增強,在迭代后期算法局部搜索能力增強,則在迭代前期取,提高算法的全局搜索能力;在迭代后期取提高算法的局部開發能力。
在天牛群搜索算法中,為使得天牛個體充分利用自身與最優位置的差值信息逐漸趨近最優解,引入正余弦搜索策略。在天牛個體位置更新后,再進行正余弦搜索,可有效避免算法陷入早熟收斂,提高算法的尋優精度以獲得最優解。正余弦搜索策略表示如下[37-38]:

柯西變異能夠有效地保持種群的多樣性,可使算法獲得較強的全局探索能力;而高斯變異可使算法具有較強的局部開發能力,可避免算法陷入局部最優[39-40]。在概率論與統計學中,t分布又稱學生分布,分布呈現為一簇曲線,其曲線形態與自由度參數n有關,當n趨于無窮大時,其近似高斯分布,一般n>30 時兩者偏差可忽略;當n=1 時,其近似柯西分布,即高斯分布和柯西分布是t分布的兩個邊界特例。因此,本研究將進化代數k作為t分布的自由度參數,將高斯分布和柯西分布融合起來,構成自適應t分布變異。在算法運行前期,迭代次數較小,t分布變異近似柯西分布,可使得算法具有較強的全局搜索能力;在算法后期,t分布變異近似高斯分布,可使得算法具有較強的局部開發能力,因此t分布變異融合了高斯分布和柯西分布的優點來提高算法的尋優能力和收斂速度。
對天牛個體進行自適應t分布變異可定義為:

算法的時間復雜度通常表示為T(N)=O(f(N)),即算法執行的時間與每行語句執行次數N成正比,當執行次數趨近無窮大時,低階項、常量與首項系數可忽略不計,因此也稱為漸進時間復雜度。計算時間復雜度可采用加法原則和乘法原則等,公式如下:

根據時間復雜度的加法原則和乘法原則,天牛群算法的主循環可簡化為雙重循壞結構,可知天牛群搜索算法的時間復雜度為O(N2)。在改進的天牛群算法中,由于無嵌套新的循環,其和天牛群搜索算法的復雜度均為O(N2),因此引入振蕩環節、搜索策略和變異策略對算法運行時間的影響可忽略不計。
本研究提出的改進天牛群搜索算法,引入了二階振蕩環節,以增加算法的全局探索能力和局部開發能力。采用正余弦搜索思想對天牛個體進行位置更新,使得天牛個體充分利用自身與最優位置的差值信息逐漸趨近最優解。同時引入自適應t分布變異算子來增加種群的多樣性,避免算法陷入局部最優,提高了算法的尋優精度及收斂速度,實現流程如下。

為了驗證本研究算法(IBSO)的有效性和優越性,選取4 個基準測試函數[41](表1),其中F1~F2為高維單峰函數,F3~F4為高維多峰函數。在Matlab 2018 b 環境下進行仿真實驗,并將仿真結果與天牛群搜索算法(BSO)、線性遞減權重的粒子群優化算法(LPSO)、鯨魚優化算法(WOA)、海鷗優化算法(SOA)、飛蛾撲火優化算法(MFO)、二階振蕩粒子群優化算法(SPSO)、自適應t分布變異的天牛群搜索算法(TBSO)進行橫向和縱向對比。實驗中各個算法種群規模設為30,最大迭代次數為100,其他參數設置為默認值。為證明改進算法的收斂精度、收斂速度及穩定性,避免尋優結果的偶然性,選各基準函數獨立運行30 次作為實驗結果,并將算法的最優值、平均值及方差作為評價指標(表2)。

表1 基準測試函數Table 1 Benchmark Function
表2 表明,改進天牛群搜索算法(IBSO)最優解、平均值及方差均明顯優于BSO、LPSO、WOA、SOA、MFO 及SPSO 等優化算法。t分布變異策略的天牛群搜索算法(TBSO)最優解、平均值及方差也均優于BSO、LPSO、WOA、SOA、MFO 及SPSO 等優化算法,說明t分布變異策略可提高算法的尋優能力。除測試函數F2及F4外,IBSO 算法最優解、平均值及方差均優于TBSO 算法。對于函數F2,IBSO 算法可收斂到全局最優解,而TBSO 算法卻陷入局部最優解。對于函數F4,IBSO 與TBSO算法均能收斂到全局最優解。但不同算法收斂曲線(圖1)對比可見,IBSO 算法在收斂速度上均有較大提升,明顯優于其他7 種尋優算法。

表2 基準測試函數尋優結果Table 2 Benchmark function optimization results

圖1 不同優化算法在基準測試函數上的適應度值收斂曲線對比Fig.1 Comparison of the fitness value convergence curve of different optimization algorithms on the benchmark function
仿真結果表明,不同基準測試函數,IBSO 算法均表現出較優的尋優能力。另外,通過縱向對比可見,混合策略的天牛群搜索算法較單一t分布變異策略的天牛群搜索算法在收斂精度、收斂速度及穩定性上均有較大提升,進一步說明IBSO 算法的有效性和優越性。
本研究選取BP 神經網絡進行船舶縱搖運動姿態預測,提高海上艦船作業的安全性,引導艦載機安全起降,減少海上事故的發生,并采用改進天牛群搜索算法對神經網絡的初始權值和閾值進行優化,神經網絡結構設置為6 個輸入節點、10 個隱節點及1 個輸出節點,其中輸入節點及輸出節點采用Purline 函數,隱節點的激活函數采用Sigmoid 函數,迭代次數設置為100,種群設置為30,獨立運行10次,選取最優的權值和閾值。本研究選取文獻[42]中“育鯤”輪海上試驗數據驗證算法的有效性,共選取1200 組船舶縱搖姿態數據,分訓練集1000 組、測試集200 組,采樣間隔為1 s,進行前向一步預測,算法流程圖見圖2。

圖2 基于BSO 優化BP 網絡的船舶縱搖運動姿態流程Fig.2 Flow diagram of ship pitch motion attitude based on BSO optimized BP network
由于采集的實船數據含有大量的噪聲,因此采用小波包降噪算法對實船數據進行預處理(圖3)。采用能夠衡量預測值與實際值之間偏差的均方根誤差(Root mean square error,RMSE)對模型預測精度進行評價,如式(15)所示:

式(15)中,iy為i時刻真實值;為i時刻預測值;n為預測數據點數。

圖3 船舶縱搖運動姿態曲線Fig.3 Attitude curve of ship pitch motion
本研究對BSO、PSO 及IBSO 優化BP 神經網絡的預測效果進行比較。各算法的預測結果曲線如圖4—圖7 所示,從測試樣本的預測曲線中可以看出:IBSO-BP 神經網絡的預測曲線與原始數據曲線基本吻合,而其它模型的預測曲線與原始曲線在一定程度上存在著明顯的偏離。

圖4 基于BP 神經網絡的船舶縱搖運動姿態預測Fig.4 Prediction of ship pitch motion attitude based on BP neural network

圖5 基于BSO-BP 網絡的船舶縱搖運動姿態預測Fig.5 Prediction of ship pitch motion attitude based on BSO-BP neural network

圖6 基于PSO-BP 網絡的船舶縱搖運動姿態預測Fig.6 Prediction of ship pitch motion attitude based on PSO-BP neural network

圖7 基于IBSO-BP 網絡的船舶縱搖運動姿態預測Fig.7 Prediction of ship pitch motion attitude based on IBSO-BP neural network
從表3 可知,BP 網絡、BSO-BP 網絡、PSO-BP網絡與IBSO-BP 網絡對測試樣本的均方根誤差分別為0.182 65、0.102 50、0.114 11 及0.026 02,說明IBSO-BP 網絡模型預測值與實際值之間的偏差較小,預測精度較高。因此,BP 神經網絡經過BSO、PSO 及IBSO 優化后,其泛化能力均得到提升,且IBSO-BP 網絡對船舶縱搖運動姿態的動態跟蹤能力均優于傳統BP 網絡、BSO-BP 網絡及PSO-BP網絡,預測精度分別提升85.7%、74.6%和77.2%,表明改進天牛群搜索算法可在一定程度上提高BP神經網絡對船舶縱搖運動姿態的預測精度。

表3 船舶縱搖運動姿態預測方法對比Table 3 Comparison of ship pitch motion attitude prediction methods
本研究提出一種基于二階振蕩自適應變異的天牛群搜索算法并進行了收斂性分析,通過對基準測試函數和神經網絡權值及閾值優化進行船舶縱搖運動預測的實驗分析,可得以下結論:
1)通過引入二階振蕩環節、正余弦搜索策略及自適應t分布變異算子,可使改進天牛群搜索算法的全局探索、局部開發及尋優能力增強,并且在迭代后期種群的多樣性增加,避免了算法陷入局部最優。
2)經過改進天牛群搜索算法優化的BP 神經網絡提高了對船舶縱搖運動姿態的動態跟蹤能力,船舶縱搖運動姿態的預測精度得到了提升。與其他智能優化算法進行對比,改進天牛群搜索算法具有較優的全局搜索能力、收斂速度及魯棒性并且在實際工程應用中具有一定的優越性。
3)在未來的工程實踐當中,鑒于改進天牛群搜索算法具有較好的尋優性能,可將其用于船舶避碰決策、船舶PID 控制參數優化、船舶結構優化設計、船舶運動數學模型參數辨識等領域,進一步擴大算法的應用范圍。