





































摘 要:為了提高AGV(automatic guided vehicle)在復雜未知環(huán)境下的搜索能力,提出了一種改進的深度確定性策略梯度(deep deterministic policy gradient,DDPG)算法。該算法通過構(gòu)建經(jīng)驗回放矩陣和雙層網(wǎng)絡(luò)結(jié)構(gòu)提高算法的收斂速度,并將波爾茲曼引入到ε-greedy搜索策略中,解決了AGV在選擇最優(yōu)動作時的局部最優(yōu)問題;針對深度神經(jīng)網(wǎng)絡(luò)訓練速度緩慢的問題,將優(yōu)先級采樣應用于深度確定性策略梯度算法中;為解決普通優(yōu)先級采樣復雜度過高的問題,提出了利用小批量優(yōu)先采樣方法訓練網(wǎng)絡(luò)。為了驗證方法的有效性,通過柵格法建模并在不同的復雜環(huán)境下進行仿真實驗對比,比較了不同算法的損失函數(shù)、迭代次數(shù)和回報值。實驗結(jié)果表明,所提改進算法與原算法相比損失函數(shù)減小、迭代次數(shù)減少、回報值增加,驗證了算法的有效性,同時為AGV在復雜環(huán)境下能夠更加安全且快速地完成規(guī)劃任務提供了新的思路。
關(guān)鍵詞:深度學習;自動化導引車路徑規(guī)劃;深度確定性策略梯度算法;小批量優(yōu)先采樣
中圖分類號:TP393.04 文獻標志碼:A
文章編號:1001-3695(2022)03-006-0681-07
基金項目:國家自然科學基金資助項目(51507048);河北省重點研發(fā)計劃項目(20326628D);河北省高等學校科學技術(shù)研究項目(ZD2016142)
作者簡介:孟晨陽(1992-),男,碩士,主要研究方向為移動機器人路徑規(guī)劃及定位方法;郝崇清(1981-),男(通信作者),副教授,博士,主要研究方向為人工智能與智能控制技術(shù)(haochongqing@hebust.edu.cn);李冉(1995-),女,碩士研究生,主要研究方向為移動機器人路徑規(guī)劃及定位方法研究;王曉博(1994-),男,碩士,主要研究方向為多AGV路徑規(guī)劃及調(diào)度控制策略;王昭雷(1982-),男,高級工程師,碩士,主要研究方向為電力系統(tǒng)的智能檢測、故障診斷技術(shù);趙江(1958-),男,教授,碩士,主要研究方向為過程參數(shù)檢測與智能控制技術(shù).
doi:10.19734/j.issn.1001-3695.2021.08.0392
Research on AGV path planning method in complex environment based on improved DDPG algorithm
Meng Chenyang1,Hao Chongqing1?,Li Ran1,Wang Xiaobo2,Wang Zhaolei3,Zhao Jiang1
(1.School of Electrical Engineering,Hebei University of Science amp; Technology,Shijiazhuang 050018,China;2.Dept.of Intelligent Manufacturing,Hebei Polytechnic College,Shijiazhuang 050091,China;3.State Grid Hebei Electric Power Supply Co.Ltd.,Shijiazhuang 050051,China)
Abstract:In order to improve the search ability of AGV in complex unknown environment,this paper proposed an improved DDPG.It constructed the empirical playback matrix and double-layer network structure to improve the convergence speed of the algorithm ε-greedy in the green search strategy,to solve the local optimization problem of AGV in selecting the optimal action.To solve the problem of slow training speed of deep neural network,it applied priority sampling to depth deterministic strategy gradient algorithm.In order to solve the problem of high complexity of ordinary priority sampling,this paper proposed a small batch priority sampling method to train the network.In order to verify the effectiveness of the method,it used the grid method to model and compare the simulation experiments in different complex environments.It compared the loss function,iteration times and return value of different algorithms.The experimental results show that compared with the original algorithm,the improved algorithm reduces the loss function,reduces the number of iterations and increases the return value,which verifies the effectiveness of the algorithm.At the same time,it provides a new idea for AGV to complete the planning task more safely and quickly in complex environment.
Key words:deep learning;AGV path planning;depth deterministic policy gradient algorithm;small batch priority sampling
0 引言
近年來,AGV被廣泛應用于軍事、醫(yī)療、養(yǎng)老、物流以及娛樂方面。在完成任務時,AGV需要自主獲取各種環(huán)境信息,然后進行路徑規(guī)劃及導航。路徑規(guī)劃是智能AGV實現(xiàn)技術(shù)的核心內(nèi)容之一[1],其目的就是找到一條從起點到終點最短且安全的路徑,而路徑規(guī)劃的核心技術(shù)是算法規(guī)劃。隨著科學技術(shù)不斷發(fā)展,AGV的工作環(huán)境也越來越復雜,傳統(tǒng)算法如蟻群算法[2]、A*算法[3]、人工勢場算法[4]等已經(jīng)不能滿足AGV的路徑規(guī)劃需求。針對這個情況,人們提出了深度學習[5]的概念,又將強化學習[6]引入到深度學習中,提出了深度強化學習[7]的概念。深度學習是一種典型有監(jiān)督的學習方法,可以從簡單的數(shù)據(jù)開始,通過神經(jīng)網(wǎng)絡(luò)的逐層組合,提取環(huán)境特征;強化學習擁有很好的決策能力,結(jié)合神經(jīng)網(wǎng)絡(luò)的輸出完成決策,從而實現(xiàn)狀態(tài)到動作的映射,因此能較好地完成AGV的任務要求。
隨著人工智能時代的到來,路徑規(guī)劃領(lǐng)域所面臨的環(huán)境變得越來越復雜,這就要求路徑規(guī)劃算法具有對復雜環(huán)境作出快速變化和靈活學習的能力。為此,研究者將深度學習和強化學習相結(jié)合,且在實際應用中取得了很大成就。隨著時間的發(fā)展,動態(tài)路徑規(guī)劃[7]、Q-learning[8]、SAPSA[9]等強化學習算法被提出,但是這些強化學習方法在狀態(tài)空間和動作空間的大小有明顯局限性。
文獻[10]利用深度卷積神經(jīng)網(wǎng)絡(luò)框架,以RGB-D傳感器的圖片作為輸入信息,輸出機器人下一步動作,將深度學習的思想應用到了AGV的控制中。文獻[11]將強化學習應用于農(nóng)業(yè)AGV的視覺導航中,實現(xiàn)了強化學習與視覺導航的結(jié)合。文獻[12]利用深度強化學習實現(xiàn)了人型控制機器人的移動。Zhang等人[13]在使用深度強化學習時,用優(yōu)先經(jīng)驗回放機制代替概率抽樣的方式,提高了有效樣本的利用率。文獻[14]首次提出利用深度強化學習來解決AGV的路徑規(guī)劃問題。
學習策略選擇是影響學習效果的重要因素,許多研究者提出從特征經(jīng)驗中學習,然后通過學習的不同效果來更新網(wǎng)絡(luò)。從人工智能領(lǐng)域來看,一些特殊的樣本確實可以加快學習速度,樣本的全面性可以減少過擬合,提高模型的準確性,然而在實際應用中還是存在一些問題,如算法的模型過大[13]時訓練速度慢,無法處理連續(xù)動作下AGV的路徑規(guī)劃[15]等問題。
深度學習算法存在收斂速度慢等缺點,為了解決這一問題,成怡等人[16]設(shè)計新的獎懲函數(shù),提高算法的獎勵值來加快收斂速度。周盛世等人[17]將深度學習算法和人工勢場算法相結(jié)合設(shè)計了新的回報函數(shù),給予原始算法一定指引,減少訓練的盲目性,提高了收斂速度。張晶等人[18]通過改進卷積神經(jīng)網(wǎng)絡(luò)模型提高算法的收斂速度。
深度學習算法在完成路徑規(guī)劃任務時選擇最優(yōu)動作時會出現(xiàn)局部最優(yōu)問題,導致AGV停止前進,不能完成估計規(guī)劃任務。為了解決這一問題,董永峰等人[19]提出一種動態(tài)融合深度學習算法,通過DQN的先驗知識進行網(wǎng)絡(luò)訓練,減少估計值對選擇動作時的影響。封碩等人[20]將深度學習與Q-learning框架結(jié)合進行改進,解決了一定情況下AGV路徑規(guī)劃問題中的局部最優(yōu)問題。
為了解決深度學習算法網(wǎng)絡(luò)訓練速度慢的問題,陳鑫等人[21]設(shè)計基于引導的獎勵函數(shù)以加快網(wǎng)絡(luò)的訓練速度,以回合平均獎勵作為優(yōu)先級對經(jīng)驗池進行改進。余伶俐等人[22]利用蒙特卡羅預估AGV的狀態(tài)量,加快訓練網(wǎng)絡(luò)的決策和規(guī)劃速度,最終提高了深度學習算法的網(wǎng)絡(luò)訓練速度。針對上述問題,研究者提出了功能更加強大的深度確定性策略梯度算法。但是深度確定性策略梯度算法仍然存在著算法收斂速度和訓練速度過慢、AGV在進行路徑規(guī)劃時選擇動作時局部最優(yōu)等問題。本文在分析了深度確定性策略梯度算法的優(yōu)點和不足后,通過構(gòu)建記憶回放矩陣,采用新的搜索策略以及小批量優(yōu)先級采樣技術(shù)保證AGV在未知環(huán)境中能更好地進行路徑規(guī)劃。
1 問題描述與相關(guān)工作
1.1 問題描述
本文主要解決的是AGV在完成任務時的路徑規(guī)劃問題,全方位移動AGV作為AGV的一種,可以完成諸如物料移動的一系列工作,其中,基于麥克納姆輪的全方位移動AGV有著卓越的全方位移動的優(yōu)點,AGV實物如圖1所示,其結(jié)構(gòu)如圖2所示。該AGV的速度公式如下所示:
Vx=Rω4(θ1+θ2+θ3+θ4),Vy=Rω4(-θ1+θ2+θ3-θ4)
ωz=Rω4(L+W)(-θ1+θ2-θ3+θ4)
其中:Rω為車輪的半徑;θ1、θ2、θ3、θ4分別代表AGV四個輪子的速度;L和W分別是AGV長和高的一半;Vx和Vy分別為AGV兩個方向的速度;ωz為AGV的角速度。
1.2 DQN算法
DQN算法將深度卷積網(wǎng)絡(luò)和Q-learning算法相結(jié)合[23],以神經(jīng)網(wǎng)絡(luò)為載體,將外部信息作為強化學習的狀態(tài)且為卷積網(wǎng)絡(luò)的輸入。利用估計網(wǎng)絡(luò)和目標網(wǎng)絡(luò)分別表示狀態(tài)函數(shù)和目標值函數(shù),使用近似求解法進行求解,值函數(shù)公式可表達為
其中:Q(s,a,θ)可以表示任何類型的函數(shù),無論狀態(tài)空間多大都可以用神經(jīng)網(wǎng)絡(luò)的輸出表示Q值。
DQN算法面向相對簡單的離散輸出,基于價值網(wǎng)絡(luò),智能體遍歷每個狀態(tài)s下的所有動作值,選擇價值最高的動作進行輸出。更新網(wǎng)絡(luò)的權(quán)值公式可表達為
1.3 確定性策略梯度算法
確定性策略梯度算法可以處理高維且連續(xù)的動作,解決了深度Q網(wǎng)絡(luò)算法只能處理低維離散的不足。智能體在每一個時間步下依據(jù)概率分布函數(shù)來進行動作采樣,進而獲得當前時間步最優(yōu)動作a*t:
生成最優(yōu)動作的本質(zhì)是隨機過程,因此策略分布函數(shù)π_θπθ(st|θπ)屬于隨機過程。算法表示每一個時間步的動作都可以通過函數(shù)μ來獲得確定的動作:
其中:at為確定性動作,不再是通過隨機采樣策略獲得的動作,而是選擇最大概率的動作at。
1.4 深度確定性策略梯度算法
深度確定性策略梯度算法將深度神經(jīng)網(wǎng)絡(luò)與確定性策略梯度算法相結(jié)合,利用演員—評論家算法作為核心架構(gòu)。整個運算過程為馬爾可夫決策過程,每個任務都對應一個四元數(shù)組E={S,A,P,R}。采用卷積神經(jīng)網(wǎng)絡(luò)作為策略函數(shù)μ(s θμ)和動作值函數(shù)Q(S a θQ)的近似,采用隨機梯度下降的方法訓練上述兩個神經(jīng)網(wǎng)絡(luò)模型中的參數(shù)。
1)DDPG算法基本概念及原理
智能體的每一時間動作at通過確定性動作策略μ來計算獲得,即at=μ(st)。通常使用積累折扣獎賞來定義每一個時刻t的狀態(tài)匯報,即
智能體在進行搜索時,算法訓練的目的就是為了找到更多更好的策略。為了保證最終策略為最優(yōu),DDPG算法引入了隨機噪聲,以保證每次最終策略的最優(yōu)性。
狀態(tài)動作值函數(shù)Qπ(st|at)表示在狀態(tài)st執(zhí)行了at后,再執(zhí)行策略π后所累計的獎賞,可表示為
DDPG的目標函數(shù)用折扣積累獎勵來表示,即
為了保證每個時間步都能找到最優(yōu)確定性行為策略μ*,將積累折扣獎勵等價于最大化目標函數(shù)Jβ(μ)中的策略:
遵循鏈式求導法對目標函數(shù)進行求導,可以得到算法框架的更新方式:
其中:Qμ(st;μ(S))表示在狀態(tài)s下,按照確定性策略μ選擇動作時,產(chǎn)生的動作狀態(tài)Q;Est~ρβ則表示狀態(tài)s符合分布時的期望值。DDPG算法使用深度Q網(wǎng)絡(luò)算法的更新方法來更新評論家網(wǎng)絡(luò),其價值網(wǎng)絡(luò)可以表示為
其中:θμ′、θQ′分別表示目標策略網(wǎng)絡(luò)和目標價值網(wǎng)絡(luò)的參數(shù),并利用梯度下降算法更新網(wǎng)絡(luò)模型中的參數(shù),設(shè)定學習率為
可以看出訓練價值網(wǎng)絡(luò)的過程就是尋找價值網(wǎng)絡(luò)中參數(shù)最優(yōu)解的過程,同時減小價值網(wǎng)絡(luò)的損失,進而提高算法效率以及穩(wěn)定性。
2)DDPG算法框架
DDPG算法同時使用在線網(wǎng)絡(luò)和目標網(wǎng)絡(luò),通過在線網(wǎng)絡(luò)和目標網(wǎng)絡(luò)相結(jié)合解決在使用單個神經(jīng)網(wǎng)絡(luò)時,動作值也就是Q值學習過程中出現(xiàn)的不穩(wěn)定問題。DDPG算法分別創(chuàng)建策略網(wǎng)絡(luò)和價值網(wǎng)絡(luò),這兩個運算網(wǎng)絡(luò)分別再創(chuàng)建各自的兩個神經(jīng)網(wǎng)絡(luò),一個是在線網(wǎng)絡(luò),另一個是目標網(wǎng)絡(luò)。通過梯度上升的方式結(jié)合小批量數(shù)據(jù)樣本更新在線網(wǎng)絡(luò)的參數(shù),最后通過軟更新算法更新目標網(wǎng)絡(luò)的參數(shù)。
3)DDPG算法流程
a)初始化策略在線網(wǎng)絡(luò)μ(s;θμ)和價值在線網(wǎng)絡(luò)Q(s,a;θQ),初始化經(jīng)驗回放緩沖池,初始化UO隨機過程。
b)演員根據(jù)行為策略式選擇一個動作at。其中行為策略根據(jù)當前在線策略網(wǎng)絡(luò)μ和隨機UO噪聲生成的隨機過程,從該隨機過程進行采樣獲得動作值at。
c)環(huán)境執(zhí)行步驟a)產(chǎn)生的動作at,并返回獎勵rt和新的狀態(tài)st+1。
d)智能體將環(huán)境狀態(tài)轉(zhuǎn)換過程產(chǎn)生的信號(st,at,rt,st+1)存儲在經(jīng)驗池中,作為在線網(wǎng)絡(luò)模型的訓練集。
e)智能體從經(jīng)驗池中隨機采樣N個轉(zhuǎn)換經(jīng)驗樣本,作為在線策略網(wǎng)絡(luò)、在線價值網(wǎng)絡(luò)的小批量訓練樣本數(shù)據(jù)。
f)計算在線價值網(wǎng)絡(luò)Q的梯度,其中在線價值網(wǎng)絡(luò)Q的損失函數(shù)使用均方差誤差
g)使用隨機梯度下降算法更新在線價值網(wǎng)絡(luò)Q和參數(shù)θQ。
h)使用隨機梯度下降算法更新在線策略網(wǎng)絡(luò)參數(shù)θμ,使用軟更新方法更新目標策略網(wǎng)絡(luò)μ′和目標價值網(wǎng)絡(luò)Q′。
2 本文算法
AGV的路徑規(guī)劃是AGV實現(xiàn)功能的重要技術(shù)任務。為了解決深度確定性梯度策略算法中存在的問題,本文提出了基于深度確定性梯度策略算法的改進算法。首先通過AGV自身的攝像頭進行拍攝獲取環(huán)境信息,然后將這些數(shù)據(jù)通過記憶回放的方式輸入到算法的雙網(wǎng)絡(luò)結(jié)構(gòu)中,再根據(jù)新的搜索策略選擇最優(yōu)動作,使用優(yōu)先級采樣的方式從經(jīng)驗池中隨機采樣多個經(jīng)驗樣本,最后使用隨機梯度下降算法更新網(wǎng)絡(luò)參數(shù)直至完成訓練。
2.1 改進的DDPG算法
本文對深度確定性策略梯度算法進行了改進,將新的訓練方式引入到原算法中,其網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示。
機器人通過自身或者外部傳感器獲得環(huán)境數(shù)據(jù),將這些數(shù)據(jù)作為樣本池中的樣本,通過優(yōu)先級采樣的方式提取樣本,再通過記憶回放矩陣組合處理樣本進行梯度下降學習,輸入給DDPG的雙網(wǎng)絡(luò),最后通過優(yōu)先級搜索策略選擇最好的動作傳輸給AGV進行執(zhí)行,如圖4所示。
改進后的深度確定性策略梯度算法流程如下:
a)初始化策略在線網(wǎng)絡(luò)μ(μ,θμ)和價值在線網(wǎng)絡(luò)Q(s,a,θQ),分別為演員網(wǎng)絡(luò)和批評家網(wǎng)絡(luò)。其中,策略網(wǎng)絡(luò)模型的參數(shù)為θμ,價值網(wǎng)絡(luò)模型的參數(shù)為θQ。
b)初始化策略目標網(wǎng)絡(luò)和價值目標網(wǎng)絡(luò),參數(shù)對應于在線網(wǎng)絡(luò)為θμ′←θμ;θQ′←θQ。
c)初始化經(jīng)驗回放池R。
d)AGV通過傳感器獲得環(huán)境樣本,將樣本存儲在經(jīng)驗池中。
e)演員根據(jù)行為策略式選擇一個動作at。其中行為策略根據(jù)當前策略網(wǎng)絡(luò)隨機噪聲生成隨機過程,并從該隨機過程中計算每個動作的優(yōu)先級,通過記憶回放矩陣產(chǎn)生新的動作at和狀態(tài)st。
f)智能體從經(jīng)驗池中以優(yōu)先級采樣的方式采用N個經(jīng)驗轉(zhuǎn)換樣本作為訓練數(shù)據(jù)。
g)計算在線價值網(wǎng)絡(luò)Q的梯度,其中在線價值網(wǎng)絡(luò)Q的損失函數(shù)采用均方差誤差計算如式(15)所示。
h)使用隨機梯度下降算法更新在線價值網(wǎng)絡(luò)Q和參數(shù)θQ。
i)使用隨機梯度下降算法更新在線策略網(wǎng)絡(luò)參數(shù)θμ,使用軟更新方法更新目標策略網(wǎng)絡(luò)μ′和目標價值網(wǎng)絡(luò)Q′。
j)使用波爾茲莫和ε-greedy結(jié)合的搜索策略從策略網(wǎng)絡(luò)中選擇動作作為深度確定性策略梯度網(wǎng)絡(luò)算法的輸出。
結(jié)合經(jīng)驗回放學習策略,可以得到如圖5所示的網(wǎng)絡(luò)結(jié)構(gòu),進而得到改進的DDPG算法網(wǎng)絡(luò)模型。在這個圖中以柵格圖的局部作為輸入,上面的學習網(wǎng)絡(luò)負責估計每個狀態(tài)的價值,下面的評價網(wǎng)絡(luò)負責評價網(wǎng)絡(luò)圖中的每一個行動的經(jīng)驗價值。為了更高效地改進DDPG算法,采用了小批量優(yōu)先采樣的樣本提取方式。
2.2 經(jīng)驗回放
1993年經(jīng)驗回放由Lin根據(jù)尖波/波紋的網(wǎng)絡(luò)事件在海馬體依賴性記憶鞏固中的作用提出。經(jīng)驗表示的是智能體在某一時刻t的狀態(tài)(s,a,r,s′),智能體將得到的經(jīng)驗數(shù)據(jù)存入到經(jīng)驗回放池中,然后進行采樣,并通過數(shù)據(jù)訓練優(yōu)化深度神經(jīng)網(wǎng)絡(luò)參數(shù)。在這個過程中,從緩存器中批量提取數(shù)據(jù)的過程稱為經(jīng)驗回放。
DDPG算法在神經(jīng)網(wǎng)絡(luò)與環(huán)境相互交互的過程中,智能體前后狀態(tài)關(guān)聯(lián)性很強,使用擬合函數(shù)可能會導致算法出現(xiàn)收斂性差以及非平穩(wěn)分布的問題。其原因在于利用已有標記的數(shù)據(jù)去訓練神經(jīng)網(wǎng)絡(luò),雖然數(shù)據(jù)獨立分布,但是數(shù)據(jù)在時間上還是存在很強的相關(guān)性,因此直接訓練會導致不穩(wěn)定且收斂性差的問題。帶有優(yōu)先級經(jīng)驗回放原理的訓練流程如圖6所示。
針對這個問題,本文提出了將經(jīng)驗回放矩陣引入到DDPG算法中,在與環(huán)境交互的過程中,智能體在時刻t狀態(tài)s下執(zhí)行動作at,得到回報值r并到達下一個狀態(tài)s′,反復執(zhí)行這個過程,直到完成訓練。利用經(jīng)驗回放的方法可以刪除數(shù)據(jù)中的關(guān)聯(lián)性,提高數(shù)據(jù)的優(yōu)先級。在每次訓練過程中,隨機抽取記憶中的一批樣本,并對其進行梯度下降學習。在通過經(jīng)驗回放矩陣將每個單元(s,a,r,s′)的新老經(jīng)驗單元進行混合更新,打破每個單元之間的聯(lián)系,提高每個單元的利用率,從而提高DDPG算法的收斂速度與穩(wěn)定性,保證訓練過程更加穩(wěn)定。其中使用經(jīng)驗回放機制最重要的是同時保證數(shù)據(jù)的多樣性和利用率,學習過程中使用下降梯度參數(shù)過程,經(jīng)驗回放矩陣充分利用樣本,其核心部分是要對數(shù)據(jù)的重要性有一個判斷標準,符合該標準的一個重要指標是時間差分TD的偏差δ,即
δ越大則這一時刻的學習效率越高,設(shè)樣本i處的TD偏差為δi,則該樣本處的采樣概率為
通過經(jīng)驗緩存池來記錄智能體的每個樣本狀態(tài),算法通過采樣技術(shù)獲得樣本,進而完成訓練,同時利用批評家網(wǎng)絡(luò)優(yōu)化損失函數(shù)。但是通過貪婪搜索方法和均勻采樣技術(shù)獲得的樣本往往出現(xiàn)局部最優(yōu)和利用率差的問題,所以引入新的搜索策略和樣本采樣技術(shù)。
2.3 搜索策略
在產(chǎn)生動作之后,DDPG算法需要根據(jù)搜索策略來選擇最佳動作。深度強化學習算法常用的搜索策略有ε-greedy搜索策略、波爾茲曼搜索策略和高斯搜索策略等。其中ε-greedy搜索策略為全局搜索策略,波爾茲曼為局部搜索策略。ε-greedy搜索策略是在貪婪搜索策略的基礎(chǔ)上引入搜索因子ε的一種隨機搜索策略。AGV以ε的概率選擇一種動作a,以1-ε的方式選擇平均獎勵最高的那個動作a′,以這種搜索策略選擇動作雖然可以更多地判斷動作獎勵值,但容易導致算法出現(xiàn)局部最優(yōu)問題。為了解決ε-greedy搜索策略在DDPG算法應用時容易產(chǎn)生局部最優(yōu)的問題,本文將波爾茲曼搜索策略引入ε-greedy搜索策略以解決AGV在搜索時的局部最優(yōu)問題。ε-greedy已經(jīng)完成了搜索和選擇的任務,參數(shù)ε表示搜索因子,當AGV距離障礙物較近時會產(chǎn)生數(shù)β,如果βgt;ε,則隨機選擇一個動作,若βlt;ε,則利用玻爾茲曼搜索策略對全部AGV可以進行的動作進行判斷,對所有概率p(s,ai)進行計算,計算公式為
其中:ai表示不同時刻的狀態(tài)下可以選擇的動作。
概率最大的動作即為最佳動作,通過完成最佳動作機器人就可以進入下一個狀態(tài)st+1。其流程如下所示:
搜索策略:
a)初始化概率β
b)如果βlt;ε
c)a=rand(A)
d)否則a=Boltzmann(A)
e)結(jié)束
2.4 小批量優(yōu)先級采樣技術(shù)
深度學習在訓練過程中以等概率從樣本集中隨機抽取樣本進行訓練,但是隨著訓練的推進,樣本集也越來越大,每個樣本的利用率也在不斷變化,導致算法效率變低,訓練速度緩慢。原有深度學習算法為了提高效率,不丟失經(jīng)驗數(shù)據(jù),利用緩存記憶單元機制存儲轉(zhuǎn)移樣本,在AGV工作的同時存儲原有樣本,不僅增加了機器人運算負擔,而且清除了樣本之間的關(guān)聯(lián)性。等概率采集樣本不能區(qū)分出樣本的重要性,更重要的是機器人的緩存空間有限,導致很多有效的樣本會被刪除,這種采樣方式會導致很多樣本沒有得到充分利用就被舍棄了,采集過程根本沒有發(fā)揮作用。針對這一問題,本文提出了基于TD誤差[24]的優(yōu)先級采樣方式,對小樣本進行優(yōu)先排序,結(jié)合演員—評論家算法框架最大程度地利用所有樣本,保證優(yōu)先的樣本可以在智能體的學習過程中的重要性所占權(quán)重更大。TD是時間差分(temporal difference)偏差δ,即為
其中:誤差δ越大,表示智能體在該狀態(tài)學習效率越高。
深度確定性策略梯度算法結(jié)合了深度強化學習算法和策略梯度算法,利用演員—評論家算法框架進行訓練。演員通過網(wǎng)絡(luò)參數(shù)確定當前狀態(tài)下的最佳動作,評論家通過評估網(wǎng)絡(luò)對動作進行評估。雙網(wǎng)絡(luò)的結(jié)果表示同時存在另一個獨立網(wǎng)絡(luò)來進行評估,產(chǎn)生誤差信號TD指導算法框架更新,因此選擇最優(yōu)樣本來訓練網(wǎng)絡(luò)十分必要。
對任意時刻t,每個樣本的優(yōu)先級表示為
根據(jù)每個樣本的優(yōu)先級,確定樣本的概率分布:
根據(jù)式(22)確定樣本選取的分布概率,優(yōu)先選擇概率較大的樣本進行訓練,但是訓練初期樣本較少,概率分布不明顯,適當減少概率分布對選取結(jié)果的影響,本文引入?yún)?shù)a,以保證每次訓練的合理性,訓練初期的樣本概率分布表示為
其中:a為優(yōu)先級權(quán)重;b為恒定參數(shù),根據(jù)訓練次數(shù)進行變化。為了減少訓練成本,本文引入一種小樣本排序的方式來進行訓練,減少算法的復雜程度,增加樣本的多樣性,同時結(jié)合DDPG算法中的軟更新方式,通過每一時間對目標網(wǎng)絡(luò)進行小幅度更新,在保證訓練速度的同時,也保證了算法的穩(wěn)定性。優(yōu)先經(jīng)驗回放機制流程如圖7所示。
下面給出基于小批量優(yōu)先采樣技術(shù)和改進搜索策略機制的DDPG算法的偽代碼:
a)初始化樣本池D,容量大小為N
b)初始化目標網(wǎng)絡(luò)Q和策略網(wǎng)絡(luò)U
c)初始化參數(shù)μ,α,β
d)重復
e)初始化智能體狀態(tài)(s,a,r,s′)
f)重復
g)以概率ε選擇一個動作后,再使用波爾茲曼搜索選擇最終動作ai
h)否則選擇動作ai=argmaxaQ(si,a;θ)
i)執(zhí)行完動作ai,并記錄獎勵值rt和新的狀態(tài)st+1
j)計算誤差δ
k)計算優(yōu)先采樣權(quán)重wi
l)最小化損失函數(shù)更新評論家網(wǎng)絡(luò)
m)設(shè)置si+1=si,ai,si,以最新概率p選擇數(shù)據(jù)存儲于記憶單元
n)從D中根據(jù)最新概率選擇采樣M個樣本
o)使用梯度策略算法更新演員網(wǎng)絡(luò)
p)更新目標網(wǎng)絡(luò)
q)結(jié)束循環(huán)
r)輸出訓練完成的網(wǎng)絡(luò)
本文所提改進的DDPG算法主要解決的是復雜環(huán)境下的AGV路徑規(guī)劃問題,與一般情況下的AGV路徑規(guī)劃問題不同的是,復雜環(huán)境是無法用簡單的環(huán)境建模方法完成建模,蟻群算法等搜索算法無法完成路徑規(guī)劃任務的環(huán)境。復雜環(huán)境利用柵格法建模時一般大小都在100×100以上,所以本文應用深度學習算法來解決。AGV在可觀察到的環(huán)境中獲取經(jīng)驗池中的樣本作為改進網(wǎng)絡(luò)的輸入,這些樣本進行優(yōu)先處理。先通過目標網(wǎng)絡(luò)對數(shù)據(jù)進行分析,在價值網(wǎng)絡(luò)中估計最大價值對應的動作,然后利用競爭網(wǎng)絡(luò)平衡處理價值網(wǎng)絡(luò)和目標網(wǎng)絡(luò)中動作對估計值的影響,最后得出每個動作對應的估計值。再由改進的搜索策略處理每個動作的選擇概率最終選擇概率最大,也就是最優(yōu)動作。
3 仿真實驗
為了驗證改進后的深度確定性策略梯度算法的有效性,基于柵格法建模采用不同獎懲機制,在不同復雜環(huán)境下進行了對比實驗,對深度確定性策略梯度算法法和改進后深度確定性策略梯度算法的運行結(jié)果進行比對。
3.1 實驗環(huán)境建模
本文仿真實驗在MATLAB仿真實驗平臺上完成,將AGV看成一個質(zhì)點,在仿真圖中用黑點表示,具有向前、向后、向左和向右四個運動方向。AGV運動環(huán)境采用柵格法建模完成,柵格法建模具有環(huán)境信息表達清楚、建模信息量小以及膨脹化處理障礙物運動安全性高等優(yōu)點。設(shè)計仿真環(huán)境分為兩種簡單環(huán)境,即空間內(nèi)只存在靜態(tài)障礙物;復雜環(huán)境,即空間內(nèi)同時存在靜態(tài)障礙物和動態(tài)障礙物。
3.2 獎勵函數(shù)設(shè)計
獎懲函數(shù)是深度學習中的重要組成部分,通過對得到動作進行評價來保證訓練合適的神經(jīng)網(wǎng)絡(luò),用標量λ表示。深度學習的目的就是使AGV最終獲得的獎懲值之和最大。本文實驗設(shè)置的獎懲函數(shù)可以表述為若機器人與障礙物發(fā)生碰撞,則λ1為-5;若機器人向前運動,則λ2設(shè)置為0,否則設(shè)置為-5;若機器人到達目的地,則λ3設(shè)定為10。數(shù)學表達為
3.3 仿真實驗結(jié)果
1)簡單環(huán)境仿真結(jié)果
采用MATLAB建立以柵格圖[16]為環(huán)境建模方式的網(wǎng)格地圖來表示環(huán)境信息且每次實驗的障礙物隨機生成。簡單環(huán)境主要指AGV運動空間柵格法建模大小在50×50以下且只存在靜態(tài)障礙物,靜態(tài)障礙物占總面積的30%~40%。網(wǎng)格模型尺寸為30×30,每個柵格對應機器人一個運動狀態(tài),狀態(tài)空間坐標為20×20的網(wǎng)格大小的頂坐標(x1,x2,y1,y2)。環(huán)境狀態(tài)如圖8所示。
圖9中起始點坐標為(1,29),黑色方格表示障礙物,目標點坐標為(29,1),白色表示安全區(qū)域。圖9為AGV在迭代2 000次后所獲得的路徑,為從起點到目標點的最短路徑。說明通過機器人與環(huán)境的不斷交互,改進的深度確定性策略梯度算法可以讓AGV在簡單環(huán)境中進行良好的路徑規(guī)劃。
表1為改進深度確定性策略梯度算法與深度確定性策略梯度算法訓練回報值的對比。由表1可以看出,改進后的DDPG算法獲得的回報值更加平滑,數(shù)據(jù)變化比較穩(wěn)定,而DDPG雖然一開始回報值變化較高,但不穩(wěn)定。隨著迭代次數(shù)的增加,最終回報值也沒有改進,DDPG算法的回報值高,表示改進DDPG算法可以更快地完成對AGV的訓練,并使得AGV更好地適應復雜環(huán)境。對比兩種算法的迭代次數(shù)和最終獲得的回報值可以看出,改進DDPG算法下AGV的訓練速度明顯提高了。訓練過程中,獲得回報值越穩(wěn)定,表示AGV作出的判斷越正確。利用較少的迭代次數(shù)獲得更多的回報值表示AGV訓練收斂速度快,訓練過程中更能成功地躲避障礙物完成路徑規(guī)劃,到達目標位置。
2)復雜環(huán)境仿真結(jié)果
復雜環(huán)境指AGV運動空間柵格法建模大小在100×100以上且同時存在動態(tài)與靜態(tài)障礙物,障礙物占總面積的40%~50%。設(shè)置訓練參數(shù)如表2所示。
在復雜環(huán)境中,本文對改進DDPG和DDPG算法的迭代次數(shù)進行比較,如圖10所示。通過對比可以看出,改進的DDPG 算法迭代次數(shù)更少,每一百次迭代中積累值更高,這表示改進后的DDPG算法可以利用更少的迭代次數(shù)完成對AGV的訓練,并獲得更高的獎勵值。
本文通過對比損失函數(shù)值來對比改進的DDPG算法和DDPG算法的穩(wěn)定性,如圖11所示。通過對比損失函數(shù)可以看出,改進后的DDPG算法更加穩(wěn)定,曲線波動較小,且未出現(xiàn)局部最優(yōu)問題。
為了對比改進的DDPG算法和其他深度學習算法的改進優(yōu)勢以及驗證改進的DDPG算法的適用性,本文將深度學習算法、深度強化學習算法、DDPG算法和改進的DDPG算法同時應用于同一個環(huán)境進行路徑規(guī)劃,該實驗環(huán)境為CPU服務器、MATLABR2014a下的環(huán)境對AGV進行訓練,其中AGV的結(jié)構(gòu)如問題描述中所述。圖12和13分別是針對環(huán)境建模大小在100×100、150×150和200×200下四種算法迭代次數(shù)和模擬時間與訓練時間的關(guān)系。說明了改進的DDPG算法可以在環(huán)境復雜度劇烈變化的情況下很好地完成路徑規(guī)劃任務。圖12表示的是迭代次數(shù)和訓練時間的線性關(guān)系。由對比圖可以看出,隨著訓練的進行,改進的DDPG算法可以很快地完成訓練,表示算法的收斂性更好,能夠更快地完成任務。
圖13顯示了學習時間和模擬時間的線性關(guān)系,在不同面積的實驗中,迭代次數(shù)隨著環(huán)境面積的變化而變化。圖13的仿真結(jié)果表明,改進的DDPG隨機學習時間的增多,模擬試卷并沒有很多改變,在仿真過程中,可以發(fā)現(xiàn)學習幾次之后就穩(wěn)定了,表示改進的DDPG算法不需要學習太多次數(shù)。
綜合考慮實驗結(jié)果可以得出,相比DDPG算法改進后的DDPG算法明顯提高了AGV的學習速度和AGV的路徑規(guī)劃能力,并且改進DDPG算法得到最優(yōu)路徑的速度要比DDPG算法更快,準確率更高。
為了更加清楚地對比改進DDPG算法的優(yōu)化效果,本文將人工勢場-DDPG算法、Option-DDPG算法和改進的DDPG算法進行對比,比較了三個算法在獎賞值、訓練時間以及在不同規(guī)模大小的環(huán)境下的迭代次數(shù)。得到結(jié)果如表3所示。
從表3可以看出,改進的DDPG算法平均積累獎賞值更高,說明改進的DDPG算法產(chǎn)生的解的質(zhì)量更好,能更快地解決AGV路徑規(guī)劃問題,在改進的DDPG算法下可以更好地適應復雜環(huán)境,完成對AGV的訓練,更好解的出現(xiàn)幫助算法可以更快完成路徑規(guī)劃任務,由表中訓練時間改進的DDPG算法最短也可以得出,為了對比不同算例規(guī)模,結(jié)合上文中提到的100×100、150×150和200×200環(huán)境大小實驗可以得出,改進的DDPG算法迭代次數(shù)和算法運算時間更少,更多優(yōu)質(zhì)解的出現(xiàn)說明改進的DDPG算法能成功避開障礙物到達終點,完成路徑規(guī)劃任務。
4 結(jié)束語
本文提出了一種改進的DDPG算法,其通過構(gòu)建記憶回放矩陣和雙層網(wǎng)絡(luò)結(jié)構(gòu),使得函數(shù)估計更加準確,保證了AGV快速準確識別最優(yōu)行動方向。利用波爾茲曼搜索策略和ε-greedy相結(jié)合的搜索策略更加有效地選擇最優(yōu)動作,防止AGV在局部位置原地不動,同時引入小批量優(yōu)先級采樣方法利用每個樣本反復訓練提高了樣本的利用率。仿真實驗對比了深度學習、深度強化學習、DDPG算法和改進的DDPG算法,結(jié)果表明改進的DDPG算法迭代次數(shù)最少、訓練時間最短。所提算法為AGV在實際應用中能更加安全快速地完成任務提供了新的方法,但未能解決三維情況下的AGV復雜環(huán)境路徑規(guī)劃問題,這也是未來的一個主要研究方向。
參考文獻:
[1]Fu Bing,Chen Lin,Zhou Yuntao,et al.An improved A* algorithm for the industrial robot path planning with high success rate and short length[J].Robotics and Autonomous Systems,2018,106:26-37.
[2]Adolf F M,Langer A,De Melo Pontes e Silva L,et al.Probabilistic roadmaps and ant colony optimization for UAV mission planning[J].IFAC Proceedings Volumes,2007,40(15):264-269.
[3]Yu Xue,Chen Weineng,Gu Tianlong,et al.ACO-A*:ant colony optimization plus A* for 3D traveling in environments with dense obstacles[J].IEEE Trans on Evolutionary Computation,2019,23(4):617-631.
[4]Wang Bingfeng,Cui Shigang,Zhao Li, et al.Mobile robot map buil-ding based on grid arrangement[C]//Proc of International Conference on Artificial Intelligence and Computational Intelligence.2009.
[5]董瑤,葛瑩瑩,郭鴻湧,等.基于深度強化學習的移動機器人路徑規(guī)劃[J].計算機工程與應用,2019,55(13):15-19.(Dong Yao,Ge Yinyin,Guo Hongyong,et al.Mobile robot path planning based on deep reinforcement learning[J].Computer Engineering and Application,2019,55(13):15-19.)
[6]Md Fadlullah Z,Tang F P,Mao Bomin,et al.State-of-the-art deep learning:evolving machine intelligence toward tomorrow’s intelligent network traffic control systems[J].IEEE Communications Surveys and Tutorials,2017,49(4):60-65.
[7]牟春鵬,汪正濤,陶衛(wèi)軍.室內(nèi)移動機器人運動規(guī)劃與導航算法優(yōu)化[J].兵工自動化,2021,40(7):87-92.(Mou Chunpeng,Wang Zhengtao,Tao Weijun.Motion planning and navigation algorithm optimization of indoor mobile robot[J].Ordnance Automation,2021,40(7):87-92.)
[8]王崢,郭彥,聶崢,等.基于競爭雙深度Q學習的智能電表隱私保護與成本管理[J].重慶郵電大學學報:自然科學版,2021,33(4):554-561.(Wang Zheng,Guo Yan,Nie Zheng,et al.Smart meter privacy protection and cost management based on competitive dual depth Q-learning[J].Journal of Chongqing University of Posts and Telecommunications:Natural Science Edition,2021,33(4):554-561.)
[9]Lombard L.SAPSA woman professional of the year[J].SATCE Civil Engineering,2020,28(6):52.
[10]Boutaba R,Salahuddin M A,Limam N,et al.A comprehensive survey on machine learning for networking:evolution,applications and research opportunities[J].Journal of Internet Services and Applications,2018,9(1):1-99.
[11]谷旭平,唐大全,唐管政.無人機編隊協(xié)同導航研究現(xiàn)狀及進展[J].艦船電子工程,2021,41(7):28-33.(Gu Xuping,Tang Daquan,Tang Guanzheng.Research status and progress of UAV formation cooperative navigation[J].Ship Electronic Engineering,2021,41(7):28-33.)
[12]周俊,陳欽,梁泉.基于強化學習的農(nóng)業(yè)移動機器人視覺導航[J].農(nóng)業(yè)機械學報,2014,45(2):53-58.(Zhou Jun,Chen Qin,Liang Quan.Visual navigation of agricultural mobile robot based on reinforcement learning[J].Journal of Agricultural Machinery,2014,45(2):53-58.)
[13]Zhang Hao,Jiao Zongxia,Shang Yaoxing,et al.Ground maneuver for front-wheel drive aircraft via deep reinforcement learning[J].Chinese Journal of Aeronautics,2021,34(10):166-176 .
[14]Li Jiawen,Li Yaping,Yu Tao.Distributed deep reinforcement lear-ning-based multi-objective integrated heat management method for water-cooling proton exchange membrane fuel cell[J].Case Studies in Thermal Engineering,2021,27:101284.
[15]石小偉,馮廣京,蘇培添,等.基于寧波城鄉(xiāng)結(jié)合部的軌道交通接駁常規(guī)公交線網(wǎng)優(yōu)化研究[J].計算機應用研究,2021,38(3):718-724.(Shi Xiaowei,F(xiàn)eng Guangjing,Su Peitian,et al.Research on optimization of rail transit connecting conventional bus network based on urban-rural fringe of Ningbo[J].Application Research of Computers,2021,38(3):718-724.)
[16]成怡,郝密密.改進深度強化學習的室內(nèi)移動機器人路徑規(guī)劃[J].計算機工程與應用,2021,57(21):256-262.(Cheng Yi,Hao Mimi.Path planning of indoor mobile robot based on improved deep reinforcement learning[J].Computer Engineering and Application,2021,57(21):256-262.)
[17]周盛世,單梁,常路,等.基于改進DDPG算法的機器人路徑規(guī)劃算法研究[J].南京理工大學學報,2021,45(3):265-270,287.(Zhou Shengshi,Shan Liang,Chang Lu,et al.Research on robot path planning algorithm based on improved DDPG algorithm[J].Journal of Nanjing University of Technology,2021,45(3):265-270,287.)
[18]張晶,蔡志全,韓永成,等.基于深度強化學習技術(shù)的變電站巡檢機器人的路徑規(guī)劃研究[J].冶金動力,2021(3):4-7,14.(Zhang Jing,Cai Zhiquan,Han Yongcheng,et al.Research on path planning of substation inspection robot based on deep reinforcement learning technology[J].Metallurgical Power,2021(3):4-7,14.)
[19]董永峰,楊琛,董瑤,等.基于改進的DQN機器人路徑規(guī)劃[J].計算機工程與設(shè)計,2021,42(2):552-558.(Dong Yongfeng,Yang Chen,Dong Yao,et al.Robot path planning based on improved DQN[J].Computer Engineering and Design,2021,42(2):552-558.)
[20]封碩,舒紅,謝步慶.基于改進深度強化學習的三維環(huán)境路徑規(guī)劃[J].計算機應用與軟件,2021,38(1):250-255.(Feng Shuo,Shu Hong,Xie Buqing.Three dimensional environmental path planning based on improved deep reinforcement learning[J].Computer Application and Software,2021,38(1):250-255.)
[21]陳鑫,蘭鳳崇,陳吉清.基于改進深度強化學習的自動泊車路徑規(guī)劃[J].重慶理工大學學報:自然科學,2021,35(7):17-27.(Chen Xin,Lan Fengchong,Chen Jiqing.Automatic parking path planning based on improved deep reinforcement learning[J].Journal of Chongqing University of Technology:Natural Science,2021,35(7):17-27.)
[22]余伶俐,魏亞東,霍淑欣.基于MCPDDPG的智能車輛路徑規(guī)劃方法及應用[J].控制與決策,2021,36(4):835-846.(Yu Lingli,Wei Yadong,Huo Shuxin.Intelligent vehicle path planning method and application based on MCPDDPG[J].Control and Decision Ma-king,2021,36(4):835-846.)
[23]Mnih V,Silver D,et al.Human-level control through deep reinforcement learning[J].Nature,2015,518:529-533.
[24]王陽,李振東,楊觀賜.基于深度學習的OCR文字識別在銀行業(yè)的應用研究[J].計算機應用研究,2020,37(S2):375-379.(Wang Yang,Li Zhendong,Yang Guanci.Application research of OCR character recognition based on deep learning in banking[J].Application Research of Computers,2020,37(S2):375-379.)