文/王香棟 李棟
為了提高無人船舶導航技術在海洋航行中的應用效果,本文首先介紹了無人船舶導航的三種主要方法,分別為基于強化學習的導航方法、基于視覺SLAM 算法的導航方法與基于路徑規劃與路徑跟蹤的導航方法。針對其中路徑規劃與路徑跟蹤導航方法,本文在路徑規劃方面提出一種基于ABC-PSO 算法的路徑規劃模型,并以路徑長度最短和碰撞次數最少為最優目標,設計模型的適應度函數,對算法搜索的路徑進行質量評價。

為了驗證所提方法的路徑規劃效果,引入電子海圖技術構建海域環境模型,進行海域規劃仿真實驗。實驗結果表明,經過所提適應度函數的篩選,實驗算法所尋最優路徑,均能在未發生碰撞的情況下,成功達到目的地;采用ABCPSO 進行路徑規劃,相較于RRT 和PSO,規劃時間分別縮短了65.21%與46.64%,具有更高的效率;ABC-PSO 所尋得的最優路徑,相較于RRT 和PSO,長度分別縮短了15.17%和11.58%,節點數量則減少了66.46%和44.9%,具有更短的長度和更高的平滑度,尋優結果最佳,值得進一步研究和推廣。
隨著世界經濟的發展,海洋貿易劇增,對于海域資源的開發與海域地理氣候的研究也越來越重要。無人船舶因其人工成本低、靈活性高、可遠程監控偵察等優勢,目前在海岸訓練、海域監測和地形測繪等方面被廣泛應用。精確的導航技術是無人船舶能夠自主執行海上任務的基礎,針對這一問題,許多學者進行了大量研究。為了解決無人船舶在內河的導航問題,楊嬌等根據無人船舶的運動學原理與內河駕駛員的量化經驗,提出一種基于雙延遲深度確定性策略梯度算法的無人船自主路徑規劃方法,并基于AC 網絡框架,從狀態空間、動作空間兩個方面對模型進行設計,實現無人船舶在內河的自主航行;針對無人船舶在海洋航行中的全局路徑規劃問題,朱文亮等將歐式距離與曼哈頓距離計算方法相結合,提出一種混合圓弧距離法,用于AI 經典路徑規劃算法中代價公式的計算,以提高AI 算法的路徑搜索效率并減少算法的遍歷節點數量,進而提高實現無人船舶在海洋航行中的全局路徑規劃。這些研究雖然一定程度上成功對無人船舶的航行路徑進行規劃,但是規劃時間較長,路徑質量不高,并且由于實際海洋情況復雜,在計算機上的仿真結果相較于實際的海洋航行仍有一定差距。為了縮短航線,提高路徑平滑度,本文提出一種基于ABC-PSO 的全局路徑規劃方法,首先通過人工蜂群算法改進傳統粒子群算法的搜索精度與局部最優逃脫能力,其次以路徑最短與碰撞最少為目的,提出模型的適應度函數,對模型尋優結果進行質量評估。最后為了提高算法的實用性,引入電子海圖技術對實際海域進行環境建模,再在構建的環境模型上,對所提方法的尋優性能進行檢驗。所提方法具體設計如下:
無人船舶(Unmanned Surface Vehicles, USV),又稱無人水面艇,是一種無需依靠遠程遙控,借助精確衛星定位與電子傳感設備即可按照預設程序完成水面航行任務的全自動水面機器人。無人船舶技術包括無人控制、自主決策、自主導航和智能感知等智能技術,通過搭載的雷達、聲吶、通信系統、定位系統、自動識別系統與視覺感知系統等傳感裝置與輔助航海儀器,船舶能夠自動獲取自身狀態信息與航行水域信息,并結合感知算法的處理分析,判斷船舶當前面臨狀態,再通過控制算法與執行機構對船舶航行行為進行自主決策與規劃,實現船舶的自主航行。航行過程中,船舶也會實時監測航行信息,保證自身面對水中障礙時可以及時避障,并根據定位信息回到原始規劃航線。隨著科技的進步與市場需求的提升,無人船舶技術正在接受廣泛關注與進一步研究。
在無人船舶技術中,自主導航技術是最核心的技術之一。它是指通過計算機技術,并結合船體的運動學和動力學約束,設計出一條合理的路徑,使無人船能夠在不碰撞其他物體的情況下,到達目的地并順利完成任務要求的一種前沿技術[7]。無人機自主導航系統通過陀螺儀、加速度計等測量儀器,對無人船舶的運行狀態進行測量和分析,獲取船舶的速度和位置信息,結合周邊海域障礙物與氣候信息,根據行駛出發點與目的地,為無人船舶整個航線過程規劃一條完整路線,保證無人船舶能避開海域障礙物安全到達終點。無人船舶的自主導航技術,相較于傳統海運中人工導航或遠程導航,船舶的信息獲取與分析都傳感器、智能算法等電子儀器,受環境或主觀因素影響較小,穩定性更高。但在航行過程中,通過傳感器獲取的信息難免存在誤差,且隨著時間推移誤差逐漸積累變大,可能導致船舶最終無法順利到達目標點。因此在設計導航系統時,也考慮到對船舶航行狀態的實時監測,使得船舶可以及時糾正偏移,完成整個航行。
目前主流的無人船導航技術主要分為三種:一是不需要人工設計路徑規劃,而是借助強化學習技術,使無人機在試錯中不斷學習周邊環境數據,自主決策航行方向與速度,以到達目的地時間最小化為優化目標,自主完成航行任務的方法;另一種則是首先通過激光雷達等傳感器獲取環境數據,再利用視覺SLAM 技術計算無人船舶位置,實現無人船舶的自主定位與建圖,最終實現無人船自主導航的方法[9];而目前主流的無人船導航技術是通過路徑規劃與路徑跟蹤實現。在無人機行駛前,首先依據航區整體信息為無人機設計一條全局最佳路徑,確保無人機能順利到達目的地;再在航行過程中,不斷比較當前位置與目標位置之間的距離,確認自身位置,不斷調整無人船航行方向與速度,使無人機能夠沿著全局路徑最終到達目標位置的方法。
在海洋航行前,根據航行途經海域信息對海洋環境進行建模。首先將海域圖映射成黑白雙色的柵格地圖,并根據海域信息將地圖劃分成若干個 環境矩陣。其中陸地或障礙物等不可航行的部分用黑色表示,在環境矩陣中代表“1”;可航行的海域部分用白色表示,在環境矩陣中代表“0”。
采用粒子群算法(Particle Swarm Optimization,PSO)在柵格化地圖中搜索可行駛路徑。粒子群算法又叫粒子群優化算法或鳥群覓食算法,是由國外學者Kennedy J 和Eberhart R C 在近年來提出,通過模仿鳥群覓食行為,用于處理多約束目標優化問題的仿生進化算法。鳥群在集體覓食時,往往利用群體中個體信息共享的方法,使得整個群體演化由無序走向有序,進而達到全局最優,從而得到全局最優解。相較于同樣通過迭代優化的遺傳算法,粒子群算法涉及參數更少,結構更簡單,搜索精度較高且收斂速度更快,目前被廣泛應用于神經網絡訓練、函數優化或模糊控制系統改進中。但是由于粒子群算法本身缺乏多樣性,對初始種群的依賴性較強,算法性能受研究者經驗限制,這就使得粒子群算法在早期搜索中效果較差,且尋優過程中一旦陷入局部最優,就難以脫困,影響粒子群算法的收斂速度與效果。因此在實際使用時,往往需要再對粒子群算法進行改進,本文的改進主要集中在權重更新和搜索方式上。
由于原始粒子群算法存在收斂速度慢,易陷入局部最優的問題,為了提高算法的收斂速度與精度,使算法在全局和局部搜索中都能保持搜索質量,采用自適應權重更新策略進行改進。因為粒子群算法在實際搜索過程中,往往是非線性且高度復雜的,因此普通線性遞減的慣性權重無法完全反映粒子群搜索的優化過程。考慮到粒子的慣性權重與慣性移動距離大小與算法搜索性能密切相關,因此在搜索初期設置一個較大的權重,使之隨著搜索次數的上升自適應更新并縮小,通過這樣的方式,使得算法在迭代初期可以在較廣范圍內搜索,加強了粒子的全局搜索能力;在迭代后期,粒子又將會在較小范圍內精細搜索,從而大大提高了算法的尋優性能,實現了算法的改善。
除了權重更新上的優化外,針對粒子群算法后期易陷入局部最優的問題,引入在尋找全局最優上具有優勢的人工蜂群算法(Artificial Bee Colony Algorithm,ABC),進一步對粒子群算法的速度更新公式進行改進。 人工蜂群算法是在2005年由Karaboga 小組為解決優化代數問題提出,通過模仿蜜蜂在采蜜過程中不同個體交換信息行為,保證算法全局搜索最優能力的一種集群智能算法,目前主要被應用于解決變量函數優化或智能算法優化問題。在人工蜂群算法中,蜂群通過雇傭蜂生成并分享食物源位置信息,再由偵查蜂隨機選擇一個食物源進行搜索,直到將這個位置的食物搜索完成,再由偵查蜂在附近生成一個食物源重新搜索,直到所有食物搜索完成。利用人工蜂群算法中偵查蜂通過位置信息搜索新蜜源的思想,通過改進粒子群算法的自適應搜索方式,優化算法跳出局部最優的能力。
當蜜源被搜索次數小于十 次時,跟隨蜂將在全局最優點附近搜索;當蜜源被搜索次數逐漸增大時,跟隨蜂將以全局最優點為指引,在全局最優點相鄰區域搜索,直到搜索次數達到上限,偵查蜂將離開這個蜜源,轉而尋找下一個蜜源。通過這樣的方式,算法可以輕易跳出局部最優。通過人工蜂群和粒子群算法的結合,模型的搜索速度和質量得到有效保障。
由于ABC-PSO 搜索得到的路徑存在中間節點與路徑轉折較多的問題,因此采用貪心搜索策略,對經過判斷后,算法搜索的最優路徑進行平滑處理。在算法獲得一條可通過路徑后,以起始點為基點,將起始點與目標點相連,判斷連線是否穿過障礙物。如果穿過障礙物,則選取上一個節點連接,再次進行判斷;不斷遍歷所有節點,直到找到未穿越障礙物就可以連接的節點。將這個節點與起點相連,再以這個起點為基點,與目標點相連,重復上述過程,找到下一個未穿越障礙物即可連接的節點。直到這個節點可以未穿越障礙物直接與重點相連。將起點、終點與所有找到的節點以路徑的形式相連,通過這樣的方式,所尋路徑減少了大量的中間節點,減少了路徑轉折次數,無人船舶可以更快速從起點到達終點,大大降低了無人船舶的移動代價。
基于ABC-PSO 全局規劃模型搭建無人船舶導航系統路徑規劃模塊,為了驗證ABC-PSO 的全局規劃速度和路徑生成質量,引入電子海圖對算法進行海域仿真實驗,并將實驗結果分別與PSO、RRT 等經典尋優算法的路徑生成結果進行比較。
電子海圖是當前海洋航行中用于建立導航系統的而產生的一種特殊地圖。電子海圖依靠雷達、傳感器等電子設備搜集環境與船舶信息,并以數據的形式儲存在計算機中,經過信息分析技術處理,最終以簡單直觀的方式展示在使用者面前。相較于傳統紙質海圖,電子海圖查詢方便,不僅可以描述海岸線與海域信息,還可以提供內陸水系可以行駛的相關航道信息,并且針對海岸線形狀、島嶼、礁石、障礙物、水深點、危險水域和航道輔助設施,也有更細致準確的展示,極大地方便了人們的航行,是現代海洋航行重要的輔助導航工具。采用二值化法建立標準電子海圖的環境模型,環境模型的大小為 ,對海圖中航行路徑規劃相關的障礙物和航道進行標注,標注的障礙物包括陸地、島嶼和礁石三種。
在Matlab 平臺分別進行ABC-PSO、PSO 和RRT 的海域規劃仿真實驗,實驗基于Windows 10 操作系統進行,配置CPU 為i7 13700KF,內存為8GB,顯卡為Radeon R7 M260。輸入某海工船舶設備有限公司某條實際航道的水域及周邊環境三維信息生成電子海圖仿真模型,采用ABC-PSO、PSO 和RRT 分別進行全局路徑規劃。設置起點坐標為(35,35),終點坐標為(120,300),算法的最大采用次數為20000。以無人船的寬度作為1 個單位寬度,設置規劃路徑寬度為5 個單位寬度,這樣在實際航行時,無人船在左右兩邊都可以擁有兩個單位寬度作為碰撞緩沖。

