寧 君,陳漢民,魯 峰,李春澤
(大連海事大學(xué)航海學(xué)院,遼寧大連 116026)
隨著經(jīng)濟(jì)全球化快速發(fā)展,世界貨物流通日益緊密,據(jù)統(tǒng)計(jì),90%以上的貨物流通都是靠船舶運(yùn)輸實(shí)現(xiàn)的。船舶的日益大型化、不斷增大的船舶交通密度、發(fā)展迅速的航海技術(shù),以及難以避免的與人為因素相關(guān)的海難事故等,都需要船舶避碰的進(jìn)一步的深入研究,而其中,船舶自動(dòng)避碰決策就是研究的核心和重點(diǎn)。
目前,已有許多專家、學(xué)者對(duì)船舶自動(dòng)避碰進(jìn)行研究。如LI Wei,et al[1]運(yùn)用大數(shù)據(jù)分析法來計(jì)算船舶的自動(dòng)避碰決策,考慮了船舶的3 種會(huì)遇情況,建立了3 種評(píng)估功能。在此基礎(chǔ)上,利用遺傳算法求解評(píng)估函數(shù),以確定船舶的最佳避碰決策。MOHAMED-SEGHIR,et al[2]在研究避碰時(shí)建立了模糊的航行環(huán)境,并假設(shè)遇到的目標(biāo)船是均勻且直線運(yùn)動(dòng)的。此外,MOHAMED-SEGHIR 使用遺傳算法來計(jì)算避碰決策。為了準(zhǔn)確計(jì)算船舶的動(dòng)態(tài)特性,還使用了傳遞函數(shù)和最大角速度。NI Shengke,et al[3]提出了基于船舶操縱性的自動(dòng)避碰算法。在COLREGs 和航行經(jīng)驗(yàn)的前提下,采用了改進(jìn)的遺傳算法來提高轉(zhuǎn)向時(shí)的避讓性能。ZENG Xiaoming,et al[4]結(jié)合了ECDIS,使用遺傳算法來進(jìn)行船舶自動(dòng)避讓障礙物的研究,TAM,et al[5]引入避碰因素區(qū)域來對(duì)遺傳算法的輸出結(jié)果進(jìn)行控制。李瑤[6]使用遺傳算法來進(jìn)行避碰決策,通過建立船舶領(lǐng)域?yàn)橐罁?jù),來進(jìn)行路徑規(guī)劃,但是僅僅考慮了單船的避讓措施。許蘭[7]和顧路平[8]使用了遺傳算法去研究船舶的避碰決策路徑,在選取避碰的目標(biāo)函數(shù)時(shí),選取以ROC(risk of collision)為依據(jù),綜合考慮安全性、經(jīng)濟(jì)性來進(jìn)行避碰路徑的研究。王則勝[9]同樣基于遺傳算法去研究避讓決策中的船舶轉(zhuǎn)向幅度,綜合考慮我船和目標(biāo)船的相對(duì)運(yùn)動(dòng)參數(shù),并將這些參數(shù)融合進(jìn)遺傳算法的適應(yīng)度函數(shù)設(shè)計(jì)中,用適應(yīng)度值的大小來衡量轉(zhuǎn)向幅度的優(yōu)劣。
上述研究采用的遺傳算法在尋求避碰路徑時(shí)容易陷入局部最優(yōu)解,而神經(jīng)網(wǎng)絡(luò)算法能很好地解決這一問題。如TANG Huang,et al[10]以AIS 實(shí)時(shí)收集的信息為基礎(chǔ),提出了一種結(jié)合一系列預(yù)測(cè)方法的神經(jīng)網(wǎng)絡(luò)算法去預(yù)測(cè)船舶的航行軌跡,從而實(shí)現(xiàn)船舶避碰。同樣基于神經(jīng)網(wǎng)絡(luò)算法,XU Qingyang,et al[11]利用一種深層卷積神經(jīng)網(wǎng)絡(luò)去學(xué)習(xí)無人駕駛船的操縱特點(diǎn)并基于視覺系統(tǒng)去實(shí)現(xiàn)船舶的操縱避碰。而ZHANG Guoqing,et al[12]重點(diǎn)研究了基于轉(zhuǎn)向點(diǎn)的欠驅(qū)動(dòng)水面船舶路徑跟蹤控制,其機(jī)制是對(duì)靜態(tài)或時(shí)變緩慢的障礙物進(jìn)行避讓。此外,為了確保避碰行動(dòng)的有效性,通過融合神經(jīng)網(wǎng)絡(luò)和魯棒技術(shù),提出了一種魯棒神經(jīng)控制。楊寶璋[13]等人利用人工神經(jīng)網(wǎng)絡(luò)方法求取碰撞危險(xiǎn)度,并將碰撞危險(xiǎn)度作為船舶避碰的決策依據(jù),分別采用幾何避碰數(shù)學(xué)模型、矩陣對(duì)策和微分對(duì)策方法,建立了不同局面下的避碰決策模型。沈海青[14]等人基于深度競(jìng)爭(zhēng)Q 學(xué)習(xí)算法和深度多層感知神經(jīng)網(wǎng)絡(luò),提出了一種船舶智能避碰導(dǎo)航方法。而袁宇祺[15]結(jié)合了神經(jīng)網(wǎng)絡(luò)和遺傳算法,在改善BP 神經(jīng)網(wǎng)絡(luò)動(dòng)態(tài)指標(biāo)的基礎(chǔ)上,利用遺傳算法規(guī)劃出船舶避碰路徑,從而解決了容易陷入局部最小的問題。
本文在考慮COLREGs,航行經(jīng)驗(yàn)和自動(dòng)避碰方法的基礎(chǔ)上,提出了基于自適應(yīng)神經(jīng)網(wǎng)絡(luò)智能舵的自動(dòng)避碰算法,該算法可以判斷會(huì)遇情況,計(jì)算碰撞危險(xiǎn)度,并自動(dòng)確定行動(dòng)時(shí)間和行動(dòng)幅度。基于動(dòng)態(tài)面技術(shù)和神經(jīng)網(wǎng)絡(luò)方法,該算法還可以解決船舶運(yùn)動(dòng)控制系統(tǒng)中由后推法引起的“計(jì)算量膨脹”和“維度災(zāi)難”問題。通過對(duì)“YUKUN”號(hào)和“YULONG”號(hào)遠(yuǎn)洋船的Matlab 仿真實(shí)驗(yàn),驗(yàn)證了所提出的自動(dòng)避碰決策系統(tǒng)的有效性。
船舶的避碰決策流程如圖1 所示。
文獻(xiàn)[16]將3 種定性的會(huì)遇局面進(jìn)行定量化,以避免避碰行動(dòng)的不協(xié)調(diào)性,從而有利于避碰決策的研究。船舶會(huì)遇態(tài)勢(shì)劃分如圖2 所示。

