張黎翔, 朱怡安, 陸偉, 文捷, 崔俊云
(1.西北工業(yè)大學(xué) 計(jì)算機(jī)學(xué)院, 陜西 西安 710072; 2.西安財(cái)經(jīng)大學(xué) 信息學(xué)院, 陜西 西安 710100;3.交通運(yùn)輸部水運(yùn)科學(xué)研究所, 北京 100088)
軌跡大數(shù)據(jù)[1]記錄移動(dòng)對(duì)象隨時(shí)間變化的活動(dòng)情況,并客觀反映移動(dòng)對(duì)象個(gè)體或群體的活動(dòng)規(guī)律,當(dāng)前研究人員針對(duì)軌跡大數(shù)據(jù)的研究主要包括:軌跡分類(lèi)與聚類(lèi)[2-3]、軌跡預(yù)測(cè)[4]、軌跡模式挖掘[5]等。
船舶自動(dòng)識(shí)別系統(tǒng)(automatic identification system,AIS)通過(guò)GPS或北斗導(dǎo)航系統(tǒng)獲得船舶位置、航速、航向等動(dòng)態(tài)信息與船舶靜態(tài)資料,并按照國(guó)際電信聯(lián)盟標(biāo)準(zhǔn)通過(guò)甚高頻廣播對(duì)外發(fā)送。船舶AIS設(shè)備的普及,使AIS數(shù)據(jù)成為當(dāng)前船舶交通流分析、海事監(jiān)管、事故分析的主要數(shù)據(jù)來(lái)源,為船舶軌跡大數(shù)據(jù)獲取、分析與應(yīng)用提供了條件[6-7]。
AIS數(shù)據(jù)報(bào)文并不具備可靠性,在受到各種障礙物和電磁干擾的情況下,AIS數(shù)據(jù)傳輸過(guò)程中經(jīng)常會(huì)出現(xiàn)丟失和錯(cuò)誤。并且AIS數(shù)據(jù)包中的位置數(shù)據(jù)來(lái)源于GPS或北斗等定位設(shè)備,也可能因定位設(shè)備問(wèn)題而出錯(cuò)。錯(cuò)誤的位置數(shù)據(jù)被獲取進(jìn)入海事或航運(yùn)管理信息系統(tǒng),可能使管理部門(mén)對(duì)當(dāng)前海事交通狀態(tài)產(chǎn)生誤判,甚至可能對(duì)碰撞、觸礁或擱淺等海損事故無(wú)法及時(shí)做出預(yù)判,釀成重大損失。
針對(duì)AIS異常點(diǎn)的檢測(cè)與修復(fù)方法的研究主要分為兩大類(lèi):基于單船單航跡的方法[8]和基于航跡聚類(lèi)的方法[9-10]。前者依據(jù)船舶自身位置、速度與航向等數(shù)據(jù)判斷異常點(diǎn)并進(jìn)行修復(fù),其優(yōu)點(diǎn)在于不需要航線歷史數(shù)據(jù);其缺點(diǎn)在于異常點(diǎn)判別依賴(lài)于判別模型,且大量連續(xù)位置數(shù)據(jù)丟失情況異常點(diǎn)修復(fù)困難,Zhang等[11]通過(guò)模型對(duì)異常點(diǎn)進(jìn)行檢測(cè)取得一定的成果,但僅當(dāng)異常漂移點(diǎn)的平均速度超過(guò)最大速度時(shí)才視為異常點(diǎn)。后者依據(jù)大量船舶歷史航跡聚類(lèi)結(jié)果,判別軌跡異常點(diǎn)并進(jìn)行修復(fù),其優(yōu)點(diǎn)在于不需建立單船軌跡異常點(diǎn)模型,其缺點(diǎn)在于需要以大量歷史航跡數(shù)據(jù)作支撐,Rong等[12]通過(guò)聚類(lèi)方法取得不錯(cuò)的效果,但其對(duì)聚類(lèi)結(jié)果有很高要求,且未能對(duì)異常點(diǎn)進(jìn)行修復(fù);而這兩類(lèi)方法主要是針對(duì)船舶位置信息進(jìn)行異常點(diǎn)檢測(cè)與修復(fù),并未對(duì)船舶加速和航向異常點(diǎn)剔除,現(xiàn)有方法判定異常點(diǎn)相對(duì)簡(jiǎn)單,且多是針對(duì)內(nèi)河船舶,針對(duì)海上船舶異常點(diǎn)研究還有待提高,海上船舶有著類(lèi)型差異大、尺度跨度大、航行自由度大、慣性大等特點(diǎn),海上環(huán)境具有事故突發(fā)性強(qiáng)、氣象環(huán)境復(fù)雜等特點(diǎn)。
海上貨輪與客輪具有相對(duì)固定的航行參數(shù),航行的位置、速度與航向數(shù)據(jù)具有相對(duì)穩(wěn)定性和平滑性。因此采用基于單船軌跡的異常點(diǎn)檢測(cè)與修復(fù)方法具有較大優(yōu)勢(shì)。本文提出了一種利用單船自身軌跡數(shù)據(jù)進(jìn)行異常點(diǎn)判斷與修復(fù)的方法,該方法充分利用船舶的經(jīng)緯度、速度、加速度以及航向數(shù)據(jù)進(jìn)行異常點(diǎn)判定,與基于單一位置數(shù)據(jù)的異常點(diǎn)判定方法相比,能夠有效減少異常點(diǎn)的漏判,且該方法不需要?dú)v史數(shù)據(jù)作為支撐,適用范圍更廣。此外采用三次樣條方法對(duì)間隔性異常點(diǎn)數(shù)據(jù)進(jìn)行剔除后的補(bǔ)足修復(fù),進(jìn)一步提升軌跡數(shù)據(jù)的連續(xù)性和完整性。
軌跡用來(lái)表示移動(dòng)對(duì)象狀態(tài)隨時(shí)間持續(xù)變化的信息歷史,也可視為時(shí)間到狀態(tài)的映射,即給定某一時(shí)刻t(t∈R+),通過(guò)一個(gè)以時(shí)間t為自變量的連續(xù)函數(shù)F,可以得到該對(duì)象在時(shí)刻t所處的狀態(tài)空間。狀態(tài)空間一般為d維向量,映射可表示為F:R+→Sd。設(shè)Tr表示船舶航行中的軌跡,則Tr={(s1,t1),(s2,t2),…,(sn,tn),…}。當(dāng)前研究較多的狀態(tài)空間為移動(dòng)對(duì)象位置向量,即平面空間中的二維坐標(biāo)(x,y)。船舶發(fā)射的AIS位置報(bào)告報(bào)文包含經(jīng)度、緯度、速度和航向等數(shù)據(jù),為準(zhǔn)確判別軌跡數(shù)據(jù)中的異常點(diǎn),本文將船舶狀態(tài)空間S表示為經(jīng)度、緯度、速度和航向組成的四維向量(E,N,v,C)。
對(duì)vtexplorer網(wǎng)站[14]提供的AIS原始報(bào)文分析發(fā)現(xiàn),AIS報(bào)文存在轉(zhuǎn)發(fā)、丟失、數(shù)據(jù)錯(cuò)誤等原因,會(huì)導(dǎo)致直接根據(jù)AIS報(bào)文建立的船舶軌跡存在諸多異常點(diǎn),通過(guò)分析將異常點(diǎn)分類(lèi)并給出判定條件。
1) 異常停止點(diǎn)
根據(jù)國(guó)際電信聯(lián)盟通信標(biāo)準(zhǔn)[13]所規(guī)定的報(bào)文格式,在AIS報(bào)文發(fā)送過(guò)程中存在轉(zhuǎn)發(fā)機(jī)制,接收端可能會(huì)接收到同一軌跡點(diǎn)的重復(fù)報(bào)文。重復(fù)的報(bào)文除了時(shí)間信息外,其他信息全部相同。另外,船舶自帶定位裝置在復(fù)雜環(huán)境下可能無(wú)法實(shí)時(shí)獲取位置數(shù)據(jù),從而可能導(dǎo)致連續(xù)一段AIS報(bào)文中位置數(shù)據(jù)相同。如果不對(duì)這些重復(fù)或者異常的報(bào)文進(jìn)行處理,會(huì)導(dǎo)致誤判船舶處于停止?fàn)顟B(tài)。鑒于此,可給出異常停止點(diǎn)判定方法為:對(duì)于AIS序列,如果第i個(gè)點(diǎn)的速度大于2節(jié)(1節(jié)=1海里/小時(shí)),且第i+1個(gè)點(diǎn)的坐標(biāo)(E,N)、速度v、航向C數(shù)據(jù)均與第i個(gè)點(diǎn)相同,則第i+1個(gè)點(diǎn)為異常停止點(diǎn),規(guī)則如下
(1)
2) 異常加速點(diǎn)
根據(jù)當(dāng)前船舶操縱性能設(shè)計(jì)標(biāo)準(zhǔn),滿載情況下,船舶從靜止加速到設(shè)計(jì)速度的距離為船長(zhǎng)的20倍左右;而在空載情況下,加速距離縮短到原來(lái)長(zhǎng)度的1/2~1/3。船舶停車(chē)沖程受船舶排水量影響,一般為船長(zhǎng)的8~20倍。據(jù)此標(biāo)準(zhǔn),一艘船以10倍船長(zhǎng)的距離加速到其設(shè)計(jì)速度的加速度,可作為其理論的最大加速度;以8倍船長(zhǎng)的距離由其設(shè)計(jì)速度減速到停止的加速度,可作為其理論最小加速度。若設(shè)船長(zhǎng)為L(zhǎng),設(shè)計(jì)速度為Vd,最大加速度為amax,最小加速度為amin,加速用時(shí)為t1,減速用時(shí)為t2,再設(shè)船舶行進(jìn)過(guò)程中做勻加速或勻減速運(yùn)動(dòng),則
(2)
由以上關(guān)系可以求得船舶最大加速度amax和最小加速度amin為
(3)
對(duì)于AIS序列,根據(jù)第i個(gè)點(diǎn)與第i+1個(gè)點(diǎn)的速度以及時(shí)間差,可以計(jì)算出兩點(diǎn)之間的加速度。若計(jì)算所得的加速度大于最大加速度或小于最小加速度,則判定第i+1個(gè)點(diǎn)為異常加速點(diǎn),即
(4)
3)異常漂移點(diǎn)
(5)
tm滿足vi+1=vi+amax(tm-ti)+amin(ti+1-tm)。當(dāng)受到風(fēng)浪及避障影響時(shí),船舶在i點(diǎn)和i+1點(diǎn)之間的實(shí)際行程一般不是嚴(yán)格直線。因此,軌跡點(diǎn)i和軌跡點(diǎn)i+1之間的直線距離d(i,i+1)必定小于smax。軌跡點(diǎn)i和軌跡點(diǎn)i+1之間的直線距離d(i,i+1)可以通過(guò)2個(gè)軌跡點(diǎn)的經(jīng)緯度坐標(biāo)經(jīng)計(jì)算得出。據(jù)此,軌跡中的第i+1個(gè)軌跡點(diǎn)為異常漂移點(diǎn)的規(guī)則為其與第i個(gè)軌跡點(diǎn)之間的直線距離大于smax,可表示如下
(6)
4) 異常轉(zhuǎn)向點(diǎn)
(7)
式中,smax為異常漂移點(diǎn)中求解的2個(gè)軌跡點(diǎn)之間的最大行程。據(jù)此,對(duì)于船舶軌跡中的一個(gè)軌跡點(diǎn),若其與前一個(gè)軌跡點(diǎn)之間的轉(zhuǎn)向角度大于ωmax,則該軌跡點(diǎn)為異常轉(zhuǎn)向點(diǎn),即
(8)
根據(jù)AIS數(shù)據(jù)建立的船舶軌跡是離散的時(shí)空序列。為了滿足后續(xù)基于軌跡數(shù)據(jù)的研究與應(yīng)用,需要將數(shù)據(jù)中的異常點(diǎn)刪除,然而,異常點(diǎn)的刪除會(huì)導(dǎo)致軌跡序列變得不連續(xù);AIS報(bào)文的丟失也同樣會(huì)導(dǎo)致軌跡序列的間斷。故在實(shí)際應(yīng)用中,需要進(jìn)行同步插值處理,以獲得連續(xù)軌跡。三次樣條插值是常用的時(shí)空軌跡插值與同步方法之一,在時(shí)空軌跡數(shù)據(jù)缺失較少且間斷缺失情況下,三次樣條插值法具有良好的修復(fù)和同步效果。
根據(jù)國(guó)際電信聯(lián)盟通信標(biāo)準(zhǔn)[13]的規(guī)定,AIS的位置以及航行相關(guān)數(shù)據(jù)報(bào)文發(fā)送時(shí)間間隔與船只類(lèi)型以及航速相關(guān)。對(duì)于A類(lèi)船只,AIS報(bào)文發(fā)送的間隔應(yīng)不大于10 s;對(duì)于B類(lèi)船只,AIS報(bào)文發(fā)送的間隔應(yīng)不大于30 s。在船舶正常行駛情況下,能夠獲取的軌跡數(shù)據(jù)比較密集,報(bào)文丟失與異常點(diǎn)刪除可能導(dǎo)致的軌跡點(diǎn)缺失相對(duì)較少,故適合采用三次樣條插值法進(jìn)行軌跡點(diǎn)修復(fù)和同步。但在船舶在停泊情況下,AIS報(bào)文發(fā)送時(shí)間間隔為3 min,這種情況不需插值處理;此外,船舶也可能存在主動(dòng)關(guān)閉AIS電臺(tái)的情況,這將導(dǎo)致船舶軌跡點(diǎn)出現(xiàn)較長(zhǎng)一段缺失,此種情況下船舶的行為存在不確定性,故不適合進(jìn)行插值處理。
鑒于上述AIS報(bào)文的特點(diǎn),本文僅針對(duì)刪除異常點(diǎn)之后的軌跡數(shù)據(jù)進(jìn)行分段處理,即根據(jù)軌跡點(diǎn)時(shí)間間隔與航速,先識(shí)別出正常航行段、停止段、和關(guān)閉電臺(tái)段,分段的規(guī)則為:①AIS報(bào)文時(shí)間間隔小于3 min為正常航行段;②AIS報(bào)文時(shí)間間隔大于等于3 min且小于等于5 min、航速小于1 kn為停止段;③AIS報(bào)文時(shí)間間隔大于5 min為關(guān)閉AIS電臺(tái)段。軌跡數(shù)據(jù)恢復(fù)過(guò)程中,僅針對(duì)第①種情況進(jìn)行三次樣條插值;對(duì)于第②和第③種情況,不進(jìn)行插值處理。在針對(duì)第① 種情況進(jìn)行插值時(shí),根據(jù)不同船舶類(lèi)型和航速,以AIS報(bào)文規(guī)定時(shí)間間隔作為步長(zhǎng)進(jìn)行插值。
設(shè)AIS時(shí)空序列中有m個(gè)軌跡點(diǎn),m個(gè)軌跡點(diǎn)對(duì)應(yīng)時(shí)刻分別為ti(i=1,2,…,m),xi,yi,vi,θi分別表示軌跡點(diǎn)i的經(jīng)度、緯度、速度、航向角,則經(jīng)度方向速度為vxi=vicosθi,緯度方向速度為vyi=visinθi。以待插值序列的時(shí)間起點(diǎn)為零時(shí)刻,用對(duì)應(yīng)的經(jīng)緯度坐標(biāo)作為坐標(biāo)原點(diǎn),對(duì)于待插值的時(shí)空序列,在經(jīng)度和緯度方向端點(diǎn)的導(dǎo)數(shù),即為vxi和vyi,將vxi和vyi代入分段樣條函數(shù)即可求得系數(shù)矩陣,隨后即可通過(guò)分段樣條函數(shù)求得每一分段內(nèi)任意時(shí)刻t對(duì)應(yīng)的經(jīng)緯度數(shù)值。
根據(jù)邊界條件,在t1和t2時(shí)刻應(yīng)滿足
(9)
根據(jù)待插值序列段邊界值y(t1),y(t2),v(t1),v(t2)即可求得樣條函數(shù)系數(shù),確定經(jīng)度y關(guān)于時(shí)間t的函數(shù)表達(dá)式,進(jìn)而根據(jù)插值時(shí)間間隔,求得對(duì)應(yīng)軌跡點(diǎn)的經(jīng)度值。軌跡序列的其他參數(shù)(緯度、速度、航向)的插值方法與此類(lèi)同,不再贅述。
為驗(yàn)證本文所提出的船舶軌跡數(shù)據(jù)異常點(diǎn)處理與修復(fù)方法的效果,通過(guò)vtexplorer網(wǎng)站下載部分AIS原始數(shù)據(jù)進(jìn)行實(shí)驗(yàn)。數(shù)據(jù)選擇廈門(mén)港及周邊水域,時(shí)間范圍從2018年12月21日11時(shí)46分37秒至2019年1月3日7時(shí)30分22秒;空間范圍為(117.773 7°E,24.087 84°N)至(118.630 37°E,24.69 1°N),其中位置數(shù)據(jù)共12 158 622條,靜態(tài)數(shù)據(jù)共387 745條。實(shí)驗(yàn)選取1艘MMSI號(hào)為413698470的船舶軌跡數(shù)據(jù)進(jìn)行分析,有14 965條位置數(shù)據(jù),時(shí)間跨度為2018年12月21日11時(shí)46分41秒至2018年12月22日23時(shí)59分50秒。查詢(xún)?cè)摯办o態(tài)數(shù)據(jù)可知,該船呼號(hào)為BVHW8,名稱(chēng)為HAI GONG 167,船長(zhǎng)32 m,是1艘油船。
在不對(duì)AIS原始位置數(shù)據(jù)進(jìn)行任何處理的情況下,在設(shè)定時(shí)間跨度內(nèi),該船舶的軌跡如圖1(百度地圖,比例尺為1∶50 000)所示。
從圖1可以看出,根據(jù)該船原始位置數(shù)據(jù)序列建立的軌跡有些雜亂,能直觀看到的是其中存在諸多異常漂移點(diǎn)。異常漂移點(diǎn)的存在使得部分軌跡段甚至穿過(guò)陸地,明顯不具備可信性。若將這些船舶原始軌跡數(shù)據(jù)作為統(tǒng)計(jì)分析系統(tǒng)的數(shù)據(jù)源,將會(huì)造成統(tǒng)計(jì)分析結(jié)果偏離實(shí)際情況。這對(duì)于船舶管理與監(jiān)控分析系統(tǒng),將會(huì)造成錯(cuò)誤的船舶異常行為報(bào)警。
圖1 船舶原始軌跡圖
若根據(jù)本文提出的異常軌跡點(diǎn)判定方法,則該船原始位置數(shù)據(jù)中存在的不同類(lèi)型的異常點(diǎn)及其數(shù)量情況如表1所示。
表1 軌跡異常點(diǎn)分布
從表1該船舶異常點(diǎn)類(lèi)型分布可以看出,異常漂移和異常轉(zhuǎn)彎點(diǎn)所占比例較重,且該船沒(méi)有異常停止點(diǎn)。主要原因可能是不存在重復(fù)轉(zhuǎn)發(fā)報(bào)文情況,但也可能是本文實(shí)驗(yàn)下載的原始AIS數(shù)據(jù)已經(jīng)處理了重復(fù)報(bào)文。按照本文方法,將原始數(shù)據(jù)中發(fā)現(xiàn)的各類(lèi)異常點(diǎn)清除之后,該船的軌跡如圖2(百度地圖,比例尺為1∶50 000)所示。從圖2可以看出,清除異常點(diǎn)之后,船舶軌跡變得清晰可辨。
圖2 船舶清除異常點(diǎn)之后軌跡
在判別并刪除異常軌跡點(diǎn)之后,雖然船舶軌跡整體變得清晰,但軌跡點(diǎn)時(shí)間間隔較大且不均勻,這不利于船舶局部軌跡分析與應(yīng)用。通過(guò)靜態(tài)數(shù)據(jù)可知,該船船長(zhǎng)32 m,為小型油船,屬于B類(lèi)船只,故對(duì)其軌跡修復(fù)過(guò)程中,按照本文第2節(jié)所給出的三次樣條插值方法,以其AIS報(bào)文發(fā)送時(shí)間間隔30 s進(jìn)行插值處理,共插入軌跡點(diǎn)5 419個(gè),插入軌跡點(diǎn)與總軌跡點(diǎn)的比值為36.21%。數(shù)據(jù)修復(fù)前后船舶軌跡點(diǎn)散點(diǎn)對(duì)比如圖3a)和3b)(百度地圖,比例尺為1∶50 000)所示。
圖3 修復(fù)前后航跡點(diǎn)對(duì)比圖
由圖3b)可以看出,數(shù)據(jù)修復(fù)之后船舶軌跡點(diǎn)密度顯著提高,軌跡變得更加連續(xù),但修復(fù)之后的軌跡中仍有部分軌跡段處于間斷狀態(tài),如圖3b)中的圓形標(biāo)識(shí)部分有一個(gè)明顯缺口。該段軌跡沒(méi)有得到修復(fù)的原因,在于連續(xù)2個(gè)軌跡點(diǎn)之間的時(shí)間間隔超過(guò)了5 min,這表明船舶在該段處于關(guān)閉AIS設(shè)備的狀態(tài),其行為具有不確定性,故不予修復(fù)。
本文除了對(duì)位置數(shù)據(jù)進(jìn)行了異常點(diǎn)刪除與修復(fù)之外,同樣對(duì)速度異常、加速度異常以及航向異常等數(shù)據(jù)進(jìn)行了異常點(diǎn)刪除與修復(fù),異常點(diǎn)清除與修復(fù)前后船舶部分航段的速度、加速度、航向等變化情況對(duì)比如圖4至6所示(數(shù)據(jù)取自時(shí)間為2018-12-22 8∶22∶51至2018-12-22 9∶37∶45)。
圖4 修復(fù)前后速度對(duì)比圖 圖5 修復(fù)前后加速度對(duì)比圖
圖6 修復(fù)前后船舶轉(zhuǎn)向?qū)Ρ葓D
由圖4至6可以看出,原始數(shù)據(jù)中超出船舶操縱性能范圍的速度、加速度以及航向突變均已被消除。修復(fù)之后的船舶航速、加速以及航向變化趨于連續(xù)和平緩,且均在合理范圍之內(nèi)。
船舶AIS設(shè)備的普及應(yīng)用,使得AIS數(shù)據(jù)成為當(dāng)前船舶交通流分析、海事監(jiān)管、事故分析的重要數(shù)據(jù)來(lái)源之一。然而AIS報(bào)文的不可靠性,給上層應(yīng)用帶來(lái)了困難。本文針對(duì)基于AIS數(shù)據(jù)的船舶軌跡構(gòu)建問(wèn)題,在充分分析實(shí)際船舶AIS數(shù)據(jù)異常點(diǎn)類(lèi)型的基礎(chǔ)上,根據(jù)AIS數(shù)據(jù)中的經(jīng)緯度、速度、加速度、以及航向等信息,提出了一種軌跡異常點(diǎn)檢測(cè)與修復(fù)的方法。其中,所提出的異常點(diǎn)判定方法僅需船舶自身的AIS數(shù)據(jù),不需要?dú)v史航跡數(shù)據(jù)支撐;在剔除異常點(diǎn)之后,對(duì)于間斷性軌跡缺失,采用三次樣條插值方法對(duì)軌跡進(jìn)行修復(fù),進(jìn)一步提升了軌跡的連續(xù)性和完整性。
對(duì)實(shí)際船舶軌跡處理結(jié)果表明,本文所提出的方法能夠有效識(shí)別AIS數(shù)據(jù)中的各類(lèi)軌跡異常點(diǎn);異常點(diǎn)剔除之后的軌跡插值處理效果明顯,能夠有效消除位置、速度、加速度以及航向的突變,經(jīng)過(guò)處理之后的軌跡數(shù)據(jù)在經(jīng)緯度、速度、加速度以及航向方面均處于合理范圍,且變化連續(xù)平滑。另外,本文僅針對(duì)AIS數(shù)據(jù)間斷性異常及缺失進(jìn)行了處理,取得了預(yù)期效果,并且此方法具有通用性,對(duì)具有AIS數(shù)據(jù)的船舶皆可進(jìn)行軌跡修復(fù);若船舶在航行中關(guān)閉AIS設(shè)備,可能導(dǎo)致長(zhǎng)時(shí)間段AIS數(shù)據(jù)缺失,在此種情況下,船舶行為具有不確定性,此類(lèi)情況有待后續(xù)進(jìn)一步研究。