無人船舶是一種可以用于海洋開發、氣象監測和水上搜集等方面的前沿技術,在海洋任務的完成中具有廣闊前景。導航技術是無人船舶的核心技術,常用的無人船舶導航技術主要有基于強化學習、基于視覺SLAM 和基于路徑規劃與路徑跟蹤三種,目前基于路徑規劃與路徑跟蹤的導航技術是無人船舶導航的主流。為了提高無人船舶管理系統的導航精度,研究提出一種基于ABC-PSO 的路徑規劃方法,并引入電子海圖技術對海域及周邊環境進行建模,用于海域航行的規劃仿真實驗。實驗結果表明,經過所提適應度函數的篩選,三種對比算法所尋路徑都能在未發生碰撞的情況下,成功到達目標點。其中,RRT 算法規劃的路徑長度和規劃時間都是最長,分別為423.27m 與3.65s,規劃路徑的節點數量最多,平滑度最低,整體效果最差。PSO 算法的規劃結果相較于RRT 稍少,路徑長度和規劃時間都有一定程度的縮短,分別為406.12m和2.38s,規劃路徑的節點數量更少,規劃的路徑質量更高。采用所提ABC-PSO 方法進行全局路徑規劃,在三種算法中效果最好,規劃時間相較于RRT 算法與PSO 算法分別縮短了65.21%與46.64%,規劃效率更高;所搜索的最優路徑長度相較于RRT 和PSO 減少了15.17%和11.58%,節點數量則分別減少了66.46%和44.9%,路徑長度更短且平滑度更高,無人船在航行過程中耗費的成本更低,具有一定的實用性。