◎ 楊毅 廣州航標處
?
珠江口智能航線系統的設計與實現
◎ 楊毅 廣州航標處
摘 要:借鑒陸上導航的思路,參照e-航海戰略理念,針對珠江口水域通航環境復雜的特點,開發了珠江口智能航線系統。本系統開發的基本思路是以GIS平臺為基礎,建立珠江口水域的推薦航線庫,選用合理的最優航線算法,采用面向服務的方式,將推薦航線及相關的助航信息服務推送到用戶端。
關鍵詞:e-航海 航行安全 自動航線設計 助航服務
目前陸地交通導航系統中自動化、智能化的路線設計功能已經非常成熟,廣泛應用于各種商業導航系統中。而在海上導航系統中,基本還是采取手工設計船舶計劃航線的方式,在某些ECDIS中可以利用電子海圖數據為基礎進行計劃航線的安全評估,有的廠商提供了氣象導航等航線優化的功能,而綜合性、自動化的智能航線設計大多停留在理論研究,投入實際應用的甚少。
珠江口水域船舶類型多樣化,既有遠洋航行的大型船舶,又有小型的內河船,還有高速船、漁船等,基本涵蓋了各種類型和等級的船舶。珠江口航道狹窄,航行規則錯綜復雜,兩岸港口密集,大型水上工程施工作業頻繁,船舶流向縱橫交錯、流量甚大,船舶碰撞事故較多。本系統的建設目的是為航行于珠江口水域的船舶提供有針對性的自動化、智能化的航線設計及相應的智能導航服務,以幫助船舶掌握航行規則,提高航行效率,強化航行安全。
目前有很多文章中提出了很多海上自動航線設計的方法,主要包括:
(1)主要考慮水深和礙航物,以繞開礙航物和淺水區的最短路徑搜索策略為基礎。該類方法未考慮航行規則和外在通航環境因素等條件,適用于沒有明確航行規則的水域和較小的船舶。
(2)通過建立推薦航線庫,結合對季風、洋流、臺風等氣象因素的模糊綜合評判進行選擇和優化的方法。適用于遠洋航線的自動設計。
(3)基于動態網格模型的航線自動生成算法或蟻群算法,也只考慮水深和礙航物。
還有的文章提出了Dijkstra最短路徑、QoS路由網絡等算法,但并未考慮到海上航路、航道并不像陸上的道路網一樣有連續的拓撲網絡。
海上航行相比陸上道路而言,具有更多的模糊性和不確定性因素,我們認為要考慮具體的通航環境,以及具體的船舶參數,才能選擇最合適的自動航線設計算法。基本思路如下:
(1)大洋水域及離岸較遠的水域,船舶密度較小,一般沒有劃定明確的航道,因此主要考慮安全和效率,因此以大圓航線為基礎,考慮水深、礙航物、氣象等因素,自動航線設計采取繞開礙航物、危險區的最短路徑算法為主,結合經驗航線、歷史航線等進行綜合評價。
(2)沿海水域航道復雜、各類船舶來往頻繁、礙航物多,因此優先考慮安全和航行規則。根據劃定的航道和相應的航行規則,按照船舶大小和類型建立不同等級的推薦航線路徑網絡。

圖1 珠江口分級航線庫
根據上述思路,本系統中在珠江口建立了如下的推薦航線路徑網絡,如圖1所示:
根據珠江口水域的特點,結合該區域常見船舶大小和吃水,將推薦航線路徑劃分為了六個等級,如下表所示:

