曾毓凌 郝宇清 于 穎 王青云
(北京航空航天大學(xué)航空科學(xué)與工程學(xué)院,北京 100191)
21 世紀(jì)以來,隨著半導(dǎo)體技術(shù)、車輛技術(shù)、控制科學(xué)、人工智能和通信技術(shù)的不斷發(fā)展,無人機和無人車等新穎的運載設(shè)備逐漸從最初的創(chuàng)意設(shè)計變成了我們?nèi)粘I钪械囊徊糠?隨著工業(yè)發(fā)展中不斷升級的制造需求和對更先進的生產(chǎn)力需求,無人車和無人機等工具也從一個傳統(tǒng)的運載體向智能體的方向發(fā)展,其智能化程度正在飛快發(fā)展.然而,由于現(xiàn)代工程的復(fù)雜性和多樣性,許多任務(wù)很難通過單個智能體完成,如大型設(shè)備的搬運和組裝、大規(guī)模搜索與識別、復(fù)雜礦洞的數(shù)字建模,以及多樣性的軍事作戰(zhàn)任務(wù)等.在許多這樣的場景中,多智能體的協(xié)作往往能比進行單一智能體的功能擴充帶來更好的效果,例如節(jié)省復(fù)雜系統(tǒng)的研發(fā)成本,減少對硬件和軟件復(fù)雜性的要求[1].一個典型的例子就是在空戰(zhàn)中不同種類飛機的配合,其協(xié)同作戰(zhàn)效率和能力遠(yuǎn)大于將所有功能集成于單一飛機[2].
關(guān)于多智能體協(xié)同控制問題,目前主要的研究方向有一致性控制[3-4]、編隊控制[5]和編隊-合圍控制[6]等.多智能體協(xié)同控制的控制器設(shè)計方法目前主要有領(lǐng)導(dǎo)-跟隨法[7-8]、虛擬結(jié)構(gòu)法[9]、基于行為法[10]及基于一致性理論的方法[11-12]等.但現(xiàn)有的控制器設(shè)計方法大多是基于精確的線性模型,不能很好地刻畫地面輪式車輛等運載體的動力學(xué)行為.無人車的動力學(xué)行為具有較強的非線性,且存在非完整約束和欠驅(qū)動問題,傳統(tǒng)的基于線性系統(tǒng)理論設(shè)計的控制器有時候在實際無人車控制中效果欠佳.況且,當(dāng)模型具有不確定性時基于精確模型的控制方法魯棒性較差.而機器學(xué)習(xí)的方法具有強大的擬合能力,對模型的要求度低,已廣泛應(yīng)用在各種力學(xué)問題當(dāng)中[13].相較于基于精確模型設(shè)計控制器的方法,強化學(xué)習(xí)的基本思路不再是人為地利用多智能體的精確模型設(shè)計各種形式的控制器,而是利用機器學(xué)習(xí)的方法建立高維狀態(tài)空間到動作空間的映射,相當(dāng)于一個黑箱控制器模型,是一種較為新穎的控制器設(shè)計方式[14].結(jié)合了深度神經(jīng)網(wǎng)絡(luò)的深度強化學(xué)習(xí)在特征表示方面具有非常強大的能力,該能力在構(gòu)建狀態(tài)-動作映射時發(fā)揮了重要作用,在非線性動力學(xué)與控制問題以及欠驅(qū)動控制問題中具有較好的應(yīng)用價值[15].況且,模型的訓(xùn)練只需要智能體的輸入輸出數(shù)據(jù),而不需要系統(tǒng)的精確模型,本質(zhì)上是一種數(shù)據(jù)驅(qū)動的無模型控制方法,在模型參數(shù)未知、模型存在擾動和攝動時仍然可以學(xué)習(xí)到控制器[16].傳統(tǒng)的基于模型的控制方法與基于深度強化學(xué)習(xí)的控制方法的優(yōu)缺點對比如表1 所示.
表1 兩種控制方法對比Table 1 Comparison of two control methods
Bae 等[17]結(jié)合CNN 卷積神經(jīng)網(wǎng)絡(luò)和強化學(xué)習(xí)算法解決了多機器人的路徑規(guī)劃問題.Zhu 等[18]利用MADDPG 算法解決多機器人運動避障問題,并加入了優(yōu)先經(jīng)驗回放機制來更好地利用強化學(xué)習(xí)隨機動作儲存的經(jīng)驗數(shù)據(jù),但其使用的是質(zhì)點運動學(xué)模型,并不能很好地刻畫真實的多智能體運動.Hung等[19]利用Q-learning 的強化學(xué)習(xí)算法,結(jié)合無人機運動學(xué)模型,解決了領(lǐng)導(dǎo)-跟隨問題.李波等[20]利用MADDPG 算法解決無人機群在威脅區(qū)域中的“避險”飛行問題.張海峰等[21]針對非線性多智能體控制問題,利用HJB 方程來設(shè)計控制律,并利用強化學(xué)習(xí)的方法來求解HJB 方程進而得到最優(yōu)控制器.趙啟等[22]利用D3QN 深度強化學(xué)習(xí)算法和無人機運動學(xué)模型來研究長機-僚機編隊的橫向距離保持問題,后續(xù)又采用DDQN 深度強化學(xué)習(xí)算法研究長機-僚機編隊中的橫向距離保持和縱向速度跟蹤問題[23].馬曉帆[24]主要研究了商用車隊的編隊道路運行問題,構(gòu)建了六自由度商用車動力學(xué)模型,利用TD3 算法來實現(xiàn)車隊的縱向編隊運行.相曉嘉等[25]提出了ID3QN 算法來研究固定翼無人機的定高長機-僚機編隊問題,ID3QN 算法是在D3QN 的基礎(chǔ)上增加“模仿”行為,旨在幫助僚機更快速地取得跟蹤長機效果較好的經(jīng)驗數(shù)據(jù).以上文獻主要基于運動學(xué)模型進行控制器設(shè)計,但實際的動力學(xué)系統(tǒng)往往是二階系統(tǒng),由于慣性的存在,速度控制必然存在一定時延,力控制是最直接而準(zhǔn)確的控制方式,在實際工程問題中具有更好的應(yīng)用價值.
本文旨在利用深度強化學(xué)習(xí)技術(shù)設(shè)計多無人車系統(tǒng)的編隊控制器,使多無人車系統(tǒng)形成指定的期望隊形,并對控制器進行策略優(yōu)化.本文的創(chuàng)新點包括以下三個方面.第一,基于DDQN 深度強化學(xué)習(xí)算法,結(jié)合一致性理論和伴隨位形的思想設(shè)計多無人車系統(tǒng)的編隊控制器,該控制器在無精確模型只有運動數(shù)據(jù)時也可以實現(xiàn)編隊控制任務(wù),降低了對模型的依賴性,相比傳統(tǒng)的基于模型設(shè)計的控制器,本文給出的控制器魯棒性更強;第二,相較于目前大多數(shù)文獻基于運動學(xué)模型設(shè)計控制器,本文直接基于動力學(xué)模型設(shè)計力控制器,更具有實際意義;第三,本文創(chuàng)新性地提出了編隊起始階段的等候與啟動條件,進行了策略優(yōu)化,仿真顯示優(yōu)化后的策略有效節(jié)省了編隊所需的能量.
常見的車輛動力學(xué)模型有阿克曼轉(zhuǎn)向模型[24]、麥克納姆輪轉(zhuǎn)向模型[26]和后輪差動轉(zhuǎn)向[27]等.后輪差動轉(zhuǎn)向的車輛硬件與結(jié)構(gòu)更加簡單,常用于小型輪式機器人等.本文擬采用后輪差動轉(zhuǎn)向的剛體無人車動力學(xué)模型.
考慮后輪差動轉(zhuǎn)向的無人車模型,其左右兩側(cè)后輪由兩個電機獨立驅(qū)動,兩側(cè)的前輪僅用于支撐車輛和配合運動,不產(chǎn)生控制作用[28].無人車相對慣性坐標(biāo)系定義的位形坐標(biāo)為 η=(x,y,θ)T,代表了無人車的質(zhì)心位置以及車頭朝向,無人車的幾何模型如圖1 所示,各參數(shù)如表2 所示.
圖1 無人車幾何模型Fig.1 Unmanned vehicle geometric model
表2 無人車幾何參數(shù)Table 2 Unmanned vehicle geometric parameter
無人車的動力學(xué)方程為[29]
需要注意的是,該無人車動力學(xué)模型僅僅用于運動的仿真和運動數(shù)據(jù)的獲取,在控制器的設(shè)計與訓(xùn)練中并不需要該動力學(xué)模型.
考慮含有N+1 個無人車的多無人車系統(tǒng),其中包含1 個領(lǐng)導(dǎo)者無人車和N個跟隨者無人車,其狀態(tài)由位形坐標(biāo)與速度變量表示.無人車的位形坐標(biāo)記作xi=(xi,yi,θi),i=1,2,···,N;其速度變量記作vi=(vi,ωi),i=1,2,···,N.其中第0 號無人車為領(lǐng)導(dǎo)者,第1 至N號無人車為跟隨者.
編隊控制問題的控制目標(biāo)是使得多無人車系統(tǒng)形成期望的隊形,如下式所示
為了實現(xiàn)多無人車系統(tǒng)的編隊控制,可以先從單領(lǐng)導(dǎo)者單跟隨者問題出發(fā),再利用樹狀通訊擴展到多無人車系統(tǒng)的編隊控制問題.首先考慮單個跟隨者和領(lǐng)導(dǎo)者的編隊控制,領(lǐng)導(dǎo)者狀態(tài)表示為xl=(xl,yl,θl) 和vl=(vl,ωl),跟隨者的狀態(tài)表示為xf=(xf,yf,θf)和vf=(vf,ωf) .任務(wù)目標(biāo)為設(shè)計合適的控制器,使得跟隨者的狀態(tài)與跟隨者的狀態(tài)之差等于期望的相對位形d,即
觀察上式,可以構(gòu)造領(lǐng)導(dǎo)者的伴隨位形 (xl-d),稱之為伴隨領(lǐng)導(dǎo)者.若跟隨者實現(xiàn)對伴隨領(lǐng)導(dǎo)者的一致性跟蹤,則等價于實現(xiàn)了對領(lǐng)導(dǎo)者的編隊控制.因此,可利用構(gòu)造伴隨領(lǐng)導(dǎo)者的方法將編隊控制問題轉(zhuǎn)化為一致性問題.伴隨領(lǐng)導(dǎo)者的幾何示意圖如圖2 所示.
圖2 伴隨領(lǐng)導(dǎo)者Fig.2 Accompanying leader
強化學(xué)習(xí)技術(shù)作為機器學(xué)習(xí)的一個分支,憑借其在解決復(fù)雜的序列決策問題中的優(yōu)異表現(xiàn),在控制工程領(lǐng)域和多智能體協(xié)同領(lǐng)域得到了廣泛的應(yīng)用[1].其基本思想是在無經(jīng)驗的情況下通過智能體與環(huán)境的交互,獲取反饋并積累經(jīng)驗,然后優(yōu)化智能體的決策模型,其基本思想如圖3 所示.
圖3 強化學(xué)習(xí)基本思想Fig.3 Reinforcement learning basic idea
DDQN 算法是一種經(jīng)典的深度強化學(xué)習(xí)算法,全稱為double deepQnetwork learning,旨在利用深度學(xué)習(xí)的思想構(gòu)建深度神經(jīng)網(wǎng)絡(luò)來建立從智能體狀態(tài)st到價值函數(shù)Q(st,at) 的映射,其中st代表當(dāng)前時刻的狀態(tài),at代表智能體做出的動作,rt代表智能體在本次交互中獲得的獎勵[30].該算法的特點是構(gòu)建了價值網(wǎng)絡(luò)與目標(biāo)網(wǎng)絡(luò)兩個神經(jīng)網(wǎng)絡(luò),在訓(xùn)練時可以有效避免因自舉現(xiàn)象產(chǎn)生的價值函數(shù)高估問題,具有較好的穩(wěn)定性,且其原理和架構(gòu)的復(fù)雜程度不高,對硬件的要求低,便于無人車系統(tǒng)部署.
強化學(xué)習(xí)的最終目標(biāo)是學(xué)習(xí)到最優(yōu)策略π*(a|s),使得期望折扣獎勵R最大,期望折扣獎勵定義為
其中,γ 為折扣因子,代表未來的獎勵折算到當(dāng)前時刻的比例,rt為即時獎勵,T為終止時刻.獎勵函數(shù)r(s,a)通常根據(jù)具體任務(wù)來進行設(shè)計,便于針對性地進行優(yōu)化,例如在多無人車一致性控制任務(wù)中加入位形誤差、速度誤差等變量.
準(zhǔn)確的價值函數(shù)Q*(s,a) 代表的是神經(jīng)網(wǎng)絡(luò)在狀態(tài)s下執(zhí)行動作a所能獲得的期望折扣獎勵的期望值,其表達(dá)式為[13]
在學(xué)習(xí)到了準(zhǔn)確的價值函數(shù)后,便可以在不同狀態(tài)下評估最優(yōu)動作并進行控制.
為了實現(xiàn)利用DDQN 算法建立控制器實現(xiàn)控制目標(biāo)的任務(wù),需要設(shè)計合適的狀態(tài)空間和動作空間,在經(jīng)過多輪測試后,選取局部坐標(biāo)相比于慣性系下的全局坐標(biāo)能使網(wǎng)絡(luò)學(xué)習(xí)到更準(zhǔn)確的特征,控制效果會有明顯的進步,由于是設(shè)計跟隨者的控制器,故設(shè)計狀態(tài)空間時需要將領(lǐng)導(dǎo)者與跟隨者的全局坐標(biāo)轉(zhuǎn)化為在跟隨者坐標(biāo)系下建立的相對坐標(biāo),幾何示意圖如圖4 所示.
圖4 狀態(tài)空間Fig.4 State space
狀態(tài)空間定義為
其中,e1和e2為跟隨者坐標(biāo)系下的縱向距離誤差和橫向距離誤差,vf為跟隨者的運動速度,vl1和vl2為領(lǐng)導(dǎo)者的運動速度在跟隨者坐標(biāo)系下的縱向和橫向分量,ωf和ωl為跟隨者和領(lǐng)導(dǎo)者的角速度.各個局部坐標(biāo)變量與慣性坐標(biāo)系下的變量轉(zhuǎn)換關(guān)系為
考慮到DDQN 算法輸出神經(jīng)元數(shù)量有限,需要將動作空間進行離散化,才能使輸出層的各個神經(jīng)元輸出價值函數(shù)Q(s,a)[31].本文基于無人車系統(tǒng)動力學(xué)模型來設(shè)計控制器,控制輸入為左右側(cè)后輪的轉(zhuǎn)矩,需要對驅(qū)動力矩進行控制來改變運動狀態(tài).其轉(zhuǎn)矩的和值控制無人車縱向的加減速,其轉(zhuǎn)矩的差值控制無人車沿豎直方向的角加速度.考慮到縱向加減速可分為加速、減速和保持速度3 個動作,轉(zhuǎn)動增大角速度、減小角速度和保持角速度3 個動作,兩個維度耦合后可以得到9 種動作,因此取動作空間為9 種典型動作構(gòu)成的集合.
為了使網(wǎng)絡(luò)學(xué)習(xí)到符合實際物理意義的價值函數(shù)Q(s,a),需要針對控制目標(biāo)設(shè)計對應(yīng)的獎勵函數(shù),顯然一致性控制問題下,位形誤差與速度誤差越小,系統(tǒng)的狀態(tài)越佳,因此設(shè)計獎勵函數(shù)為
其中,相對距離與相對速度的計算方法如下
該獎勵函數(shù)的具體含義是: 相對距離越小,狀態(tài)越接近一致,具有更高的價值,所以獎勵與相對距離呈負(fù)相關(guān),不同區(qū)間的不同梯度有助于模型在誤差較小時提高敏感性,避免在誤差較小的區(qū)間內(nèi)因為獎勵函數(shù)的值變化較小而學(xué)習(xí)效果不佳.在本任務(wù)中,取ed=0.01 m 為收斂閾值,認(rèn)為距離誤差小于該閾值時實現(xiàn)了一致性跟蹤,故距離獎勵的最大值定義在ed<0.01 m 的情況.將相對速度引入較小的負(fù)獎勵可以使模型的過渡階段盡量平滑,避免出現(xiàn)過大的速度差值.
基于以上的狀態(tài)與動作空間、獎勵函數(shù)以及無人車剛體動力學(xué)模型,便可以構(gòu)建基于DDQN 算法的一致性控制器訓(xùn)練環(huán)境和運動仿真環(huán)境,如圖5 所示.
圖5 控制訓(xùn)練環(huán)境Fig.5 Controller training environment
在每一個控制周期內(nèi),無人車將狀態(tài)變量輸入神經(jīng)網(wǎng)絡(luò)并得到價值函數(shù)輸出,然后利用動作選擇策略來決定跟隨者的控制量,訓(xùn)練時常采用帶有一定隨機性的動作選擇策略來使得網(wǎng)絡(luò)探索更多的動作.動作選擇完成后,環(huán)境將更新領(lǐng)導(dǎo)者與跟隨者的下一狀態(tài),并計算該次控制得到的獎勵函數(shù),然后將經(jīng)驗數(shù)據(jù)即環(huán)境交互得到的四元組(st,at,rt,st+1)存入經(jīng)驗記憶庫,再從經(jīng)驗庫中采樣并更新網(wǎng)絡(luò).
為了在網(wǎng)絡(luò)訓(xùn)練時模擬到更全面更復(fù)雜的環(huán)境來指導(dǎo)神經(jīng)網(wǎng)絡(luò)的更新,避免網(wǎng)絡(luò)陷入局部最優(yōu),在設(shè)計訓(xùn)練場景時需要充分增加隨機性,避免因為軌跡和場景的單一導(dǎo)致網(wǎng)絡(luò)過擬合,泛化性差.因此考慮如圖6 所示的4 種典型運動,分別為勻速直線運動、加減速、左轉(zhuǎn)和右轉(zhuǎn).
圖6 4 種典型運動軌跡Fig.6 Four typical trajectories
在每一輪訓(xùn)練開始前,環(huán)境會生成 40 s 的領(lǐng)導(dǎo)者運動軌跡,其中每 4 s 為一段.每一輪訓(xùn)練共由10 段軌跡拼接而成,每一段軌跡都為上述4 種典型軌跡之一,且為均勻抽樣,以實現(xiàn)訓(xùn)練過程的領(lǐng)導(dǎo)者軌跡多樣性.
在訓(xùn)練中,領(lǐng)導(dǎo)者無人車的起始位形和速度為(xl0,yl0,θl0,vl0,ωl0)=(0,0,0,0.2,0).跟隨者的起始位置在以領(lǐng)導(dǎo)者起始位置為中心,以 6 m 為邊長的正方形內(nèi)隨機生成,起始姿態(tài)角,按照均勻分布隨機選取.
神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)及參數(shù)如圖7 和表3 所示.
圖7 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)Fig.7 Neural network framework
表3 神經(jīng)網(wǎng)絡(luò)參數(shù)Table 3 Neural network parameters
基于以上的訓(xùn)練環(huán)境,設(shè)置網(wǎng)絡(luò)訓(xùn)練的總輪次為10 000 輪,初始學(xué)習(xí)率為0.000 1,記憶庫總?cè)萘緿為 218,每次更新網(wǎng)絡(luò)的采樣數(shù)量為256,折扣因子γ為0.95,訓(xùn)練結(jié)果如圖8 所示.
圖8 訓(xùn)練結(jié)果Fig.8 Training result
可以看到,隨著網(wǎng)絡(luò)的訓(xùn)練,每輪次所獲得的獎勵函數(shù)和值在不斷增大,網(wǎng)絡(luò)訓(xùn)練后期獎勵函數(shù)和值趨于收斂.由于網(wǎng)絡(luò)訓(xùn)練時模型決策因為有較小的探索率會存在動作的隨機選擇,并且每個輪次的領(lǐng)導(dǎo)者軌跡與起始位置不同,因此會造成獎勵函數(shù)和值的波動,可用滑動窗口平均值觀察網(wǎng)絡(luò)的收斂性,圖中取窗口大小k=5和k=30 兩組參數(shù)進行繪圖,可以觀察到網(wǎng)絡(luò)在訓(xùn)練后期收斂于較高的獎勵值,模型趨于收斂.然后,將動作選擇策略的隨機性消除,按照價值最大策略進行控制,對模型進行驗證,控制器結(jié)構(gòu)圖如圖9 所示.
圖9 控制器結(jié)構(gòu)Fig.9 Controller framework
進行100 輪驗證,結(jié)果如圖10 所示.
圖10 驗證結(jié)果Fig.10 Test result
同樣使用滑動窗口平均法觀察驗證過程的獎勵函數(shù),可以觀察到模型的表現(xiàn)較為穩(wěn)定,曲線有所波動的原因與領(lǐng)導(dǎo)者軌跡的隨機性和初始位置的隨機性有關(guān).經(jīng)驗證,該網(wǎng)絡(luò)可以在訓(xùn)練場景下實現(xiàn)跟隨者狀態(tài)對領(lǐng)導(dǎo)者狀態(tài)的跟蹤.
考慮由5 臺無人車組成的多無人車系統(tǒng),通訊方式為樹狀拓?fù)?如圖11 所示.其中,0 號無人車為領(lǐng)導(dǎo)者,其他為跟隨者,其中1 號和3 號無人車都與領(lǐng)導(dǎo)者進行通訊,可以獲取領(lǐng)導(dǎo)者的運動狀態(tài),但2 號和4 號無人車只能分別與1 號和3 號無人車進行通訊,獲取對應(yīng)無人車的狀態(tài),而不能得到領(lǐng)導(dǎo)者的運動狀態(tài),以模擬分布式通訊的場景.領(lǐng)導(dǎo)者按照期望軌跡進行運動,跟隨者在控制器的控制下運動.
圖11 通訊拓?fù)銯ig.11 Communication topology
各無人車的物理參數(shù)如表4 所示.
表4 無人車物理參數(shù)Table 4 Unmanned vehicle physical parameter
無人車的初始位形為
無人車的期望隊形為五邊形,具體的隊形參數(shù)為
引入期望隊形的信號后,便可將一致性控制器轉(zhuǎn)化為編隊控制器,控制器的結(jié)構(gòu)圖如圖12 所示.
圖12 編隊控制器結(jié)構(gòu)Fig.12 Formation controller framework
設(shè)置期望隊形為五邊形,領(lǐng)導(dǎo)者運動軌跡覆蓋加減速、左右轉(zhuǎn)等情況,所有跟隨者初始時刻靜止,進行運動仿真,結(jié)果如圖13 和圖14 所示.
圖13 無人車軌跡Fig.13 Unmanned vehicle trajectory
圖14 編隊誤差曲線Fig.14 Formation error
根據(jù)運動軌跡和誤差曲線可以觀察到,多無人車系統(tǒng)在該控制器的控制下成功實現(xiàn)了期望的編隊運動.
為了充分驗證控制器的有效性,需要針對不同的期望隊形開展運動仿真實驗,圖15 和圖16 為不同期望隊形的運動仿真結(jié)果,其中圖15(a)和圖16(a)為五邊形隊形,圖15(b)和圖16(b)為平行隊形,圖15(c)和圖16(c)為合圍四邊形隊形.領(lǐng)導(dǎo)者運動軌跡也包含了左右轉(zhuǎn)、加減速等典型運動情況.通過運動軌跡和誤差曲線可以看到,不同期望隊形下,控制器均能驅(qū)動多無人車系統(tǒng)快速實現(xiàn)編隊并保持隊形穩(wěn)定運動.
圖15 多隊形測試軌跡Fig.15 Multiple formation testing trajectory
圖16 多隊形測試誤差曲線Fig.16 Error plot of multiple formation testing
在現(xiàn)實場景中,往往由于地形等原因,多無人車編隊需要在運動過程中進行隊形切換,因此需要驗證控制器在運動過程中變換隊形的能力.圖17 和圖18 為隊形切換的運動仿真結(jié)果,多無人車系統(tǒng)在運行過程中由于遇到障礙需要收緊隊形,通過后恢復(fù)原隊形.運動軌跡和誤差曲線顯示多無人車系統(tǒng)能夠在控制器的驅(qū)動下,在運動過程中期望隊形發(fā)生變化時快速轉(zhuǎn)換為新目標(biāo)隊形,驗證了在運動過程中的隊形切換能力.
圖17 隊形切換測試軌跡Fig.17 Formation switching test trajectory
圖18 隊形切換測試誤差曲線Fig.18 Formation switching test error plot
上文中的運動仿真證明了編隊控制器的有效性,但通過對多無人車系統(tǒng)運動軌跡的觀察可以發(fā)現(xiàn),在編隊控制的多隊形實驗中,當(dāng)無人車起始位形為平行排布時,五邊形編隊任務(wù)中存在一定的反向運動現(xiàn)象,即運動過程中跟隨者與領(lǐng)導(dǎo)者的速度方向夾角出現(xiàn)鈍角,即vf·vl<0,圖19 為第4 s 時刻的無人車狀態(tài).
圖19 反向運動時刻Fig.19 Reverse movement moment
造成該現(xiàn)象的原因是在起始位形下根據(jù)領(lǐng)導(dǎo)者計算各個跟隨者的伴隨領(lǐng)導(dǎo)者時,跟隨者對伴隨者的縱向跟蹤誤差為負(fù),也就是兩者之間的距離誤差在跟隨者的速度方向投影為負(fù),導(dǎo)致跟隨者需要向領(lǐng)導(dǎo)者速度方向的反方向運動才能對伴隨領(lǐng)導(dǎo)者實現(xiàn)跟蹤,故存在“反向運動”現(xiàn)象,由于需要進行更多的轉(zhuǎn)向和加減速動作,該現(xiàn)象會增大控制過程中消耗的能量.
考慮單領(lǐng)導(dǎo)者-單跟隨者的編隊控制起始階段狀態(tài).考慮 θf0=θl0且e1<0,vl0≥0,vf0=0 的初始情況,如圖20 所示.
圖20 反向運動典型狀態(tài)Fig.20 Reverse movement typical condition
顯然,該初始情況與上述五邊形編隊的所有跟隨者的情況相同,是典型的易引起反向運動的起始條件.然而顯而易見的是,該情況下若跟隨者保持靜止等候,在短時間內(nèi)也會由于領(lǐng)導(dǎo)者的自身運動而使得編隊誤差減小,而不消耗任何能量,這是因為e1<0,vl1-vf>0,兩者縱向的相對速度與位置誤差異號,故縱向位置誤差的大小將在一定時間內(nèi)自行減小.由于考慮 θf0=θl0的初始情況,在起始時刻臨近的短時間內(nèi)橫向誤差e2基本不變,為簡化模型暫不考慮橫向的誤差狀態(tài).
為了消除反向運動情況,現(xiàn)基于領(lǐng)導(dǎo)者與跟隨者的縱向狀態(tài)量定義單個無人車的等候條件與啟動條件,等候條件為
其物理含義為,縱向距離誤差與速度誤差符號相反,具有自發(fā)消除誤差的趨勢,因此跟隨者保持靜止不動仍然能使得編隊誤差減小.
定義啟動條件為
其物理含義為,縱向距離誤差與速度誤差符號相同,位置誤差的絕對值將趨于增大,因此必須引入編隊控制器的作用來驅(qū)動各個無人車達(dá)成期望隊形.
各個無人車從初始時刻開始,在每個時間差分內(nèi)都要進行等候條件與啟動調(diào)節(jié)的判斷,若滿足等候條件則不進行控制,保持初始狀態(tài);若滿足啟動條件,則由DDQN 編隊控制器持續(xù)進行控制.需要注意的是,由于以上分析都是基于 θf0=θl0的運動初始階段,該動作策略僅用于運動初始階段的能量優(yōu)化,每個無人車一旦在某時刻達(dá)到啟動條件,在后續(xù)時刻就不再進行條件判斷,而是由編隊控制器驅(qū)動無人車以實現(xiàn)控制目標(biāo).
為了驗證該策略的作用,采用五邊形編隊進行運動仿真以對比分析.運動仿真結(jié)果如圖21 和圖22所示.
圖21 運動軌跡對比圖Fig.21 Trajectory comparison
圖22 誤差曲線對比圖Fig.22 Error-curve comparison
其中,圖21(a)和圖22(a)分別為優(yōu)化前的運動軌跡與誤差曲線,圖21(b)和圖22(b)為優(yōu)化后結(jié)果.經(jīng)計算,加入該策略后,運動過程中所消耗的能量減少了19.93%,有效驗證了該策略節(jié)約能量的作用,并且通過對運動軌跡的觀察可以發(fā)現(xiàn)該策略消除了反向運動現(xiàn)象.但值得注意的是,由誤差曲線的對比可知,能量優(yōu)化伴隨著收斂時間增大的代價,這是由于等候的過程實際上消耗了一定的時間.雖然該策略可以在節(jié)省一部分能量的情況下完成編隊任務(wù),但因為其設(shè)計原理而必然伴隨著收斂時間延長.
本文基于DDQN 深度強化學(xué)習(xí)算法,結(jié)合一致性理論與伴隨領(lǐng)導(dǎo)者設(shè)計了多無人車系統(tǒng)的編隊控制器.首先,進行了編隊問題簡化,將編隊控制問題轉(zhuǎn)化為對伴隨領(lǐng)導(dǎo)者的一致性跟蹤問題,然后簡化為單領(lǐng)導(dǎo)者-單跟隨者問題,并對該問題設(shè)計了基于跟隨者局部坐標(biāo)系的7 維狀態(tài)空間、9 維動作空間和基于距離誤差和速度誤差的獎勵函數(shù).然后搭建了DDQN 網(wǎng)絡(luò)的訓(xùn)練環(huán)境,設(shè)計神經(jīng)網(wǎng)絡(luò)架構(gòu)參數(shù)后,引入初始位置和領(lǐng)導(dǎo)者訓(xùn)練軌跡的隨機性進行網(wǎng)絡(luò)訓(xùn)練.訓(xùn)練完成后利用運動仿真驗證了控制器的有效性,并針對運動中所存在的反向運動現(xiàn)象,從編隊控制器中的動作選擇策略層面提出了編隊控制器起始階段策略優(yōu)化方法.在運動初始時,定義了等候條件與啟動條件,對部分無人車進行延遲啟動,仿真驗證了該策略具有一定的能量節(jié)約作用,但可能會增加收斂時間.