?

基于虛擬目標制導的自適應Q學習路徑規劃算法

2024-03-13 05:45李子怡胡祥濤張勇樂許建軍
計算機集成制造系統 2024年2期
關鍵詞:狀態規劃動作

李子怡,胡祥濤,張勇樂,許建軍

(安徽大學 電氣工程與自動化學院,安徽 合肥 230601)

0 引言

作為智能移動機器人關鍵技術之一,路徑規劃長期以來一直是十分活躍的研究領域,被國內外學者廣泛關注[1-4]。路徑規劃問題描述為:在路徑長度、連續性以及實時性等約束條件下,找到一條從當前位置移動到目標位置的最優無碰撞路徑[5-6]。根據移動機器人已知工作環境信息的程度,路徑規劃問題分為[7-8]全局路徑規劃和局部路徑規劃。全局路徑規劃也稱為離線規劃,指根據完全已知的環境先驗信息建立靜態全局地圖,再基于全局地圖從起始位置到目標位置規劃出最優路徑[9]。常見的全局路徑規劃方法可以分為4類[10],即基于圖搜索的規劃方法(以A*及D*[11]和可視圖方法[12]為代表)、基于隨機采樣的規劃方法(以快速搜索隨機樹(Rapidly-Exploring Random Trees,RRT)及其改進方法[13-15]為代表)、智能搜索方法(以遺傳算法[16]、蟻群算法[17-18]為代表)、人工勢場法[19-20]。全局規劃方法對環境先驗信息的依賴性較強,在實際任務中,機器人更多面對的是未知環境,常規全局路徑規劃方法不適用,因此越來越多的學者關注局部路徑規劃方法。

局部路徑規劃描述為移動機器人在探索未知環境過程中,通過傳感器獲取周圍環境信息,進行增量計算后得出下一節點,從而逐步獲得一條無碰撞最優路徑[7]。局部路徑規劃不受環境先驗信息影響,對未知環境具有更強的適應性和實時性,在智能移動機器人路徑規劃中更被青睞[21-22]。局部路徑規劃算法主要分為避障規劃類算法(動態窗口法[23]、BUG類方法[24])和強化學習方法[25-27]。不同于避障規劃類算法,強化學習算法通過對環境進行交互式試錯學習,得到一個從初始狀態到目標狀態最優的行動策略[28-30]。因此,面對復雜未知環境,強化學習算法的適應性最好,在移動機器人路徑規劃中表現優異[7,31]。

在移動機器人路徑規劃算法中常采用的強化學習方法是Q學習(Q-learning)算法[8,21]。宋勇等[20]提出將人工勢場引入經典Q學習,根據先驗信息構造勢能場初始化Q表,提高了Q學習的收斂速度,但對初始化Q-Table需要環境先驗信息,不適用于未知環境;LOW等[1]將花授粉算法(Flower Pollination Algorithm, FPA)引入Q學習,由FPA取得先驗知識初始化Q表,加快了Q學習算法收斂,但不適用于未知環境;田曉航等[32]將蟻群算法引入Q學習,提出一種尋優范圍優化方法,減少了智能體的無效探索次數,然而算法中信息素機制對Q表的編碼方案需要環境先驗信息,不適用于未知環境;CHEN等[33]針對凹形地形問題提出融入障礙區擴展思想的改進算法,避免智能體因進入凹形障礙物區域而產生無效迭代,然而算法仍需對凹形障礙區進行大量探索,以分辨障礙物和智能體的位置關系;GUO等[34]提出將模擬退火(Simulated Annealing,SA)算法引入Q學習平衡探索和利用的關系,加快了算法的收斂速度,雖然SA算法不完全拒絕惡化解的特性能夠避免移動機器人陷入局部最優區域,但是其自身存在超參數設置問題,增加了計算的負擔;LI等[10]在Boltzmann Q學習的基礎上引入啟發搜索策略,避免了局部最優的情況,提高了算法收斂速度,然而玻爾茲曼策略在每一次選擇動作后都需要進行大量計算,當狀態集較大時會帶來更多計算量,影響收斂速度;LI等[35]在Q學習基礎上引入自適應探索策略,提出AE Q-learning算法,在一定程度上緩解了探索和利用的沖突,加快了算法收斂速度,然而該方法有較多超參數,不利于方法遷移,具有較強的主觀性;WANG等[36]在Boltzmann Q學習的基礎上引入經驗重載,提出Backward Q-learning算法,該方法在每次成功達到終點后重新計算成功路徑的Q值,每次重載路徑并計算的代價較大,算法在極大提高收斂性和算法穩定性的同時犧牲了效率,而且算法受狀態—動作空間維度的影響極大。

