蔣寧寧 張 琪 向 敏
(1.海軍指揮自動化工作站 北京 100000)(2.海參信息通信局 北京 100000)(3.海裝信息系統(tǒng)局 北京 100000)
由于海洋環(huán)境的復雜性,常規(guī)武器在應付高科技下的海洋戰(zhàn)爭有著極大的局限性,因此針對高科技下的海洋軍事開發(fā)各國都投入了巨大的人力、物力,其中水面無人艇(Unmanned Surface Vehicle,USV)技術得到了快速發(fā)展[1~2],與無人水下航行器、無人機、無人駕駛車輛等無人平臺相比,水面無人艇的應用和發(fā)展所受的關注較少,但它是唯一可同時建立水上、水面、水下連接的無人駕駛平臺。相較于傳統(tǒng)水面艦艇,水面無人艇有其突出的優(yōu)勢:功能齊全,多種使命兼容,具有更強的機動性能、體型輕便、操作靈活,受到各國的廣泛關注[3]。
危險規(guī)避技術是目前關于水面無人艇智能研究的重要方向之一[4]。水面無人艇在執(zhí)行任務的過程中,需要能夠高度智能化、自適應地躲避海面上的障礙物。水面無人艇局部危險規(guī)避能力的強弱能夠從一定程度上體現(xiàn)其智能化水平的高低。危險規(guī)避技術作為USV自動控制系統(tǒng)的核心部分,是水面無人艇眾多研究課題中的重要內(nèi)容之一,受到了各國專家和學者的廣泛關注[5~7]。
無人艇對障礙物的避碰規(guī)劃,即根據(jù)當前實際運動(位置、航速、航向等)及障礙物信息,按照避碰策略制定避讓障礙的操作,規(guī)劃出位置、航速、航向,實現(xiàn)障礙避讓。無人艇避碰規(guī)劃處理流程框圖,如圖1所示。
圖1 無人艇避碰規(guī)劃信息處理流程框圖
根據(jù)已建立的障礙物環(huán)境模型,獲取外界環(huán)境信息:USV和障礙物目標相關信息,具體處理過程參見圖1。將這些信息輸入智能決策模型,進行加工處理,與待構建的知識庫中的知識進行匹配識別,輸出USV在該環(huán)境下的最佳規(guī)避行為,實現(xiàn)危險規(guī)避。
從國際海上避碰規(guī)則獲取的基本知識、研究成果、實戰(zhàn)數(shù)據(jù)的統(tǒng)計分析結果獲取規(guī)避知識。明確會遇態(tài)勢,會遇的沖突情況具體分為追越、對遇和交叉相遇三種[8~9]。以此為基礎,構建USV行動規(guī)則庫,其結構如圖2所示。
圖2 USV規(guī)避規(guī)則庫知識結構
在USV自動避碰系統(tǒng)中,構建良好的知識庫體系,能夠縮小搜索空間、對推理機的快速推理有著重要的作用。因此需要根據(jù)不同種類的會遇,構建不同的專用知識庫,例如:用于處理緊急情況下和靜態(tài)障礙物的避碰知識庫[10]。選用分類的方法來構建專用知識庫的方案,這與專家、船員對無人艇碰撞危險的判別和采取的避障方案應保持一致,知識庫的體系結構如圖3所示。
依據(jù)USV危險規(guī)避的知識庫特點,規(guī)避規(guī)則的表現(xiàn)形式為“模式-動作”對,用“如果……那么……”產(chǎn)生規(guī)則[11~12]。知識推理即通過獲取到的周邊環(huán)境信息與知識庫中已有的知識進行匹配識別,輸出USV在該環(huán)境下最佳的規(guī)避行為[13]。輸入的外界信息包括:目標障礙物的航向、距離、方位、最短會遇距離、最近會遇時間、通航密度,船舶操作性能、當前環(huán)境能見度、風速、海流、浪高、雷達觀測到的信息等。然后依據(jù)外界信息和知識庫的初始知識,進行知識推理。
圖3 USV危險規(guī)避知識庫的體系結構
USV避碰是一個動態(tài)的過程,這要求知識庫能夠實時快速獲得目標動態(tài)。采取推理機與知識庫一體,選取啟發(fā)式搜索方式,將推理機放在決策者的位置,以此調(diào)節(jié)整個環(huán)節(jié)。通過確定知識庫的體系結構、知識的表示形式及規(guī)避規(guī)則并設計推理流程,最終完成智能決策系統(tǒng)中智能知識庫的構建,推理流程如圖4。
圖4 USV危險規(guī)避知識庫推理流程
從國際海上避碰規(guī)則獲取的基本知識、研究成果、實戰(zhàn)數(shù)據(jù)的統(tǒng)計分析結果中,提取規(guī)避知識庫中的相關知識,構建無人艇行動規(guī)則庫。分析影響無人艇安全航行的主要因素:能見度、通航密度、浪高、風速、海流環(huán)境和障礙物分布情況。
依據(jù)能見度劃分標準,將能見度劃分為5個等級,用于在海洋環(huán)境中約束無人艇航向的最高航速,其劃分如表1所示。
表1 能見度對應無人艇航速劃分
依據(jù)無人艇周圍環(huán)境情況和所在水域的密集程度,將周圍環(huán)境劃分成高密度、中密度以及低密度三種,對無人艇的運動劃分如表2所示。
表2 航行環(huán)境對無人艇的速度劃分
無人艇因為無法在巨浪以上的浪高進行運動,因此對浪級的劃分中,對無人艇的安全航速分為以下4個等級,如表3所示。
表3 不同風速下無人艇的速度劃分
表4 海流環(huán)境對無人艇的速度劃分
在河流或者海洋等不同的環(huán)境中,其對無人艇的安全航速要求不同,依據(jù)專家與船員的經(jīng)驗,得到不同海流環(huán)境下無人艇的速度劃分如表4所示。
無人艇在強風以上等級禁止運動,然后對風力劃分了5個等級,風速對無人艇的航行速度的劃分如表5所示。
表5 不同風速下無人艇的速度劃分
當無人艇探測到障礙物時,如果沒有進入危險規(guī)避的狀態(tài),容易發(fā)生碰撞危險,因此需要限制無人艇的安全航速,以免碰撞沖突。以下障礙物數(shù)目對安全航速影響的劃分的如表6所示。
表6 不同障礙物分布情況下無人艇的速度劃分
危險規(guī)避規(guī)則劃分如表7所示。
表7 危險規(guī)避規(guī)則劃分
表中區(qū)域Z中,RS表示右對遇,RM表示右舷小角度交叉,RB表示右舷大角度交叉,BZ表示本船追越它船,TZ表示它船追越本船,LB表示左舷大角度交叉,LM表示左舷小角度交叉,LS表示左對遇。規(guī)避方式包含了15種操作方式,其中:KK表示保速保向,SK表示減速,KL表示左轉向,KR表示右轉向,KSL表示小角度左轉向,KSR表示小角度右轉向,KBL表示大角度左轉向,KBR表示大角度右轉向,SL表示減速左轉向,SR表示減速右轉向,SSL表示小角度減速左轉向,SSR表示小角度減速右轉向,SBL表示大角度減速左轉向,SBR表示大角度減速右轉向,STOP表示停船。這些避讓方式中,大角度轉向表示45°以上的轉向,而小角度轉向表示10°以內(nèi)的轉向。
在完成危險規(guī)避知識庫的構建以后,對USV避障進行危險規(guī)避決策,本文采用A星算法進行規(guī)劃,得到從起始點到終點的一條最小代價路徑。軌跡分為八個方向,以水平坐標系為準,分別為0°、45°、90°、135°、180°、225°、270°、315°、360°八個方向。在沿著全局路徑點航行的過程中,無人艇通過傳感器提供的動態(tài)障礙信息進行自動避障。
A星算法是啟發(fā)式搜索算法,其采用一個評價函數(shù)來指導路徑表中下一節(jié)點的選擇。評價函數(shù)為f(n)=g(n)+h(n)。其中g(n)表示從出發(fā)節(jié)點到節(jié)點n的最優(yōu)路徑的代價函數(shù),h(n)是根據(jù)領域知識,表示從節(jié)點n到最終目標點的路徑代價估計。
基于A星算法的危險規(guī)避決策流程如下
1)生成一個搜索圖G只包含開始節(jié)點n0,把n0放在一個名為OPEN的表中。
2)生成一個名為CLOSED的表,其初始值為空。
3)選擇OPEN表上第一個路徑節(jié)點,將它從OPEN中移到CLOSED中,稱此節(jié)點為n。
4)判斷n是否為最終節(jié)點,如果是最終節(jié)點,則順著搜索圖G,從危險規(guī)避知識庫中找到一條方案,成功退出。
5)如果n不是最終節(jié)點,則生成節(jié)點n后續(xù)節(jié)點集M,并在搜索圖G中安置節(jié)點集M。
6)為后續(xù)節(jié)點集M中不存在搜索圖G的節(jié)點建立一個到節(jié)點n的指針,并把M集中節(jié)點添加到OPEN中。對于M集中每一個已在OPEN和CLPSED表中的節(jié)點m,如果當前到達節(jié)點m的最好路徑包括了n,就將這個節(jié)點的指針指向n。對于已在CLOSED中的M集的每一個節(jié)點,也需要重新定向它在G中的每一個后繼。
7)按遞增的啟發(fā)值,重新排列OPEN表。
A星算法采用的是每步代價分析,這些代價包含了方向、軟障礙、航行通道與路程時間等。也可以運行無人艇靠近障礙物,此時可以加入額外的代價,這種情況下運行無人艇設置圍繞危險障礙物的邊界。在整個路徑中設置了開始節(jié)點和最終節(jié)點,最終可以為無人艇智能避障提供一個較優(yōu)的完整路徑。
本文分析從無人艇規(guī)避知識來源,以此完成規(guī)避知識庫中的知識采集。并提出了無人艇危險規(guī)避知識庫體系結構,明確危險規(guī)避規(guī)則的表示方法,以及規(guī)避知識庫的知識推理過程。通過分析影響無人艇安全航行的主要因素,并對這些因素進行知識提取,給出無人艇危險規(guī)避知識庫的規(guī)則及基于A性算法的危險規(guī)避流程,用于無人艇智能避障決策模型。