趙吟秋,索永峰,鮮 波
(1.集美大學(xué)航海學(xué)院,福建 廈門361021;2.集美大學(xué)航海技術(shù)研究所,福建 廈門 361021)
船舶自動(dòng)識別系統(tǒng)(automatic identification system,AIS)提供了豐富的船舶航行數(shù)據(jù),基于AIS船舶軌跡數(shù)據(jù)進(jìn)行通航水域風(fēng)險(xiǎn)評價(jià)、船舶自身行為特征分析、自動(dòng)避碰以及船舶會遇等方面的研究是當(dāng)前的熱點(diǎn)[1]。潘家財(cái)?shù)萚2]根據(jù)廈門灣內(nèi)水域特點(diǎn)以兩船會遇距離作為會遇判定條件,統(tǒng)計(jì)船舶會遇的空間分布以及會遇船長分布等,分析了廈門灣船舶會遇狀況。任亞磊等[3]基于構(gòu)建的動(dòng)態(tài)船舶領(lǐng)域模型,對會遇類型、會遇船舶特征等進(jìn)行統(tǒng)計(jì),進(jìn)而評估相關(guān)水域的宏觀碰撞危險(xiǎn)度,該方法對開闊水域船舶目標(biāo)航行數(shù)據(jù)較少的情況下難以確定每條船舶的動(dòng)態(tài)領(lǐng)域,因此在開闊水域中該方法的適用性還有待驗(yàn)證。馬杰等[4]采用時(shí)空關(guān)系對數(shù)據(jù)進(jìn)行約束,提取特定時(shí)間段內(nèi)船舶的位置和航向特征,形成會遇特征序列,利用支持向量機(jī)(SVM)對會遇特征進(jìn)行分類辨識,但該方法并未列舉判定會遇態(tài)勢的篩選條件,也不適用于對大量數(shù)據(jù)進(jìn)行船舶的會遇挖掘。甄榮等[5]提出運(yùn)用墨卡托算法計(jì)算船舶之間的距離,并通過DBSCAN算法識別船舶會遇。冮龍暉等[6]根據(jù)船舶AIS動(dòng)態(tài)數(shù)據(jù),結(jié)合插值方法計(jì)算船舶間相對運(yùn)動(dòng)參數(shù),提取船舶會遇信息。Du等[7]通過檢測船舶會遇,進(jìn)而對船舶可操縱余量,避讓有效性等指標(biāo)對會遇船舶的碰撞風(fēng)險(xiǎn)等級進(jìn)行劃分,檢測近距離會遇的船舶。Zhang等[8]通過對會遇的船舶進(jìn)行風(fēng)險(xiǎn)排序,考慮船舶領(lǐng)域和船舶尺寸計(jì)算碰撞風(fēng)險(xiǎn),檢測近距離會遇的船舶,該方法可以有效區(qū)分具有不同碰撞風(fēng)險(xiǎn)的會遇船舶,但缺少對會遇過程的量化分析。Kim等[9]運(yùn)用分布式隨機(jī)搜索算法,結(jié)合AIS數(shù)據(jù)實(shí)現(xiàn)會遇的多船各自判斷會遇態(tài)勢。Chen等[10]運(yùn)用改進(jìn)的時(shí)間離散非線性速度障礙(TD-NLVO)算法識別特定區(qū)域AIS數(shù)據(jù)中的多船會遇局面。
綜上所述,根據(jù)海量AIS數(shù)據(jù)快速高效挖掘船舶會遇信息,定量多維度分析船舶的會遇過程方面的研究有待提高。為了能夠快速有效地挖掘船舶會遇局面,識別潛在的碰撞風(fēng)險(xiǎn)點(diǎn),監(jiān)測處于會遇過程中的船舶航行數(shù)據(jù),定量分析船舶會遇過程,本文改善傳統(tǒng)DBSCAN算法,分析船舶會遇時(shí)空演化特性,有效識別會遇船舶,并在此基礎(chǔ)上挖掘多船會遇局面,劃分船舶不同會遇類型,分析船舶的會遇避讓方式,建立會遇船舶數(shù)據(jù)庫。
在現(xiàn)實(shí)條件下,由于各種原因?qū)е翧IS數(shù)據(jù)存在缺失、重復(fù)等數(shù)據(jù)異?,F(xiàn)象,給AIS數(shù)據(jù)處理以及分析帶來一定的難度。為提高數(shù)據(jù)的準(zhǔn)確性和可信度,首先對AIS數(shù)據(jù)中船舶位置、航速、航向等不符合常理的異常數(shù)據(jù)進(jìn)行刪除。由于在船速較低的情況下船舶的操縱性能較差,難以實(shí)施有效的避讓行為,分析會遇過程沒有實(shí)際意義,因此,刪除船速值小于4 kn的AIS數(shù)據(jù)。當(dāng)AIS數(shù)據(jù)中數(shù)據(jù)條目的時(shí)間間隔較大時(shí),容易導(dǎo)致后續(xù)插值補(bǔ)全的誤差很大,影響再現(xiàn)船舶真實(shí)航行情景,因此,刪除數(shù)據(jù)條目時(shí)間間隔大于30 min的數(shù)據(jù)。
為了對海量的AIS數(shù)據(jù)進(jìn)行有效分析,將AIS數(shù)據(jù)條目大于300條的船舶航行數(shù)據(jù)提取出來,對船舶數(shù)據(jù)進(jìn)行后續(xù)統(tǒng)計(jì)分析,處理后的部分AIS數(shù)據(jù)如表1所示。
表1 AIS數(shù)據(jù)處理項(xiàng)
人們將海上航行船舶相遇而必須采取行動(dòng)的情況稱為“會遇”。會遇不包括無需采取避讓行為的船舶相遇的情況。在海上交通研究中,會遇是指與碰撞事故密切相關(guān)且在一定程度上表征海上交通危險(xiǎn)的一種特殊的船舶相遇情況[8]。本文將潛在會遇定義為:當(dāng)兩船位于某一給定距離以內(nèi)的一種實(shí)際情況。參考文獻(xiàn)[12]有關(guān)船舶最小安全會遇距離的模糊確定研究,本文采用0.5 n mile為潛在會遇判定的閾值條件。
DBSCAN聚類算法應(yīng)用廣泛[1],其基本原理如圖1所示。在研究區(qū)域內(nèi),設(shè)定兩個(gè)參數(shù)閾值MinPoints和領(lǐng)域半徑E,以數(shù)據(jù)對象S為圓心,劃定一個(gè)半徑為E的圓形區(qū)域,在此區(qū)域內(nèi)檢測數(shù)據(jù)樣本數(shù)量Q,若Q≥MinPoints則S為核心對象,其余點(diǎn)稱為邊界對象,處于核心對象E領(lǐng)域中的樣本點(diǎn)為核心對象的直接密度可達(dá)樣本點(diǎn);如若Q 以時(shí)間戳為關(guān)鍵字提取船舶航行數(shù)據(jù),建立時(shí)空約束下不同船舶的軌跡狀態(tài)時(shí)間序列traj={(p1,t1),(p2,t2),(p3,t3),…,(pn,tn)},p={mmsi,postime,lon,lat,speed,course,heading}表示標(biāo)志碼為mmsi的船舶在某一時(shí)刻的航行狀態(tài)數(shù)據(jù),為了避免應(yīng)用DBSCAN算法挖掘船舶會遇時(shí),出現(xiàn)船舶A與船舶B之間的相對距離值dAB(A,B=1,2,…,n)重復(fù)計(jì)算的情況,構(gòu)建船舶相對距離矩陣D,計(jì)算不同船舶之間的距離[13]。該矩陣與全矩陣計(jì)算相比較,將算法的運(yùn)算量減小了50%。 (1) 給定兩船經(jīng)緯度坐標(biāo)A(Lon1,Lat1),B(Lon2,Lat2),采用恒向線方位距離計(jì)算公式計(jì)算兩船方位角C和距離d[11]。具體計(jì)算公式如下: C=arctan(ΔLon/Δq) (2) (3) 式中:經(jīng)度差ΔLon=Lon2-Lon1;Δq為AB間緯度漸長率差值;SLati為點(diǎn)到赤道的子午線弧長;r1為Lat1緯度處的等緯圈半徑。其中,SLati的計(jì)算式為: (4) 式中:a為地球橢圓體長半軸長;e為偏心率。 A、B間緯度漸長率差值Δq計(jì)算公式如下: (5) Lat1緯度處的等緯圈半徑r1為: (6) 本文在兩船會遇起始點(diǎn)計(jì)算兩船航向差與相對方位關(guān)系,并將此作為依據(jù)劃分船舶的會遇類型,兩船航向差ΔH以及目標(biāo)船的相對方位計(jì)算如下。 (7) 式中:AO為目標(biāo)船的相對方位;HO,HT分別為本船和目標(biāo)船船首向;ΔH為兩船的航向交叉的角度。 首先對原始AIS數(shù)據(jù)進(jìn)行預(yù)處理,按照位置時(shí)間作為關(guān)鍵字進(jìn)行升序排序,以1 min為時(shí)間間隔提取時(shí)間段內(nèi)船舶航行數(shù)據(jù),將該數(shù)據(jù)按照船舶識別號分別進(jìn)行插值補(bǔ)全到同一時(shí)刻T1,T2,…Tn,且每分鐘內(nèi)每條船只保留一條AIS數(shù)據(jù)。遍歷每一個(gè)時(shí)間片,計(jì)算相對距離矩陣,調(diào)用DBSCAN算法。DBSCAN 聚類算法設(shè)計(jì)的關(guān)鍵參數(shù)為MinPoints≥2,E=0.5,以相對距離矩陣D為算法輸入數(shù)據(jù),輸出潛在會遇船舶狀態(tài)信息,并將其存儲在對應(yīng)的數(shù)據(jù)庫中,運(yùn)用CPA算法,驗(yàn)證數(shù)據(jù)庫中的船舶會遇情況,最后結(jié)合船舶會遇分類劃分船舶會遇類型,進(jìn)行會遇過程分析。算法流程如2圖所示。 以2020年6月臺灣海峽的AIS數(shù)據(jù)為研究對象,原始AIS數(shù)據(jù)為1000萬條,經(jīng)過數(shù)據(jù)預(yù)處理后剩余400萬條。通過設(shè)置滑動(dòng)時(shí)間窗口以提取研究水域內(nèi)會遇場景的特征序列數(shù)據(jù)。根據(jù)算法流程和參數(shù)計(jì)算法公式,可以得出某一時(shí)刻T的潛在會遇船舶信息,如圖3所示。其中:紅色點(diǎn)(-1)表示沒有達(dá)到會遇篩選條件的船舶,即為噪聲點(diǎn);圖3中其余顏色(標(biāo)識分別為1,2,…,8)各自代表一組潛在會遇船舶,通過標(biāo)記可以得到潛在會遇船舶的標(biāo)識碼和相關(guān)航行狀態(tài)信息。 將圖3部分類別數(shù)據(jù)導(dǎo)出,并去除噪聲點(diǎn),得到表2。將表2中數(shù)據(jù)進(jìn)行相關(guān)參數(shù)計(jì)算,可得兩船的相對距離和方位以及航向差信息。 表2 潛在會遇船舶狀態(tài)數(shù)據(jù) 當(dāng)會遇船舶相互位于各自正前方以相反或接近相反的方向相互逼近時(shí),通常是指船首向交叉在6°范圍內(nèi)構(gòu)成對遇局面;當(dāng)船首向交叉大于6°且小于112.5°時(shí),構(gòu)成交叉會遇;若滿足后船于前船正橫大于22.5°范圍內(nèi),以較大速度趕超前船的情況,則構(gòu)成追越局面。其方位關(guān)系如圖4所示。 根據(jù)圖4方位關(guān)系,結(jié)合會遇船舶相對方位關(guān)系和會遇船舶航向差可以實(shí)現(xiàn)不同會遇局面的識別。 根據(jù)DBSCAN算法得出的潛在會遇船舶,結(jié)合圖4的會遇局面劃分關(guān)系,進(jìn)行船舶會遇局面的識別與分析。本文選擇追越、交叉和對遇3種典型局面進(jìn)行展示,結(jié)果如圖5所示。 為避免碰撞發(fā)生,圖5b和圖5c都有典型的避讓行為發(fā)生。圖5b中A船舶(藍(lán)色,下同)保持直航,B船舶(紅色,下同)向右改向,完成避讓后回到原航向。圖5c中B船舶為完成避讓采取了向右改向,待避讓完成后回到原航向繼續(xù)行駛。這也表示船舶嚴(yán)格遵守了《規(guī)則》中的向右改向避讓他船的要求。 為保障船舶在海上的航行安全,提高船舶危險(xiǎn)會遇的識別率,本文基于AIS數(shù)據(jù),通過改進(jìn)DBSCAN算法的相對距離矩陣,減小了DBSCAN算法的運(yùn)算量。同時(shí)在數(shù)據(jù)不失真的前提下,合理處理AIS數(shù)據(jù),減小了CPA算法的運(yùn)算量,并且處理過程中保證了數(shù)據(jù)時(shí)空的一致性,減小了會遇的誤判與漏判。本文以臺灣海峽部分?jǐn)?shù)據(jù)為基礎(chǔ),結(jié)合會遇局面方位關(guān)系,驗(yàn)證了算法的有效性。通過定量描述船舶會遇過程,可加深對會遇態(tài)勢的整體感知,再現(xiàn)船舶會遇過程,為后續(xù)基于AIS的船舶避碰行為研究提供參考,也為自動(dòng)避碰決策優(yōu)化提供一種可行的驗(yàn)證方法。目前算法僅對兩船會遇進(jìn)行了研究,后續(xù)還需對多船會遇進(jìn)行深入研究。2.3 船舶會遇特征參數(shù)計(jì)算
2.4 改進(jìn)的船舶會遇挖掘算法流程設(shè)計(jì)
3 算法實(shí)驗(yàn)
3.1 DBSCAN聚類實(shí)驗(yàn)結(jié)果
3.2 會遇類型劃分
3.3 會遇挖掘結(jié)果與分析
4 結(jié)論