綜上所述,在經典強化學習領域內,學者們主要從融合智能算法、探索策略改進[37-39]兩方面對Q learning進行改進。融合智能算法類表現在對狀態集進行編碼及對Q表初始化的改進上,使算法盡量掌握環境的完備信息,縮小了Q學習的適用范圍,該改進方法不適用于環境信息不完備的未知環境;探索策略改進類主要表現在引導策略方法對獎勵值設置的改進和對智能體動作選擇策略上的改進,這類改進加快了算法收斂效率且未增加對先驗信息的要求。這些改進雖然成功應用于路徑規劃并表現優異,但是仍然存在3個局限性:①收斂速度慢,且隨著地圖規模的增大,狀態變量增多,計算效率下降;②算法魯棒性有待進一步提升;③面臨特殊環境時,機器人容易陷入地形陷阱。針對上述問題,本文在經典Q學習算法基礎上,設計了雙重記憶機制、虛擬目標引導方法、自適應貪婪因子,提出基于虛擬目標制導的自適應Q學習算法(Adaptive Q-learning algorithm based on Virtual Target Guidance,VTGA-Q-Learning),并通過對比實驗驗證了算法的有效性,實現了移動機器人在未知環境下的路徑規劃。

1 虛擬目標制導的路徑規劃問題與描述

1.1 學習算法

Q學習算法是一種基于值函數的強化學習算法,其核心是Q表的設計與更新。Q表建立了“狀態動作對”(s,a)與Q(s,a)的映射。按照Q學習算法,智能體基于當前狀態st從Q表中選擇動作at,然后環境反饋相應回報Rt+1,利用式(1)計算該狀態動作對的價值Q(st,at),并更新Q表中的Q(st,at)值,以此作為下一狀態選擇最優動作的依據。

Q(st,at)←Q(st,at)+

(1)

式中:st為t時刻智能體的狀態,st∈S,S為智能體有限狀態集合;at為t時刻智能體的動作,at∈A,A為智能體有限動作集合;Rt+1為智能體在狀態s下選擇動作a所獲的即時獎勵;α為學習率,α∈(0,1);γ為折扣率,γ∈(0,1)。

1.2 路徑規劃模型

將Q學習算法用于移動機器人路徑規劃問題,需要分別對機器人所處的環境、狀態集、動作集、價值函數進行定義和建模。

1.2.1 環境建模

本文采用格柵法建立移動機器人環境模型。格柵法用網格等分整個環境,將自由區域標記為0,障礙物標記為1,格柵圖中的障礙物(obstacle)、智能體起點位置(start)、智能體終點位置(goal)、自由空間(freedom)如圖1所示。

1.2.2 狀態集和動作集

本文將移動機器人的狀態描述為格柵中心坐標(x,y),每個柵格為一個狀態。由于為未知環境,狀態集的大小依賴機器人探索得到。隨著地圖規模的增大,狀態集的規模隨之增大,導致Q表的維護成本增加。

動作集的設置方式一般有四鄰域和八鄰域兩種,如圖2所示。四領域只有上、下、左、右4個動作,移動機器人在每個狀態下選擇其中一個動作執行;八領域有8個動作,規劃出的路徑相對平滑,但會降低算法收斂速度。本文所有Q學習算法都采用四鄰域狀態集,不影響本文的算法性能驗證和對比分析。