圖2 互見中船舶會(huì)遇態(tài)勢(shì)劃分Fig.2 The division of the situation in the ship meeting
本文基于GOODWIN[17]的船舶領(lǐng)域模型進(jìn)行船舶避碰決策研究,船舶安全領(lǐng)域區(qū)域如圖3 所示。

圖3 船舶安全領(lǐng)域區(qū)域Fig.3 The region of the Ship Safety Domain
當(dāng)發(fā)現(xiàn)來船時(shí),通過船舶AIS,雷達(dá)等設(shè)備,獲取本船和各目標(biāo)船的相關(guān)運(yùn)動(dòng)數(shù)據(jù)。本船的地理坐標(biāo)表示為(x,y),目標(biāo)船的地理坐標(biāo)表示為(x1,y1),本船船速V0,目標(biāo)船船速V1,本船的航向C0,目標(biāo)船航向C1,兩船之間的距離用D表示,目標(biāo)船的相對(duì)方位為Tr,也即目標(biāo)船對(duì)于本船的相對(duì)方位。船舶相對(duì)運(yùn)動(dòng)示意圖如圖4 所示。

圖4 船舶相對(duì)運(yùn)動(dòng)示意圖Fig.4 Schematic diagram of relative motion of ships
(1)兩船之間的DCPA為

(2)兩船之間的TCPA為

本文在使用自適應(yīng)模糊神經(jīng)網(wǎng)絡(luò)計(jì)算船舶的碰撞危險(xiǎn)度時(shí),采用DCPA,TCPA的原始數(shù)據(jù)來進(jìn)行船舶碰撞危險(xiǎn)度的計(jì)算。
1.5.1 空間碰撞危險(xiǎn)度
其中SCR(space collision risk)以DCPA和船舶安全會(huì)遇領(lǐng)域d1、船舶安全通過距離d1的關(guān)系來確定。當(dāng)|DCPA|<d1時(shí)認(rèn)為船舶不能避免碰撞危險(xiǎn),此時(shí),SCR=1;當(dāng)|DCPA|<d2時(shí),即DCPA大于船舶的安全通過距離,此時(shí)船舶沒有碰撞危險(xiǎn),SCR=0;當(dāng)d1≤|DCPA|≤d2時(shí),SCR取值范圍隨著DCPA的不同而不同。其空間碰撞危險(xiǎn)度的隸屬函數(shù)utt如式(3)所示。

