亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于雙延遲深度確定性策略梯度的船舶自主避碰方法*

        2022-07-20 01:43:58周壯壯張明陽劉敬賢
        交通信息與安全 2022年3期
        關(guān)鍵詞:本船航向船舶

        劉 釗 周壯壯 張明陽 劉敬賢▲

        (1.武漢理工大學(xué)航運(yùn)學(xué)院 武漢 430063;2.武漢理工大學(xué)內(nèi)河航運(yùn)技術(shù)湖北省重點(diǎn)實(shí)驗(yàn)室 武漢 430063;3.武漢理工大學(xué)國家水運(yùn)安全工程技術(shù)研究中心 武漢 430063;4.阿爾托大學(xué)工程學(xué)院機(jī)械工程系 芬蘭艾斯堡 20110)

        0 引 言

        船舶作為水路運(yùn)輸?shù)闹黧w,是國家綜合立體交通網(wǎng)的重要構(gòu)成要素,其智能化已然成為了水運(yùn)發(fā)展的必然趨勢?!度蚝Q蠹夹g(shù)趨勢2030》《智能航運(yùn)發(fā)展指導(dǎo)意見》《中國制造2025》《智能船舶發(fā)展行動計(jì)劃(2019—2021)》和《交通強(qiáng)國建設(shè)綱要》等重要文件已明確指出:智能船舶是未來重要科技創(chuàng)新的新領(lǐng)域,人工智能、現(xiàn)代信息等高科技技術(shù)應(yīng)用于航運(yùn)業(yè)也是未來發(fā)展的必然趨勢。自主避碰技術(shù)是船舶智能化發(fā)展面臨的關(guān)鍵科學(xué)問題[1],其研究受到各國學(xué)者的關(guān)注。

        Lyu 等[2]通過將本船周圍劃分為4 個(gè)區(qū)域,并在每個(gè)區(qū)域設(shè)置不同的斥力勢場函數(shù),實(shí)現(xiàn)在多物標(biāo)場景下及來船不協(xié)調(diào)行動時(shí)的安全避碰,但該方法航向變化波動較大,在部分場景下不滿足大角度避讓的要求。黃立文等[3]通過分析船舶會遇過程,結(jié)合船舶領(lǐng)域量化碰撞危險(xiǎn),并運(yùn)用速度障礙法求解船舶在特定會遇態(tài)勢下的動態(tài)避碰操縱區(qū)間,但是該方法假定1 次避讓行動就能讓清所有船舶,沒有對整個(gè)避碰過程求解操縱區(qū)間。丁志國等[4]利用模糊理論評估船舶碰撞危險(xiǎn),結(jié)合《1972年國際海上避碰規(guī)則》(Convention on the International Regulations for Preventing Collisions at Sea 1972,COLREGs,以下簡稱《避碰規(guī)則》),對典型會遇場景進(jìn)行仿真,實(shí)現(xiàn)在未知環(huán)境下2 船之間的安全避碰,但該方法未考慮多船避讓問題。Wang等[5]提出了1種基于目標(biāo)船舶意圖推斷的分布式避碰決策模型,該方法考慮了船舶操縱特性及《避碰規(guī)則》要求,但在一些極端情況下會出現(xiàn)對目標(biāo)船意圖的推斷混亂情況,并造成避碰決策延遲。劉冬冬等[6]使用模糊理論方法結(jié)合四元船舶領(lǐng)域量化船舶碰撞危險(xiǎn),并應(yīng)用粒子群優(yōu)化算法以偏航距離、偏航時(shí)間為約束條件求解最短避碰路徑,實(shí)現(xiàn)了2船之間的快速避碰,但該方法得到的避碰路徑不符合船舶的操縱特性。Kim 等[7]使用遺傳算法,通過避碰效果評價(jià)、是否到達(dá)終點(diǎn),以及最小化航程等指標(biāo)來對船舶轉(zhuǎn)向角變量進(jìn)行優(yōu)化,得到了對于靜態(tài)障礙物的有效避碰策略,然而該方法并不能做到實(shí)時(shí)避讓且未考慮船舶之間的避碰問題。Zhang 等[8]提出了適用于多船會遇場景下的分布式避碰決策方法,該方法在特定場景下目標(biāo)船操縱行動不協(xié)調(diào)或未按照《避碰規(guī)則》進(jìn)行避碰操縱時(shí)依然具有較好的可靠性。朱凱歌等[9]引入Coldwell 船舶領(lǐng)域計(jì)算動態(tài)避讓決策參數(shù),并基于決策參數(shù)設(shè)計(jì)船舶避碰流程,實(shí)現(xiàn)了2 船之間的安全避碰;Kang 等[10]通過構(gòu)建目標(biāo)船的船舶領(lǐng)域來評估本船的碰撞危險(xiǎn),并結(jié)合差分進(jìn)化算法設(shè)計(jì)受障礙物約束的適應(yīng)度函數(shù)來尋找避碰最優(yōu)路徑,但路徑的生成時(shí)間長,避碰效率低。

        目前,深度學(xué)習(xí)在計(jì)算機(jī)視覺、語音識別、自然語言處理等諸多領(lǐng)域取得的突破性進(jìn)展,極大地促進(jìn)了人工智能的發(fā)展,深度神經(jīng)網(wǎng)絡(luò)極強(qiáng)的表征能力使得強(qiáng)化學(xué)習(xí)能夠應(yīng)用到更加復(fù)雜的決策問題上。目前已經(jīng)有很多學(xué)者將深度Q 網(wǎng)絡(luò)(Deep Q-learning network,DQN)[11]、深度確定性策略梯度(deep deterministic policy gradient,DDPG)、近端策略優(yōu)化(proximal policy optimization,PPO)、SAC(soft actor-critic)等深度強(qiáng)化學(xué)習(xí)算法應(yīng)用到船舶自主避碰中。Cheng 等[12]考慮外部環(huán)境干擾與船舶操縱性能,利用DQN算法實(shí)現(xiàn)對多個(gè)靜態(tài)障礙物的轉(zhuǎn)向與變速避讓,但是該方法未考慮船舶之間的避碰操縱;王程博等[13]依據(jù)馬爾可夫決策過程構(gòu)建船舶避碰要素,利用深度強(qiáng)化學(xué)習(xí)算法進(jìn)行訓(xùn)練,實(shí)現(xiàn)船舶與靜態(tài)障礙物以及小角度交叉相遇局面下的安全避碰;周怡等[14]通過AIS 數(shù)據(jù)構(gòu)建船舶的安全領(lǐng)域模型,并設(shè)計(jì)了基于避碰失敗區(qū)域重點(diǎn)學(xué)習(xí)的DDPG 算法,實(shí)現(xiàn)了航道內(nèi)2 船之間的避碰;Zhao等[15-16]依據(jù)《避碰規(guī)則》將本船周圍劃分為4 個(gè)區(qū)域來確定會遇局面,并結(jié)合船舶運(yùn)動模型,利用PPO算法訓(xùn)練得到在2 船和多船場景下的避碰策略,但這些避碰策略都是針對特定場景訓(xùn)練得到的;Xie等[17]提出1 種基于異步優(yōu)勢演員-評論家算法和Q-learning算法的復(fù)合自適應(yīng)避碰決策模型,該模型考慮了安全性與經(jīng)濟(jì)性,實(shí)現(xiàn)了多船避碰,但是該方法只針對1 種避碰場景進(jìn)行訓(xùn)練,且避讓過程認(rèn)定目標(biāo)船保向保速;周雙林等[18]依據(jù)《避碰規(guī)則》劃分讓路船與直航船,并設(shè)計(jì)各自的獎懲函數(shù),利用DQN 算法得到了不同會遇局面的避碰策略,但算法的訓(xùn)練是針對特定場景的,不具有普適性;Shen等[19]通過在目標(biāo)船上添加規(guī)則線,使本船行動符合《避碰規(guī)則》的要求,并利用船舶領(lǐng)域構(gòu)建適用于船舶避碰過程的強(qiáng)化學(xué)習(xí)模型,經(jīng)過隨機(jī)場景的訓(xùn)練得到了多船會遇場景下的避碰策略;Sawada 等[20]結(jié)合船舶領(lǐng)域構(gòu)建目標(biāo)障礙區(qū)并用來評估碰撞風(fēng)險(xiǎn),利用連續(xù)動作空間下的PPO 算法在23 種多船會遇場景中進(jìn)行訓(xùn)練,得到了基本符合《避碰規(guī)則》的避碰模型,同時(shí)通過對比實(shí)驗(yàn)得出了使用連續(xù)動作空間得到的避碰策略性能更高,但是該方法在避讓過程中航向穩(wěn)定性差,路徑不平滑,避碰效果不佳;Chun 等[21]利用最小會遇距離(distance to closest point of approach,DCPA)、最小會遇時(shí)間(time to closest point of approach,TCPA)和船舶領(lǐng)域構(gòu)建船舶碰撞危險(xiǎn)度模型,結(jié)合PPO 算法對特定避碰場景進(jìn)行訓(xùn)練并得到符合《避碰規(guī)則》的避碰策略,但是針對特定場景適用的模型很難推廣到復(fù)雜的會遇局面中。

        綜上,已有研究中較好地解決了遵守《避碰規(guī)則》以及避讓靜態(tài)障礙物和單一目標(biāo)船等問題,但在處理多船避碰時(shí)還存在避讓實(shí)時(shí)性差、決策動作震蕩嚴(yán)重、路徑不平滑、普遍假設(shè)目標(biāo)船保向保速等問題,特別是利用深度強(qiáng)化學(xué)習(xí)算法得到的避碰模型只針對特定會遇場景有效,模型泛化能力較弱[21-23]。針對上述不足以及船舶避碰決策信息的高維性和動作的連續(xù)性等特點(diǎn),結(jié)合《避碰規(guī)則》與良好船藝,利用雙延遲深度確定性策略梯度(twin delayed deep deterministic policy gradient,TD3)算法,提出1 種連續(xù)動作空間下的船舶自主實(shí)時(shí)避碰方法。該方法在隨機(jī)場景下利用神經(jīng)網(wǎng)絡(luò)對船舶避碰算法進(jìn)行迭代訓(xùn)練,提高模型的泛化能力,使其適用性更廣。

        1 基于強(qiáng)化學(xué)習(xí)的船舶自主避碰框架

        為確保船舶在航行過程中能夠安全有效的實(shí)時(shí)避讓具有碰撞危險(xiǎn)的目標(biāo)船舶,提出基于TD3 的船舶自主避碰方法,其流程框架見圖1。

        圖1 船舶自主避碰框架Fig.1 Ship autonomous collision avoidance framework

        首先,依據(jù)本船與目標(biāo)船的實(shí)時(shí)航行信息,判斷2船之間是否存在碰撞危險(xiǎn);其次,確定船舶自主避碰問題的強(qiáng)化學(xué)習(xí)要素,根據(jù)本船實(shí)時(shí)觀測信息設(shè)計(jì)狀態(tài)空間,依據(jù)船舶操縱特性設(shè)計(jì)動作空間,結(jié)合非稀疏化思想,考慮船舶與環(huán)境的交互情況設(shè)計(jì)符合《避碰規(guī)則》與良好船藝的獎勵(lì)函數(shù);然后,在船舶隨機(jī)會遇場景下,結(jié)合強(qiáng)化學(xué)習(xí)要素,構(gòu)成經(jīng)驗(yàn)數(shù)組,利用Adam 優(yōu)化算法更新深度神經(jīng)網(wǎng)絡(luò)參數(shù),訓(xùn)練得到船舶自主避碰網(wǎng)絡(luò)模型;最后,應(yīng)用得到的避碰模型,實(shí)現(xiàn)2船會遇和多船會遇場景下的安全避碰。

        2 面向避碰決策的強(qiáng)化學(xué)習(xí)要素設(shè)計(jì)

        2.1 基于強(qiáng)化學(xué)習(xí)的船舶避碰原理

        強(qiáng)化學(xué)習(xí)以馬爾可夫決策過程(Markov decision process,MDP)作為基礎(chǔ)理論框架,是解決復(fù)雜序貫優(yōu)化決策問題的有效方法[24]。與其他機(jī)器學(xué)習(xí)算法相比,強(qiáng)化學(xué)習(xí)不需要事先給定標(biāo)記過的訓(xùn)練數(shù)據(jù),而是通過智能體(agent)與環(huán)境(environment)的不斷交互試錯(cuò)來更新模型并習(xí)得策略。

        船舶在航行中與環(huán)境發(fā)生交互得到連續(xù)避碰動作的過程可以視為序列決策過程,使用馬爾可夫決策過程可以對其建模,使用強(qiáng)化學(xué)習(xí)算法能夠?qū)ζ淝蠼?。如圖2 所示,船舶作為智能體是強(qiáng)化學(xué)習(xí)的學(xué)習(xí)者和決策者,環(huán)境代表與船舶相互作用的所有事物,在時(shí)刻t,船舶觀測得到環(huán)境的狀態(tài)st,依據(jù)此狀態(tài),船舶根據(jù)習(xí)得策略執(zhí)行動作at,此時(shí),船舶根據(jù)航行環(huán)境轉(zhuǎn)移概率p進(jìn)入下1 個(gè)狀態(tài)st+1,并獲得獎勵(lì)rt+1。通過在環(huán)境中不斷嘗試采樣,不斷更新船舶避碰策略,使其獲得最大累積獎勵(lì)Gt(見式(1)),從而學(xué)習(xí)到最優(yōu)避碰策略π*,見式(2)。

        圖2 強(qiáng)化學(xué)習(xí)基本原理圖Fig.2 Reinforcement learning fundamentals diagram

        式中:γ∈[0,1]為1個(gè)用于確定短期獎勵(lì)優(yōu)先級的折扣因子,對于距離當(dāng)前時(shí)間步越遠(yuǎn)的獎勵(lì),其重要性越低,通過減小γ的值,即可降低遠(yuǎn)期獎勵(lì)影響當(dāng)前決策程度;E表示期望。

        由式(2)可見:最優(yōu)避碰策略是指使累積獎勵(lì)Gt的期望最大化的策略,累積獎勵(lì)的期望一般以狀態(tài)值函數(shù)Vπ(s)和動作值函數(shù)Qπ(s,a)表示。Vπ(s)是對未來獎勵(lì)的預(yù)測,表示在狀態(tài)s下,執(zhí)行動作a會得到的未來獎勵(lì)期望值,見式(3);Qπ(s,a)主要用來評估船舶在當(dāng)前狀態(tài)s下選擇動作a的好壞程度,見式(4)。

        船舶避碰決策問題的強(qiáng)化學(xué)習(xí)基本要素主要為其在航行過程的狀態(tài),由1個(gè)狀態(tài)轉(zhuǎn)換到下1個(gè)狀態(tài)對應(yīng)的動作及執(zhí)行動作后與環(huán)境交互所得到的獎勵(lì)。

        2.2 碰撞危險(xiǎn)判斷

        判定船舶在航行過程中是否存在碰撞危險(xiǎn)[2],首先設(shè)定以dc為半徑的碰撞危險(xiǎn)監(jiān)測范圍圓,避碰模型會忽略監(jiān)測范圍以外的來船,然后設(shè)定船舶之間的安全距離ds,見圖3。碰撞危險(xiǎn)監(jiān)測范圍半徑dc和安全距離ds可根據(jù)海況與會遇場景復(fù)雜程度進(jìn)行適當(dāng)調(diào)整,在寬闊水域,會遇場景簡單等條件下更大,較大的dc與ds意味著船舶會盡早采取更大幅度的避碰行動。

        圖3 碰撞危險(xiǎn)判斷示意圖Fig.3 Collision risk judgment diagram

        當(dāng)來船進(jìn)入監(jiān)測范圍時(shí),依據(jù)本船與目標(biāo)船的和速度延長線是否穿越半徑為ds的圓來判斷是否具有碰撞危險(xiǎn)。如圖3 所示,在t時(shí)刻,從本船位置坐標(biāo)到半徑為ds的船舶安全距離圓繪制2條切線,βt定義為任1 條切線與相對位置矢量(即)之間的角度,見式(5)。

        另外,當(dāng)2船之間距離小于安全距離時(shí),βt無法用式(5)計(jì)算。為此,在訓(xùn)練時(shí),為了能讓神經(jīng)網(wǎng)絡(luò)學(xué)到目標(biāo)船不應(yīng)進(jìn)入本船的安全距離范圍內(nèi)這一策略,在訓(xùn)練過程中當(dāng)本船與目標(biāo)船的距離小于安全距離時(shí)認(rèn)定為存在碰撞危險(xiǎn),設(shè)置βt=π。但是在船舶避碰實(shí)際應(yīng)用中,當(dāng)本船與目標(biāo)船的距離小于安全距離且本船已經(jīng)駛過DCPA點(diǎn)時(shí),船舶間不存在碰撞危險(xiǎn),因此在避碰算法應(yīng)用時(shí)設(shè)置βt=π/2。

        圖3 中αt是相對位置矢量與相對速度矢量(即)之間的夾角。當(dāng)αt<βt時(shí),即表明與目標(biāo)船存在碰撞危險(xiǎn),船舶應(yīng)當(dāng)采取避碰行動。具體來說,當(dāng)船舶間距離大于安全距離時(shí),若的延長線穿過半徑為ds的圓則表明存在碰撞危險(xiǎn)。當(dāng)本船與目標(biāo)船的距離小于安全距離ds時(shí),在算法訓(xùn)練過程認(rèn)為存在碰撞危險(xiǎn),并采取更大幅度的避碰行動。但在實(shí)際應(yīng)用中,還需通過判斷本船是否已經(jīng)駛過DCPA點(diǎn),即αt是否大于π 2 來確定是否存在碰撞危險(xiǎn),若大于π 2 則表明碰撞危險(xiǎn)已經(jīng)消失。

        2.3 狀態(tài)空間設(shè)計(jì)

        式中:di為第i個(gè)區(qū)域內(nèi)的目標(biāo)船距離;hi為第i個(gè)區(qū)域內(nèi)的目標(biāo)船是否與本船存在碰撞危險(xiǎn)。

        式(6)所示的目標(biāo)船狀態(tài)信息指明了目標(biāo)船的相對位置以及2 船是否存在碰撞危險(xiǎn)。但是,為了使避碰模型做出合理決策還需要2船的相對航向和相對速度信息,因此,將連續(xù)4個(gè)時(shí)刻的目標(biāo)船狀態(tài)信息進(jìn)行堆疊,構(gòu)成自主避碰模型的可觀測目標(biāo)船信息狀態(tài)空間,見式(7)。

        另外目標(biāo)船狀態(tài)信息中的2船距離信息在輸入到避碰算法時(shí)標(biāo)準(zhǔn)化到[-1,1],標(biāo)準(zhǔn)化方式見式(9)。

        對距離信息進(jìn)行標(biāo)準(zhǔn)化,一方面能夠使神經(jīng)網(wǎng)絡(luò)訓(xùn)練速度加快,另一方面方便在避碰算法實(shí)際應(yīng)用時(shí)可以根據(jù)航行條件與會遇場景復(fù)雜程度隨時(shí)調(diào)整碰撞危險(xiǎn)監(jiān)測范圍圓半徑dc與安全距離ds的大小。

        2.4 動作空間設(shè)計(jì)

        在船舶航行過程中遇到有碰撞危險(xiǎn)的來船時(shí),按照船員習(xí)慣做法通常采取改變航向的方式而不是改變航速大小以避免發(fā)生碰撞,并且頻繁改變航速大小容易對主機(jī)造成損害。為保證船舶自主避碰算法給出的決策動作,具有良好的可操縱性,選擇航向改變量作為動作空間,即at=Δψ。由于采用的TD3算法適用于連續(xù)動作空間,因此將本船避讓操作所采取的航向改變量設(shè)計(jì)為:Δψ∈[-ψmax,ψmax] ,左轉(zhuǎn)為負(fù),右轉(zhuǎn)為正,ψmax為單次決策可執(zhí)行的最大轉(zhuǎn)向角,不同船舶可根據(jù)自身操縱性進(jìn)行設(shè)置。

        避讓船舶會依據(jù)可觀測的狀態(tài)信息做出避碰決策,當(dāng)本船監(jiān)測范圍內(nèi)存在具有碰撞危險(xiǎn)的船舶時(shí)進(jìn)行轉(zhuǎn)向避讓,直至駛過讓清后繼續(xù)朝目標(biāo)點(diǎn)航行。

        2.5 獎勵(lì)函數(shù)設(shè)計(jì)

        船舶自主避碰算法的收斂性依賴于合理的獎勵(lì)函數(shù)設(shè)置,是船舶能夠?qū)W習(xí)到安全有效的避碰策略的依據(jù)。結(jié)合非稀疏獎勵(lì)思想設(shè)計(jì)獎勵(lì)函數(shù),使本船在無碰撞危險(xiǎn)時(shí)朝向目標(biāo)點(diǎn)航行,當(dāng)本船與來船存在碰撞危險(xiǎn)時(shí)采取符合《避碰規(guī)則》要求與良好船藝的避碰行動,進(jìn)行安全有效的避讓,直至駛過讓清。

        1)駛向目標(biāo)點(diǎn)獎勵(lì)。當(dāng)本船碰撞危險(xiǎn)監(jiān)測范圍內(nèi)不存在需要避讓的船舶時(shí),首要任務(wù)是成功到達(dá)目標(biāo)點(diǎn)。為應(yīng)對稀疏獎勵(lì)問題,采用基于勢能的塑形獎勵(lì),以本船到達(dá)目標(biāo)點(diǎn)為虹吸狀態(tài),當(dāng)接近目標(biāo)點(diǎn)時(shí)給予獎勵(lì),遠(yuǎn)離時(shí)給予懲罰,并且在到達(dá)目標(biāo)點(diǎn)時(shí)給予1個(gè)較大的獎勵(lì),獎勵(lì)函數(shù)見式(10)。

        2)航向保持獎勵(lì)。為了使本船在無碰撞危險(xiǎn)時(shí)能夠快速平滑的到達(dá)目標(biāo)點(diǎn),不發(fā)生偏航,以及存在碰撞危險(xiǎn)時(shí)在避讓完成后能夠快速恢復(fù)航向,設(shè)計(jì)了航向保持獎勵(lì)函數(shù)。當(dāng)本船偏離航向時(shí),對其進(jìn)行懲罰,特別是目標(biāo)點(diǎn)的相對方位角絕對值超過半個(gè)羅經(jīng)點(diǎn)(π 32)時(shí),持續(xù)得到值為rcourse的懲罰。航向保持獎勵(lì)函數(shù)見式(11)。

        3)碰撞危險(xiǎn)獎勵(lì)。當(dāng)本船在航行中依據(jù)狀態(tài)信息判定與來船存在碰撞危險(xiǎn)時(shí),本船應(yīng)采取避讓行動,保持與目標(biāo)船的距離始終大于安全距離ds。為此設(shè)置為當(dāng)目標(biāo)船進(jìn)入碰撞危險(xiǎn)監(jiān)測范圍圓后,判斷2 船之間是否存在碰撞危險(xiǎn),若存在碰撞危險(xiǎn)給予懲罰,若本船與目標(biāo)船發(fā)生碰撞,則獲得1個(gè)較大的懲罰,獎勵(lì)函數(shù)見式(12)。

        4)規(guī)則量化獎勵(lì)。當(dāng)船舶間存在碰撞危險(xiǎn)時(shí),《避碰規(guī)則》明確要求了讓路船與直航船應(yīng)當(dāng)采取的行動。由于本文主要研究開闊水域避碰過程中的讓路行動,因此簡要分析《避碰規(guī)則》第13~16 條中被要求采取行動船舶的避碰策略(見圖4),船舶的當(dāng)前航向用實(shí)線箭頭表示,虛線箭頭則表示讓路船為避讓來船可能采取的轉(zhuǎn)向方向。在對遇局面下,構(gòu)成碰撞危險(xiǎn)的2 船各應(yīng)向右轉(zhuǎn)向,各從他船的左舷駛過;在交叉相遇局面下,《避碰規(guī)則》明確指出如果當(dāng)時(shí)環(huán)境條件許可,讓路船應(yīng)避免橫越他船的前方;在追越局面下,《避碰規(guī)則》沒有明確讓路船的具體行動,但是結(jié)合良好船藝的要求,當(dāng)與被追越船航向會聚時(shí),追越船應(yīng)適當(dāng)?shù)馗淖兒较?,從被追越船的船艉駛過,當(dāng)船舶間沒有發(fā)生航向會聚時(shí),可以根據(jù)本船的計(jì)劃航線采取行動,如果被追越船在計(jì)劃航線左側(cè)時(shí),追越船右轉(zhuǎn)進(jìn)行避讓,反之則左轉(zhuǎn)進(jìn)行避讓。

        圖4 船舶會遇避碰策略Fig.4 Collision avoidance strategy under the situation of ship encounter

        通過分析3 種會遇局面下《避碰規(guī)則》的要求,結(jié)合駕駛員在避碰時(shí)的習(xí)慣做法,在開闊水域?qū)τ龊徒徊婢置嫦逻M(jìn)行右轉(zhuǎn)避讓來避免形成緊迫局面是有效的,而在追越局面下追越船要依靠2 船的航向是否會聚來采取左轉(zhuǎn)或右轉(zhuǎn)的避讓行動。考慮到設(shè)置獎勵(lì)函數(shù)時(shí)難以對《避碰規(guī)則》詳細(xì)量化,因此將右轉(zhuǎn)避讓策略作為神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)目標(biāo),此設(shè)置可以保證在開闊水域滿足對遇、交叉相遇和右轉(zhuǎn)追越的場景。在左轉(zhuǎn)追越場景中,通過取目標(biāo)船和目標(biāo)點(diǎn)相對于本船方位角的相反數(shù),輸出避讓動作的負(fù)值,實(shí)現(xiàn)船舶的左轉(zhuǎn)避讓。

        因此,對構(gòu)成碰撞危險(xiǎn)的目標(biāo)船進(jìn)行右轉(zhuǎn)避讓時(shí)給予獎勵(lì),相反則給予懲罰,同時(shí)設(shè)置規(guī)則量化獎勵(lì)值遠(yuǎn)小于碰撞危險(xiǎn)獎勵(lì)值,保證本船以安全避讓來船為最終目的,獎勵(lì)函數(shù)見式(13)。

        式中:λrule為調(diào)整獎勵(lì)大小的系數(shù);ψmax為單次避讓決策的最大轉(zhuǎn)向角度;訓(xùn)練時(shí)設(shè)置λrule=2。

        綜上所述,為使船舶安全有效的避讓目標(biāo)船并到達(dá)目標(biāo)點(diǎn),設(shè)置了4 個(gè)獎勵(lì)函數(shù),其中Rgoal與Rcourse使本船快速平滑的向目標(biāo)點(diǎn)航行,Rdanger和Rrule使本船周圍存在其他船舶并有碰撞危險(xiǎn)時(shí)能夠快速有效的采取符合《避碰規(guī)則》的安全避讓行動。由于該避碰模型適用于多船避碰,需要考慮在碰撞危險(xiǎn)監(jiān)測范圍內(nèi)避讓多個(gè)目標(biāo)船獲得的獎勵(lì),因此總的獎勵(lì)函數(shù)設(shè)置見式(14)。

        式中:n為處于本船碰撞危險(xiǎn)監(jiān)測范圍內(nèi)的目標(biāo)船數(shù)量;Rdangers為第s艘目標(biāo)船產(chǎn)生的碰撞危險(xiǎn)獎勵(lì);Rrules為第s艘目標(biāo)船產(chǎn)生的規(guī)則量化獎勵(lì)。

        3 基于TD3算法的船舶避碰決策

        基于策略的深度強(qiáng)化學(xué)習(xí)算法可以分為隨機(jī)性策略和確定性策略。隨機(jī)性策略通過概率分布來表示,即在狀態(tài)st下以一定的概率選擇動作at;而確定性策略根據(jù)狀態(tài)st直接選擇動作at,這是1 個(gè)確定性過程,即中間沒有出現(xiàn)概率,不需要進(jìn)行選擇。因此,確定性策略深度強(qiáng)化學(xué)習(xí)算法相比于隨機(jī)性策略,可以在低采樣數(shù)據(jù)下提高計(jì)算效率。

        TD3算法是1種無模型(model-free)確定性策略的深度強(qiáng)化學(xué)習(xí)算法,適用于具有連續(xù)動作空間的決策任務(wù)。TD3主要針對DDPG算法對Q值的過高估計(jì)等問題進(jìn)行改進(jìn),使其訓(xùn)練更穩(wěn)定,性能更強(qiáng)。目前,TD3 已經(jīng)成為支持高維空間連續(xù)型控制任務(wù)的高性能算法,相比DQN、DDPG、PPO、SAC等算法擁有更好的決策效果[25-26]。

        因此,為了保障船舶避碰決策的高效性,針對船舶避碰決策狀態(tài)空間的高維性和動作的連續(xù)性等特點(diǎn),選取TD3 算法構(gòu)建基于深度強(qiáng)化學(xué)習(xí)的船舶避碰決策模型。

        3.1 算法網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)

        TD3 算法使用了Actor-Critic 結(jié)構(gòu),因此避碰模型中包括策略網(wǎng)絡(luò)與價(jià)值網(wǎng)絡(luò),策略網(wǎng)絡(luò)依據(jù)狀態(tài)信息輸出避碰動作,價(jià)值網(wǎng)絡(luò)輸出Q值來評判動作的好壞程度,算法同時(shí)為策略網(wǎng)絡(luò)和價(jià)值網(wǎng)絡(luò)分別搭建了各自的目標(biāo)網(wǎng)絡(luò),克服訓(xùn)練的不穩(wěn)定性。

        結(jié)合船舶自主避碰模型的狀態(tài)空間st=[]。其中:為連續(xù)4個(gè)時(shí)刻觀測到的目標(biāo)船信息,設(shè)計(jì)了含有4個(gè)隱藏層的策略網(wǎng)絡(luò),網(wǎng)絡(luò)結(jié)構(gòu)見圖5。使用前2 層LSTM 網(wǎng)絡(luò)處理連續(xù)4 個(gè)時(shí)刻的目標(biāo)船信息,其中第1 層為一維卷積LSTM 網(wǎng)絡(luò),卷積運(yùn)算包含128 個(gè)通道,卷積核大小為2,步長為1;第2 層LSTM網(wǎng)絡(luò)包含128個(gè)神經(jīng)元;經(jīng)過LSTM網(wǎng)絡(luò)處理后與目標(biāo)點(diǎn)信息合并輸入到2 層的全連接網(wǎng)絡(luò),每個(gè)全連接層包含256 個(gè)神經(jīng)元,并采用ReLU非線性激活函數(shù)。輸出層是包含1個(gè)神經(jīng)元的全連接層,使用雙曲正切函數(shù)作為激活函數(shù),將輸出標(biāo)準(zhǔn)化到[-1,1]之間,與ψmax相乘后輸出動作at。價(jià)值網(wǎng)絡(luò)采用類似的網(wǎng)絡(luò)結(jié)構(gòu),與策略網(wǎng)絡(luò)的主要區(qū)別在于第1個(gè)全連接層的輸入要增加當(dāng)前時(shí)刻的動作at,并且輸出層不使用任何激活函數(shù),直接得到Q值。價(jià)值網(wǎng)絡(luò)和策略網(wǎng)絡(luò)均采用Adam優(yōu)化算法訓(xùn)練。

        圖5 船舶自主避碰策略網(wǎng)絡(luò)結(jié)構(gòu)Fig.5 Actor network structure of ship autonomous collision avoidance

        3.2 算法網(wǎng)絡(luò)更新

        為了緩解價(jià)值網(wǎng)絡(luò)對Q值的過高估計(jì),TD3 算法同時(shí)訓(xùn)練2 個(gè)完全相同的價(jià)值網(wǎng)絡(luò),每次計(jì)算目標(biāo)Q值時(shí)總是選擇其中較小的值,降低高估誤差。同時(shí),為了降低目標(biāo)Q值計(jì)算的方差,并緩解確定性策略對動作值函數(shù)局部“窄峰”的過擬合傾向,在船舶觀測狀態(tài)sj+1下目標(biāo)策略輸出的基礎(chǔ)上添加1個(gè)隨機(jī)高斯噪聲η?,這種方式被稱為目標(biāo)策略平滑。綜上,目標(biāo)Q值與價(jià)值網(wǎng)絡(luò)的損失函數(shù)見式(15)~(16),其中損失函數(shù)使用了平滑平均絕對(huber)誤差,見式(17)。

        式中:yj為第j個(gè)訓(xùn)練樣本的目標(biāo)Q值;lQ為價(jià)值網(wǎng)絡(luò)的損失函數(shù);rj第j個(gè)訓(xùn)練樣本當(dāng)前時(shí)刻的獎勵(lì)值;sj為第j個(gè)訓(xùn)練樣本當(dāng)前時(shí)刻的狀態(tài)信息;sj+1為第j個(gè)訓(xùn)練樣本下1個(gè)時(shí)刻的狀態(tài)信息;aj為第j個(gè)訓(xùn)練樣本當(dāng)前時(shí)刻船舶采取的避碰動作;c為策略平滑噪聲的截?cái)噙吔缰担沪萯為第i個(gè)價(jià)值網(wǎng)絡(luò)的參數(shù);θ′i與?′分別為第i個(gè)目標(biāo)價(jià)值網(wǎng)絡(luò)參數(shù)和目標(biāo)策略網(wǎng)絡(luò)參數(shù)。

        此外,為了減少目標(biāo)值計(jì)算的方差對策略學(xué)習(xí)的負(fù)面影響,算法降低了策略網(wǎng)絡(luò)參數(shù)?與目標(biāo)網(wǎng)絡(luò)參數(shù)?′和θ′i的更新頻率,以保證價(jià)值網(wǎng)絡(luò)經(jīng)過充分學(xué)習(xí)降低方差之后再影響策略網(wǎng)絡(luò)和目標(biāo)網(wǎng)絡(luò),即每更新m次價(jià)值網(wǎng)絡(luò)再更新1 次策略網(wǎng)絡(luò),梯度??J默認(rèn)來自價(jià)值網(wǎng)絡(luò)中的Qθ1,見式(18),并采用軟更新方式更新目標(biāo)網(wǎng)絡(luò),見式(19)。

        式中:ω為系數(shù),用來控制目標(biāo)網(wǎng)絡(luò)參數(shù)的更新速度。

        3.3 算法流程

        船舶自主避碰策略的學(xué)習(xí)過程是TD3算法中深度神經(jīng)網(wǎng)絡(luò)的收斂過程,其中神經(jīng)網(wǎng)絡(luò)的輸入為本船在航行過程中觀測到的實(shí)時(shí)狀態(tài)信息,策略網(wǎng)絡(luò)依據(jù)價(jià)值網(wǎng)絡(luò)對策略好壞的評判來更新網(wǎng)絡(luò)參數(shù),價(jià)值網(wǎng)絡(luò)通過最小化誤差損失函數(shù)來更新網(wǎng)絡(luò)參數(shù)。另外TD3 算法使用了經(jīng)驗(yàn)回放技術(shù)去除樣本間的相關(guān)性和依賴性,同時(shí)通過隨機(jī)場景對模型進(jìn)行訓(xùn)練以增強(qiáng)泛化能力,船舶自主避碰算法流程見圖6。

        圖6 船舶自主避碰算法訓(xùn)練流程Fig.6 Training process of ship autonomous collision avoidance algorithm

        4 船舶自主避碰算法訓(xùn)練與對比仿真驗(yàn)證

        為了驗(yàn)證避碰算法的效果,首先介紹船舶避碰訓(xùn)練環(huán)境搭建與模型參數(shù)設(shè)置;然后將訓(xùn)練好的船舶避碰模型應(yīng)用于常見的2 船會遇場景中,分析船舶的避碰效果;最后船舶在多船會遇場景下進(jìn)行避碰實(shí)驗(yàn),展現(xiàn)模型的良好性能。

        4.1 實(shí)驗(yàn)設(shè)置

        基于深度強(qiáng)化學(xué)習(xí)環(huán)境OpenAI Gym,在Windows 10 平臺上搭建船舶自主避碰決策仿真實(shí)驗(yàn)環(huán)境,硬件環(huán)境和軟件環(huán)境具體信息見表1。

        表1 實(shí)驗(yàn)環(huán)境信息Tab.1 Experimental environment conditions

        針對船舶自主避碰的強(qiáng)化學(xué)習(xí)任務(wù),設(shè)計(jì)了1個(gè)12 n mile×12 n mile的正方形作為航行訓(xùn)練區(qū)域,設(shè)置本船起點(diǎn)(0,0),目標(biāo)點(diǎn)(10,10),航速12 n mile/h,dc=4 n mile,ds=4/3 n mile,本船膨化圓半徑τ=0.25 n mile,依據(jù)船舶操縱特性,設(shè)置最大轉(zhuǎn)向角ψmax=5°,決策時(shí)間間隔為15 s[2]。為了讓訓(xùn)練得到的船舶避碰算法普遍適用于各種會遇場景,在訓(xùn)練區(qū)域中隨機(jī)生成x艘船舶(x∈[1,7]),并且目標(biāo)船的位置、航向和航速均隨機(jī)設(shè)置,模擬船舶遇到各種會遇場景,并對避碰失敗場景著重訓(xùn)練。當(dāng)本船到達(dá)目標(biāo)點(diǎn)或者發(fā)生碰撞則對場景重置并開始下1回合訓(xùn)練。

        為了降低模型的訓(xùn)練難度,實(shí)驗(yàn)中采用跳幀(frame skipping)操作,即相鄰2 次決策之間的f幀都重復(fù)上1 次的動作,綜合權(quán)衡避碰性能與訓(xùn)練難度,確定f=2。同時(shí),為了在訓(xùn)練時(shí)提高模型的探索能力,采用輸出動作加入高斯噪聲η~N(0,σ)的方法來實(shí)現(xiàn),并在正式訓(xùn)練之前讓本船在環(huán)境中進(jìn)行隨機(jī)探索。為了使避碰算法能夠快速平穩(wěn)的收斂,在訓(xùn)練時(shí)設(shè)置批量采樣大小和更新次數(shù)隨著迭代次數(shù)增加而增大。TD3算法的相關(guān)訓(xùn)練參數(shù)設(shè)置見表2。

        表2 船舶避碰算法訓(xùn)練參數(shù)Tab.2 Training parameters of ship collision avoidance algorithm

        基于上述實(shí)驗(yàn)環(huán)境對船舶自主避碰算法進(jìn)行了150 萬次迭代訓(xùn)練,結(jié)果見圖7,累積獎勵(lì)隨著算法不斷迭代訓(xùn)練慢慢增大,在迭代122 萬次后趨于平穩(wěn),此時(shí)累積獎勵(lì)值大小在91.867上下波動,波動范圍在[-16.293,18.169]之間,收斂效果較好。

        圖7 累積獎勵(lì)變化曲線Fig.7 Total reward curve

        4.2 2船避讓對比仿真驗(yàn)證

        為驗(yàn)證提出的船舶自主避碰算法能按照《避碰規(guī)則》要求和良好船藝在2 船會遇局面下安全有效的避讓目標(biāo)船,分別對《避碰規(guī)則》中定義的3 種會遇局面進(jìn)行仿真驗(yàn)證,并與改進(jìn)人工勢場[2](artificial potential field,APF)避碰算法進(jìn)行比較,均設(shè)置本船(own ship,OS)起點(diǎn)坐標(biāo)(0,0),目標(biāo)點(diǎn)(goal)坐標(biāo)(10,10),船速12 n mile/h,航向45°,每次最大轉(zhuǎn)向角度ψmax=5°,船舶間安全距離ds=2 n mile。特別的,改進(jìn)APF 算法中的參數(shù)設(shè)置為Ros=0.5 n mile,Rts=0.5 n mile,dsafe=1 n mile,這樣設(shè)置可以保證2種避碰算法的安全距離都為2 n mile,其他參數(shù)均采用文獻(xiàn)[2]的原始設(shè)置。

        1)追越局面。追越局面下設(shè)置目標(biāo)船(target ship,TS)起始位置(3.2,3.4),航速5 n mile/h,航向45°,在2種避碰算法中,均設(shè)置本船的碰撞危險(xiǎn)監(jiān)測范圍半徑dc=4 n mile。由2船相對位置可知,目標(biāo)船位于本船船首方向,且在本船與目標(biāo)點(diǎn)連線的左側(cè),舷角-1.736°,2船航向不發(fā)生會聚,結(jié)合《避碰規(guī)則》要求與良好船藝,本船進(jìn)行右轉(zhuǎn)避讓。2種避碰算法仿真實(shí)驗(yàn)的船舶航行軌跡見圖8,本船避碰過程中航向變化量見圖9,圖10繪制了2船距離隨時(shí)間的變化曲線。

        圖8 追越局面船舶軌跡圖Fig.8 Ship trajectory diagram of overtaking situation

        圖9 追越局面本船航向變化曲線Fig.9 Course change curve of own ship in overtaking situation

        圖10 追越局面船舶間距離變化曲線Fig.10 Curve of distance between ships in overtaking situation

        由追越局面仿真結(jié)果可知,在t=360 s,距離目標(biāo)船3.969 n mile時(shí),本船監(jiān)測到與來船存在碰撞危險(xiǎn),并按照《避碰規(guī)則》要求和船員良好船藝迅速右轉(zhuǎn)40°避讓來船;隨后為避免過快恢復(fù)航向而與目標(biāo)船再次構(gòu)成碰撞危險(xiǎn),本船開始緩慢向左轉(zhuǎn)向,并在t=2 700 s,航向恢復(fù)到朝向目標(biāo)點(diǎn);在t=3 735 s,2 船之間的距離達(dá)到最小值2.022 n mile,此時(shí)本船已經(jīng)從目標(biāo)船的艉部駛過;在t=4 680 s本船達(dá)到目標(biāo)點(diǎn)。

        在改進(jìn)APF 避碰算法中,本船在t=345 s 發(fā)現(xiàn)目標(biāo)船,并迅速右轉(zhuǎn)15°,之后本船航向在56°~61°之間震蕩,從t=795 s開始本船航向在57°~62°之間震蕩,在120 s之后,航向又在60°~65°之間震蕩;在t=1 935 s,本船開始恢復(fù)航向;在t=2 760 s,本船與目標(biāo)船達(dá)到最近距離1.861 n mile,目標(biāo)船進(jìn)入船舶安全距離圓內(nèi),因此本船迅速右轉(zhuǎn)16°使目標(biāo)船駛出安全距離范圍,最后恢復(fù)航向并到達(dá)目標(biāo)點(diǎn)。

        同時(shí),為了驗(yàn)證訓(xùn)練得到的避碰模型對于左轉(zhuǎn)場景下的適用性,設(shè)置目標(biāo)船起始位置(3.6,3.2),航速4 n mile/h,航向45°,本船dc=4 n mile。此時(shí)目標(biāo)船位于本船船首方向,舷角3.366°,在本船與目標(biāo)點(diǎn)連線的右側(cè),2 船航向未發(fā)生會聚。圖11 分別為追越局面左轉(zhuǎn)場景下2 種避碰算法的船舶軌跡圖、船舶間距離隨時(shí)間變化圖和本船航向變化圖。

        圖11 追越局面左轉(zhuǎn)場景仿真結(jié)果Fig.11 Simulation results of left turn scenario in overtaking situation

        在船舶避碰過程中,由于改進(jìn)APF 避碰算法的輸入并不是全局狀態(tài)信息,只在與目標(biāo)船構(gòu)成碰撞危險(xiǎn)時(shí)才會輸入來船的狀態(tài)信息并形成斥力,因此本船的航向改變量小且震蕩嚴(yán)重,而且由于目標(biāo)點(diǎn)引力與目標(biāo)船斥力的動態(tài)變化,導(dǎo)致在引力大于斥力時(shí)容易使目標(biāo)船進(jìn)入本船的安全距離范圍。與改進(jìn)APF 算法相比,基于TD3 的船舶避碰算法在追越局面下航向改變幅度大,變化快速平穩(wěn),震蕩較小,避碰路徑更加平滑,并且在避讓過程中2 船之間的距離始終大于安全距離2 n mile。

        2)對遇局面。對遇局面下設(shè)置目標(biāo)船(TS)初始位置(8.5,8.5),航速10 n mile/h,航向225°,2種避碰算法的本船dc=6 n mile。依據(jù)《避碰規(guī)則》,構(gòu)成對遇局面的2 船應(yīng)各自右轉(zhuǎn)從對方船的左舷駛過,為了達(dá)到共同行動的目的,目標(biāo)船也使用本文提出的基于TD3的避碰算法。2種避碰算法的仿真結(jié)果見圖12~15:圖12 為船舶不同時(shí)刻的航行軌跡圖,圖13為本船的航向變化信息,圖14為目標(biāo)船的航向變化信息,圖15為2船間距離隨時(shí)間的變化曲線。

        圖12 對遇局面船舶軌跡圖Fig.12 Ship trajectory diagram of head-on situation

        圖13 對遇局面本船航向變化曲線Fig.13 Course change curve of own ship in head-on situation

        圖14 對遇局面目標(biāo)船航向變化曲線Fig.14 Course change curve of target ship in head-on situation

        圖15 對遇局面船舶間距離變化曲線Fig.15 Curve of distance between ships in head-on situation

        由仿真結(jié)果可知,在t=990 s,本船與目標(biāo)船之間的距離達(dá)到5.971 n mile,形成對遇局面,依據(jù)本文提出的避碰算法,本船迅速右轉(zhuǎn)38.5°以避讓來船,此時(shí)目標(biāo)船也向右轉(zhuǎn)向37°進(jìn)行避讓;隨后,本船開始緩慢恢復(fù)航向,并在t= 1 395 s航向恢復(fù)至朝向目標(biāo)點(diǎn),135 s之后目標(biāo)船航向恢復(fù);在t= 2 160 s本船與目標(biāo)船左舷對左舷以最小距離2.345 n mile 安全通過;在t= 4 365 s 本船到達(dá)目標(biāo)點(diǎn),整個(gè)避讓過程中本船采取的行動安全有效,2船之間距離始終大于2 n mile。

        由改進(jìn)APF 避碰算法的船舶避碰仿真結(jié)果可知,本船在t=990 s發(fā)現(xiàn)來船并右轉(zhuǎn)10.8°,之后本船航向又減少至49°附近;從t=1 275 s開始,本船航向邊震蕩邊增大,并在585 s后達(dá)到最大值80°,隨后航向開始恢復(fù);在t=2 055 s,本船與目標(biāo)船的距離達(dá)到最小值1.871 n mile,105 s 后本船航向突然增加30°,產(chǎn)生1個(gè)較大的波動,波動過后本船朝向目標(biāo)點(diǎn)航行,并于t=4 245 s到達(dá)目標(biāo)點(diǎn)。

        由對比結(jié)果可知,改進(jìn)APF 避碰算法在對遇局面下比本文算法提前到達(dá)目標(biāo)點(diǎn),但是船舶間不能滿足設(shè)定的安全距離,且航向變化幅度小,由于在判定目標(biāo)船無危險(xiǎn)后斥力消失而導(dǎo)致本船過快恢復(fù)航向又構(gòu)成危險(xiǎn)的情況,使本船航向震蕩較多。相反,本文提出的避碰算法在對遇局面下航向變化幅度大且平穩(wěn),并滿足安全距離要求。

        3)交叉相遇局面。交叉相遇局面下設(shè)置目標(biāo)船(TS)初始位置(9,0),航速12 n mile/h,航向315°,本船dc=6 n mile。2種避碰算法仿真的船舶航行軌跡見圖16,圖17為本船航向隨時(shí)間的變化曲線,2船距離的變化曲線見圖18。

        圖16 交叉相遇局面船舶軌跡圖Fig.16 Ship trajectory diagram of crossing situation

        圖17 交叉相遇局面本船航向變化曲線Fig.17 Course change curve of own ship in crossing situation

        圖18 交叉相遇局面船舶間距離變化曲線Fig.18 Curve of distance between ships in crossing situation

        由TD3 避碰算法的仿真結(jié)果可知,本船在t=720 s 發(fā)現(xiàn)與來船形成交叉相遇局面,2 船相距5.817 n mile,本船作為讓路船在《避碰規(guī)則》的約束下迅速向右轉(zhuǎn)向55°,在t=990 s,本船開始緩慢恢復(fù)航向,于t= 1 620 s,2 船間距離達(dá)到最小值2.237 n mile;在t=1 980 s,本船航向恢復(fù)到朝向目標(biāo)點(diǎn),之后本船從目標(biāo)船的艉部駛過,實(shí)現(xiàn)對來船的安全避讓;在t=4 590 s,本船到達(dá)目標(biāo)點(diǎn),整個(gè)避讓過程2船間的距離始終大于安全距離2 n mile。

        由改進(jìn)APF 避碰算法的仿真結(jié)果可知,本船在t=645 s發(fā)現(xiàn)來船,此時(shí)2船相距5.959 n mile,30 s后本船以相對較慢的速度向右轉(zhuǎn)向58°,轉(zhuǎn)向過程中震蕩嚴(yán)重;在t= 1 560 s,2 船之間距離達(dá)到最小值1.999 n mile,隨后本船開始恢復(fù)航向;在t=4 500 s,本船到達(dá)目標(biāo)點(diǎn)。

        在交叉相遇局面下,改進(jìn)APF 避碰算法比追越和對遇局面效果好,能夠大幅度的避讓來船,但是航向變化速度相比本文算法慢,且震蕩情況依然存在。本文避碰算法避讓行動迅速、改向幅度大,路徑相對更加平滑。

        綜上,通過在船舶追越、對遇和交叉相遇局面下的避碰仿真實(shí)驗(yàn)結(jié)果可以得出,提出的避碰算法能夠使本船在與目標(biāo)船舶構(gòu)成碰撞危險(xiǎn)時(shí)做出安全有效的避碰決策。由于本文避碰算法的輸入為全局的狀態(tài)信息,即使與目標(biāo)船不存在碰撞危險(xiǎn)時(shí)也會關(guān)注來船的實(shí)時(shí)動態(tài),因此相比于改進(jìn)APF算法,本文算法的航向變化快速平穩(wěn),轉(zhuǎn)向幅度大,避碰路徑更加平滑,并且與目標(biāo)船的距離始終大于安全距離。

        4.3 多船避讓對比仿真驗(yàn)證

        在船舶實(shí)際航行過程中,會遇到與多艘船舶構(gòu)成碰撞危險(xiǎn)的局面,相比2船避讓,多船避讓局面更為復(fù)雜。為驗(yàn)證提出的避碰算法在復(fù)雜會遇場景下仍具有良好性能,與改進(jìn)APF 避碰算法進(jìn)一步進(jìn)行多船避讓仿真對比實(shí)驗(yàn)。

        1)多船避讓仿真實(shí)驗(yàn)。在避讓多船的仿真實(shí)驗(yàn)中,本船的初始航行參數(shù)不變。在本文算法中設(shè)置本船碰撞危險(xiǎn)監(jiān)測圓半徑dc=4 n mile,安全距離ds=4/3 n mile。在改進(jìn)APF 避碰算法中依據(jù)文獻(xiàn)[2],將本船的碰撞危險(xiǎn)檢測距離設(shè)置為6 n mile,Ros=0.5 n mile,Rts=1/3 n mile,dsafe=0.5 n mile,這樣設(shè)置可以保證2 種避碰算法的安全距離都為4 3 n mile,其他設(shè)置均來自文獻(xiàn)[2],另外2 種算法中本船每次轉(zhuǎn)向的最大幅度均設(shè)置為5°。目標(biāo)船的初始設(shè)置見表3,為了驗(yàn)證2 種算法的可靠性,將引入目標(biāo)船的不協(xié)調(diào)行動,具體為:在t=1 035 s,目標(biāo)船左轉(zhuǎn)30°干擾本船的行動。

        表3 多船會遇場景目標(biāo)船初始設(shè)置Tab.3 Initial setting of target ship in multi-ship encounter scenario

        多船會遇仿真實(shí)驗(yàn)中船舶航行軌跡見圖19,圖20 為航行過程中本船航向的變化曲線,2 種算法下本船與目標(biāo)船距離隨時(shí)間的變化曲線見圖21~22。

        圖19 多船會遇場景船舶軌跡圖Fig.19 Ship trajectory diagram of multi-ships encounter scenario

        圖20 多船會遇場景本船航向變化曲線Fig.20 Course change curve of own ship in multi-ships encounter scenario

        圖21 TD3避碰算法下本船與目標(biāo)船距離變化曲線Fig.21 Curve of distance between own ship and target ships under TD3 collision avoidance algorithm

        在圖19(a)中,最初本船朝向目標(biāo)點(diǎn)航行,在t=675 s,本船發(fā)現(xiàn)與目標(biāo)船1相距3.816 n mile,形成交叉相遇局面,本船依據(jù)《避碰規(guī)則》迅速向右轉(zhuǎn)向51°,避免橫越目標(biāo)船1 的前方;在t=990 s,本船發(fā)現(xiàn)目標(biāo)船2 且相距3.925 n mile,經(jīng)過計(jì)算,2 船之間無碰撞危險(xiǎn),本船未做出反應(yīng)。

        圖19(b)中,在t=1 035 s,目標(biāo)船1 與目標(biāo)船2突然左轉(zhuǎn)30°,這導(dǎo)致本船與2艘目標(biāo)船之間重新構(gòu)成碰撞危險(xiǎn),本船迅速右轉(zhuǎn)33°同時(shí)避讓2船;在t=1 215 s,本船與目標(biāo)船1達(dá)到最近距離1.355 n mile,駛過讓清目標(biāo)船1。

        圖19(c)中,從t=1 755 s開始,本船逐漸恢復(fù)航向;在t = 2 015 s,本船與目標(biāo)船2 達(dá)到最近距離1.637 n mile,駛過讓清目標(biāo)船2,180 s后本船航向恢復(fù)至朝向目標(biāo)點(diǎn);在t=2 340 s本船發(fā)現(xiàn)目標(biāo)船3,距離達(dá)到3.906 n mile,由于目標(biāo)船3 未按照《避碰規(guī)則》進(jìn)行右轉(zhuǎn)避讓,本船迅速右轉(zhuǎn)44°以避免緊迫局面。

        在圖19(d)中,本船與目標(biāo)船舶3 在t=3 420 s達(dá)到最小距離1.376 mile;180 s 后,目標(biāo)船4 與本船距離達(dá)到3.953 n mile 且未進(jìn)行避讓,本船右轉(zhuǎn)35°以避免緊迫局面發(fā)生;隨后本船開始恢復(fù)航向,并在t=5 670 s到達(dá)目標(biāo)點(diǎn)。

        由改進(jìn)APF 避碰算法的仿真結(jié)果可知,本船在與目標(biāo)船1 相距5.939 n mile 時(shí),開始緩慢右轉(zhuǎn)進(jìn)行避讓,并在t=645 s航向發(fā)生震蕩,此時(shí)本船與目標(biāo)船2的距離達(dá)到5.973 n mile,但并不存在碰撞危險(xiǎn);在t=1 035 s,由于目標(biāo)船1 和目標(biāo)船2 的不協(xié)調(diào)行動,本船繼續(xù)右轉(zhuǎn)40°避讓2船,隨后開始恢復(fù)航向,并在t= 1 245 s 與目標(biāo)船1 達(dá)到最小距離1.209 n mile,570 s后與目標(biāo)船2達(dá)到最小距離1.045 n mile;在航向恢復(fù)過程中,又與目標(biāo)船3構(gòu)成碰撞危險(xiǎn),航向緩慢變化至64°,并在t=3 045 s 與目標(biāo)船3 達(dá)到最小距離1.131 n mile;在t=3 060 s,本船迅速右轉(zhuǎn)39°避讓目標(biāo)船4,1 305 s 后與目標(biāo)船4 達(dá)到最小距離1.186 n mile;最后在t=4 905 s本船到達(dá)目標(biāo)點(diǎn)。

        由圖20可知:改進(jìn)APF算法在多船會遇場景下依然有航向震蕩的情況,這是由于APF 算法不能從全局去認(rèn)識避碰過程,只能依靠實(shí)時(shí)的碰撞危險(xiǎn)判斷來指導(dǎo)航向變化。由于引力與斥力的不協(xié)調(diào)動態(tài)變化,導(dǎo)致在某些會遇局面下避碰行動緩慢,甚至使來船不能保持在安全距離之外。相比于改進(jìn)APF避碰算法,使用本文提出的基于TD3的避碰算法,在本船避讓過程中航向變化快速平穩(wěn),波動較小,避碰路徑光滑。由圖21可知:在整個(gè)避讓過程中,本船與各目標(biāo)船之間的距離始終保持在安全距離4 3 n mile之外,表明提出的避碰算法在多船會遇場景下能夠安全有效的指導(dǎo)船舶進(jìn)行避讓。

        2)避碰成功率對比實(shí)驗(yàn)。為了進(jìn)一步驗(yàn)證本文提出的避碰算法的性能,在多船會遇場景下,對船舶避碰成功率和平均避碰路徑長度這2個(gè)指標(biāo)與改進(jìn)APF避碰算法進(jìn)行比較。2種避碰算法的初始設(shè)置與多船避讓仿真實(shí)驗(yàn)一致。

        在實(shí)驗(yàn)中,首先生成1 張12 n mile×12 n mile 大小的實(shí)驗(yàn)地圖,并在地圖中隨機(jī)添加多艘目標(biāo)船,目標(biāo)船初始位置的x、y坐標(biāo)均從0~12 隨機(jī)選取,為了讓實(shí)驗(yàn)更真實(shí),每生成1艘目標(biāo)船,就判斷與本船的距離是否大于5 n mile,若不是則刪除該目標(biāo)船信息并重新生成。目標(biāo)船的航向通過生成各自的目標(biāo)點(diǎn)而得到,但是目標(biāo)船不會因?yàn)榈竭_(dá)目標(biāo)點(diǎn)而停船,目標(biāo)點(diǎn)位置的x,y坐標(biāo)從0~10 隨機(jī)選取,目的是讓目標(biāo)船的航向更多的指向本船與本船目標(biāo)點(diǎn)之間區(qū)域。目標(biāo)船的航速大小在3~17 n mile/h 之間隨機(jī)生成。另外,設(shè)置本船起點(diǎn)坐標(biāo)(0,0),目標(biāo)點(diǎn)坐標(biāo)(10,10),船速12 n mile/h,航向45°。在生成完1張實(shí)驗(yàn)地圖之后,本文避碰算法與改進(jìn)APF 算法在實(shí)驗(yàn)地圖中自動進(jìn)行避碰,設(shè)定本船與目標(biāo)船的距離小于0.25 n mile或碰撞路徑長度超過30 n mile為失敗,避碰結(jié)束后保留是否成功與路徑長度數(shù)據(jù)。通過此方式進(jìn)行1 000 次避碰實(shí)驗(yàn),即生成1 000 張實(shí)驗(yàn)地圖分別對2種算法進(jìn)行驗(yàn)證。

        為了提高實(shí)驗(yàn)結(jié)果的可信度,在2~4,5~7,8~10 艘目標(biāo)船的情況下分別進(jìn)行3 次上述實(shí)驗(yàn)過程,總共進(jìn)行了9 000張實(shí)驗(yàn)地圖的避碰規(guī)劃,取指標(biāo)平均值并記錄,實(shí)驗(yàn)結(jié)果見表4。

        表4 對比實(shí)驗(yàn)結(jié)果數(shù)據(jù)表Tab.4 Comparison test results data table

        由表4 可見:提出的TD3 避碰算法的船舶避碰成功率高,特別是避碰2~4 艘目標(biāo)船時(shí)成功率達(dá)到了99.233%,即使在8~10 艘目標(biāo)船的情況下,依舊有94.166%的成功率。而改進(jìn)APF 避碰算法在3 種實(shí)驗(yàn)場景中均比本文算法成功率低,特別是在目標(biāo)船增加到4 艘以上時(shí),改進(jìn)APF 算法的避碰性能下降嚴(yán)重。在避碰路徑對比上,本文算法的平均路徑長度要比改進(jìn)APF 算法更長,這是由于本文避碰算法的輸入為全局的狀態(tài)信息,即使在本船沒有碰撞危險(xiǎn)時(shí),也會關(guān)注目標(biāo)船的動態(tài),避免過快恢復(fù)航向又造成碰撞危險(xiǎn)的產(chǎn)生,所以TD3 避碰算法的路徑更加安全可靠,路徑也會更長。

        5 結(jié)束語

        針對船舶自主避碰問題,基于TD3 算法提出了1種《避碰規(guī)則》約束下的、符合良好船藝的、能自主學(xué)習(xí)適應(yīng)環(huán)境特點(diǎn)的船舶自主避碰方法。

        1)提出的基于TD3 的避碰方法采用碰撞危險(xiǎn)監(jiān)測范圍內(nèi)的全局狀態(tài)信息作為輸入,保證輸入神經(jīng)網(wǎng)絡(luò)中航行信息的統(tǒng)一性和完整性,并使用連續(xù)動作空間供算法選取避碰決策動作,具有避碰決策航向變化快、幅度大與路徑平滑的特點(diǎn)。

        2)避碰算法通過隨機(jī)場景訓(xùn)練并融合了LSTM網(wǎng)絡(luò)提取航行信息特征,提高了模型的泛化能力,適用于對遇、追越、交叉相遇以及多船會遇場景。

        3)考慮《避碰規(guī)則》與良好船藝設(shè)計(jì)獎勵(lì)函數(shù),實(shí)現(xiàn)了船舶安全有效的避讓目標(biāo)船。避碰算法在復(fù)雜會遇場景下有較高的避碰成功率。

        4)在訓(xùn)練中通過跳幀、隨機(jī)探索、批量大小和迭代更新次數(shù)動態(tài)增大等方式加快神經(jīng)網(wǎng)絡(luò)的訓(xùn)練速度,提升算法穩(wěn)定收斂的速度。

        但是,在提出的避碰算法中船舶是作為單智能體進(jìn)行避碰決策的,暫未考慮船舶間實(shí)時(shí)交互的協(xié)同避讓,今后可針對多船協(xié)同避讓開展進(jìn)一步研究;《避碰規(guī)則》的適用場景為開闊水域,針對特定的受限水域應(yīng)對船舶《避碰規(guī)則》進(jìn)行改進(jìn)和修正,才可以保障模型的適用性;在后續(xù)研究中增加船舶轉(zhuǎn)向耦合變速的策略以及會遇局面的自動識別方法可以進(jìn)一步提升模型的性能。

        猜你喜歡
        本船航向船舶
        《船舶》2022 年度征訂啟事
        船舶(2021年4期)2021-09-07 17:32:22
        知坐標(biāo),明航向
        不同會遇態(tài)勢下目標(biāo)船行為模擬及其特征分析
        基于虛擬力的船舶導(dǎo)航建模方法*
        船舶!請加速
        BOG壓縮機(jī)在小型LNG船舶上的應(yīng)用
        考慮幾何限制的航向道模式設(shè)計(jì)
        船舶壓載水管理系統(tǒng)
        中國船檢(2017年3期)2017-05-18 11:33:09
        基于干擾觀測器的船舶系統(tǒng)航向Backstepping 控制
        電子制作(2017年24期)2017-02-02 07:14:16
        基于速度障礙的多船自動避碰控制方法
        中國航海(2015年3期)2015-11-29 01:02:53
        欧美性色黄大片手机版| 国内人妖一区二区在线播放| 久久成人精品国产免费网站| 精品人妻一区二区三区浪人在线| 日本最大色倩网站www| 国产亚洲日韩欧美久久一区二区| 亚洲精品中文字幕乱码二区| 精品女厕偷拍视频一区二区| 国产精品多人p群无码| 丰满人妻熟妇乱又伦精品视| 西西人体大胆视频无码| 少妇精品揄拍高潮少妇桃花岛| 真实国产乱子伦精品视频| 国产极品久久久久极品| 无码伊人久久大蕉中文无码| 中文资源在线一区二区三区av| 欧美69久成人做爰视频| 亚洲av成人精品日韩一区| 久久久精品人妻一区二区三区日本 | 欧美喷潮久久久xxxxx| 99RE6在线观看国产精品| 青青草中文字幕在线播放| 亚洲av日韩综合一区二区三区| 黑人巨大videos极度另类| 米奇亚洲国产精品思久久| 日本a级免费大片网站| 日韩视频中文字幕精品偷拍| 免费jjzz在线播放国产| 国产三级精品三级在线| 亚洲一区二区女搞男| 福利视频一二三在线观看| 亚洲熟妇av日韩熟妇av| 中文字幕乱码亚洲在线| 少妇性饥渴无码a区免费| 国产白丝网站精品污在线入口| 亚洲一区二区三区精彩视频| 女人18毛片a级毛片| 美女扒开内裤让男生桶| 亚洲日本在线中文字幕| 免费的日本一区二区三区视频| 国产亚洲精品久久久久久|