1.2.3 獎勵函數

獎勵函數會影響智能體的收斂和探索周期,在常規Q學習算法中,設置獎勵函數

(2)

式中將智能體所處的狀態分為Sgoal,Sobstacle,Sfreedom3類,分別對應目標點、障礙物、自由空間,Q學習算法根據狀態分類給予相應獎勵。

2 算法改進設計

常規Q學習算法在處理未知環境下移動機器人路徑規劃問題時,存在收斂速度慢、魯棒性差、盲目性和地圖陷阱等問題,本文設計了3種機制以改善Q學習算法性能。

2.1 雙重記憶機制

2.1.1 障礙物記憶機制

在Q學習中,智能體需要不斷同環境進行交互學習,經過一段時間學習后,Q表中指向障礙物的動作的獎勵值會小于其他動作的獎勵值,因此智能體可以根據Q表選擇最佳動作避開障礙物。然而在學習過程中,智能體需要平衡探索和利用的關系,即智能體的動作選擇不完全依賴Q表,而是以一定概率隨機選擇一個動作,以加強對未知地圖的探索開發。因此在探索期間,智能體仍會高頻選擇指向障礙物的動作,從而產生無效迭代,降低了探索效率。為此,本文設計了障礙記憶機制對障礙物進行一次學習,克服了Classic-Q-Learning對障礙物迭代學習過程中因隨機策略而產生無效迭代的問題。

如圖3所示,障礙記憶機制設計可描述為:智能體在狀態st采取動作at時,如果觀測到下一位置為障礙物,則將動作狀態對(st,at)存儲到障礙物記憶區中,并將障礙物記憶區內的動作狀態對被選擇的概率置0,以杜絕智能體隨機探索時的無效迭代,提高探索的有效性;另外,因為本文算法面對的是未知環境,所以將Q表設置為動態創建而不是初始化為固定大小的Q表。

2.1.2 短時記憶機制

為了解決地圖陷阱問題,本文提出短時記憶機制。該機制首先定義短時記憶區間T-M(如圖5),用于存儲智能體連續的5個狀態行為對,然后通過查詢T-M內是否存在{st,st+1}∈{st-3,st-2,st-1}來判斷智能體是否陷入地圖陷阱。當陷入地圖陷阱時,禁止選擇鏈接st,st+1的動作,智能體隨機選擇其他動作,從而跳出地圖陷阱。

2.2 虛擬目標引導方法

不同于蒙特卡洛方法利用一次實驗的經驗平均來估計當前值函數,Q學習利用策略采樣獲得后繼狀態的值函數來估計當前狀態的值函數。對采樣數據的利用效率深刻影響著值函數迭代,而且Q學習存在探索效率低下的問題。虛擬目標引導方法從經驗區M中篩選出不同重要程度的狀態集,再從該狀態集中獲取狀態作為階段性虛擬目標,并設置虛擬獎勵,通過虛擬獎勵使智能體學習到虛擬目標作為輔助節點的價值,引導機器人更高效地到達真實目標。

通過虛擬目標引導方法從經驗區M中篩選出3級重要數據表層經驗(Surface Experience,SE)、深層經驗(Deep Experience,DE)、貪婪經驗(Greedy Experience,GE),如圖6所示。表層經驗指在歷史實驗數據中,根據式(3)篩選出比序列整體優秀的狀態—動作對;深層經驗指在表層經驗中,根據式(4),通過加權平均的方法求出截止當前實驗序列確定的狀態價值,反映了過往經驗中該狀態的相對價值隨實驗數據的增加而趨近于真實狀態價值;貪婪經驗指在深層經驗中,根據式(5)貪婪選取深層經驗中狀態價值最大的狀態,從而篩選出歷史數據中較為重要的序列節點。

(3)

(4)

(5)