1.5.2 時(shí)間碰撞危險(xiǎn)度
TCR(time collision risk)是指存在碰撞危險(xiǎn)的兩船,在時(shí)間上的緊迫程度。SCR反映的是距離上的緊迫程度,TCR則反映了時(shí)間上的緊迫程度。設(shè)船舶從采取避碰操縱時(shí)的位置到最晚施舵點(diǎn)處的時(shí)間為t1,則當(dāng)TCPA小于時(shí)t1,即認(rèn)為TCR=1,而海上航行時(shí),船上的雷達(dá)等設(shè)備一般量程在12 n mile,所以這認(rèn)為當(dāng)船舶處于12 n mile 之外時(shí),認(rèn)為在時(shí)間上沒有碰撞危險(xiǎn),即緊迫程度為0,時(shí)間碰撞危險(xiǎn)度反映在TCPA與t1、t2的關(guān)系上,TCPA取“+”時(shí),代表他船未駛過最近會(huì)遇點(diǎn),TCPA取“-”時(shí),代表他船已經(jīng)駛過最近會(huì)遇點(diǎn)。于是TCR的隸屬度函數(shù)utt如式(4)和式(5)所示。
當(dāng)TCPA>0 時(shí),時(shí)間隸屬度

當(dāng)TCPA≤0 時(shí),時(shí)間隸屬度

DLMA表示船舶的最晚施舵距離。即當(dāng)船舶駛近到即使本船轉(zhuǎn)向90°時(shí),也不能避免碰撞的距離。DCPADLMA為最晚施舵點(diǎn)處船舶的DCPA值。
1.5.3 船舶碰撞危險(xiǎn)度模型的改進(jìn)
船舶在進(jìn)行實(shí)際的避讓操作時(shí),只需要保證SCR或TCR的值減小到安全避讓的閾值,即能保證船舶避開他船的措施是有效的。以實(shí)例進(jìn)行說明:當(dāng)SCR=1,且TCR=0.5 時(shí),只需要采取一定的避讓措施使得TCR減小至0,則不管SCR如何變化,即使仍為1,則認(rèn)為采取該措施后的ROC=0,即不存在碰撞危險(xiǎn)。
因此對(duì)于SCR、TCR來說,僅需要采取一定的避讓措施,確保將其中的最小值降為0,則就可以安全的“避清”他船,且此時(shí)的避讓措施的幅度較小。鑒于此,則船舶碰撞危險(xiǎn)度模型可以做如下的改進(jìn):

為實(shí)現(xiàn)基于自適應(yīng)神經(jīng)網(wǎng)絡(luò)智能舵的自動(dòng)避碰研究,首先,需要建立一個(gè)相對(duì)較小的轉(zhuǎn)向變量Δc,然后當(dāng)航向穩(wěn)定時(shí)自動(dòng)計(jì)算當(dāng)前的DCPA和TCPA,并比較兩船間的DCPA和SDA。當(dāng)兩者數(shù)值相差較大時(shí),采用逐漸逼近算法ΔC=ΔC+Δc,直到DCPA和SDA之間的值差小于設(shè)定的閾值hˉ′,即|DCPA-SDA|<hˉ′。hˉ′是相對(duì)小的正值,ΔC表示轉(zhuǎn)向角度。然后將符合條件的ΔC傳遞給航向控制單元從而實(shí)現(xiàn)轉(zhuǎn)向避讓。
船舶航向控制系統(tǒng)非線性數(shù)學(xué)模型如下[18]:

其中r為船舶艏搖角速度,ψ 為船舶航向,δ 為舵機(jī)實(shí)際舵角,T為追隨性指數(shù),K為旋回性指數(shù),α′,β為Norrbin 系數(shù),d為有界不確定外部擾動(dòng),KE是舵機(jī)控制增益,TE是舵機(jī)時(shí)間常數(shù),δE是舵機(jī)的命令舵角。
由式(7)可得包含船舶舵機(jī)伺服系統(tǒng)特性的非線性航向控制系統(tǒng)數(shù)學(xué)模型,如下:

