(江蘇科技大學計算機學院 鎮(zhèn)江 212003)
鎮(zhèn)揚汽渡作為江蘇省南北交通干線公路243省道的越江樞紐,是長江沿線安全、快捷、優(yōu)質(zhì)、暢通的現(xiàn)代化渡口,為長江鎮(zhèn)揚通道的暢通、鎮(zhèn)揚兩市的經(jīng)濟發(fā)展、江蘇交通事業(yè)的振興和國防交通戰(zhàn)備做出了積極的貢獻。近年來,伴隨著長江流域經(jīng)濟的快速發(fā)展,該流域的水路運輸業(yè)務也變得愈加繁忙,航行于東西方向的船舶的數(shù)量激增。鎮(zhèn)揚汽渡來往于鎮(zhèn)江和揚州之間,屬于南北航向,與水路運輸船舶交叉碰撞概率急劇上升,輪渡的航行安全問題也變得愈加嚴峻[1]。
汽渡搭載了船用雷達與船用自動自動識別系統(tǒng)(AIS)。船用雷達可以對船舶進行精確定位,而且觀測距離遠,分辨率高,不受氣候和白晝的影響。但是雷達不能繞過障礙物測量,測量信號容易受到江浪和雨雪等環(huán)境因干擾。船用自動識別系統(tǒng)(AIS)是一種現(xiàn)代化船舶導航定位技術(shù),它提供了于船舶航行有關(guān)的各種關(guān)鍵信息,包括船名、航速、航向、經(jīng)緯度、危險等級等重要信息。但是AIS會受到GPS信號影響,數(shù)據(jù)更新不及時,出現(xiàn)錯誤的船位、航向以及航速等[2]。所以當下,汽渡駕駛員在愈加復雜的航行環(huán)境下,根據(jù)雷達或者AIS反饋的周圍船舶情況,再依靠自己的經(jīng)驗判斷來進行安全省心的駕駛變得越發(fā)困難。
現(xiàn)階段,船舶避碰的解決方案大致可以分為船位預測和主動避碰兩大類。船位預測是通過一些算法或者神經(jīng)網(wǎng)絡(luò),根據(jù)船舶的歷史航行數(shù)據(jù)預測出大致的航跡;主動避碰是通過在船舶上配備相應的防撞硬件,如防撞氣囊模塊、激光測距設(shè)備等[3]。真實情況下,這兩類都是必不可好少。本文將從船舶航跡預測角度提高汽渡的航行安全性。
在船舶航跡預測領(lǐng)域,李興海建立船舶的運動數(shù)學模型并結(jié)合全球定位系統(tǒng)GPS,通過分析和計算船舶起點的經(jīng)緯度、航向、航行速度等,獲得船舶到達下一位的航跡參數(shù)[4]。徐鐵等采用卡爾曼濾波算法對AIS數(shù)據(jù)進行修正,并利用最小二乘法做AIS節(jié)點數(shù)據(jù)估計,最后對預測結(jié)果進行平滑處理,得到了與真實數(shù)據(jù)比較接近的船舶航跡[5]。甄榮等通過基于BP神經(jīng)網(wǎng)絡(luò)的船舶航行動態(tài)預測模型,實現(xiàn)多維的船舶航行特征參數(shù)的預測,預測結(jié)果較好[6]。
目前,深度學習在國內(nèi)外各個領(lǐng)域均有非常廣泛的應用。而深度學習當中的長短期記憶網(wǎng)絡(luò)(LSTM)模型在處理和時間序列分析預測方面表現(xiàn)出了非常好的效果。林杰等[7]利用LSTM網(wǎng)絡(luò)提出了一種股價趨勢預測方法,引入股票離散型趨勢數(shù)據(jù)到預測模型中,能夠在已有交易數(shù)據(jù)和技術(shù)指標的基礎(chǔ)上提升股價預測精確度;楚翔皓等[8]將LSTM神經(jīng)網(wǎng)絡(luò)對SQL語義進行分類學習,可以精確識別攻擊語句,且不容易產(chǎn)生誤判行為;SALMAN等[9]將LSTM網(wǎng)絡(luò)應用到了航行天氣變化預測領(lǐng)域,能夠有效的預測未來的天氣變化情況;WEN等[10]利用LSTM神經(jīng)網(wǎng)絡(luò)預測空氣污染,其結(jié)果顯示,空氣污染的預測結(jié)果與真實的污染數(shù)據(jù)相近。
受到以上啟示,本文提出了一種基于深度學習的多源數(shù)據(jù)融合下的汽渡防碰撞預警方法。該方法首先雷達與AIS船舶航行數(shù)據(jù)融合,以此來獲得更加可靠,準確的訓練數(shù)據(jù);再將融合后數(shù)據(jù)轉(zhuǎn)換為離散的位置序列作為輸入;其次,抽取船舶行航行的時空多維特征;最后采用卷積神經(jīng)網(wǎng)絡(luò)和深度雙向LSTM網(wǎng)絡(luò),學習船舶航行軌跡的局部和全局特征。
雷達的觀測數(shù)據(jù)是以極坐標的形式表示的,而AIS數(shù)據(jù)是由AIS系統(tǒng)中GPS提供的基于WGS-84地理坐標系經(jīng)緯度表示的??臻g統(tǒng)一就是要將雷達和AIS數(shù)據(jù)統(tǒng)一變換到直角坐標系中,且坐標原點定義為和船舶實際位置,這樣便于對雷達和AIS兩者的數(shù)據(jù)進行關(guān)聯(lián)和融合。
1)雷達坐標變換
雷達提供的船舶位置數(shù)據(jù)是基于極坐標下表示的,其數(shù)據(jù)具體表示為距離R和方位θ,將去轉(zhuǎn)換到直角坐標系下的數(shù)據(jù)用XR和YR表示[11],轉(zhuǎn)換參考式(1):
2)AIS坐標變換
本文利用高斯-克呂格投影[12]將AIS提供的船舶位置數(shù)據(jù)由球坐標系轉(zhuǎn)換到直角坐標系下。
高斯-克呂格投影是一種等角橫軸切橢圓柱投影。這種投影,將中央經(jīng)線投影為直線,其長度沒有變形,與球面實際長度相等,其余經(jīng)線為向極點收斂的弧線,距中央經(jīng)線越遠,變形越大。
式(2)中,Xα和Yα為AIS數(shù)據(jù)在直角坐標下的橫坐標和縱坐標,L是地理坐標下的經(jīng)度值,S是赤道至緯度B的子午線弧長;N是緯度B處的卯酉圈曲率半徑,B是地理坐標系下的緯度值;。
此時,轉(zhuǎn)換后的AIS數(shù)據(jù)以直角坐標系表示。
3)臟數(shù)據(jù)過濾
雷達的測量信號容易受到江浪和雨雪等環(huán)境因素干擾,AIS會受到GPS信號不穩(wěn)定影響接收的船舶數(shù)據(jù)不準確。臟數(shù)據(jù)即為不符合數(shù)據(jù)分布統(tǒng)計規(guī)律的異常值,是不符合實際工程情況的,也可成為“異常值”。此類數(shù)據(jù)對深度學習訓練精度產(chǎn)生影響,所以在融合數(shù)據(jù)之前,須將此類過濾,減小訓練數(shù)據(jù)集體積,同時提高訓練精度和效率。
在對雷達與AIS數(shù)據(jù)做航跡關(guān)聯(lián)時,只有在同一時刻下才能有效地關(guān)聯(lián)出航跡信息。而雷達與AIS的數(shù)據(jù)采樣周期不同,所以在數(shù)據(jù)融合時,需要將兩者的數(shù)據(jù)在時間上進行同步化,本文將采用內(nèi)插外推法進行時間同步[13]。
汽渡搭載的雷達刷新周期一般是2s左右,而AIS的數(shù)據(jù)更新周期不固定,它受汽渡的航速和航向決定,一般在2s~5min之間。假設(shè)雷達對目標船舶的探測時間為t,AIS的采樣周期為T,AIS第nT和第(n+1)T個時刻雷達有探測值,且nT 通過式(3),可以將AIS的數(shù)據(jù)外推到雷達的探測時刻t上,完成時間的同步。由于船舶的機動性相對比較遲緩,采用該方法可以滿足精度需求。 汽渡搭載的雷達可以探測100余艘船舶,而AIS的一個信道可以接收400多艘船舶的信息,所以需要將兩者的航跡進行空間粗關(guān)聯(lián),從而減小計算量,降低計算復雜度。 假設(shè)AIS目標船舶在Ti(1≤i≤m,m為AIS目標的點跡數(shù))的坐標為,雷達目標船舶j(1≤j≤n,n為雷達目標數(shù))在時刻Ti的坐標為,則在時刻Ti雷達目標j與AIS目標的空間距離distance為 1)若distance≤R(閾值),則時刻Ti的雷達目標與j與AIS的目標相關(guān)聯(lián)。 2)否則,不關(guān)聯(lián)。 空間粗關(guān)聯(lián)之后,進行航跡關(guān)聯(lián)。將連續(xù)S(1≤S≤m)個時刻的AIS目標航跡分別于目標航跡進行粗關(guān)聯(lián)。如果雷達目標在T(T≤S)時刻的空間粗關(guān)聯(lián)都與AIS目標關(guān)聯(lián),則AIS目標與雷達目標為航跡關(guān)聯(lián)。 航跡融合就是將雷達與AIS的航跡經(jīng)過一定的算法對數(shù)據(jù)進行融合處理,使得融合后的數(shù)據(jù)集精度更高,更加接近于船舶的真實航跡。航跡融合分為如下兩種情況。 1)如果雷達與AIS的目標距離相近,AIS的航跡數(shù)據(jù)就可以滿足訓練需求。此時,直接將AIS的航跡數(shù)據(jù)作為融合之后的訓練數(shù)據(jù)集。 2)如果雷達與AIS的目標相距較遠。如果雷達與AIS的航跡點歐氏距離大于150m,方位差歐式距離大于5°,航速差歐式距離大于1.2,航速差歐式距離大于3°,設(shè)AIS加權(quán)權(quán)重為1,則將AIS航跡點作為融合時刻點。 假設(shè)在系統(tǒng)k時刻,雷達的測量值為xR,AIS的測量值為xA,且兩者相互獨立。雷達的測量均方誤差為,加全因子為wR;AIS的測量均方誤差為,加全因子為wA。設(shè)X為雷達與AIS數(shù)據(jù)融合之后的航跡信息。如上所述,可得式(5): 融合后的數(shù)據(jù)使用MMSI(水上移動通信業(yè)務標識碼)作為某一條目標船舶航跡數(shù)據(jù)的唯一標識符,與MMSI相對應的目標船舶動態(tài)序列的相關(guān)字段如圖1所示。 圖1 船舶動態(tài)序列字段圖 本文通過深度學習的架構(gòu)建立算法模型,其中主要包含兩個船舶航跡特征學習模塊,多層卷積神經(jīng)網(wǎng)絡(luò)模塊和深度雙向長短期記憶網(wǎng)絡(luò)模塊。這兩個模塊的功能各異,可以形成優(yōu)勢互補,完成了船舶航跡的特征挖掘,充分學習軌跡各個特征的規(guī)律。 在解決分類預測問題上,卷積神經(jīng)網(wǎng)絡(luò)構(gòu)造特征工程具有非常廣泛的應用。本文將使用卷積神經(jīng)網(wǎng)絡(luò)充分提取每個目標船舶的航跡特征,對其進行分類,提高深度學習訓練效率。 首先使用嵌入層將目標船舶軌跡數(shù)據(jù)中相關(guān)的時間、航向轉(zhuǎn)換為嵌入空間中的特征向量,然后采用連接層,對軌跡的空間位置、時間、航向、航速等特征融合。建立多重卷積神經(jīng)網(wǎng)絡(luò)模型,每層神經(jīng)網(wǎng)絡(luò)的神經(jīng)元將對這些特征進行提取。 經(jīng)過卷積神經(jīng)網(wǎng)絡(luò)對這些輸入的軌跡特征進行訓練后,建立基于目標船舶軌跡的特征工程使得模型提取到每條軌跡的新特征。 使用深度雙向LSTM繼續(xù)對經(jīng)過卷積神經(jīng)網(wǎng)絡(luò)處理過的軌跡新特征,對相對近期數(shù)據(jù)和遠期數(shù)據(jù)進行處理編碼。構(gòu)建多層模型,學習輸入特征和輸出特征之間的關(guān)系,充分學習到位置之間的語義關(guān)系和時序依賴信息。 首先通過設(shè)置屏蔽層,還原目標船舶軌跡序列不固長的屬性,去除在模型初始化時的軌跡序列中的填充值,使其符合目標船舶軌跡的變長序列。LSTM通常被應用在處理長期狀態(tài)的時間序列,把近期和遠期的船舶航跡數(shù)據(jù)作為輸入訓練集,可以提高位置預測的精確性。 圖2介紹了深度雙向LSTM模塊的體系結(jié)構(gòu),每一個神經(jīng)元都有一個前向LSTM和一個后向LSTM組成。前向LSTM會從左到右處理輸入向量,而后向LSTM會以相反的順序處理。通過前后雙向反饋對目標船舶軌跡規(guī)律充分學習,從而獲得最終的位置向量特征。 圖2 深度雙向LSTM體系結(jié)構(gòu) 如圖3所示,本文采用的目標船舶位置預測實質(zhì)為一個分類器,其中的類別是候選位置集,即實際目標船舶的經(jīng)緯度位置索引。在算法輸入時,已經(jīng)將候選位置集進行向量處理。 圖3 預測位置輸出模塊 經(jīng)過深度雙向LSTM對目標船舶軌跡的特征學習之后,獲得最終的向量特征,再通過全連接層計算出預測的下一位置向量。最后,位置索引匹配真實的經(jīng)緯度信息,實現(xiàn)目標船舶的位置預測。 本文數(shù)據(jù)集選取圖4所示鎮(zhèn)揚汽渡所在藍色區(qū)域的航速在0~14kn的船舶AIS數(shù)據(jù),并且AIS的數(shù)據(jù)接收時間間隔為10s。訓練集使用的雷達數(shù)據(jù)均來自于2036號汽渡,船名為“JIANGSULU?DU3015”,MMSI為413798958,呼號為ZYQD15,長寬高為90×16×N/A m。 圖4 鎮(zhèn)揚汽渡航道示意圖 本文實驗均運行于個人PC,具體配置如下。 機器型號:Lenovo Y7000P-1060; 系統(tǒng)類型:Ubuntu 18.04桌面版; 顯卡版本:NVIDIA GeForce GTX 1060; CPU處理器:Intel(R)Core(TM)i7-8750H CPU@2.20GHz 2.21GHz; 內(nèi)存容量:16GB RAM。 本文將使用Python 3.5編程語言實現(xiàn),過程中需要依賴第三方Python庫Numpy1.10.1,Scipy和TensorFlow 1.3.0,Keras 2.0.9。 本實驗中涉及到的參數(shù)初始化: 1)學習率(Learning Rate):指神經(jīng)網(wǎng)絡(luò)中隨時間推移,信息累計的速度,初始化為0.2。 2)權(quán)重(Weight):衰減權(quán)重系數(shù)為0.0001,更新權(quán)重為0.1,更新權(quán)重的衰減系統(tǒng)為0.0002。 3)層數(shù)(The Number of Layers):指神經(jīng)網(wǎng)絡(luò)模型的訓練深度,模型結(jié)構(gòu)的復雜度與計算量和該參數(shù)成正比,本文將層數(shù)初始化為10000。 4)批尺寸(Batch Size):采用批梯度下降法,可以解決局部優(yōu)化問題,選擇合適的批尺寸可以提高模型的效率。Batch批訓練大小初始化為100。 5)訓練輪數(shù)(Epoch):指模型需要對訓練學習的周期,訓練輪數(shù)與批尺寸成反比,我們將其初始化為200。 6)過擬合(Over Fitting):訓練輪數(shù)過大,得到的結(jié)果則會過于泛化??蓢L試增加訓練數(shù)據(jù)的同時降低神經(jīng)網(wǎng)絡(luò)模型的復雜度。 選取200組連續(xù)的雷達與AIS融合數(shù)據(jù)進行實驗,時間間隔為10s。從圖5可以看出,隨著訓練輪數(shù)增加,誤差曲線逐漸趨于平穩(wěn),訓練效果很好。 圖5 航跡預測 如圖6所示,該方法的經(jīng)緯度預測效果較好,預測準確率可以達到96%左右。選取傳統(tǒng)LSTM模型和BP神經(jīng)網(wǎng)絡(luò)進行對比,其中BP神經(jīng)網(wǎng)絡(luò)的訓練層數(shù)初始化為4。且輸入層、隱含層1、隱含層2、輸出層維數(shù)分別為4、50、10、2,使用同樣的數(shù)據(jù)進行訓練。如圖8所示,較LSTM網(wǎng)絡(luò),經(jīng)度最大誤差降低了約5×10-4°,緯度最大誤差降低了約3×10-4°;較BP神經(jīng)網(wǎng)絡(luò),經(jīng)度最大誤差下降了約4×10-4°,緯度最大誤差下降了約 2×10-4°。 圖6 經(jīng)緯度預測 圖7 誤差對比 本文提出的這種基于深度學習的多數(shù)據(jù)融合下的輪渡船舶防碰撞預警方法,通過將雷達與AIS數(shù)據(jù)融合,提高深度學習訓練數(shù)據(jù)集經(jīng)度,再利用卷積神經(jīng)網(wǎng)絡(luò)和深度雙向長短期記憶網(wǎng)絡(luò)的優(yōu)勢,充分學習船舶航跡局部和全局特征。相比于傳統(tǒng)的BP神經(jīng)網(wǎng)絡(luò)和LSTM網(wǎng)絡(luò),可以更好地預測船舶航跡。在下一步的研究當中,結(jié)合汽渡本身特有的航行軌跡與特點,讓碰撞危險系數(shù)和預測碰撞位置可視化。2.3 航跡關(guān)聯(lián)
2.4 航跡融合
3 深度學習算法模型
3.1 卷積神經(jīng)網(wǎng)絡(luò)模塊
3.2 深度雙向LSTM模塊
4 實驗和結(jié)果分析
4.1 實驗平臺與數(shù)據(jù)集
4.2 實驗相關(guān)參數(shù)選擇
4.3 實驗與結(jié)果分析
5 結(jié)語