式(2)給出了常規Q學習算法的價值函數計算方法,這種設置方法在地圖規模不大時相對適用。當地圖規模較大時存在稀疏獎勵問題,導致智能體盲目探索,算法難以收斂。同時,為了改善強化學習存在的稀疏獎勵問題,在完成虛擬目標選擇后,分別賦予不同分區中的狀態不同的動態價值,該思路可描述為:對貪婪經驗中的狀態給予高激勵,深層經驗中的狀態給予中激勵,淺層經驗中的狀態給予較低激勵。本文的動態獎勵函數設置如下:

(6)

Dy_R(st)=

J(st)·F(st)+w·E(st)+R1;

(7)

(8)

(9)

式中:Dy_R(st)為動態獎勵函數;J(st)為一個二值函數,用于限制在{表層經驗;深層經驗;貪婪經驗}中的狀態只能被動態獎勵額外獎勵一次,以防過度獎勵造成收斂彌散;count[st]為標志數組,用于存儲被動態獎勵附加獎勵的狀態;w∈(0,0.1)為常權重參數;E(st)為歷次實驗中,狀態st到{表層經驗;深層經驗;貪婪經驗}中的次數。

2.3 自適應貪婪因子

常規Q學習算法采用貪婪策略雖然在一定程度上平衡了探索和利用,但是貪婪因子ε為固定值,ε值的設計極大影響了對未知地圖的探索利用能力,固定的貪婪因子使智能體的探索性始終保持不變,這不利于算法收斂,使算法存在較大波動,且使超參數設計存在主觀性;調整貪婪因子應隨探索程度的提高而衰減,合理的貪婪因子應隨智能體的探索經驗動態調整。針對以上問題,本文提出自適應貪婪因子。

自適應貪婪因子根據智能體同環境的交互程度以及由探索經驗估計的環境復雜程度進行自行調整,并將學習階段分為探索階段、隨機探索利用階段、利用階段3個階段,從而提高算法的收斂速度和穩定性,更好地平衡探索和利用的矛盾,同時擺脫了超參數設計的困擾。本文定義自適應貪婪因子