x1=ψ,x2=r,x3=δ,g1=1,?2=d,?1=?3=0,u=δE和x=[x1,x2,x3]T∈Rq表示系統(tǒng)狀態(tài)向量,g2表示控制增益,η2(x)表示未知的非線性函數(shù),u,y∈R分別表示系統(tǒng)的輸入和輸出。
根據(jù)這項(xiàng)研究[19],可以引入以下假設(shè)。
假設(shè)1:未知控制增益函數(shù)gi(·),i=2,3 受限于某一范圍,滿足:

其中,bmin和bmax分別為某一未知常數(shù)的上下界。
假設(shè)2:假設(shè)|?|是有界的,即存在一個(gè)正的未知常數(shù)γi和?i<γi,i=1,…,n。
假設(shè)3:假設(shè)系統(tǒng)參考信號(hào)yr(t)是t 的光滑、有界的函數(shù),而且yr和導(dǎo)數(shù)y˙r,y¨r也有界,即存在一個(gè)正值常數(shù)B0,使得以下集合成立:

RBF 神經(jīng)網(wǎng)絡(luò)為單隱層神經(jīng)網(wǎng)絡(luò),結(jié)構(gòu)簡(jiǎn)單,一種典型的局部逼近神經(jīng)網(wǎng)絡(luò),學(xué)習(xí)收斂速度快,能夠逼近任意非線性函數(shù)。現(xiàn)以證明它能以任意精度逼近任何連續(xù)函數(shù)[19],即:h(x)∶Rq→R:

其中x∈Ωx?Rq是權(quán)向量,并且神經(jīng)網(wǎng)絡(luò)節(jié)點(diǎn)數(shù)l>1。ζi(x)為高斯基函數(shù):

其中vi是高斯基函數(shù)的寬度是高斯核函數(shù)的中心值。公式(11)中的RBF 神經(jīng)網(wǎng)絡(luò)可在?x∈Ωx?Rq的緊集上近似任何連續(xù)函數(shù)F(x),即[19]


這里引入了一個(gè)定理和一個(gè)假設(shè)[19]。
定理1[19]:通過使用RBF 神經(jīng)網(wǎng)絡(luò)和連續(xù)函數(shù)分離技術(shù),任何給定的連續(xù)函數(shù)都可以表示為:

假設(shè)4:假設(shè)所有Z∈ΩZ的ε*>0,并且是逼近誤差εi,i=1,2 的未知上界。
步驟一:定義跟蹤誤差s1=x1-yr,yr=ΔC。由于系統(tǒng)模型中存在未知項(xiàng),所以無法直接設(shè)計(jì)系統(tǒng)的控制律,因此使用RBF 神經(jīng)網(wǎng)絡(luò)進(jìn)行逼近:

其中,Δ1=S1(x1)A1yr+ε1+?1。因此,可以得出:

公式(21)中的參數(shù)ε*1,yr和?1是有界的,因此||Δ||也有界。通過使用反推技術(shù),可以選擇x2的虛擬控制律α2,如下:

通過使用DSC 方法,虛擬控制律α2可以用其估計(jì)值z(mì)2代替,并且τ2是時(shí)間常數(shù):

定義一階濾波器的輸出誤差是y2,并且y2=z2-α2,由此得出:

步驟二:參考第一步,定義誤差變量s2=x2-z2,則可以表示為:

類似于步驟一,通過使用DSC 方法,虛擬控制律α3可以用其估計(jì)值z(mì)3代替,并且τ3是時(shí)間常數(shù):

定義一階濾波器的輸出誤差是y3,y3=z3-α3,可以得出:

步驟三:參考第一步,定義誤差變量s3=x3-z3,則η3(x3)和可以表示為:

通過使用反推技術(shù),可以選擇系統(tǒng)控制律u,如下:

的RBF 神經(jīng)網(wǎng)絡(luò)自適應(yīng)律是通過Lyapunov 穩(wěn)定性準(zhǔn)則得出的,如公式(37)所示。自適應(yīng)權(quán)重可以自動(dòng)調(diào)整以逼近動(dòng)態(tài)未知項(xiàng)和干擾,并保證控制系統(tǒng)的動(dòng)態(tài)穩(wěn)定性。

