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

        ?

        基于DDPG的單目無人機避障算法*

        2023-10-18 05:57:14劉小毛席永輝李思佳
        飛控與探測 2023年3期
        關(guān)鍵詞:深度動作環(huán)境

        魏 瑤,劉小毛,張 晗,席永輝,曹 爽,李思佳

        (1. 西北工業(yè)大學 航天學院·西安·710000;2. 上海航天控制技術(shù)研究所·上海·201109;3. 中國航天科技集團有限公司紅外探測技術(shù)研發(fā)中心·上海·201109;4. 西北工業(yè)大學 無人系統(tǒng)技術(shù)研究院·西安·710000)

        0 引 言

        人工智能的高速發(fā)展給無人機產(chǎn)業(yè)注入了蓬勃的生命力,無人機在各行各業(yè)中承擔著越來越重要的角色,尤其是在復雜的室內(nèi)環(huán)境中進行避障規(guī)劃。由于小型無人機體積小、敏捷度高使得其能成功完成各種任務,例如搜索、救援環(huán)境測繪和未知區(qū)域探索等,因此一套行之有效的避障算法保證無人機能夠安全執(zhí)行各種任務顯得尤為重要[1]。然而,避障算法的開發(fā)也面臨著各種各樣的挑戰(zhàn),其中之一便是小型無人機由于體積小、電池電量低而無法裝載沉重的傳感器,因此會降低避障算法的性能。

        避障任務中常用的傳感器有超聲波傳感器、雷達傳感器、深度相機和單目相機。這些傳感器各有優(yōu)缺點,超聲波傳感器在測量近距離障礙物時性能相對較好,但其性能會隨著與障礙物的增加而降低。雷達傳感器測量精度高、具有寬廣的探測范圍與探測視野,能夠提供來自周圍環(huán)境的豐富信息,但其與其他傳感器相比較,成本較高。此外,激光雷達傳感器的質(zhì)量使其很難在小型無人機上配備使用。深度相機可以提供無人機所處環(huán)境障礙物的幾何以及距離信息,但其自身質(zhì)量以及功耗可能會對無人機避障性能提出挑戰(zhàn)。與激光雷達和深度相機相比較,單目相機所能提供的信息較少,但其具有體積小、質(zhì)量小、能耗低、視野寬等優(yōu)點,因此,在各種傳感器中單目相機更適合于小型無人機的避障感知。

        為了充分利用上述單目相機的優(yōu)點,研究人員開發(fā)了各種避障算法,但直接使用來自單目相機的RGB信息仍舊具有挑戰(zhàn)性。由于單目相機將來自環(huán)境的3D真實數(shù)據(jù)減少為2D圖像像素,很難從圖像中獲得準確的距離信息。Alvarez H[2]等人使用RGB圖像構(gòu)建深度圖像,并基于該深度圖像生成無障礙路徑,從而成功地實現(xiàn)了無人機的避障功能,但是這種方法至少需要1s的時間來計算航路點,這可能會導致無人機在躲避動態(tài)障礙物時失敗。Cho S[3]等人利用光流來進行避障?;诠饬鞯姆椒ú⒉恍枰叩挠嬎阖撦d,因此非常適合在不配備高性能計算板的小型無人機身上使用,然而當無人機處于無紋理或者障礙物巨大的環(huán)境中時,基于光流的方法很難在這種環(huán)境下提取特征[4]。另一種基于視覺的避障方法為同步定位與地圖構(gòu)建(Simultaneous Localization and Mapping,SLAM)方法。視覺SLAM使用3D地圖信息估計無人機當前的位置和方向,Mur-Artal R[5]等人使用SLAM方法來計算航路點,從而在有障礙物的環(huán)境中對無人機進行導航。然而,視覺SLAM方法要重新構(gòu)建無人機環(huán)境的地圖信息,并配合路徑規(guī)劃算法計算出無人機的避障路徑,因此對計算負載和內(nèi)存的要求高[6]。此外,光流法和視覺SLAM方法都需要適當?shù)膮?shù)設(shè)置才能在避障環(huán)境中發(fā)揮出好的性能,當避障環(huán)境出現(xiàn)變化時這些算法可能會失效。

        作為機器學習的另一大分支,強化學習為無人機的自主避障提供了一種新的方法。強化學習根據(jù)智能體所處的環(huán)境狀態(tài)產(chǎn)生動作以最大化獎勵。在強化學習中,智能體通過反復試錯從而學習得到特定的動作策略(例如:跟蹤目標、抓住物體或避開障礙物),同時自動收集訓練數(shù)據(jù)使得智能體最終可以在各種狀態(tài)下選擇最佳動作。Singla A[7]等人使用生成對抗網(wǎng)絡(luò) (Generative Adversarial Network,GAN)進行深度估計。在避障決策方面,它采用深度遞歸神經(jīng)網(wǎng)絡(luò) (Deep Recurrent Q-networks,DRQNs),將順序時間序列數(shù)據(jù)作為網(wǎng)絡(luò)輸入來解決深度 Q 網(wǎng)絡(luò) (DQN)中的部分可觀測性問題。Xie L[8]等采用卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)來估計深度圖像,然后使用決斗雙深度 Q 網(wǎng)絡(luò)(Dueling Double Deep Q Network ,D3QN)通過估計得到的深度圖像來選擇最佳決策動作。以上兩種方法通常表現(xiàn)出良好的性能,但由于它們的獎勵功能,容易產(chǎn)生鋸齒形運動或旋轉(zhuǎn)運動。這些動作可能需要過多的控制努力,這會導致任務失敗,尤其是對于電池容量較小的小型無人機而言。因此,需要設(shè)計一種新的獎勵函數(shù),以適應復雜環(huán)境,最大限度地減少電池損耗。目前,強化學習方法采用離散動作輸出算法的研究居多,跳躍式的動作取值方法對無人機的避障效果會帶來較大影響。

        綜上所述,文中需要考慮到該避障算法應基于單目相機并能應用于負載較小的小型無人機避障之中,且由于小型無人機的低電池容量,該算法應盡量減少不必要的運動?;谶@些條件,本文提出一種深度強化學習算法,該算法僅通過單目相機為無人機在室內(nèi)進行避障任務時給出決策信息。本文的主要貢獻如下:

        1)以無人機在復雜室內(nèi)環(huán)境中避障為背景,結(jié)合CGAN網(wǎng)絡(luò)實現(xiàn)了一種基于單目相機的無人機端到端避障算法;

        2)針對傳統(tǒng)強化學習給出離散動作空間決策信息,導致無人機避障效果差問題,提出一種基于深度確定性策略梯度(Deep Deterministic Policy Gradient,DDPG)的強化學習方法,使無人機能夠進行連續(xù)避障動作控制,從而優(yōu)化避障軌跡;

        3)分別在3D仿真環(huán)境和真實環(huán)境中進行測試驗證。

        1 算法原理

        1.1 從RGB圖像到深度圖像的轉(zhuǎn)化

        文中使用條件生成對抗網(wǎng)絡(luò)CGAN(Conditional GAN)來進行從RGB圖像到深度圖像轉(zhuǎn)換。原始的GAN在生成圖像時,不需要假設(shè)的數(shù)據(jù)分布,這種方法過于簡單,會導致生成過程不可控。與此同時,CGAN是將無監(jiān)督轉(zhuǎn)換為有監(jiān)督模型的改進網(wǎng)絡(luò),其在圖像生成過程中加入了有標簽信息,從而增加了生成過程中的約束性和針對性。文中使用的CGAN方法擁有兩個獨立的卷積網(wǎng)絡(luò),分別為生成器和判別器。生成器學習為訓練數(shù)據(jù)集中的每個標簽生成逼真的樣本,而鑒別器則學習區(qū)分真的樣本-標簽對與假的樣本-標簽對。從某種意義來說生成器和鑒別器兩個網(wǎng)絡(luò)的目標是相互對立的。其損失函數(shù)反映了該目標。

        LCGAN(θD,θG)=Ex,y~Pdata[logD(x,y)]+

        Ex~pdata(x),z~pz(z)[log(1-

        D(x,G(x,z)))]

        (1)

        其中,θD為判別器神經(jīng)網(wǎng)絡(luò)參數(shù),θG為生成器神經(jīng)網(wǎng)絡(luò)參數(shù),變量x為RGB圖片;z為噪聲圖像;變量y為其所對應的真實深度圖片;G(x,z)為生成器所生成的深度圖片;D(x,y)為生成器所生成深度圖片被判別為真實的概率。在本文中使用U-net為CGAN為模型生成器,U-net可以看做是一種編碼-解碼器模型,它在編碼器和解碼器之間將不同層的相應特征圖連接在一起。鑒別器由編碼器構(gòu)成,通過訓練鑒別器從而區(qū)分真假圖片。其中CGAN的網(wǎng)絡(luò)架構(gòu)如圖1所示,生成器以隨機噪聲圖像z以及RGB圖像為輸入,生成服從實際圖像數(shù)據(jù)分布的“假”深度圖片G(z,y)。判別器的輸入為x,y以及G(z,y),其輸出為對生成器生成圖片G(z,y)的真假判別標簽。文中CGAN 網(wǎng)絡(luò)生成器、判別器的具體網(wǎng)絡(luò)架構(gòu)與該網(wǎng)絡(luò)結(jié)構(gòu)[9]設(shè)計一致。

        1.2 深度強化學習原理

        深度學習側(cè)重于“感知”,強化學習則與深度學習[10]不同,其側(cè)重于“表達”。深度強化學習[11]將深度學習“感知”能力與強化學習的序列決策能力相結(jié)合,使得智能體在復雜狀態(tài)空間下的決策問題得以解決。越來越多的研究人員已經(jīng)將深度強化學習應用于無人機避障決策之中。深度強化學習一般由以下幾部分構(gòu)成:1)智能體Agent;2)交互環(huán)境E;3)狀態(tài)轉(zhuǎn)移方程P(表示智能體從一個狀態(tài)轉(zhuǎn)移到下一個狀態(tài)的概率);4)獎勵函數(shù)R,其具體結(jié)構(gòu)如圖2 所示,智能體感知所在環(huán)境狀態(tài),將狀態(tài)信息作為深度神經(jīng)網(wǎng)絡(luò)輸入,神經(jīng)網(wǎng)絡(luò)根據(jù)狀態(tài)信息給出動作策略,智能體執(zhí)行相應動作與環(huán)境發(fā)生交互,交互環(huán)境根據(jù)獎勵函數(shù)以及狀態(tài)轉(zhuǎn)移規(guī)則給出智能體獎勵r以及下一狀態(tài)s′。

        深度強化學習,將問題定義為一個馬爾科夫決策過程(Markov Decision Process,MDP)。無人機在避障過程中,下一時刻無人機所處的狀態(tài)僅僅依賴于當前場景以及其采用動作后的狀態(tài)轉(zhuǎn)移方程,而與之前所處的一系列歷史狀態(tài)無關(guān)。因此,可以將無人機的避障問題看做是一個馬爾可夫決策過程,從而納入到強化學習框架中進行求解。通常情況下,將當前狀態(tài)st、當前動作at、獎勵值r以及下一狀態(tài)st+1作為一個元組(st,at,r,st+1)進行收集并構(gòu)成集合(S,A,R,S′)。強化學習算法通過優(yōu)化目標策略π:s→a,使得在st時刻累積獲得獎勵R最大,則R的表達式為

        (2)

        其中,γ∈(0,1)為衰減因子,表示當前時刻獎勵對未來時刻的影響,t為當前時刻,T為整個馬爾科夫決策過程。Q價值函數(shù)被定義為Qπ=E[Rt|st,at],其中,Rt為當前時刻獎勵值。強化學習的訓練目標為通過求得最優(yōu)策略π*,從而使公式(2)中R的期望最大,即尋找出最優(yōu)策略π*使得公式(3)成立。其中,s和a分別是此時智能體的狀態(tài)和動作。

        Qπ*(s,a)≥Qπ(s,a) ?s,a∈S,A

        (3)

        1.3 深度確定性策略梯度算法

        DDPG 算法[12]作為一種無模型的深度強化學習方法,無需對環(huán)境進行精確建模便可以實現(xiàn)連續(xù)動作策略輸出。該算法采用行動者-評論家(Actor-Critic)的網(wǎng)絡(luò)結(jié)構(gòu),Actor網(wǎng)絡(luò)(記作μ(s|θμ))確定性地將狀態(tài)st映射到動作,即基于當前環(huán)境狀態(tài)給出無人機確定性動作,Critic網(wǎng)絡(luò)(記作Q(s,a|θQ))根據(jù)當前狀態(tài)動作逼近計算動作極值函數(shù),其中θμ和θQ分別為網(wǎng)絡(luò)參數(shù)。此外,為了減小對價值函數(shù)的過高估計對應設(shè)計了行動者目標網(wǎng)絡(luò)μ(s|θμ′)和評論家目標網(wǎng)絡(luò)Q(s|θQ′)。

        1.3.1 Actor網(wǎng)絡(luò)

        Actor網(wǎng)絡(luò)通過輸入當前狀態(tài)信息給出基于當前狀態(tài)信息的確定動作策略,其中累積獎勵與動作有關(guān),因此可以通過梯度上升對Actor網(wǎng)絡(luò)參數(shù)θμ進行更新,則Actor網(wǎng)絡(luò)的更新方式如公式(4)所示

        (4)

        1.3.2 Critic網(wǎng)絡(luò)

        Critic網(wǎng)絡(luò)通過其神經(jīng)網(wǎng)絡(luò)參數(shù)θQ,對基于當前狀態(tài)的動作以Q值的形式給出評價,該Q值以鏈式法則的形式對公式(4)產(chǎn)生影響,因此準確的Q值對Actor網(wǎng)絡(luò)的更新收斂有著至關(guān)重要的作用。Critic網(wǎng)絡(luò)通過最小化損失函數(shù)來進行更新,并使得其評價值更加準確。Critic網(wǎng)絡(luò)損失函數(shù)的計算方法如下所示

        L(θQ)=Est~pβ,at~β,rt~E[(Q(st,at|θQ)-Q^)2]
        Q^=rt+γQ′(st+1,μ′(st+1|θμ′)|θQ′)

        (5)

        1.3.3 目標網(wǎng)絡(luò)

        為避免自舉算法過高估計價值函數(shù),DDPG算法采用軟目標更新策略,利用Actor目標網(wǎng)絡(luò) 和Critic目標網(wǎng)絡(luò)來計算目標價值。其中,Critic 目標網(wǎng)絡(luò)通過網(wǎng)絡(luò)參數(shù)θQ′來估計目標Q值,Actor目標網(wǎng)絡(luò)使用網(wǎng)絡(luò)參數(shù)θμ′來計算目標動作。其網(wǎng)絡(luò)更新方式如公式(6)所示。其中,τ為滑動平均系數(shù),其取值通常小于1。

        θQ′←τθQ+(1-τ)θQ′
        θμ′←τθμ+(1-τ)θμ′

        (6)

        1.3.4 隨機噪聲

        DDPG中的智能體動作來源于Actor網(wǎng)絡(luò)μ(s|θμ)根據(jù)目前智能體所處的狀態(tài)信息而給出的確定性動作,當狀態(tài)信息相同時,Actor網(wǎng)絡(luò)只會輸出相同的動作結(jié)果使得探索的樣本減少。為使Actor網(wǎng)絡(luò)進行更好的探索,將對策略μ添加隨機噪聲N,即μ′(st)=μ(st|θμ)+N使其輸出的動作策略具有隨機性,可以進行更多的探索。在實際訓練中噪聲N隨訓練迭代次數(shù)進行線性衰減至0,不再對Actor網(wǎng)絡(luò)輸出產(chǎn)生影響。

        2 基于深度確定性策略梯度的無人機決策模型

        2.1 系統(tǒng)模型

        本文的目標是在室內(nèi)三維環(huán)境下,利用單目相機以及環(huán)境信息(無人機速度)進行連續(xù)控制決策使得無人機能夠避開障礙物并達到目標位置。系統(tǒng)的總體結(jié)構(gòu)如圖3所示,Actor網(wǎng)絡(luò)與Target-Actor網(wǎng)絡(luò)負責給出智能體動作決策;Critic網(wǎng)絡(luò)與Target-Critic負責評估基于該狀態(tài)動作的價值函數(shù);經(jīng)驗回放池Memory負責存儲探索數(shù)據(jù);Airsim為無人機所交互運行的仿真環(huán)境,獎勵函數(shù)為人為設(shè)計的函數(shù),用來輸出動作獎勵值,鼓勵網(wǎng)絡(luò)朝著期望的方向訓練。

        圖3 系統(tǒng)模型Fig.3 System model

        整個系統(tǒng)主要分為深度圖片估計、環(huán)境探索以及網(wǎng)絡(luò)訓練兩個部分,如圖3所示,t時刻時,獲得無人機所處環(huán)境狀態(tài)的RBG圖片,將RBG圖片輸入至已經(jīng)訓練好的CGAN網(wǎng)絡(luò)之中生成深度圖片并輸出,通過將生成的圖片進行處理得到此時的狀態(tài)信息st。Actor網(wǎng)絡(luò)根據(jù)此時的輸出狀態(tài)st給出無人機的動作策略at=μ(st|θμ),并對該動作添加噪聲后得到at=μ(st|θμ)+N,將此時的動作at通過數(shù)據(jù)通信的形式發(fā)送至Airsim中的無人機上,無人機得到動作信息與環(huán)境產(chǎn)生交互,產(chǎn)生下一個狀態(tài)值st+1以及動作獎勵值rt=R(st+1)。此時,無人機完成環(huán)境探索將收集得到的數(shù)據(jù)(st,at,rt,st+1)存入經(jīng)驗回放池中以供后續(xù)網(wǎng)絡(luò)進行訓練。DDPG網(wǎng)絡(luò)訓練采用離線訓練方法,首先在經(jīng)驗池中進行采樣得到數(shù)據(jù)(st,at,rt,st+1),然后根據(jù)公式(4)更新Actor網(wǎng)絡(luò)使其朝著使Q值上升的方向訓練。Target-Actor網(wǎng)絡(luò)根據(jù)采樣數(shù)據(jù)st+1計算動作值at+1,將st+1,at+1傳遞給Target-Critic計算下一狀態(tài)的Q值Q^=Q(st+1,at+1|θQ′),同時Critic網(wǎng)絡(luò)計算當前狀態(tài)Q值Q=Q(st,at|θQ)。通過最小化損失函數(shù)(式(5))更新Critic網(wǎng)絡(luò),并根據(jù)公式(6)更新目標網(wǎng)絡(luò)。該結(jié)構(gòu)能夠在單步更新參數(shù)的同時控制連續(xù)變量,并借鑒了DQN算法的經(jīng)驗回放(Experience replay)機制,從經(jīng)驗回放池中隨機采樣,打亂狀態(tài)之間的相關(guān)性,加快收斂速度,提高數(shù)據(jù)利用率。

        2.2 狀態(tài)空間和動作空間設(shè)計

        狀態(tài)空間:本文在仿真環(huán)境中進行訓練,利用單目攝像機作為感知器得到640×480的RGB圖像,該圖像通過深度估計網(wǎng)絡(luò)得到84×84的深度圖像。在得到深度圖片之后一般需要對圖像進行預處理,從復雜信息中提取有效信息,以降低復雜度,提高算法效率。如圖4所示,本文將此時84×84的深度圖片轉(zhuǎn)換成84×84的灰度圖像dt,并疊加此時無人機的速度信息vt(該速度信息包括無人機x,y,z三個方向上的速度信息vx,vy,vz)作為此時的狀態(tài)信息st如公式(7)所示。在本實驗中,使用灰度圖像不會影響學習性能,并且由于僅使用深度圖片進行訓練可以減少RGB圖片中紋理色彩對訓練結(jié)果的影響,增強算法的泛化能力并有效提高計算速度。

        圖4 狀態(tài)信息預處理Fig.4 Preprocessing of state information

        st=[dt,vt]vt=[vx,vy,vz]

        (7)

        動作空間:DDPG算法可以處理動作連續(xù)情況下的決策問題,此處選擇無人機的狀態(tài):速度v(m/s)為主要動作,以避免利用位置信息需要全局定位的問題。在此基礎(chǔ)上,為了減少神經(jīng)網(wǎng)絡(luò)計算量,降低網(wǎng)絡(luò)訓練難度,去除無人機偏航通道控制,將無人機看作為三自由度的質(zhì)點運動,神經(jīng)網(wǎng)絡(luò)給出的動作策略為三個不同方向的速度大小。此時無人機的動作空間見表 1 。

        表1 動作空間表Tab.1 Action space table

        2.3 獎勵函數(shù)設(shè)計

        獎勵函數(shù)的設(shè)計與訓練目的有關(guān),本文研究的目的是確保無人機能夠在充滿障礙物的室內(nèi)環(huán)境中,躲避障礙物并到達目標位置。因此,獎勵函數(shù)的設(shè)計既要保證無人機躲避開障礙物又要激勵無人機朝著指定位置飛行而不能原地不動。在本文仿真中獎勵函數(shù)的輸入設(shè)為{p,speed,collision},其中p為位置信息,用來計算無人機此時與目標點之間的直線距離dist,speed為無人機當前三個方向上的速度范數(shù),collision為碰撞標志位,是由仿真環(huán)境所給出的無人機碰撞信息。當collision為1時表示當前無人機產(chǎn)生碰撞,為0時表示無人機處于安全飛行狀態(tài)。其算法交互過程如表 2 所示,當無人機碰撞標志位為1時說明無人機產(chǎn)生碰撞,則給予-20的懲罰并且結(jié)束該回合訓練;當無人機并未產(chǎn)生碰撞時,檢測速度大小是否小于speed_limit,在本文中speed_limit設(shè)置為0.1是為了防止神經(jīng)網(wǎng)絡(luò)為了避免碰撞懲罰而原地不動;當dist<0.3時說明無人機已經(jīng)到達目標點附近則給予50獎勵,否則獎勵值為本次無人機與目標點之間距離與上一時刻距離之差,從而鼓勵無人機在避免產(chǎn)生碰撞的同時到達指定目標位置。

        表2 獎勵函數(shù)計算過程Tab.2 Reward function calculation process

        2.4 DDPG網(wǎng)絡(luò)結(jié)構(gòu)

        文中DDPG算法采用Actor-Critic結(jié)構(gòu),Actor和Critic的具體結(jié)構(gòu)如圖5、圖6所示,其具體參數(shù)設(shè)置如表4所示。Actor網(wǎng)絡(luò)通過輸入此時無人機的狀態(tài)信息,從而給出無人機基于該狀態(tài)的動作。與傳統(tǒng)Actor網(wǎng)絡(luò)僅輸入深度信息進行決策相比,本文采用多模態(tài)網(wǎng)絡(luò)來進行決策信息處理,從而提高網(wǎng)絡(luò)對無人機的控制能力。根據(jù)協(xié)同表示方法,通過將速度信息與84×84的圖像信息映射到不同的特征子空間進行處理。其中,使用9個卷積層來提取圖像特征信息,使用全連接層來處理速度信息。經(jīng)過卷積層后與同時經(jīng)過全連接處理的動作信息進行合并,并通過三個全連接層輸出動作信息。

        圖5 Actor網(wǎng)絡(luò)結(jié)構(gòu)Fig.5 Actor network structure

        圖6 Critic網(wǎng)絡(luò)結(jié)構(gòu)Fig.6 Critic network structure

        表4 參數(shù)配置表Tab.4 Parameter configuration table

        其次,在Critic網(wǎng)絡(luò)中,狀態(tài)信息的處理過程與Actor網(wǎng)絡(luò)的一致,其相應的網(wǎng)絡(luò)結(jié)構(gòu)也相同,該過程被稱為“觀察預處理”。由于該動作輸入為一維數(shù)據(jù),因此將其輸入一個具有128個單元的全連接層中進行處理,使得動作與處理后的狀態(tài)信息擁有相同形狀,該過程被稱為“動作預處理”。接著將“觀察預處理結(jié)果”與“動作預處理”結(jié)果,采用合并層結(jié)合在一起通過3個全連接層輸出基于該狀態(tài)的動作評估值。

        3 仿真及實驗研究

        3.1 仿真場景

        本文實驗平臺為Window 10 操作系統(tǒng),CUDA 10.0,Tensorflow2.3.0,Python3.7,模擬環(huán)境為Airsim[13]。AirSim支持多種傳感器的仿真與自定義,包括攝像機、氣壓計、慣性測量單元、GPS、磁力計、深度攝像機、激光雷達等。它提供基于C++和Python的多種API,例如飛控接口、通信接口、圖像接口等,拓展性較高,便于進行半實物仿真。因此,本文選擇其作為仿真系統(tǒng)的基礎(chǔ),開展無人機避障算法的研究。

        在仿真實驗中,無人機采用單目攝像機在其前向120°范圍內(nèi)采集來自環(huán)境的RGB圖片,以及利用IMU測量自身線速度作為狀態(tài)觀測值。在進行算法訓練測試過程中,為了能夠快速評估算法的有效性以及各種性能,本文選用在如圖7所示的無渲染的簡單仿真環(huán)境中進行仿真。圖8為無人機避障訓練過程,無人機開始訓練時初始獎勵值為0,當無人機發(fā)生碰撞后會得到-20的懲罰,當無人機沿著正確的路線飛行靠近目標位置時會得到獎勵,最終當無人機安全到達目標點時會得到+50的獎勵。無人機訓練的總分值為訓練時每一步獎勵之和,因此訓練結(jié)束后,當總分值大于50時表明在當前訓練回合中,無人機能夠成功躲避所有障礙物并到達指定目標點,并且平均獎勵值越高,表明無人機所選擇的避障路線更好。為了驗證本文所提出算法的有效性,本文分別將DQN、DDPG、優(yōu)先經(jīng)驗回放DDPG[14-15](DDPG Prioritized Experience Replay,DDPG-PER)等算法在該仿真環(huán)境中進行訓練測試。DDPG-PER為引入優(yōu)先經(jīng)驗回放機制的算法,其目的在于提高數(shù)據(jù)利用率,加快訓練速度。通過對比算法,可以驗證所提出的新算法的有效性。

        圖7 仿真環(huán)境示意圖Fig.7 Schematic diagram of the simulation environment

        圖8 無人機避障訓練過程Fig.8 UAV obstacle avoidance training process

        3.2 仿真結(jié)果分析

        如圖9~圖14分別給出了無人機訓練過程中的總得分、平均獎勵、網(wǎng)絡(luò)估計Q值、Actor 網(wǎng)絡(luò)損失值(Actor Loss)、Critic網(wǎng)絡(luò)損失值(Critic Loss)以及平均速度隨訓練時間的變化情況。本次訓練共6000個回合,從圖9中可以看出,本文所提出的DDPG算法在訓練至500次時其累積得分便大于0,說明此時無人機已經(jīng)擁有躲避障礙物的能力,當訓練至1000次時期累積得分大于50,表明此時無人機已經(jīng)能夠成功躲避障礙物并到達指定目標位置附近。與DDPG相比較,DQN算法在整個訓練過程中整體總得分一直在0左右徘徊,說明無人機只學習得到了簡單的避障功能,但其可能只是在原地徘徊,或者在仿真環(huán)境 “漫游”而不能到達指定位置。圖10為平均獎勵變化曲線,平均獎勵計算方式為總得分除以無人機在該回合中的步數(shù),獎勵值用來衡量在該訓練中算法所給出每一步的動作決策是否有用。通過對比可以看出,DDPG算法的平均獎勵值明顯大于DQN算法的平均獎勵值,在引入優(yōu)先經(jīng)驗回放機制后,其算法的收斂性和穩(wěn)定性也得到了提升。DQN算法由于反復取用最大值理論會導致Q值過高估計,從而影響正確決策動作的給出。DDPG算法由于解耦了動作決策和價值估計這兩個網(wǎng)絡(luò),可以明顯降低價值函數(shù)的過高估計。由于DQN算法網(wǎng)絡(luò)結(jié)構(gòu)與DDPG算法結(jié)構(gòu)不相同,因此其損失值沒有可比性,在此不予比較。圖14為無人機速度變化曲線,該速度為無人機在x、y、z三個方向上的速度范數(shù),從圖中可以看出最終無人機的速度會收斂至2.75m/s附近。

        圖9 總得分變化曲線Fig.9 Total score change curve

        圖10 平均獎勵變化曲線Fig.10 Average reward curve

        圖11 Q值變化曲線Fig.11 Q value change curve

        圖12 Actor loss變化曲線Fig.12 Actor loss curve

        圖13 Critic loss變化曲線Fig.13 Critic loss curve

        圖14 速度變化曲線Fig.14 Speed curve

        3.3 仿真結(jié)果測試

        表 4所示為DQN和本文所提出DDPG算法模型所訓練模型在測試環(huán)境中進行100次測試后結(jié)果。DQN算法由于只能進行離散動作控制,因此設(shè)定其動作空間分別為無人機在x,y,z三個方向上以2m/s的速度運動1s。其中DQN的平均累積得分和平均獎勵值均遠低于本文所提出模型。其累積得分小于0分說明,雖然在訓練時DQN算法表現(xiàn)可以躲避障礙物,但測試時由于算法魯棒性不強,很有可能因為一個小的擾動而導致無人機避障失敗。DDPG算法模型在100次測試中的平均累積得分大于50說明,在測試過程中幾乎每次測試,無人機都可以躲避障礙物并到達目標位置。圖15為俯視下無人機避障路線對比圖,由于DDPG算法采用連續(xù)速度控制,所以其避障軌跡相對于其他算法而言更加光滑,避障效果更好。

        表4 對比試驗結(jié)果Tab.4 Comparative test results

        該測試環(huán)境分別在原有場景的基礎(chǔ)上改變障礙物數(shù)量、顏色、大小以及分布情況,從而測試無人機是否真正學習到了躲避障礙物的能力。從圖15中可以看出,在改變障礙物大小以及分布時候,無人機仍具有躲避障礙物的能力。當測試環(huán)境無人機起始位置、目標位置與之前訓練環(huán)境中一致時,由于障礙物分布不同,無人機可能需更多的步數(shù)才能到達目標位置,但仍舊可以成功躲避障礙并到達指定位置點。這表明使用算法所訓練得到模型在未知環(huán)境中仍舊具有避障能力。

        圖15 無人機避障路線俯視圖Fig.15 Overhead view of UAV obstacle avoidance route

        3.4 真實場景測試

        本文將之前在訓練場景中得到的DDPG模型應用于真實環(huán)境下進行測試,決策系統(tǒng)框架如圖16所示。本文所使用無人機為大疆Tello,該無人機配備有前置RGB攝像機以及IMU等可以讀取自身速度信息以及高度信息。由于Tello 無人機可以直接通過無線Wi-Fi信號對x,y,z軸上的速度信息進行控制,因此本實驗將深度信息估計模型與決策模型布置于本地計算機上,通過Wi-Fi通信讀取無人機自身的傳感數(shù)據(jù),在本地計算機上進行計算,得到無人機相應的決策動作,再發(fā)送給無人機執(zhí)行動作。

        圖16 真實場景下的單目無人機避障決策框架Fig.16 Obstacle avoidance decision framework for monocular UAV in real scenes

        經(jīng)過一系列實驗,對本文所訓練的避障決策模型在兩個場景中進行了性能測試,圖17所示為不同真實場景中決策模型所輸出的無人機各個方向上的避障動作。其中,x方向為無人機左右方向,y為無人機前后方向,z為無人機上下方向。避障算法模型通過接收得到當前環(huán)境狀態(tài)信息進行計算決策,給出無人機當前三個方向的速度大小,無人機飛控系統(tǒng)得到?jīng)Q策信息進行解算,并通過俯仰、滾動通道做出避障動作完成避障。圖18所示為無人機在場景一和場景二中的避障路線。由此可以看出,在真實環(huán)境中,當無人機遇到障礙物時,也會做出相應的避障動作躲避障礙物,可見本文提出的避障算法在真實環(huán)境中仍舊有較好的避障能力。

        (a)真實場景一

        (b)真實場景二圖17 無人機避障算法輸出結(jié)果Fig.17 The output result of UAV obstacle avoidance algorithm

        (a)真實場景一

        (b)真實場景二圖18 真實場景下無人機避障路線示意圖Fig.18 Schematic diagram of UAV obstacle avoidance route in real scene

        4 結(jié) 論

        本文以無人機在未知三維室內(nèi)環(huán)境中僅使用單目相機進行避障為研究背景,針對普通RGB圖片無法提取深度信息進行避障以及無人機避障速度不連續(xù)問題展開研究。首先利用CGAN網(wǎng)絡(luò)從單目RGB圖像中預測深度圖片,接著采用DDPG算法進行動作決策,以有效解決連續(xù)動作控制問題。在此基礎(chǔ)上,對DDPG算法中的Actor和Critic網(wǎng)絡(luò)進行改進,通過引入多模態(tài)網(wǎng)絡(luò)將無人機當前速度信息與深度圖片作為狀態(tài)信息共同在網(wǎng)絡(luò)中處理,從而提高算法控制的穩(wěn)定性與有效性。通過在仿真環(huán)境中進行訓練測試,表明本文所提出的算法模型能夠較好處理單目避障問題,與DQN算法相比較,無人機避障軌跡也更連續(xù),避障效果更好。最終,在實物上進行驗證,證明了本文所提出的避障算法的實際有效性。

        猜你喜歡
        深度動作環(huán)境
        長期鍛煉創(chuàng)造體內(nèi)抑癌環(huán)境
        一種用于自主學習的虛擬仿真環(huán)境
        深度理解一元一次方程
        孕期遠離容易致畸的環(huán)境
        深度觀察
        深度觀察
        環(huán)境
        深度觀察
        動作描寫要具體
        畫動作
        成年人免费黄色h网| 毛片免费在线观看网址| 天天插天天干天天操| 加勒比一区二区三区av | 91色综合久久熟女系列| 中文字幕 亚洲精品 第1页| 国产麻豆成人精品av| 日韩高清无码中文字幕综合一二三区| 久久99热精品免费观看麻豆| 很黄很色的女同视频一区二区| 女人被狂躁c到高潮视频| 极品粉嫩嫩模大尺度无码| 亚洲国产成人久久综合三区| 麻婆视频在线免费观看| 国产二级一片内射视频播放| 7878成人国产在线观看| 亚洲高清一区二区三区在线观看 | 在线麻豆精东9制片厂av影现网 | 三区中文字幕在线观看| 色综合色狠狠天天综合色| 在线亚洲综合| 一本色道久久88综合| 国产禁区一区二区三区| 男同gay毛片免费可播放| 高清国产一级毛片国语| 亚洲成人av在线播放不卡| 亚洲av黄片一区二区| 久久久国产精品123| 91九色人妻精品一区二区三区| 日韩中文字幕乱码在线| 蜜桃传媒一区二区亚洲av婷婷| 男人激烈吮乳吃奶视频免费| 亚洲Av午夜精品a区| 亚洲精品国产av成人网| 国产亚洲精品久久久久久国模美| 狠狠色丁香久久婷婷综合蜜芽五月| 国产高清白浆| 午夜精品久久99蜜桃| 人妻少妇精品中文字幕av| 亚洲AV无码成人品爱| 国产一区二区三区白浆肉丝|