ε=tanh((|xstart-xgoal|+|ystart-ygoal|)·

(10)

自適應貪婪因子根據智能體與環境的交互程度主動調整貪婪因子,對學習階段進行劃分,逐步增加智能體對已有知識的利用,從而提高算法的收斂性和穩定性,更好地平衡探索和利用的矛盾。

3 基于雙重記憶機制的自適應Q學習算法流程

基于上述改進,將雙重記憶機制、虛擬目標引導方法、自適應貪婪因子融入常規Q學習算法,提出VTGA-Q-Learning,其流程如圖7所示,具體步驟如下:

步驟1初始化學習率α、衰減系數γ、貪婪因子ε;設置最大幕數episode、常權重參數w、障礙物記憶區、短時記憶區、虛擬獎勵學習步長C、經驗池容量M,以及起點和終點。

步驟2設置初始化參數后,智能體同環境進行交互(超過最大幕數則終止),用自適應貪婪因子(式(10))對ε調整后,根據動作選擇機制獲得下一時刻的狀態觀測值(observation)、獎勵值(reward)和結束標志位(done)。

步驟3判斷是否陷入地圖陷阱,是則返回步驟2,否則執行步驟4。

步驟4每隔C步從經驗區M中抽取虛擬目標,并由式(7)設置虛擬目標獎勵。

步驟5根據式(1)更新Q表,將[st,at,r,observation]加入M中。

步驟6更新幕數并對done進行判斷。如果done=goal,則更新到達目標點的次數,轉步驟2;如果done=obstacle,則將狀態observation加入障礙物記憶區間,轉步驟2;如果done=free,則執行步驟7。

步驟7更新狀態s=observation,轉步驟2。

因為VTGA-Q-Learning面對未知環境,所以狀態集未知。因此在Q表的創建上,動態創建Q表而非創建固定維度的Q表(智能體同環境交互獲得觀測數據后查詢Q表,判斷當前狀態是否為新狀態,是則擴展Q表)。圖7中的動作選擇機制的步驟描述如下:

步驟1輸入st,at-1,ε。

步驟2判斷當前狀態是否存在Q表中,是則執行步驟3,否則在Q表中創建新行后執行步驟3。

步驟3判斷當前狀態是否在障礙物記憶中,是則根據式(11)選擇動作,否則根據式(12)選擇動作。

(11)

(12)

4 算法性能測試與分析

4.1 測試環境

為驗證所提VTGA-Q-Learning算法的可行性和有效性,本文在Python 3.8+Open AI Gym和Pybullet中搭建環境地圖,操作系統為Windows10 x64,硬件信息為Intel i5-11400F,DDR4 8 GB。

本文針對未知環境下的路徑規劃問題設置了4種環境格柵地圖(如圖8)用于測試驗證算法。其中紅色方格表示智能體起點位置,黃色圓圈表示終點位置。圖8a為16×16維地圖,用于對比測試算法性能;圖8b~圖8d為25×25維復雜地圖,其中設計了大量地圖陷阱,用于測試本文算法的泛化性能以及規避地圖陷阱的能力。算法的參數設置如表1所示。

表1 參數設置

表中,C的取值對算法優化影響較大,現在圖8a環境地圖中對參數C進行研究,令C∈[0,600],按間隔50離散取值,每個C分別進行10次實驗,計算其獎勵值,C=0時表示不使用虛擬獎勵。按式(13)對實驗數據進行處理,給出10次實驗的平均獎勵步長比。如圖9所示,橫坐標為實驗幕數,共1 000幕;縱坐標為10次實驗每幕獎勵值與步長比值的平均值,可見C=200時虛擬獎勵最大。因此,后文均取C=200。

(13)

式中:j為實驗次數,j=1,…,10;rewardepisode,num_stepepisode分別為每一幕的總獎勵與總步長;episode為當前幕數,episode∈[0,max_episode]。

4.2 實驗結果分析

4.2.1 算法對比測試結果

圖10所示分別為Classic-Q-Learning,Dynamic-Q-Learning[40],AE-Q-learning[35],SA-Q-learning[34],Backward-Q-learning[36]和本文VTGA-Q-Learning在圖8a上的實驗數據,包括episode-reward圖(左列)和episode-stepnum圖(右列)兩類數據。圖10中左右兩列的橫坐標均為強化學習幕數(episode),左圖(episode-reward圖)縱坐標為智能體每一幕的總獎勵值,右圖(episode-stepnum圖)縱坐標為智能體在該幕下的累計步長。表2所示為各算法在圖8a上進行10次實驗的平均數據。從圖10和表2可以發現:

表2 各算法在圖8a上的實驗數據

(1)在10 000幕內,Classic-Q-Learning中智能體到達目標點的總幕數為5 833幕;Dynamic-Q-Learning中智能體到達目標點的總幕數為8 530幕;同時從圖10a和圖10c可見,兩種算法都不能穩定收斂,獎勵值存在較大波動,收斂性較差;從圖10b和圖10d可見,智能體每幕的步長存在較大波動,表明智能體存在受ε影響而導致的隨機收斂問題,Classic-Q-Learning和Dynamic-Q-Learning在收斂階段仍存在因障礙物而提前終止的情況,降低了算法的效率。

(2)從圖10e和圖10f觀察到,AE-Q-learning在1 000幕內,智能體到達目標點的總幕數為618幕;在197幕以后,智能體就能穩定到達目標點。表明該算法的收斂速度和穩定性都有很大改進。但對比Dynamic-Q-Learning可見,AE-Q-learning雖然提升了算法的收斂性,但是不能穩定收斂,仍為隨機收斂。

(3)從圖10g和圖10h觀察到,SA-Q-learning在1 000幕內,智能體到達目標點的總幕數為872幕;在188幕以后,智能體就能穩定收斂到達目標點。表明該算法的收斂速度和穩定性都有很大改進,但從實驗數據可見其步長峰值較高,平均用時為155.631 s,對比Dynamic-Q-Learning法10 000幕的用時,可見SA-Q-learning在提升算法收斂性的同時降低了收斂速度。

(4)從圖10i和圖10j觀察到,Backward-Q-learning在1 000幕內,智能體到達目標點的總幕數為892幕;在124幕以后,智能體穩定收斂到達目標點。從表2的實驗數據可見其平均用時為201.423 s,對比Dynamic-Q-Learning和SA-Q-learning可知,Backward-Q-learning在提升收斂性的同時,也因Backward模塊降低了算法效率。

(5)從圖10k和圖10l觀察到,VTGA-Q-Learning在1 000幕內,智能體到達目標點的總幕數為935幕;智能體在57幕就已準確到達最終目標點,并在82幕后穩定到達目標點,平均用時比AE-Q-learning降低42.322%,比SA-Q-learning降低63.471%,比Backward-Q-learning降低71.776%。表明所提改進方法能有效提高算法的收斂速度和穩定性,其次對比圖10的a,c,e,g,1 5張圖可見,VTGA-Q-Learning的獎勵值更為豐富。

4.2.2 魯棒性測試

魯棒性測試實驗用圖8b~圖8d進行測試,實驗數據分別如表3~表5(10次實驗的平均數據)、圖11~圖13所示,對比算法采用SA-Q-learning和Backward-Q-learning(Classic-Q-Learning,Dynamic-Q-Learning,AE-Q-learning算法在1 000幕內不能收斂)。

表3 各算法在圖8b環境地圖上的實驗數據

表4 各算法在圖8c環境地圖上的實驗數據

表5 各算法在圖8d環境地圖上的實驗數據

從表3可見,在環境圖8b上,相比SA-Q-learning在286幕、Backward-Q-learning在307幕初次到達目標點,VTGA-Q-Learning在253幕首次探尋到目標點且收斂速度和成功率均較好,3種算法規劃的路徑長度相同;同時由圖11f對比可見,VTGA-Q-Learning在步長峰值和稀疏獎勵問題上都得到很大改善,緩解了盲目探索問題。

從表4可見,在圖8c上,VTGA-Q-Learning的收斂速度比對比算法有較大改善;從初次到達目標點的幕數來看,VTGA-Q-Learning針對包含陷阱的地圖仍有較好的適應性;從圖12f可見,VTGA-Q-Learning的步長峰值遠低于對比算法,且成功率相對較高。

從表5可見,在面對包含較多凹型陷阱的復雜環境(如圖8d)時,VTGA-Q-Learning在263幕收斂時,對比算法還未找到目標點;從收斂用時和成功率上看,VTGA-Q-Learning在提高收斂速度的同時,并未降低探索的有效性;從圖13可見,VTGA-Q-Learning步長得到明顯改善,且獎勵值更加密集。

4.2.3ε曲線分析

為體現自適應貪婪因子中ε的變化,圖14給出了VTGA-Q-Learning在圖8a~圖8d中的自適應貪婪因子的變化曲線。從圖14a~圖14d可見,起始階段智能體有一段完全探索時期(ε=1),期間智能體對環境進行充分探索;在對環境信息有所掌握后,由探索經驗估計地圖的復雜程度和交互程度來ε調整的變化速率;當交互程度較高時,ε變化速率減緩,逐漸穩定在較小值,使策略比較保守,更傾向于利用已有知識。對比圖14a和圖14b~圖14d可見,面對比較簡單的環境,ε的變化比較平滑;反觀圖14b~圖14d,面對復雜環境,ε隨交互程度和環境復雜程度主動調節變換速率,所提自適應貪婪因子對環境具有較好的自適應能力。

5 虛擬仿真實驗

在第4章算法性能對比實驗的基礎上,本文進一步開展虛擬仿真實驗,通過模擬真實環境,驗證機器人的自主路徑規劃能力和工程實用性。虛擬仿真實驗用四驅麥克納姆輪小車作為測試對象,在Pybullet軟件中模擬創建室內環境地圖,如圖15所示,圖中黑色為障礙物,紅色為目標點,紫色為四驅麥克納姆輪小車。四驅麥克納姆輪小車具有前后左右行走能力,搭載有高性能控制器、4個超聲波傳感器、里程計等;超聲波傳感器安裝在小車的4個邊(對應小車4個動作的方向),每邊的感知范圍為±20°,距離為2 cm~450 cm;里程計定位精度≤0.15 m,能夠根據上位機發出的目標位置自主探索路徑;小車模型與實物圖如圖16所示。根據小車尺寸、感知范圍和行走定位誤差,定義每個正方形柵格邊長為1 m,小車位于柵格中心。

在相同室內環境下,本項目開展了兩組實驗,實驗1如圖15a所示,實驗2如圖15b所示,圖中紅色為目標點,紫色為小車當前起始位置,實驗1和實驗2的起點和終點相反,以表現算法的泛化性。為了驗證算法的穩定性,每組實驗各做10次。按照算法設計,小車接到目的地位置指令后開始進行探索,小車移動方向對應的超聲波傳感器檢測到0.02 m內有障礙物即視為碰撞,然后根據算法設置返回起點再次探索;當小車定位在距目標≤0.02 m,且小車移動方向所對應的超聲波傳感器檢測到0.02 m內有障礙物時,視為成功并輸出起點到終點的軌跡列表。

在本文強化學習算法驅動下,小車每次實驗都能準確找到最優路徑,其中兩組虛擬仿真實驗第10次路徑規劃結果如圖17所示,表明所提算法具有良好的泛化性。因為強化學習的特性,每組中10次實驗得到的最優路徑并不完全相同,路徑探索時間和路徑長度的統計數據如表6所示。從表中可見,實驗1路徑長度均值為18.598 m,標準差為0.287 m,實驗2路徑長度均值為18.903 m,標準差為0.225 m,而且兩組實驗各自探索時間也非常接近,表明算法穩定性較好。

表6 規劃路徑長度與探索時間統計分析

綜上所述,小車在兩組實驗中都能穩定到達目標點,而且每次實驗數據無較大波動,表明本文算法具有較好的穩定性、泛化性和工程適用性。

6 結束語

本文針對環境信息未知的移動機器人路徑規劃問題,提出一種VTGA-Q-Learning,相對常規Q學習算法,其改進如下:

(1)雙重記憶機制 在一定程度上減少了地圖維度帶來的維度災難問題,而且引入障礙物記憶機制,避免探索時重復選擇無效動作,增強了對復雜地圖的適應性,加快了收斂速度。

(2)虛擬目標引導方法 通過從歷史經驗中提取中間態信息,并將中間態反映在動態獎勵函數設置上,使智能體學習到比較重要的中間狀態,從而改善稀疏獎勵,提高智能體的目標趨向性。

(3)自適應貪婪因子 自適應動作選擇策略自適應地平衡了探索和利用的關系,并根據機器人同環境的交互程度確定主要參數;同時根據交互經驗設置動作概率,避免了非貪婪時均勻動作選擇的弊端。

通過4種地圖進行仿真測試表明,相對其他Q學習算法,本文VTGA-Q-Learning提高了Q學習的收斂性和收斂速度,具有很好的泛化性和障礙陷阱規避能力,并通過虛擬仿真實驗證明了本文算法的工程適用性。

猜你喜歡
狀態規劃動作
狀態聯想
動作描寫要具體
生命的另一種狀態
規劃引領把握未來
快遞業十三五規劃發布
畫動作
多管齊下落實規劃
熱圖
堅持是成功前的狀態
迎接“十三五”規劃
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合