謝新連,陳紫薇,魏照坤,趙瑞嘉
(大連海事大學(xué) 物流研究院,遼寧 大連 116026)
隨著海上交通監(jiān)控技術(shù)及設(shè)備的發(fā)展,大多數(shù)船舶配備了船舶自動(dòng)識(shí)別系統(tǒng)(automatic identification system, AIS),來(lái)記錄船舶的靜態(tài)信息、動(dòng)態(tài)信息及航次信息。這些信息可應(yīng)用于交通流分析[1]、船舶異常行為檢測(cè)[2,3]及船舶運(yùn)動(dòng)模式識(shí)別[4]。當(dāng)船舶在海上航行時(shí),尤其在交通密度較大、障礙物密集、通航環(huán)境復(fù)雜多變的海域,發(fā)生海上交通事故的風(fēng)險(xiǎn)增大。因此,基于船舶AIS數(shù)據(jù),對(duì)船舶航行行為進(jìn)行預(yù)測(cè)分析,不僅可以為海上交通事故預(yù)警提供重要技術(shù)支持,同時(shí)也對(duì)提高船舶監(jiān)控效率、預(yù)防航行事故的發(fā)生具有重要意義。目前關(guān)于航跡預(yù)測(cè)的方法主要包括卡爾曼濾波、粒子濾波、灰色預(yù)測(cè)、神經(jīng)網(wǎng)絡(luò)等。其中基于卡爾曼濾波[5]、灰色預(yù)測(cè)[6]的船舶航跡預(yù)測(cè)模型,均需建立船舶運(yùn)動(dòng)狀態(tài)方程才能實(shí)現(xiàn)對(duì)目標(biāo)運(yùn)動(dòng)狀態(tài)的預(yù)估。由于海況的動(dòng)態(tài)性和不確定性導(dǎo)致了船舶運(yùn)動(dòng)的復(fù)雜性,建立實(shí)時(shí)船舶運(yùn)動(dòng)模型的難度較大,而神經(jīng)網(wǎng)絡(luò)本身具有較強(qiáng)的學(xué)習(xí)性,特別適用于樣本數(shù)據(jù)規(guī)律未知、建模困難的情況。甄榮等[7]運(yùn)用BP神經(jīng)網(wǎng)絡(luò)及AIS信息對(duì)船舶航行行為進(jìn)行預(yù)測(cè);U.SIMSIR[8]、D. ZISSIS[9]等利用人工神經(jīng)網(wǎng)絡(luò)對(duì)船舶航跡進(jìn)行實(shí)時(shí)預(yù)測(cè)。
極限學(xué)習(xí)機(jī)(extreme learning machine,ELM)是由Huang Guangbin等[10]提出的基于單隱含層前饋神經(jīng)網(wǎng)絡(luò)(single-hidden layer feed-forward network,SLFN)的一種機(jī)器學(xué)習(xí)算法,多用于數(shù)據(jù)分類[11]、故障診斷[12]及預(yù)測(cè)[13,14]領(lǐng)域,在航跡預(yù)測(cè)領(lǐng)域應(yīng)用較少。MAO Shangbo等[15]建立了可用于航跡學(xué)習(xí)、預(yù)測(cè)及數(shù)據(jù)挖掘領(lǐng)域AIS標(biāo)準(zhǔn)化數(shù)據(jù)庫(kù),并進(jìn)行航跡預(yù)測(cè)試驗(yàn),驗(yàn)證了極限學(xué)習(xí)機(jī)算法的有效性。筆者通過(guò)大量文獻(xiàn)調(diào)查發(fā)現(xiàn),以往研究的建模過(guò)程未考慮船舶航行狀態(tài)發(fā)生改變引起預(yù)測(cè)誤差波動(dòng)較大的特殊情況,因此提出了基于AIS信息及極限學(xué)習(xí)機(jī)方法的船舶航行行為預(yù)測(cè)模型,在文獻(xiàn)[7]對(duì)船舶航行行為預(yù)測(cè)研究的基礎(chǔ)上,通過(guò)對(duì)不同航行狀態(tài)下的船舶采取自動(dòng)調(diào)整采樣周期的方法提高對(duì)轉(zhuǎn)向及變速過(guò)程中的船舶航行行為預(yù)測(cè)精度,實(shí)現(xiàn)船舶航行行為的實(shí)時(shí)預(yù)測(cè)。
AIS信息分為靜態(tài)信息、動(dòng)態(tài)信息及航次信息。靜態(tài)信息包括船名、船長(zhǎng)、船寬、船舶類型、呼號(hào)、船舶海上移動(dòng)業(yè)務(wù)識(shí)別碼(maritime mobile service identity,MMSI)等;動(dòng)態(tài)信息包括船舶經(jīng)緯度坐標(biāo)、航速、航向等;航次信息包括船舶吃水、貨物類型、航行始發(fā)港、目的港及預(yù)計(jì)到達(dá)時(shí)間[8]。
通常狹義上的船舶行為是指船舶在駕駛?cè)藛T操縱下以船舶航行與避讓為主要目的的行動(dòng)方式與規(guī)律[16]。顧名思義,船舶航行行為主要體現(xiàn)在船舶的一系列航行狀態(tài)隨時(shí)間的變化上。每個(gè)航行狀態(tài)包括動(dòng)態(tài)船位、航速、航向等動(dòng)態(tài)屬性,主要體現(xiàn)在AIS動(dòng)態(tài)數(shù)據(jù)中的經(jīng)度(LON)、緯度(LAT)、對(duì)地航速(SOG)、對(duì)地航向(COG)4個(gè)指標(biāo)上,其更新頻率根據(jù)船舶航行狀態(tài)及AIS設(shè)備類型而定。A類AIS設(shè)備動(dòng)態(tài)信息的發(fā)送速率要求如表1,B類AIS發(fā)送速率的要求則低于A類。表1中,航速為0 kn且不轉(zhuǎn)向的船舶狀態(tài)代表錨泊。AIS信息的及時(shí)更新,確保了對(duì)船舶航行過(guò)程的實(shí)時(shí)監(jiān)控,有助于海上監(jiān)控系統(tǒng)的發(fā)展及事故調(diào)查研究。
表1 A類AIS設(shè)備信息發(fā)送速率Table 1 Class A AIS device information transmission rate
圖1 基于ELM的船舶航行行為預(yù)測(cè)模型Fig. 1 Prediction model of ship navigation behavior based on ELM
在進(jìn)行預(yù)測(cè)前,需要對(duì)該網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練,其訓(xùn)練過(guò)程如下:
1)給定訓(xùn)練樣本集:
{S,T}={(Sj,Tj)|j=1,2,…,u}
(1)
2)設(shè)置激活函數(shù)G(·)及隱含層節(jié)點(diǎn)數(shù)nh。隨機(jī)生成隱含層輸入權(quán)值wi及隱含層偏置向量bi,計(jì)算隱含層輸出矩陣H:
H(w1,…,wnh,b1,…,bnh,S1,…,Su)=
(2)
3)通過(guò)求解式(3)的最小二乘解,計(jì)算輸出權(quán)值β:
(3)
β具有使網(wǎng)絡(luò)訓(xùn)練誤差最小、泛化性能最優(yōu)的特性。則該極限學(xué)習(xí)機(jī)預(yù)測(cè)模型在數(shù)學(xué)上可表示為:
(4)
當(dāng)船舶在狹窄水域或彎曲航道航行時(shí),難免會(huì)發(fā)生轉(zhuǎn)向或變速行為,此時(shí)預(yù)測(cè)時(shí)間間隔過(guò)長(zhǎng)或固定不變會(huì)影響預(yù)測(cè)結(jié)果的精確性、適應(yīng)性及有效性[17]。因此,當(dāng)船舶處于轉(zhuǎn)向或變速航段時(shí),為準(zhǔn)確學(xué)習(xí)船舶的航行行為,需要根據(jù)船舶航行特點(diǎn)合理調(diào)整采樣時(shí)間間隔,合理訓(xùn)練學(xué)習(xí)網(wǎng)絡(luò),使其適應(yīng)船舶航行特征的改變。例如,初始訓(xùn)練網(wǎng)絡(luò)的航跡采樣周期為t1;船舶t時(shí)刻與上一時(shí)刻的航向變化ΔC>C0,或航速變化ΔV>V0時(shí),此時(shí)認(rèn)為船舶處于轉(zhuǎn)向或變速航段,則將采樣周期及預(yù)測(cè)時(shí)間間隔Δt設(shè)置為t2。因此,預(yù)測(cè)模型的采樣時(shí)間間隔與預(yù)測(cè)時(shí)間間隔可表示為:
(5)
基于ELM算法進(jìn)行船舶航行行為預(yù)測(cè)的主要框架是將海域內(nèi)船舶近期航跡數(shù)據(jù)作為訓(xùn)練集,通過(guò)將網(wǎng)絡(luò)實(shí)際輸出與期望輸出對(duì)比訓(xùn)練網(wǎng)絡(luò),建立船舶歷史航跡與未來(lái)航跡的映射關(guān)系,再代入預(yù)測(cè)樣本進(jìn)行預(yù)測(cè)。因此,在預(yù)測(cè)前需要對(duì)提取的航跡數(shù)據(jù)進(jìn)行分組,每組數(shù)據(jù)的個(gè)數(shù)由訓(xùn)練樣本及預(yù)測(cè)樣本總的時(shí)間長(zhǎng)度而定。具體的分組及預(yù)測(cè)流程如圖2。
圖2 基于ELM算法的航跡預(yù)測(cè)流程Fig. 2 Navigation track prediction process based on ELM algorithm
在設(shè)置每組數(shù)據(jù)的采樣時(shí)間間隔時(shí)應(yīng)注意,當(dāng)前一組數(shù)據(jù)采樣及預(yù)測(cè)時(shí)間間隔Δt=t1時(shí),每當(dāng)提取1條航跡數(shù)據(jù),將其和前一條航跡數(shù)據(jù)航向及航速的變化與設(shè)定的閾值進(jìn)行判斷,若航速或航向變化小于閾值,則確定該組數(shù)據(jù)的Δt=t1;若大于閾值則設(shè)置Δt=t2。當(dāng)前一組數(shù)據(jù)采樣及預(yù)測(cè)時(shí)間間隔Δt=t2時(shí),若提取的航跡數(shù)據(jù)的航速或航向變化小于閾值,則需要反推一組Δt=t1的航跡數(shù)據(jù),并對(duì)組內(nèi)其他航跡再次進(jìn)行航速及航向變化的閾值判斷;若皆小于閾值則證明訓(xùn)練集具有與預(yù)測(cè)集相近的特性,即可確定該組數(shù)據(jù)Δt=t1;若大于閾值,則設(shè)置Δt=t2。依次類推,可提取K0組船舶航行航跡數(shù)據(jù)進(jìn)行船舶航行行為預(yù)測(cè),K0為預(yù)先設(shè)置的預(yù)測(cè)序列個(gè)數(shù)。
在整個(gè)預(yù)測(cè)過(guò)程中,每組數(shù)據(jù)組成的樣本數(shù)量均為u+m,雖然其隨著AIS數(shù)據(jù)的實(shí)時(shí)更新,從當(dāng)前時(shí)間點(diǎn)開(kāi)始會(huì)依據(jù)速度及轉(zhuǎn)向判斷確定采樣周期,重新提取數(shù)據(jù)、更新訓(xùn)練集及預(yù)測(cè)樣本,但始終將當(dāng)前t時(shí)刻的船舶行為特征值Xt作為最新一組數(shù)據(jù)第u個(gè)樣本的期望輸出Tu,并以{(S1,T1),(S2,T2),…,(Su,Tu)}作為訓(xùn)練集訓(xùn)練網(wǎng)絡(luò),將yi作為預(yù)測(cè)樣本的輸入進(jìn)行預(yù)測(cè),確保了訓(xùn)練樣本集是距離預(yù)測(cè)樣本最近的u個(gè)樣本,從而實(shí)現(xiàn)模型的在線訓(xùn)練及實(shí)時(shí)預(yù)測(cè)。
仿真實(shí)驗(yàn)中,N=6,即用前6個(gè)時(shí)刻的船舶航行行為特征值預(yù)測(cè)下一時(shí)刻的船舶航行行為。對(duì)應(yīng)的輸入層節(jié)點(diǎn)數(shù)為24個(gè),輸出層節(jié)點(diǎn)數(shù)為4個(gè),隱含層激活函數(shù)為sigmod函數(shù)。為方便進(jìn)行后面誤差分析及算法對(duì)比試驗(yàn),筆者僅進(jìn)行單步預(yù)測(cè),即m=1。通過(guò)反復(fù)試算,結(jié)果如圖3。
圖3 不同隱層節(jié)點(diǎn)數(shù)的網(wǎng)絡(luò)均方誤差對(duì)比Fig. 3 Comparison of network mean square errors of different numberof hidden layer nodes
隱含層節(jié)點(diǎn)個(gè)數(shù)設(shè)置為18時(shí),4個(gè)指標(biāo)總體均方誤差(MSE)最小,預(yù)測(cè)次數(shù)K0依預(yù)測(cè)時(shí)間而定。圖4為算法在不同數(shù)量訓(xùn)練樣本時(shí)的預(yù)測(cè)誤差。當(dāng)樣本采樣間隔設(shè)置為1 min時(shí),可以看到訓(xùn)練樣本個(gè)數(shù)為8個(gè)時(shí)誤差最小,因此筆者將訓(xùn)練樣本個(gè)數(shù)設(shè)置為8個(gè),每組數(shù)據(jù)個(gè)數(shù)為15。由于船舶在實(shí)際航行中存在較大慣性和一定的操作反應(yīng)時(shí)間,因此將動(dòng)態(tài)數(shù)據(jù)的采樣和預(yù)測(cè)時(shí)間間隔確定為5 min,即t1=5 min,將船舶轉(zhuǎn)向及變速閾值分別設(shè)置為10°、0.3 kn,采樣與預(yù)測(cè)時(shí)間間隔t2=10 s。
以瓊州海峽某日多艘船舶的AIS數(shù)據(jù)作為實(shí)驗(yàn)數(shù)據(jù)進(jìn)行船舶航行行為預(yù)測(cè)實(shí)驗(yàn)。由于船舶AIS設(shè)備發(fā)射動(dòng)態(tài)數(shù)據(jù)的頻率取決于船舶航行速度,該船舶的航速區(qū)間為0.1~16.1 kn,此時(shí)AIS動(dòng)態(tài)數(shù)據(jù)的實(shí)際發(fā)射頻率為5 s~3 min不等。為保證預(yù)測(cè)時(shí)間間隔的一致性,對(duì)于某時(shí)間點(diǎn)丟失、未記錄的航跡數(shù)據(jù)采用線性插值法進(jìn)行填充,并將提取后的數(shù)據(jù)進(jìn)行分組及樣本整理。每組數(shù)據(jù)可分為8個(gè)樣本,取前7個(gè)樣本作為訓(xùn)練樣本,訓(xùn)練神經(jīng)網(wǎng)絡(luò),第8個(gè)樣本作為預(yù)測(cè)樣本進(jìn)行預(yù)測(cè)。
為驗(yàn)證模型的通用性,選取瓊州海峽內(nèi)5條不同類型的航跡進(jìn)行仿真實(shí)驗(yàn),包括直線航跡及曲線航跡,預(yù)測(cè)的均方根誤差(RMSE)均處于較低水平,結(jié)果如表2。
表2 基于ELM預(yù)測(cè)模型的5條航跡預(yù)測(cè)誤差Table 2 Prediction error of 5 tracks based on ELM prediction model
取預(yù)測(cè)周期最長(zhǎng)且包括轉(zhuǎn)向及變速航段的航跡1為例進(jìn)行具體誤差分析。在該航跡實(shí)驗(yàn)中對(duì)該船進(jìn)行為期16 h的跟蹤預(yù)測(cè),此時(shí)K0=200,海圖上顯示的船舶實(shí)際航跡及預(yù)測(cè)航跡如圖5,訓(xùn)練及測(cè)試時(shí)間共計(jì)46.9 s。由圖5可見(jiàn),基于ELM的預(yù)測(cè)航跡與實(shí)際航跡趨勢(shì)相同,近乎重合,預(yù)測(cè)效果較好。
為定量表達(dá)二者之間的誤差,分別對(duì)預(yù)測(cè)經(jīng)度、緯度進(jìn)行誤差分析,結(jié)果如圖6。經(jīng)度誤差可控制在0.003°以內(nèi),大部分誤差在0°~0.001°區(qū)間,緯度誤差最大為0.003°,其誤差主要分布在0°~0.001°區(qū)間。圖7為航速預(yù)測(cè)及航速預(yù)測(cè)誤差結(jié)果。由圖7可知,預(yù)測(cè)航速的變化趨勢(shì)與實(shí)際航速變化趨勢(shì)基本一致,預(yù)測(cè)誤差在1 kn以內(nèi)。圖8為航向預(yù)測(cè)及航向預(yù)測(cè)誤差結(jié)果。由圖8可知,航向預(yù)測(cè)誤差范圍為0°~27°,主要分布在10°以內(nèi)。
由圖7、圖8可知,從K=100到K=150,航速由16 kn減速到13.3 kn,對(duì)地航向從269.41°增加到319.78°,此時(shí)船舶正處于轉(zhuǎn)向及變速過(guò)程中。從誤差圖中可知,此區(qū)間內(nèi)船舶航行行為預(yù)測(cè)精度并未受到船舶變速及轉(zhuǎn)向行為的影響而增大。
圖5 實(shí)際航跡和預(yù)測(cè)航跡Fig. 5 Actual track and prediction track
圖6 預(yù)測(cè)誤差Fig. 6 Prediction error
圖7 航速預(yù)測(cè)和航速預(yù)測(cè)誤差Fig. 7 Speed prediction and speed prediction error
圖8 航向預(yù)測(cè)和航向預(yù)測(cè)誤差Fig. 8 Course prediction and course prediction error
在對(duì)比實(shí)驗(yàn)中,采取文獻(xiàn)[7]中的BP神經(jīng)網(wǎng)絡(luò)模型及文獻(xiàn)[6]中的灰色預(yù)測(cè)模型,對(duì)5條航跡均進(jìn)行了船舶航行行為預(yù)測(cè),其預(yù)測(cè)誤差均大于ELM預(yù)測(cè)模型的預(yù)測(cè)誤差。以航線1為例,對(duì)3種方法的預(yù)測(cè)性能進(jìn)行多方面對(duì)比及顯著性檢驗(yàn)。表3給出了極限學(xué)習(xí)機(jī)、BP神經(jīng)網(wǎng)絡(luò)及灰色預(yù)測(cè)模型在平均絕對(duì)誤差、最大絕對(duì)誤差、均方根誤差及平均絕對(duì)百分比誤差(MAPE)評(píng)價(jià)方面的對(duì)比數(shù)據(jù)。
表3 ELM與BP神經(jīng)網(wǎng)絡(luò)、灰色預(yù)測(cè)性能對(duì)比Table 3 Performance comparison between ELM, BP neural networkand grey prediction algorithm
由表3可以看出,基于極限學(xué)習(xí)機(jī)的船舶航行行為預(yù)測(cè)模型在航速、航向、經(jīng)度、緯度方面的預(yù)測(cè)精度皆優(yōu)于其他方法,這是因?yàn)榭烧{(diào)節(jié)的采樣間隔提高了訓(xùn)練樣本的有效性,從而進(jìn)一步提高預(yù)測(cè)精度。除此之外,BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練及學(xué)習(xí)時(shí)間為124.43 s,與其相比,ELM預(yù)測(cè)模型的訓(xùn)練及測(cè)試時(shí)間減少了77.53 s。
借助SPSS 14.0軟件,對(duì)ELM與BP神經(jīng)網(wǎng)絡(luò)模型、灰色預(yù)測(cè)模型的船舶航行行為預(yù)測(cè)誤差分別進(jìn)行曼-惠特尼U檢驗(yàn),檢驗(yàn)結(jié)果如表4。除BP模型的航速預(yù)測(cè)誤差外,其他指標(biāo)的P值皆小于5%顯著水平,說(shuō)明3種方法的船舶航行行為預(yù)測(cè)誤差總體差異在統(tǒng)計(jì)上顯著,且從誤差均值可以看出ELM算法的預(yù)測(cè)性能明顯優(yōu)于BP模型及灰色預(yù)測(cè)。
表4 ELM與BP神經(jīng)網(wǎng)絡(luò)、灰色預(yù)測(cè)算法的誤差顯著性分析Table 4 Error significance analysis of ELM, BP neural network andgrey prediction algorithm
基于神經(jīng)網(wǎng)絡(luò)突出的自學(xué)習(xí)能力,提出了基于極限學(xué)習(xí)機(jī)算法的船舶航行行為預(yù)測(cè)模型。該模型針對(duì)在以往研究中船舶在轉(zhuǎn)向及變速航段預(yù)測(cè)性能較差的問(wèn)題,設(shè)計(jì)了根據(jù)船舶航行狀態(tài)自動(dòng)調(diào)整采樣周期的判斷條件,實(shí)現(xiàn)船舶航行行為的在線學(xué)習(xí)及預(yù)測(cè)。在仿真實(shí)驗(yàn)中對(duì)瓊州海峽水域內(nèi)5條典型航線進(jìn)行了跟蹤預(yù)測(cè),并以其中1條航線為例,與傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò)模型及灰色預(yù)測(cè)模型進(jìn)行預(yù)測(cè)性能分析及顯著性檢驗(yàn)。實(shí)驗(yàn)結(jié)果表明:基于極限學(xué)習(xí)機(jī)的船舶航行行為預(yù)測(cè)模型具有較優(yōu)的預(yù)測(cè)性能及時(shí)間優(yōu)勢(shì)。該研究在一定程度上改善了傳統(tǒng)預(yù)測(cè)模型在航行狀態(tài)變化前后(變速或轉(zhuǎn)向)預(yù)測(cè)誤差較大的狀況,可適用于在彎曲河道中航行船舶的行為預(yù)測(cè),同時(shí)對(duì)提高監(jiān)控效率,保障航行安全具有一定的理論及現(xiàn)實(shí)意義。