本文基于大連海事大學(xué)的兩艘遠(yuǎn)洋訓(xùn)練船YULONG 和YUKUN,進(jìn)行了Matlab 仿真實(shí)驗(yàn)。Norrbin 系數(shù)和Nomoto 模型的系數(shù)K,T 與船舶的速度和載重有關(guān)。考慮到模型的攝動(dòng)誤差和有限的仿真條件,本文將經(jīng)濟(jì)航速下的參數(shù)值作為仿真的參數(shù)輸入。
YULONG 的參數(shù)如下:
Norrbin 系數(shù)β=1,α′=30,K=0.477 7 s-1,T=217.054 1 s-1,LYL=126 m,BYL=20.8 m,dYL=8 m,Cb=0.681 0,Δ=14 278.12 m3,xc=0.25 m,Aδ=18.8 m2.舵的參數(shù):Kr=1,Tr=2.5 s。
YUKUN 的參數(shù):LYK=116 m,BYK=18 m,dYK=5.4 m,Cb=0.559 5,Δ=5735.5 m3,xc=-0.51 m,Aδ=11.8 m2。
船舶自動(dòng)避碰控制器的初始參數(shù)選擇如下:k=0.002,k1=0.06,k2=60,k3=1。外界干擾信號(hào)選擇如下:?=0.001sin(5t).Г=0.2,σ=0.005,τ2=τ3=0.5。權(quán)重矢量圖的初始值為0。
假設(shè)本船是YULONG,目標(biāo)船是YUKUN。初始條件參數(shù)選擇如下:x1(t0)=x2(t0)=x3(t0)=0。

表1 兩船在交叉相遇時(shí)的初始運(yùn)動(dòng)參數(shù)Tab.1 Initial motion parameters of two ships when they cross each other
仿真結(jié)果如圖5-11 所示。

圖5 DCPA 和TCPA 的時(shí)間反應(yīng)Fig.5 Time response of DCPA and TCPA

圖6 空間距離和船首交叉角的時(shí)間反應(yīng)Fig.6 Time response of space distance and bow crossing angle

圖7 本船-YULONG 船舶航向的時(shí)間反應(yīng)Fig.7 Own ship-YULONG course time response

圖8 本船-YULONG 舵令的時(shí)間反應(yīng)Fig.8 Own Ship-YULONG rudder time response

圖9 本船-YULONG 自適應(yīng)參數(shù)的時(shí)間反應(yīng)Fig.9 Own ship-YULONG time response of adaptive parameters

圖10 兩船在交叉相遇局面下的絕對(duì)運(yùn)動(dòng)Fig.10 The absolute movement of the two ships in a crossover situation
根據(jù)圖5-11 的仿真結(jié)果,交叉相遇局面下避碰的全過程如下:
在觀察到目標(biāo)船和獲取它的基本信息后,首先,YULONG 確認(rèn)了本船領(lǐng)域內(nèi)的SDA 以及兩艘船之間的DCPA,TCPA。其次,將SDA 與DCPA 進(jìn)行比較,判斷ROC 是否確實(shí)存在。第三,確認(rèn)會(huì)遇局面并確定碰撞責(zé)任和避碰行為。在這種局面下,YULONG 是讓路船;然后計(jì)算ROC 指數(shù)。當(dāng)ROC 指數(shù)違反588 s 的設(shè)定標(biāo)準(zhǔn)時(shí),應(yīng)該采取避碰行動(dòng)。通過使用逐次逼近算法,得出航向改變值ΔC=40°,然后將ΔC=40°傳遞給優(yōu)化后的智能舵以采取措施。最后,本船返回原航線。

圖11 兩船在交叉相遇局面下的相對(duì)運(yùn)動(dòng)Fig.11 Relative movement of two ships in a cross-over encounter
本文對(duì)船舶自動(dòng)避碰決策進(jìn)行了研究,結(jié)合COLREGs 和航行經(jīng)驗(yàn),并優(yōu)化了船舶避碰過程中涉及到的數(shù)學(xué)模型,為船舶自動(dòng)避碰設(shè)計(jì)了改進(jìn)的智能舵。ROC 模型分為SCR 模型和TCR 模型,綜合考慮了各種因素對(duì)兩船會(huì)遇局面中所涉及的ROC 的影響,如船舶的相對(duì)方位、絕對(duì)速度、相對(duì)速度等因素。與碰撞幾何方法相比,本文提出的算法更加準(zhǔn)確且易于工程應(yīng)用。該算法可以提高會(huì)遇局面的安全水平,最大程度地減少碰撞風(fēng)險(xiǎn),保護(hù)海上人員生命安全并進(jìn)一步幫助值班駕駛員進(jìn)行船舶避碰。另一方面,它還可以解決船舶運(yùn)動(dòng)控制系統(tǒng)中由后推法引起的維度災(zāi)難和計(jì)算量膨脹的問題,且計(jì)算量少。最后,基于兩個(gè)遠(yuǎn)洋訓(xùn)練船的Matlab 仿真結(jié)果證明了本文所提出的船舶自動(dòng)避碰算法的性能和有效性。