劉芳武
(南通航運職業(yè)技術學院 航海系,江蘇 南通226010)
在開放水域中,如何實現(xiàn)多船舶的自動導航?jīng)Q策,是船舶導航及避免碰撞的關鍵問題之一。在文獻[1-5]中,學者提出了多種解決方案,然而卻在不同程度上難以應用在實際應用場景中。由于人腦決策的靈活性和動態(tài)性,設計一種自動化的決策系統(tǒng)模擬人類解決問題的過程十分困難。專家系統(tǒng)(Expert System,ES)通過領域知識和推理規(guī)則,能夠根據(jù)相應的場景為船舶提供決策依據(jù),然而在多艘船舶的情況下,建立知識庫的開銷較大,且使用效率較低。決策支持系統(tǒng)(Decision Support System,DDS)將知識推理和數(shù)值計算結合起來,相比于ES 能夠提供更強大的決策能力,同時能夠和神經(jīng)網(wǎng)絡、遺傳算法等經(jīng)典算法結合,提供更加精確和靈活的分析決策能力。然而,在實際使用過程中,不僅需要對于信息的分析和處理能力,同時還可能需要信息的交互、學習、預測等,因而DDS 仍需要進一步改進。
智能體是工作在特定環(huán)境中,擁有一定屬性和特征,能夠根據(jù)相應指令,感知環(huán)境和執(zhí)行動作的實體。多智能體系統(tǒng)(Multi-Agent System,MAS)是一種重要的軟件模型,用來解決分布式、異構環(huán)境中的信息分析和決策問題。MAS的這一特性非常適合應用于船舶碰撞避免領域。通過在不同船舶上部署MAS,則各個船舶能夠采集信息、感知變化、交換信息、判斷態(tài)勢及分析決策等。為實現(xiàn)以上功能,需要將不同類型、不同來源、不同層次之間的信息進行融合,因而需要精確高效的信息融合方法。
本文提出一種基于多智能體信息融合的船舶碰撞避免系統(tǒng)。該系統(tǒng)包含船舶智能體和VTS 智能體。并擁有源數(shù)據(jù)融合層、多群組融合層及分布式融合層3個信息融合層次。通過對本文設計系統(tǒng)的分析與實驗驗證,證明本文提出方案的可行性和有效性。
本系統(tǒng)中包含2 種應用智能體:船舶智能體和VTS 智能體;2 種控制智能體:系統(tǒng)智能體和群組智能體。幾種智能體間的相互關系如圖1所示。
圖1 智能體間關系圖Fig.1 Relationship between agents
如圖1所示,在系統(tǒng)中船舶和VTS 可以被建模為應用智能體,應用智能體自身具有一定的信息分析和處理能力,并能夠利用自身的知識庫和功能解決某些特定問題,而控制智能體則能夠對應用智能體進行控制。系統(tǒng)智能體能夠創(chuàng)建或刪除應用船舶智能體,而群組智能體可以通過用戶接口交換信息、分配系統(tǒng)資源、消除沖突等。當風險發(fā)生時,多個相關的船舶智能體自動組成一個群組,同時每個形成的群組被分配一個群組智能體進行統(tǒng)一管控。需要注意的是,一個群組可能包含多個船舶智能體,同時一個船舶智能體也可能屬于不同的群組。
利用面向對象的編程方法,船舶智能體被定義為CA_Ship 類,其包含有若干屬性和操作,用來描述該智能體擁有的特征和執(zhí)行的動作。CA_Ship的結構如圖2所示。
圖2 CA_Ship 類結構圖Fig.2 The structure of CA_Ship class
CA_Ship的操作由5 部分組成:Ship_Calculation包含,地理位置分析計算、碰撞風險計算及轉向效果計算等基本計算功能;通過預先制定的推理規(guī)則,Ship_Reasoning 可以根據(jù)已有知識作出判斷或得出結論;通過特定的方案策略,Ship_Planning可以根據(jù)當前碰撞風險作出調整航向的規(guī)劃;Ship_Communication 用來實現(xiàn)不同船舶間的通信,而Ship_Learning 則通過多種機器學習算法,提高系統(tǒng)的分析決策能力。
與船舶智能體類的定義方法類似,VTS 智能體被定義為CA_VTS 類,該類的基本結構如圖3所示。
圖3 CA_VTS 類結構圖Fig.3 The structure of CA_VTS class
CA_VTS 與CA_Ship 有以下不同:
首先,CA_Ship 類中的某些屬性同樣包含在CA_VTS 類中,因此VTS 智能體擁有船舶智能體的所有信息;同時,CA_VTS 類也含有一些CA_Ship所不具有的信息,并將這些信息分別存儲在VTS_Data和VTS_Knowledge 中。
其次,VTS_Computation 包含了更多的計算功能;通過信息融合算法,VTS_Planning 能夠為群組中的船舶提供碰撞避免方案,減少群組中船舶碰撞風險;同時,VTS 智能體也具備更加豐富的信息管理和學習機制,從而能夠實現(xiàn)更加復雜的業(yè)務。
對于船舶智能體和VTS 智能體來說,在決策各個階段需要對不同類型和來源的信息進行綜合分析,因而信息的融合非常必要。
如圖4所示,多智能體信息融合模型包含3個融合層次,并且在每個層次中使用不同的融合方法。
1.池塘準備 3月初,池塘施用75kg/畝生石灰進行干法清塘,3天后排干池水曬塘。放苗前10天左右,池塘水位加至10cm,以4~5m的行距、2~3m的株距種植輪葉黑藻。種植一周后提高水位至50cm左右,根據(jù)池塘肥力,放苗前7天左右使用一次生物肥,培育生物餌料。池塘進水用100目長筒狀篩絹網(wǎng)過濾,防止敵害進入。前期保持較低水位,有利于輪葉黑藻生長和水體升溫。
圖4 信息融合模型結構圖Fig.4 The structure of information fusionmodel
通過源數(shù)據(jù)融合層次的信息融合,船舶智能體能夠將獲取的其他船舶智能體的屬性值與自身的屬性值結合起來,從而做出一些重要的判斷和決策。因此,源數(shù)據(jù)融合層次可分為多周期融合和多對象融合2個步驟。其中,多周期融合可以用來跟蹤和識別其他船舶智能體。
定義1:對每個船舶智能體,定義其自身的屬性集為WOj={latitude,longitude,course,speed,risk,……},由船舶智能體i 發(fā)送的屬性集定義為WTij={latitude,longitude,course,speed,……},同時定義兩者在第j個周期內的相對屬性集為WRij={distance,bearing,course,speed,DCPA,TCPA,risk,……}。
則WRij由WOi和WTij計算可得:
式中:f(WOk,WTjk)為利用WO和WT 計算WR的函數(shù);N 為工作周期數(shù)量。
多對象融合過程用來估計當前情況下,本船舶與其他船舶智能體發(fā)生碰撞的危險程度。
定義2:對于每個船舶智能體,在第j個工作周期內,其與船舶智能體i 發(fā)生碰撞的風險如下:
其中λ 為在不同條件下DCPA的門限值。
定義3:對于每個船舶智能體,在第j個工作周期內,與其他M 各船舶智能體碰撞的風險為:
對每個船舶智能體來說,在制定碰撞避免方案時,需要知道哪些船舶智能體的航線需要被分析和考慮。因而,需要形成相應的群組,實現(xiàn)多個船舶智能體之間的信息交換和協(xié)商。群組的形成包括2個步驟:
步驟1:創(chuàng)建群組。對于船舶智能體k 來說,在第j個周期創(chuàng)建群組NUk的規(guī)則如下:
其中Dist_min 為船舶之間可能發(fā)生碰撞的距離門限。因而在系統(tǒng)中所有的群組可以記為NU={NU1,NU2,…,NUM},其中M 為系統(tǒng)中船舶智能體的總數(shù)。
步驟2:群組結合。若對于任意2個NUi∈NU,NUj∈NU,若存在NUi?NUj,則從NU 中刪除NUi。
重復步驟2 可知,在NU 中,任意2個NUk間沒有包含關系。存在NU={NU1,NU2,NU3,NU4},其中
由于NU2?NU1,且NU4?NU3,則最終經(jīng)過融合的NU={{Ship_Agent1,Ship_Agent2,Ship_Agent3},{Ship_Agent1,Ship_Agent3,Ship_Agent4}}。
通過以上層次的信息融合,每個Ship_Agent 均能夠得出在本UN 內,如何降低和其他船舶碰撞風險的方案。一種典型的方案如圖5所示。
圖5 碰撞避免方案示意圖Fig.5 Collision avoidance plan
在碰撞避免方案中,共有3 種動作被使用,即保持、轉向和回復。在3 種動作的執(zhí)行過程中,最重要的3個參數(shù)是:操作類型(O_Type)、操作幅度(O_Size)及操作時間(O_Time),因此,一個碰撞避免方案能夠被描述為以下形式:
不同船舶制定的碰撞避免方案,可能存在一定程度的不一致,為了消除這種不一致,需要由VTS_Agent 執(zhí)行方案融合算法,如下所示:
其中方法PlanEvaluation的作用是計算方案的優(yōu)先級,優(yōu)先級越大方案越優(yōu)。
為了驗證本文提出方案的可行性,在仿真環(huán)境中實現(xiàn)并測試本文提出的方法,如圖6所示,為2艘船舶相遇的場景。
對于Ship_ Agent1 來說,其自身計算得出的方案為:
該方案在圖6 中標出,同時被選為優(yōu)先級最高的方案。由于產(chǎn)生的方案個數(shù)非常多,因此僅僅標識出VTS_Agent 挑選出的最優(yōu)方案Plan2,該Plan的內容為:Ship_Agent1 向右轉40°,然后航行8 min,Ship_Agent2 向右轉10°,然后航行8 min,該方案的優(yōu)先級為13.67,大于2 艘船舶自身計算的方案的優(yōu)先級之和12.40 (兩者分別為4.42和7.98)。
本文提出了一種應用于船舶碰撞避免的信息融合模型,該模型包含源數(shù)據(jù)融合、多群組融合及方案融合3個融合層次。每個Ship_Agent 能夠通過源數(shù)據(jù)融合過程計算出多個碰撞避免方案,從而減少碰撞的風險。同時不同的群組被創(chuàng)建,包含了不同的船舶和方案,VTS_Agent 能夠將處于同一群組的方案進行集成和修改,并選出最優(yōu)的方案分發(fā)給相應的Ship_Agent。最后,本文采用實驗仿真,驗證了本文提出方案的可行性和高效性。
[1]HARA K,HAMMER.A safe way of collision avoidance maneuver based onmaneuvering standard using fuzzy reasoning model[J].MARSIM,1993(3):163-170.
[2]YANG Chun-sheng.An expert system for collision avoidance and its application[D].Japan:Hiroshima University,1995.
[3]SATO Y,ISHII H.Study of collision-avoidance system for ships[J].Control Engineering Practice,1998(6):1141-1149.
[4]HWANG C.The integrated design of fuzzy collision avoidance and autopilots on ships [J].The Journal of Navigation,2002(55):117-136.
[5]余建星,張謙,馬維林.穿梭游輪與浮筒碰撞的有限元分析[J].艦船科學技術,2014,36(1):89-96.
[6]陳建華,陳衛(wèi)紅,劉科.基于模糊神經(jīng)網(wǎng)絡的一種船舶碰撞危險度計算方法[J].艦船科學技術,2008,30(2):121-126.