3.1系統架構
本系統采用面向服務(SOA)的系統架構,系統中心包括GIS平臺、空間數據庫和WEB應用服務,提供B/S模式的WEB應用,并通過服務聯接移動APP和PC客戶端,實現服務和數據的傳輸。
3.2功能設計
本系統功能組成分為岸基集中處理平臺、移動APP應用和PC端電子海圖系統(ECS)應用三個部分。
3.2.1岸基集中處理平臺
即服務端,是本系統的數據中心。主要功能包括:
(1)整合珠江口的基礎空間數據,主要以電子海圖為基礎,整合航行規則、礙航物等相關的專題數據。
(2)建立和維護珠江口慣用航線庫,并通過大數據分析進行定期優化。
(3)管理實時的船舶動態數據,主要是AIS的數據。
(4)響應客戶端的請求,進行最優航線的運算,并將運算結果發送至客戶端。
(5)監控客戶端的航行動態,實時推送航行指引和警示信息。
(6)提供第三方接口服務。
3.2.2移動APP應用
移動APP應用主要針對航海人員,實現智能航線服務、助航信息服務等增值功能。目前主要完成了基于安卓手機的開發。
主要功能包括:
(1)顯示海圖和海上交通要素,包括等深線、航道、航標、定線制、錨地、航線、沉船、礙航物、引航員登輪點、限制區、警戒區、禁區、港區等,并能切換顯示互聯網地圖。
(2)從系統中心獲得當前有效的海上安全信息(MSI),并顯示在海圖上。
(3)可綁定本船AIS的MSSI碼,從而同步本船的基本信息(船舶靜態和動態數據),軟件的位置數據可選擇使用AIS船位,當網絡不可用時,自動切換為移動設備的GPS位置。
(4)顯示可用實時/預報的水文氣象信息(通過互聯網水文氣象數據接口/氣象服務獲得)。
(5)設定航行的目的地,調用在線智能航線服務,搜索海上的推薦航線,并可保存為計劃航線。
(6)查看其它用戶的計劃航線。
(7)查詢海上要素的信息。
(8)采用語音加屏幕閃爍的方式進行警示,包括危險警示(進入淺水區、靠近礙航物、靠近鄰近船舶、穿過限高橋梁、能見度不良、大風、急流),違反交通規則警示(超速、逆行、違規追越、違規穿越),普通信息播報(當前位置的加潮水深播報、交通規則播報、附近MSI的相關信息等)。
(9)搜藏個人興趣點,分享當前位置的照片,標繪個人的內容。
(10)海上信息報告(如海上事故、風險海況、航標移位等),報告數據錯誤(如提示的航行規則與實際有出入)。
(11)歷史航程計算:通過本船AIS的歷史軌跡,計算一定時間區間的航行里程、時間,并估算相應的油料消耗。
(12)航行風險分析:分析本船航行過程中遇到安全風險、違反交通規則等情況,給出安全建議。
(13)航行習慣分析(分析本船經常航經的水域、航道,經常停靠的碼頭、習慣的航速等數據)。
(14)查看海上風險點(來自AIS大數據分析)。
3.2.3PC端ECS軟件
具有ECS的基本功能,并包含上述移動APP的所有功能。
4.1服務端
服務端由 GIS SERVER和WEB應用服務構成,其中GIS SERVER作為數據發布的容器,主要用來顯示空間數據,WEB應用服務主要作為C/S程序的邏輯層和B/S程序的WEB 容器,進行業務數據的處理和提供WEB 訪問服務。服務端基于J2EE技術標準規范下進行開發,采用面向對象(OOP)的設計,以面向服務(SOA)的設計為應用擴展。GIS平臺支持各類GIS數據的整合和發布,支持緩沖區分析、疊加分析、路徑分析、網絡分析等各種空間分析算法,支持B/S模式下的數據編輯。
4.2數據庫
數據庫選用PostgreSQL對象關系型數據庫系統,建立了電子海圖庫,航行知識庫,船舶航跡庫,航線庫,障礙物庫,港口數據庫,用戶數據庫。

圖2 移動APP自動生成最優航線
4.3移動App應用
通過搭建AppServer服務端獲取岸基系統服務,完成安卓系統下的智能航線設計的功能。移動APP主要采用Android原生加上Webview的混合開發模式。用戶輸入出發位置和目的位置即可獲得從系統中心返回的最優推薦航線,如圖2所示。
4.4ECS軟件
開發基于Windows的PC客戶端ECS軟件,實現ECS的基本功能,并可通過網絡調用岸基共享平臺智能航線服務、助航信息服務。采用VC++語言開發。
船舶智能航線服務是e-航海戰略中的一項重要內容,在Efficiensea和MonaLisa等e-航海示范工程中都有相關的內容,在MonaLisa工程中又被稱為“綠色航線”。本系統以向船舶提供智能的最優推薦航線為出發點,進而實現航線數據在船-船、船-岸之間的數據共享和交換,依據計劃航線為船舶從起航到靠泊整個過程提供智能導助航服務,從而實現船舶航行安全最大化、航行效率最優化。