王程博,張新宇,張加偉,劉碩
1 大連海事大學(xué) 航海動(dòng)態(tài)仿真與控制交通行業(yè)重點(diǎn)實(shí)驗(yàn)室,遼寧 大連 116026
2 大連海事大學(xué) 航海學(xué)院,遼寧 大連 116026
隨著人工智能和無(wú)人駕駛技術(shù)的快速發(fā)展,無(wú)人駕駛船舶成為海上智能交通的重要研究領(lǐng)域。當(dāng)前,航運(yùn)業(yè)正處于從自動(dòng)化、信息化時(shí)代向智能化時(shí)代過(guò)渡的階段。隨著船聯(lián)網(wǎng)建設(shè)的不斷完善,以及云計(jì)算、大數(shù)據(jù)在航運(yùn)領(lǐng)域的逐步應(yīng)用,構(gòu)建智能化的航運(yùn)系統(tǒng)已成為未來(lái)幾年甚至十幾年內(nèi)可能實(shí)現(xiàn)的目標(biāo)。無(wú)人駕駛船舶集成了眾多先進(jìn)技術(shù),包括智能航行(智能識(shí)別和智能決策)、岸基支持、船舶運(yùn)維、船岸通信、船舶設(shè)計(jì)與制造、能效、集成測(cè)試等。智能決策層在整個(gè)無(wú)人駕駛船舶系統(tǒng)中扮演著“副駕駛”的角色,需要解決的問(wèn)題是在已知無(wú)人駕駛船舶系統(tǒng)所處環(huán)境的信息基礎(chǔ)上,決定船舶的航行策略。目前,國(guó)內(nèi)外關(guān)于無(wú)人駕駛船舶行為決策的研究較少,但在無(wú)人駕駛汽車和移動(dòng)機(jī)器人等其他領(lǐng)域內(nèi)行為決策方法的研究已取得較好成果。
自上世紀(jì)70年代以來(lái),在各種智能技術(shù)的推動(dòng)下,移動(dòng)機(jī)器人相關(guān)技術(shù)的研究獲得了飛躍式發(fā)展,涌現(xiàn)出了許多移動(dòng)機(jī)器人行為決策的方法,包括速度矢量可行度方法、多目標(biāo)決策方法(Multi-Criteria Decision-making Method,MCDM)、馬爾科夫決策方法(Markov Decision-making Pro?cess,MDP)、貝葉斯網(wǎng)絡(luò)決策方法、模糊決策方法和產(chǎn)生式規(guī)則決策方法等。其中,趙憶文和談大龍[1]提出了基于速度矢量可行度的自主移動(dòng)機(jī)器人多行為綜合決策方法,并取得了更合理的行為綜合結(jié)果。張曉東等[2]通過(guò)解決物資轉(zhuǎn)運(yùn)線路規(guī)劃、時(shí)間計(jì)算、作業(yè)排序和資源配班4個(gè)主要問(wèn)題,設(shè)計(jì)了用于艦船物資轉(zhuǎn)運(yùn)方案的計(jì)算機(jī)輔助決策方法。王斌明[3]提出了一種結(jié)合神經(jīng)網(wǎng)絡(luò)和模糊神經(jīng)網(wǎng)絡(luò)的機(jī)器人智能決策方法,在提高多級(jí)信息識(shí)別準(zhǔn)確率的基礎(chǔ)上,完成了機(jī)器人智能避障操作。Tanaka等[4]描述了一種用于移動(dòng)機(jī)器人導(dǎo)航的新型粗糙地形可穿越性分析和行為生成方法,利用參考姿態(tài)跟蹤的控制方法實(shí)現(xiàn)移動(dòng)機(jī)器人的智能導(dǎo)航。陳雪梅等[5]采用粗糙集提取駕駛員換道行為的決策規(guī)則,以達(dá)到有效進(jìn)行無(wú)人駕駛避碰的決策。杜明博[6]通過(guò)研究人類在各種交通場(chǎng)景下的駕駛行為決策過(guò)程,構(gòu)建了一種基于決策樹(shù)的駕駛行為決策模型,并在“智能先鋒Ⅱ”無(wú)人駕駛車輛平臺(tái)上驗(yàn)證了智能決策模型的有效性。田賡[7]在獲取有經(jīng)驗(yàn)的駕駛員決策信息的基礎(chǔ)上,深入研究了人為換道的決策機(jī)理,并建立了有效決策模型,實(shí)現(xiàn)了車輛準(zhǔn)確換道決策。Temizer等[8]將無(wú)人機(jī)避碰問(wèn)題視為MDP過(guò)程,實(shí)現(xiàn)了無(wú)人機(jī)避碰的智能決策。Furda和Vlacic[9]針對(duì)自主式城市車輛的實(shí)時(shí)決策問(wèn)題,建立了MCDM模型,驗(yàn)證了該模型在新領(lǐng)域的適用性。Li等[10]使用Q學(xué)習(xí)算法,通過(guò)一系列模擬駕駛場(chǎng)景,學(xué)習(xí)優(yōu)化策略,建立了基于強(qiáng)化學(xué)習(xí)的智能超車決策模型。Zheng等[11]建立了基于MDP方法的車輛決策模型,使用近似強(qiáng)化學(xué)習(xí)方法來(lái)改善MDP決策模型的性能。
國(guó)內(nèi)外學(xué)者對(duì)智能決策的理論、模型和實(shí)現(xiàn)方法等進(jìn)行了許多探索和研究,但在無(wú)人駕駛船舶智能避碰決策領(lǐng)域的研究和應(yīng)用尚處于起步階段。鑒于此,本文將首先對(duì)無(wú)人駕駛船舶智能行為決策算法的設(shè)計(jì)進(jìn)行分析,探討無(wú)人駕駛船舶智能決策所面臨的問(wèn)題。然后,通過(guò)構(gòu)建適用于無(wú)人駕駛船舶的深度強(qiáng)化學(xué)習(xí)(Deep Reinforce?ment Learning,DRL)和設(shè)定懲罰函數(shù),建立無(wú)人駕駛船舶避障的智能決策模型。最后,分別在不同障礙環(huán)境下對(duì)基于DRL的無(wú)人駕駛船舶智能避碰決策模型進(jìn)行仿真,以驗(yàn)證模型的有效性和算法的適用性。
相比于車輛在陸地道路上的行駛,無(wú)人駕駛船舶航行的海洋環(huán)境更復(fù)雜、多變,在避碰智能決策方面面臨如下2個(gè)難點(diǎn)。
1)海洋環(huán)境復(fù)雜、多變。
首先,在海洋環(huán)境下,風(fēng)、流、涌、浪等的時(shí)變性較強(qiáng),極大地影響了船舶航行安全。其次,近海水域有較強(qiáng)的結(jié)構(gòu)化通航特征,分道通航種類較多且助航信息量大,例如,燈浮、燈標(biāo)、航道建筑物、航行信號(hào)燈和不守規(guī)則的小型漁船等外部環(huán)境因素。因此,無(wú)人駕駛船舶避碰智能決策的設(shè)計(jì)需要考慮多源信息的約束,并能從中提取有效信息。
2)無(wú)人駕駛船舶的終極目標(biāo)是最大限度地實(shí)現(xiàn)“擬人化”。
在有人駕駛船舶的操縱過(guò)程中,駕駛員會(huì)將人、船、航線視為一個(gè)整體,在海上交通規(guī)則、駕駛經(jīng)驗(yàn)及意圖的指導(dǎo)下進(jìn)行反應(yīng)式駕駛,通過(guò)值函數(shù)求解決策模型中的最優(yōu)策略,使無(wú)人駕駛船舶狀態(tài)對(duì)行為映射中的回報(bào)最大;在避碰智能決策設(shè)計(jì)上,無(wú)人駕駛船舶需要借鑒有人駕駛船舶的操作人員處理復(fù)雜交通場(chǎng)景的決策過(guò)程,合理學(xué)習(xí)其駕駛經(jīng)驗(yàn)及規(guī)則中的模糊定義,在操作過(guò)程中智能化地實(shí)現(xiàn)“擬人化”決策。
針對(duì)無(wú)人駕駛船舶智能決策所面臨的問(wèn)題,結(jié)合海上交通規(guī)則,智能決策應(yīng)滿足以下準(zhǔn)則:
1)自主規(guī)劃能力。
針對(duì)識(shí)別的目標(biāo)和障礙物,在現(xiàn)有電子海圖上應(yīng)能合理規(guī)劃最優(yōu)避碰路線、避讓時(shí)間和恢復(fù)原始航線的時(shí)間。
2)實(shí)時(shí)性。
因海洋環(huán)境的不可預(yù)測(cè)性,智能決策系統(tǒng)必須能實(shí)時(shí)針對(duì)環(huán)境變化調(diào)整航態(tài)。
3)航向穩(wěn)定性和航向保持。
除執(zhí)行轉(zhuǎn)彎、追越、避障等動(dòng)作外,應(yīng)能保持航向,不能有較大的偏航。若受到擾動(dòng)而偏航,應(yīng)在擾動(dòng)消失后自行恢復(fù)航線航行。
4)航速控制。
在正常航態(tài)下,一般應(yīng)在最大和最小航速限制范圍內(nèi)航行。在智能決策過(guò)程中,通常應(yīng)能縱向調(diào)整航速以避障;在特定海域內(nèi),可根據(jù)當(dāng)?shù)匾?guī)則控制航速;在緊急情況或意外發(fā)生時(shí),可實(shí)現(xiàn)緊急制動(dòng)。
5)避碰操作。
在航行中,應(yīng)具有避碰能力,所采取的行動(dòng)包括橫向轉(zhuǎn)向和縱向加減速、停船等動(dòng)作。
無(wú)人駕駛船舶需實(shí)時(shí)獲取航行狀態(tài)信息,通過(guò)提取狀態(tài)信息,學(xué)習(xí)有人駕駛的歷史操作行為以進(jìn)行智能決策。狀態(tài)信息包括:當(dāng)前自身狀態(tài)、無(wú)人駕駛船舶歷史決策行為、周邊障礙物信息和當(dāng)?shù)亟煌ㄒ?guī)則等。在上述信息的基礎(chǔ)上,則可做出智能決策。經(jīng)過(guò)深入研究,本文選擇DRL作為智能決策模型。
智能決策系統(tǒng)選取深度學(xué)習(xí)采樣數(shù)據(jù)樣本并提取共同特征值,選取強(qiáng)化學(xué)習(xí)訓(xùn)練數(shù)據(jù),學(xué)習(xí)駕駛員歷史操縱行為。強(qiáng)化學(xué)習(xí)的數(shù)學(xué)本質(zhì)在離散時(shí)間內(nèi)可以視為MDP決策過(guò)程,并且由五元組(S,A,Pa,Ra,γ)定義。其中:S為無(wú)人駕駛船舶所處的有限狀態(tài)空間(狀態(tài)集);A為無(wú)人駕駛船舶的行為決策空間,即在任意狀態(tài)下的所有行為或動(dòng)作a空間的集合,例如,左舵、右舵、加速、減速、跟船和停船等;Pa(s,s)=P(s′|s,a),P為條件概率,表示無(wú)人駕駛船舶在狀態(tài)s和動(dòng)作a下到達(dá)下一個(gè)狀態(tài)s′的概率,Ra(s,s′)為激勵(lì)函數(shù),表示無(wú)人駕駛船舶在動(dòng)作a情況下,從狀態(tài)s到下一個(gè)狀態(tài)s′所得到的激勵(lì);γ∈(0,1),為激勵(lì)衰減因子,在下一時(shí)刻t的激勵(lì)便按此因子衰減[12-13]。
在上述的MDP定義下,無(wú)人駕駛船舶的智能決策需要解決的問(wèn)題可以正式描述為尋找一個(gè)最優(yōu)“策略”,記為π:S→A。圖1所示為DRL算法原理圖。在任意給定的狀態(tài)s下,策略會(huì)決定產(chǎn)生一個(gè)對(duì)應(yīng)的行為a=π(s)。當(dāng)策略確定后,整個(gè)MDP決策行為被視為一個(gè)Markov鏈,如圖2所示。無(wú)人駕駛船舶智能決策的目標(biāo)就是找到At,At+1,At+2,At+3,…,At+n,以使回報(bào)Gt最大,如式(1)所示,即找到無(wú)人駕駛船舶從狀態(tài)到行為動(dòng)作的映射,以使回報(bào)Gt最大。
式中,動(dòng)作at是由策略π產(chǎn)生的,a=π(s)。
最優(yōu)策略π*通常由動(dòng)態(tài)編程的方法求解。假設(shè)轉(zhuǎn)移矩陣P和激勵(lì)分布R已知,最優(yōu)策略π*的求解通常都是基于不斷計(jì)算和存儲(chǔ)如式(2)所示基于船舶狀態(tài)s的數(shù)組[14]:
式中,Pπ(t)為在t時(shí)刻選擇最佳策略時(shí)的概率密度;E表示期望。
行為狀態(tài)值函數(shù)Qπ(s,a)屬于實(shí)數(shù),將決定智能決策系統(tǒng)的控制策略,并可反映未來(lái)獎(jiǎng)勵(lì)的預(yù)測(cè)[15]。
當(dāng)無(wú)人駕駛船舶在狀態(tài)st下采取具體的行動(dòng)at時(shí),將會(huì)獲得即時(shí)獎(jiǎng)勵(lì)r(st,at)。
決策激勵(lì)函數(shù)是無(wú)人駕駛船舶智能決策系統(tǒng)中最為關(guān)鍵的部分,可以間接地指定要解決的任務(wù)目標(biāo)。在設(shè)計(jì)激勵(lì)函數(shù)時(shí),需要盡可能考慮以下因素[16-17]:
1)到達(dá)目的地。
鼓勵(lì)無(wú)人駕駛船舶按照既定的路由尋徑航線航行到目的地,越接近目的地,處罰就會(huì)越小,因此距離項(xiàng)設(shè)置為負(fù)值。
式中:λdistance為距離對(duì)激勵(lì)函數(shù)的影響權(quán)重;(x,y)為無(wú)人駕駛船舶船位;(xgoal,ygoal)為目的地位置。
2)偏離航線。
在航行至目的地途中,均應(yīng)按照既定的路由尋徑航線航行,即若選擇的動(dòng)作a=π(s)有可能使船舶偏離既定航線,則應(yīng)給予相應(yīng)的懲罰。
式中:λoffcourse為偏離航線對(duì)激勵(lì)函數(shù)的影響權(quán)重;Doffcourse為偏離航線的距離。
3)安全性和避碰。
在MDP模型中,將無(wú)人駕駛船舶的周邊劃分為有限狀態(tài)空間方格,遠(yuǎn)離有可能碰撞的方格應(yīng)得到獎(jiǎng)勵(lì),接近碰撞時(shí),則應(yīng)加大懲罰。
式中,λcollisions為碰撞對(duì)激勵(lì)函數(shù)的影響權(quán)重;Nobs為當(dāng)前階段需要避讓的障礙物數(shù)量;∨為符號(hào)“或”;(xobsi,yobsi)為障礙物位置,下標(biāo)i表示障礙物數(shù)量,i=1,…,N;Z0為船舶航行安全會(huì)遇距離[18],一般取
船舶安全會(huì)遇距離與船舶尺度(船長(zhǎng)L)有關(guān),船型越大,需要的安全會(huì)遇距離就越大。
將采集到的狀態(tài)信息作為決策模塊的輸入,探索和挖掘駕駛員歷史操縱行為,通過(guò)DRL學(xué)習(xí)在未知環(huán)境中的最優(yōu)航行策略。無(wú)人駕駛船舶可以收集當(dāng)前船舶的航行狀態(tài)信息,并評(píng)估障礙物是否在安全會(huì)遇距離內(nèi)。根據(jù)這些信息和激勵(lì)函數(shù),進(jìn)行大量的自我測(cè)試,完成智能決策避碰的任務(wù),最終到達(dá)目的地。基于DRL的無(wú)人駕駛船舶智能避碰決策算法如下。
1)數(shù)據(jù)采集。
在狀態(tài)s0下隨機(jī)采取搜索行為,樣本訓(xùn)練周期為T,D為樣本數(shù)據(jù)集。
每個(gè)樣本數(shù)據(jù)集D應(yīng)包括以下數(shù)據(jù):當(dāng)前狀態(tài)s、行為a、激勵(lì)r、采取行為的下一狀態(tài)s′、終止條件I。
2)需求參數(shù)。包括值函數(shù)中的迭代參數(shù)ω、狀態(tài)集S、搜索行為的隨機(jī)概率P(s′,r|s,a)、激勵(lì)衰減因子γ。
3)運(yùn)算過(guò)程。
本節(jié)以案例仿真實(shí)驗(yàn)來(lái)驗(yàn)證基于DRL的無(wú)人駕駛船舶智能避碰決策模型的有效性。在所有實(shí)驗(yàn)中,船舶使用相同的動(dòng)力學(xué)參數(shù)。仿真環(huán)境為Matlab 2016a,借助其強(qiáng)大的計(jì)算能力和繪圖功能完成本文工作。模型仿真程序流程如圖3所示。
無(wú)人駕駛船舶智能避碰決策框架由2個(gè)部分組成:趨向目標(biāo)和避障。當(dāng)環(huán)境中不存在障礙物或障礙物不在安全會(huì)遇距離內(nèi)時(shí),無(wú)人駕駛船舶將調(diào)整方向朝轉(zhuǎn)向點(diǎn)航行;當(dāng)障礙物出現(xiàn)在安全會(huì)遇距離內(nèi)時(shí),無(wú)人駕駛船舶利用Q學(xué)習(xí)策略進(jìn)行避障,可選動(dòng)作包括左轉(zhuǎn)和右轉(zhuǎn)。當(dāng)實(shí)際Q值與期望Q′值的誤差小于參數(shù)ω時(shí)(||Q′-Q<ω),迭代結(jié)束。首先,對(duì)參數(shù)進(jìn)行設(shè)置:學(xué)習(xí)率α=0.5,激勵(lì)衰減因子γ=0.8,迭代參數(shù)ω=0.02,船速vr=18 kn,動(dòng)態(tài)障礙物速度v0=18 kn。
本文設(shè)置了3個(gè)靜態(tài)障礙物,經(jīng)過(guò)50次訓(xùn)練后實(shí)驗(yàn),發(fā)現(xiàn)無(wú)人駕駛船舶雖然能成功規(guī)避障礙物,但是并非最優(yōu)策略。在進(jìn)行100次訓(xùn)練后實(shí)驗(yàn),發(fā)現(xiàn)無(wú)人駕駛船舶智能避碰決策效果比50次訓(xùn)練的效果好。由此可見(jiàn),無(wú)人駕駛船舶智能避碰決策模型訓(xùn)練次數(shù)越多,所得到的策略則越優(yōu),這進(jìn)一步表明模型中基本獎(jiǎng)勵(lì)功能的改進(jìn)是必要的。無(wú)人駕駛船舶智能避碰效果如圖4所示。圖中,黑色實(shí)心方框表示靜態(tài)障礙物,虛心小圓圈表示無(wú)人駕駛船舶。
本研究通過(guò)設(shè)定無(wú)人駕駛船舶和動(dòng)態(tài)障礙物的位置進(jìn)行智能避碰決策訓(xùn)練,無(wú)人駕駛船舶和動(dòng)態(tài)障礙物的速度均設(shè)置為18 kn。首次實(shí)驗(yàn)時(shí),無(wú)人駕駛船舶在航行一段步長(zhǎng)后與障礙物同時(shí)進(jìn)入彼此的船舶領(lǐng)域內(nèi),經(jīng)過(guò)100次訓(xùn)練后,無(wú)人駕駛船舶識(shí)別出動(dòng)態(tài)障礙物處于本船右前方,判斷出本船為讓路船,并采取向右轉(zhuǎn)向繞過(guò)動(dòng)態(tài)障礙物后方,最終成功規(guī)避動(dòng)態(tài)障礙物后到達(dá)目標(biāo)點(diǎn)。圖5所示為無(wú)人駕駛船舶避讓軌跡圖。圖中,黑色圓圈表示無(wú)人駕駛船舶軌跡,紅色圓圈表示動(dòng)態(tài)障礙物軌跡,Start0表示動(dòng)態(tài)障礙物的起始點(diǎn)。圖5(b)中,本船和動(dòng)態(tài)障礙物的軌跡交叉表示是本船避讓后穿過(guò)動(dòng)態(tài)障礙物后方的歷史軌跡。
通過(guò)分析上述2組實(shí)驗(yàn)可以看出,實(shí)驗(yàn)初期,由于無(wú)人駕駛船舶對(duì)未知環(huán)境的交互不足,最終智能避碰決策失誤導(dǎo)致陷入沖突或策略并非最優(yōu)。多次訓(xùn)練后,無(wú)人駕駛船舶通過(guò)強(qiáng)化學(xué)習(xí)與環(huán)境交互和經(jīng)驗(yàn)累積,完成了對(duì)未知環(huán)境的自適應(yīng),最終取得相對(duì)較好的避碰決策。
通過(guò)將深度學(xué)習(xí)與強(qiáng)化學(xué)習(xí)結(jié)合,提出了一種基于DRL的無(wú)人駕駛船舶智能避碰決策方法,使無(wú)人駕駛船舶在無(wú)環(huán)境先驗(yàn)知識(shí)的情況下,通過(guò)與環(huán)境的交互,提高學(xué)習(xí)能力,進(jìn)行智能避碰決策和路徑規(guī)劃。在不同障礙環(huán)境下的仿真實(shí)驗(yàn)結(jié)果表明,本文所提無(wú)人駕駛船舶智能避碰決策系統(tǒng)具有較強(qiáng)的自學(xué)習(xí)能力,可通過(guò)在線學(xué)習(xí),順利完成在未知環(huán)境下的自適應(yīng)避障,證明了本文智能決策模型的有效性。在今后的研究中,可以不斷增加未知環(huán)境的復(fù)雜度來(lái)改進(jìn)算法,以訓(xùn)練和提高智能避碰決策模型的自適應(yīng)能力,使其更好地應(yīng)用于實(shí)際狀態(tài)空間中。