莊素婕, 楊 星,3, 劉克中,3, 馬天明, 戴文伯, 陳新華
(1.武漢理工大學(xué) 航運學(xué)院, 湖北 武漢 430063; 2.武漢理工大學(xué) 安全科學(xué)與應(yīng)急管理學(xué)院, 湖北 武漢 430063; 3.湖北省內(nèi)河航運技術(shù)重點實驗室, 湖北 武漢 430063;4.中交疏浚技術(shù)裝備國家工程研究中心有限公司,上海 201306)
耙吸式挖泥船是中大型自航、自載式挖泥船,因其廣泛的適應(yīng)性和經(jīng)濟性成為當(dāng)今疏浚界的主力施工船舶[1]。在工程中,岸上監(jiān)管人員通過工作日志了解挖泥船實際施工效果,由于人工填報存在較大誤差且具有滯后性,日志數(shù)據(jù)無法滿足岸上監(jiān)管的需求[2-3],因而從船舶軌跡數(shù)據(jù)中挖掘船舶行為規(guī)律對于耙吸式挖泥船施工效率優(yōu)化具有重要意義。
耙吸式挖泥船的行為辨識存在較大困難。首先,船舶的行為模式轉(zhuǎn)換過于頻繁,耙吸式挖泥船通常會在一個指定的施工區(qū)域內(nèi)重復(fù)多個工作周期完成疏浚任務(wù),一個完整工作周期需在空載航行、挖泥作業(yè)、滿載航行以及拋泥作業(yè)中轉(zhuǎn)換4次行為模式。其次,AIS航行狀態(tài)數(shù)據(jù)的缺失加大了行為辨識的難度。船舶自動識別系統(tǒng)的強制安裝要求使海量軌跡數(shù)據(jù)的獲取成為可能,然而絕大多數(shù)挖泥船在AIS使用中存在問題[4]。AIS規(guī)范操作要求挖泥船正常航行時的航行狀態(tài)為“機動船在航”,在挖泥、拋泥作業(yè)時,航行狀態(tài)需更改為“操縱能力受限制”,意味著挖泥作業(yè)時船舶狀態(tài)需要在“機動船在航—操縱能力受限制—機動船在航”之間來回切換。實際操作中,操作人員一般將進入挖泥區(qū)域到所有挖泥作業(yè)結(jié)束的整個流程設(shè)定為“操縱能力受限制”,人為疏忽導(dǎo)致輸入AIS的航行狀態(tài)信息與實際情況不匹配。
隨著數(shù)據(jù)挖掘技術(shù)的不斷發(fā)展,國內(nèi)外學(xué)者對船舶行為的研究逐漸從模型驅(qū)動轉(zhuǎn)變?yōu)閿?shù)據(jù)驅(qū)動[5]。朱飛祥等[6]通過關(guān)聯(lián)規(guī)則算法挖掘整個海域船舶行為模式,為降低軌跡數(shù)據(jù)復(fù)雜度,采用地理網(wǎng)格技術(shù)劃分水域。Kraus等[7]針對AIS數(shù)據(jù)的位置特征和行為特征,使用隨機森林算法實現(xiàn)船舶類型的有效識別。王立林等[8]根據(jù)軌跡數(shù)據(jù)特性,設(shè)計了基于多尺度卷積的行為識別網(wǎng)絡(luò)。Vespe等人[9]對漁船速度建立高斯混合模型達到捕魚行為辨識的效果。以上方法在快速、高效地挖掘船舶行為方面取得了一定成果,但是對數(shù)據(jù)集的要求較高,需要有大量的先驗數(shù)據(jù)進行模型訓(xùn)練,而且隨著移動對象數(shù)據(jù)量的增長,這些方法的計算量將大幅提升[10]。
綜上所述,以上方法對先驗數(shù)據(jù)要求較高,并不適用于航行狀態(tài)數(shù)據(jù)缺失的耙吸式挖泥船行為辨識。針對行為模式轉(zhuǎn)換頻繁,以及AIS先驗數(shù)據(jù)缺失問題,結(jié)合耙吸式挖泥船作業(yè)特征,提出一種無監(jiān)督船舶行為辨識方法。
耙吸式挖泥船是一種裝備有耙頭挖掘機具和水力吸泥裝置的大型自航、裝倉式挖泥船[11],其一個完整工作周期由四個過程組成,如圖1所示。首先船舶空載航行至指定挖泥區(qū)域,然后在該航段來回挖泥。挖泥作業(yè)時其對地航速的選擇與土質(zhì)有關(guān),淤泥或軟土容易被耙吸,對地航速一般在2 kn左右,土質(zhì)為較高塑性粘土、亞粘土、密實細沙時,一般為3~4 kn[12];在維持30~60 min挖泥作業(yè)后泥艙裝滿,船舶滿載航行至拋泥區(qū)卸泥,然后空載返回至挖泥區(qū)域開始新一輪的工作。
圖1 工作過程示意圖
耙吸式挖泥船施工作業(yè)時其航速遵循周期性變化規(guī)律,如圖2所示,每個周期由abcd四個部分組成。a、c片段分別為空載和滿載航行狀態(tài),此時船舶航速維持在10 kn以上;b片段反映了船舶挖泥作業(yè)時的速度特點,船舶航速在較長一段時間內(nèi)保持在2~5 kn,與拋泥作業(yè)(d片段)相比,挖泥行為的平均航速更高,持續(xù)時間更長。耙吸式挖泥船的速度特征表明:① 耙吸式挖泥船工作時的行為模式是頻繁轉(zhuǎn)換的,每個工作周期轉(zhuǎn)換4次;② 平均航速可用于區(qū)分航行行為與作業(yè)行為,空載航行與滿載航行的平均航速明顯高于挖泥和拋泥作業(yè);③ 作業(yè)持續(xù)時長可用于區(qū)分挖泥行為與拋泥行為,每一次挖泥作業(yè)的持續(xù)時間都顯著大于拋泥作業(yè)。
圖2 耙吸式挖泥船航速變化圖
耙吸式挖泥船在指定區(qū)域內(nèi)往返施工作業(yè)使其挖泥區(qū)域軌跡明顯較其他區(qū)域密集,然而在實際軌跡路線中,幾乎所有區(qū)域的軌跡都呈現(xiàn)出重疊往復(fù)的特征,如圖3所示。雖然c中的軌跡密度明顯高于a、b兩處,但只能粗略判斷船舶在該處進行了挖泥作業(yè),因為c處的軌跡都是由正常航行與挖泥作業(yè)共同造成的,因而傳統(tǒng)的基于密度的DBSCAN聚類方法無法應(yīng)用于耙吸式挖泥船的行為辨識。
圖3 耙吸式挖泥船軌跡圖
結(jié)合以上特征,將耙吸式挖泥船整個作業(yè)過程中的行為劃分為三類:正常航行行為、挖泥行為、拋泥行為。不同行為特點如圖4所示。
圖4 作業(yè)過程航速及時間特征
DBSCAN算法是由Ester[13]提出的一種基于密度的聚類方法,該方法將高密度區(qū)域劃分為一類,并可以在帶有“噪聲”的空間數(shù)據(jù)中發(fā)現(xiàn)任意形狀的聚簇。耙吸式挖泥船因其軌跡路徑過于密集,無法直接通過空間密度區(qū)分不同行為,如圖5所示,在空間結(jié)構(gòu)上,每一處的軌跡點都是密集的,因此,時空維度的DBSCAN算法無法直接應(yīng)用于船舶行為辨識。
圖5 軌跡空間結(jié)構(gòu)分布圖
結(jié)合其航速的周期性特征,將空間坐標(biāo)轉(zhuǎn)換為時間—航速坐標(biāo),如圖6所示,可以發(fā)現(xiàn)航速在時間序列上也具有“密度”的性質(zhì)。與空間結(jié)構(gòu)上的密度聚類不同,航速是在時間序列上的變化,不能以鄰域半徑內(nèi)的最小點數(shù)作為聚合標(biāo)準(zhǔn),應(yīng)考慮單位時間鄰域半徑內(nèi)的最小軌跡長度。因此借鑒DBSCAN算法的原理,在時間序列上將航速密集區(qū)域劃分為一個簇,從而提取整條單軌跡中具有相同航速特征的子軌跡。
圖6 航速在時間序列上的分布圖
Palma等人[14]最早發(fā)現(xiàn)速度在密度方面的性質(zhì),提出CB-SMoT(Clustering-based Stops and Moves of Trajectories)算法,用于發(fā)現(xiàn)軌跡中的低速區(qū)域。該方法對DBSCAN算法進行改進,以最小時間MinT代替使區(qū)域密集的最小點數(shù),兩點軌跡上的距離之和ε代替直線距離,ε與MinT之比就是各個鄰域的最大平均速度。通過增大MinT參數(shù),所提取軌跡的平均速度就會降低。該方法的相關(guān)定義如下。
定義1:令p=(x,y,t),x,y為該點經(jīng)緯度,t為該時刻時間戳。
定義2:點pk的ε鄰域為pi的集合:
LNε(pk)=
(1)
式中:ε為起始點與軌跡上相鄰點之間的最大距離;d(pi,pi+1)表示pi與pi+1的軌跡距離,pk的鄰域由兩側(cè)相鄰點間距離之和不超過ε的軌跡子段構(gòu)成。
定義3:如果p的鄰域滿足:
|tn-tm|?MinT
則點p=(xp,yp,tp)稱為軌跡的核心點。其中MinT是使區(qū)域密集的最小時間,n是LNε(p)的最后一個點,m是第一個點(鄰域按時間排序)。
定義4:如果q∈LNε(pk)并且p是關(guān)于ε和MinT的核心點,則點q可以直接密度可達點p。
定義5:如果存在鏈q0,q1,q2,…,qN,且qN=p,pk+1是從pk關(guān)于ε和MinT直接密度可達的,則點q0從點p相對于ε和MinT密度可達。
定義6:如果存在點o,使得點p和q是從o關(guān)于ε和MinT密度可達,那p和q是關(guān)于ε和MinT密度相連的。
下面以圖7的聚類過程介紹CB-SMoT算法流程。第一步,任意選取起始點P,生成P的ε鄰域。圖中軌跡段1、2、3的長度之和與軌跡段4、5的長度之和小于ε,即d(p4,p5)+d(p5,p6)+d(p6,p)≤ε且d(p,p8)+d(p8,p9)≤ε,得到P的ε鄰域為{p4,p5,p6,p,p8,p9}。第二步,判定P是否為核心點。如果軌跡段1~5的持續(xù)時間之和大于MinT,即
圖7 CB-SMoT聚類過程示意圖
|t9-t4|?MinT,那么點P為核心點,生成簇C并將P鄰域內(nèi)所有點放入。第三步,擴展簇C。取C中未標(biāo)記點,通過定義4~6對簇C進行擴展,遍歷所有軌跡點。
CB-SMoT算法能夠高效識別低速軌跡,但是它的局限性在于只在速度低于給定閾值的軌跡段生成聚類,在圖6中,CB-SMoT算法只在大圓處生成聚類,無法發(fā)現(xiàn)小圓處高密度區(qū)域;而且CB-SMoT算法每次運行只能識別一種具有相同速度特征的軌跡,對于不同的閾值,算法需運行多次。
在此基礎(chǔ)上,對CB-SMoT算法進行改進:
1) 在核心點判別上,對MinT參數(shù)進行區(qū)間劃分,使算法能夠辨識任意區(qū)間的具有相同速度特征的軌跡。那么定義3將變?yōu)?/p>
MinTn-1?|tn-tm|?MinTn
(2)
2) 在聚類流程中添加核心點類別判別過程,通過鄰域平均航速判斷該軌跡段所屬行為類別,實現(xiàn)多模式同步聚類。
多模式同步聚類方法的基本思想是:首先,檢驗每一個對象與相鄰軌跡點之間的時間間隔是否小于用戶給定的閾值,若小于閾值就認為這個對象周圍足夠密集,判定該點為核心點。然后,根據(jù)核心點鄰域的時長對這條子軌跡進行分類,時長越長,表明該段軌跡平均航速越低。最后,對核心鄰域進行擴展,得到不同行為模式的聚類結(jié)果。多模式同步聚類方法流程見圖8。
圖8 多模式同步聚類方法流程圖
通過上述過程,遍歷完所有的軌跡點對象,最終類C…G確定下來,并且分別對應(yīng)不同行為模式,如圖9所示。圖中用戶共設(shè)置了3種模式,模式3的平均航速最低,說明該模式對應(yīng)的最小持續(xù)時間閾值minT最大,模式2的平均航速最高,對應(yīng)的minT最小。行為辨識方法按照用戶設(shè)定的類別將簇劃分為n類,每一類中包含平均速度符合閾值條件的所有子軌跡。對聚類所得子軌跡進行篩選,若軌跡持續(xù)時長|tn-tm|大于該模式的最大持續(xù)時長,則在軌跡兩端去掉一個速度較大的點直到持續(xù)時間滿足條件;若|tn-tm|小于該模式的最小持續(xù)時長,則舍棄該軌跡。經(jīng)過軌跡篩選可得模式識別最終結(jié)果。
圖9 改進算法結(jié)果示意圖
效率指標(biāo)計算通過行網(wǎng)格化處理挖泥子軌跡,量化挖泥區(qū)域面積、挖泥時長以及挖泥軌跡總長度。采用均勻網(wǎng)格劃分方法,將經(jīng)緯度劃分成等寬的區(qū)間,因為單位面積區(qū)域被挖泥子軌跡穿越的頻數(shù)越高,則該區(qū)域是挖泥區(qū)域內(nèi)一部分的可能性越大,所以對穿越頻數(shù)較高的網(wǎng)格聚類即可得到挖泥區(qū)域。
包含n個高頻網(wǎng)格的挖泥區(qū)域面積S的計算公式為
S=n×S單位網(wǎng)格
(3)
即單位網(wǎng)格面積與網(wǎng)格數(shù)的乘積。
每個高頻網(wǎng)格內(nèi)包含m個軌跡片段,pki表示第k個網(wǎng)格內(nèi)的第i個軌跡點,則施工時長Time計算公式為
(4)
式中,t(pi,pj)為兩點間時間間隔。
挖泥軌跡總長度L計算公式為
(5)
為了驗證模型的可行性,選取MMSI編號為“412678000”的耙吸式挖泥船真實AIS數(shù)據(jù)進行驗證,刪除明顯超過合理值的數(shù)據(jù),包括錯誤的船位、速度等,采用三次樣條插值方法[15]修復(fù)軌跡點,經(jīng)預(yù)處理后數(shù)據(jù)包含24 518個軌跡點(已剔除速度為零的軌跡點),為該船2016年7月20日至2016年9月26日的航行數(shù)據(jù)。期間該船軌跡的經(jīng)度跨度為0.721°,緯度跨度為0.321°,樣本軌跡點分布如圖10所示。
圖10 軌跡點分布圖
通過挖泥船行為辨識模型對該數(shù)據(jù)進行處理,反復(fù)進行實驗,當(dāng)ε=0.5 n mile、minT1=1 200 s、minT2=600 s、minT3=450 s、minT4=180 s時聚類結(jié)果比較理想,minT1設(shè)置拋泥行為平均速度小于1.5 kn,minT2、minT3設(shè)置挖泥行為平均速度介于3~4 kn,minT4設(shè)置航行行為平均速度大于10 kn。實驗共提取到拋泥子軌跡93條,挖泥子軌跡653條,航行子軌跡879條,如圖11所示。其中藍色軌跡為提取到的挖泥行為,可以發(fā)現(xiàn)挖泥區(qū)域非常集中,拋泥行為所在區(qū)域與挖泥區(qū)域距離較遠且比較集中,與實際情況相符。圖12為三種行為在速度維度的部分聚類結(jié)果圖,可以看到每種行為之間具有明顯的分割距離,辨識效果較好。
圖11 行為模式辨識結(jié)果
圖12 速度維度辨識結(jié)果
通過網(wǎng)格化處理辨識得到的挖泥行為,篩選出挖泥子軌跡多次穿越的網(wǎng)格,然后對所有網(wǎng)格進行量化處理,得到粗略疏浚面積11.11平方海里,疏浚時長為22天12小時6分鐘,挖泥子軌跡總長度為1 412.27 n mile。
為比較算法優(yōu)劣,對改進的多模式同步聚類算法與CB-SMoT算法進行比較,以該船工作日志中的數(shù)據(jù)作為真實結(jié)果檢驗算法準(zhǔn)確率,結(jié)果如表1所示。
表1 兩種算法對比
從表1中可以看出,多模式同步聚類方法在38.02 s完成挖泥和拋泥行為提取,CB-SMoT算法共用了72.31 s,多模式同步聚類方法在挖掘軌跡數(shù)量方面劣于傳統(tǒng)的CB-SMoT算法,但是在運行速度和準(zhǔn)確度方面皆優(yōu)于CB-SMoT算法。這是因為多模式同步聚類方法在CB-SMoT基礎(chǔ)上對子軌跡進行篩選及分類,在增加少量復(fù)雜度的代價下大幅度提高模式識別速率以及準(zhǔn)確率。
由于每條耙吸式挖泥船的性能以及疏浚任務(wù)不同,在使用行為辨識模型時需要對數(shù)據(jù)進行調(diào)參,不斷調(diào)整ε、minT閾值,得到最佳的模式識別準(zhǔn)確率,在此基礎(chǔ)上計算得到的挖泥效率指標(biāo)也會更加準(zhǔn)確。
耙吸式挖泥行為辨識存在較大難度,在AIS數(shù)據(jù)航行狀態(tài)缺失條件下,設(shè)計并實現(xiàn)了耙吸式挖泥船不同行為的高效辨識方法??偨Y(jié)了耙吸式挖泥船施工作業(yè)時航速的周期性變化規(guī)律,定義正常航行、挖泥、拋泥三種行為;對CB-SMoT算法進行改進,劃分閾值區(qū)間,實現(xiàn)多模式同步聚類;最后網(wǎng)格化處理挖泥軌跡,提出粗略估計挖泥效率指標(biāo)的新方法。應(yīng)用結(jié)果表明,多模式聚類方法能夠高效處理復(fù)雜軌跡,耙吸式挖泥船行為辨識準(zhǔn)確率可達到94%。該方法對疏浚作業(yè)的監(jiān)管具有實際指導(dǎo)意義,可為船舶交通流特征提取、船舶異常行為檢測等提供借鑒。