本發(fā)明屬于機器智能決策與控制,具體涉及一種基于兩階段解耦離線強化學習的機器人路徑規(guī)劃模型及方法。
背景技術(shù):
1、目前,強化學習被廣泛應(yīng)用于機器人路徑規(guī)劃任務(wù)中。強化學習具有一定的自主性和適應(yīng)性;強化學習使機器人能夠通過與環(huán)境的互動自主學習路徑規(guī)劃策略,而不是依賴于預先設(shè)計的規(guī)則或模型。機器人能夠在動態(tài)和未知環(huán)境中不斷調(diào)整和優(yōu)化其路徑規(guī)劃策略,具有很強的適應(yīng)性。同時在連續(xù)優(yōu)化、高位狀態(tài)空間處理以及處理不確定性上有較大的優(yōu)勢。
2、標準的在線強化學習(online?reinforcement?learning)通過智能體與環(huán)境實時交互進行訓練,該方法采樣效率極低,需要頻繁地與環(huán)境進行交互收集數(shù)據(jù)來訓練智能體。而在與環(huán)境交互過程中大量的探索行為在現(xiàn)實場景中往往意味著高昂的成本。例如,使用機器人在真實場景中進行探索可能損害機器人自身或周圍物體,在醫(yī)療或自動駕駛場景中進行探索可能嚴重危害人類安全。與之相對的離線強化學習(offline?reinforcementlearning)則是一種利用現(xiàn)有的數(shù)據(jù)集進行強化學習的方法,與在線強化學習比較無需與環(huán)境進行實時交互,從而可以節(jié)省采樣成本,提高數(shù)據(jù)利用率,降低安全風險,適用于許多實際場景,如醫(yī)療、金融系統(tǒng)等。離線強化學習的核心問題是如何從一個固定的數(shù)據(jù)集中學習一個有效的策略,使其在未知的環(huán)境中表現(xiàn)良好。這個數(shù)據(jù)集通常由一個或多個行為策略(behavior?policy)生成。
3、然而,離線強化學習也面臨著一些挑戰(zhàn),其中最主要的挑戰(zhàn)是分布外泛化(ood)問題,傳統(tǒng)離線強化學習方法,例如bear算法(bootstrapping?error?accumulationreduction),brac算法(behavior?regularized?offline?reinforcement?learning),時序差分+動作克隆算法,cql(算法conservative?q-learning),rem算法(random?ensemblemixture)均面臨這一問題。造成這一問題的原因是分布偏移,即離線數(shù)據(jù)集中的狀態(tài)-動作分布與當前策略下的狀態(tài)-動作分布不一致,導致策略優(yōu)化過程中出現(xiàn)錯誤泛化的現(xiàn)象。ood問題會使得離線強化學習算法無法有效地利用數(shù)據(jù)集中的信息,甚至可能導致策略性能下降。
4、如何有效解決ood問題,已成為關(guān)乎離線強化學習發(fā)展態(tài)勢的一大難點。而基于序列決策模型的方法為離線強化學習提供了一種全新的視角,該方法將強化學習任務(wù)視為序列決策問題并使用transformer進行序列決策,因此無需對分布外動作進行價值估計,從根本上避免了ood問題?;趖ransformer的方法已經(jīng)被應(yīng)用于離線強化學習任務(wù),并表現(xiàn)出強大的競爭力,但在軌跡拼接方法仍然存在很大的優(yōu)化空間。本發(fā)明擬通過彈性歷史長度和兩階段解耦策略,改進基于transformer的離線強化學習方法的軌跡拼接能力,提升強化學習智能體的性能。
技術(shù)實現(xiàn)思路
1、針對上述現(xiàn)有技術(shù),本發(fā)明目的在于提出了一種基于兩階段解耦離線強化學習的機器人路徑規(guī)劃模型。旨在解決現(xiàn)有機器人路徑規(guī)劃方法計算資源要求高、模型泛化能力差、容易陷入局部最優(yōu)等問題。
2、本發(fā)明為解決上述技術(shù)問題,采用的技術(shù)方案是,一種基于兩階段解耦離線強化學習的機器人路徑規(guī)劃模型,包括狀態(tài)預測網(wǎng)絡(luò)和執(zhí)行策略網(wǎng)絡(luò),其構(gòu)建方法包括以下步驟:
3、步驟1:選擇訓練數(shù)據(jù),構(gòu)建訓練集;將機器人路徑規(guī)劃問題視作一個馬爾可夫過程m=(s,a,p,r),通過馬爾可夫序列對機器人的路徑進行描述;其中s表示狀態(tài)空間,即機器人所有可能處于的狀態(tài)集合,通過機器人所處的二維坐標進行表示;a表示動作空間,即機器人可以采取的動作集合;p(·|s,a)表示狀態(tài)轉(zhuǎn)移概率,即在狀態(tài)s下選擇動作a,轉(zhuǎn)移到某一狀態(tài)s′的概率;r(s,a)表示回報;訓練數(shù)據(jù)包括離線機器人路徑規(guī)劃數(shù)據(jù)集;
4、步驟2:對訓練數(shù)據(jù)進行預處理,得到當前狀態(tài)的特征;
5、步驟3:特征輸入狀態(tài)預測網(wǎng)絡(luò),使用狀態(tài)預測網(wǎng)絡(luò)預測下一個最優(yōu)狀態(tài);
6、步驟4:構(gòu)造損失函數(shù)以衡量步驟3中由模型預測的狀態(tài)與實際下一個狀態(tài)之間的差距;在訓練過程中通過最小化該損失函數(shù)對模型參數(shù)進行優(yōu)化與更新;
7、步驟5:構(gòu)建執(zhí)行策略網(wǎng)絡(luò),使用執(zhí)行策略網(wǎng)絡(luò)預測從當前狀態(tài)到達下一狀態(tài)執(zhí)行的最優(yōu)動作;
8、步驟6:優(yōu)化執(zhí)行策略網(wǎng)絡(luò);
9、步驟7:利用訓練集對模型進行訓練,確定超參數(shù);直至預測性能達到預設(shè)值后停止訓練,則機器人路徑規(guī)劃模型構(gòu)建完成。
10、進一步的,所述離線機器人路徑規(guī)劃數(shù)據(jù)集包括由專家指導的最優(yōu)路徑集合或/和其他高性能機器人路徑規(guī)劃算法所完成的機器人路徑規(guī)劃數(shù)據(jù)集。
11、進一步的,所述預處理具體為:將強化學習中的最后k個時間步輸入決策轉(zhuǎn)換器,將r,s,a分別映射到一個嵌入并與位置編碼相加,得到設(shè)定長度的標志tokens,作為當前狀態(tài)的特征,這個特征包含局部特征和全局特征。
12、進一步的,所述狀態(tài)預測網(wǎng)絡(luò)具體為transformers模型;所述transformers模型由堆疊的自注意力層和連接層組成;將r,s,a的token輸入transformer模型,transformer模型輸出一個隱藏狀態(tài),將該隱藏狀態(tài)輸入到一個線性層來預測下一個狀態(tài);
13、其中,所述自注意力層的第i個輸出zi由查詢qi與其他鍵kj之間的歸一化點積加權(quán)值vj給出:
14、
15、進一步的,所述步驟4中的損失函數(shù)具體為交叉熵損失函數(shù),計算公式如下:
16、
17、在機器人路徑規(guī)劃過程中,p表示真實的狀態(tài)選擇分布,q表示transforme模型輸出的概率分布。
18、進一步的,所述執(zhí)行策略網(wǎng)絡(luò)只以當前狀態(tài)s和下一個狀態(tài)s′作為輸入,選擇在當前狀態(tài)下的最優(yōu)動作a,使用策略梯度方法來訓練,具體構(gòu)建執(zhí)行策略網(wǎng)絡(luò)的公式如下:
19、
20、
21、其中,π表示模型的控制策略,即當無人機處于某一狀態(tài)s時,模型選擇采取的控制動作;q(s,a)為狀態(tài)動作對的回報,表示從當前狀態(tài)到任務(wù)結(jié)束能獲得的累積獎勵,即機器人在當前狀態(tài)s下采取控制動作a,未來能獲得的獎勵和,模型通過最大化q值來選擇最合適的控制動作;表示期望,z表示當前狀態(tài)動作對(s,a)的回報分布。
22、進一步的,所述優(yōu)化執(zhí)行策略網(wǎng)絡(luò)的具體流程如下:
23、將執(zhí)行策略記為在訓練過程中,得到以下目標:
24、
25、在評估過程中,在給定狀態(tài)s的情況下,最終行動由指導策略和執(zhí)行策略共同決定:
26、
27、在機器人路徑規(guī)劃任務(wù)中,gω表示執(zhí)行策略網(wǎng)絡(luò),g的優(yōu)化目標為:
28、
29、其中α表示權(quán)重,vφ表示狀態(tài)動作價值函數(shù)。
30、進一步的,所述超參數(shù)包括狀態(tài)預測網(wǎng)絡(luò)與執(zhí)行策略網(wǎng)絡(luò)的學習率、經(jīng)驗回放池大、探索步數(shù)、訓練步數(shù)、優(yōu)化步數(shù)。
31、本發(fā)明還提供一種基于兩階段解耦離線強化學習的機器人路徑規(guī)劃方法,包括以下步驟:
32、步驟1:對于待控制的機器人,根據(jù)機器人可能處于的狀態(tài)與可選擇的控制動作,使用馬爾可夫決策過程對機器人路徑規(guī)劃過程進行描述,狀態(tài)s由機器人搭載的攝像頭或其他設(shè)備觀察得到,動作a代表機器人所能執(zhí)行的動作;
33、步驟2:將待控制的機器人當前時刻所處的狀態(tài)預處理后輸入到狀態(tài)預測網(wǎng)絡(luò),狀態(tài)預測網(wǎng)絡(luò)根據(jù)離線數(shù)據(jù)集得到預測狀態(tài)s′;通過該網(wǎng)絡(luò)可以得到機器人下一步的最優(yōu)狀態(tài);
34、步驟3:將當前狀態(tài)s和下一個狀態(tài)s’輸入到執(zhí)行策略網(wǎng)絡(luò),執(zhí)行策略網(wǎng)絡(luò)通過最大化回報來選擇最優(yōu)的動作a*;
35、步驟4:機器人執(zhí)行最優(yōu)動作a*,執(zhí)行最優(yōu)動作后,機器人進行新的狀態(tài)s;重復步驟2-4,直到機器人路徑規(guī)劃過程完成。
36、本發(fā)明的有益效果在于,本發(fā)明提出了一種兩階段解耦離線強化學習的機器人路徑規(guī)劃方法,這種方法將狀態(tài)選擇和動作選擇解耦,狀態(tài)的選擇是從專家數(shù)據(jù)集中進行選擇,而動作則無需從專家數(shù)據(jù)集中選擇。一方面,這種強化學習的方法改善了傳統(tǒng)機器人路徑規(guī)劃方法所需大量計算資源以及容易陷入局部最優(yōu)的問題;另一方面,這種兩階段解耦離線強化學習方法能夠?qū)W習到離線數(shù)據(jù)集以外的動作,大大增加了機器人學習的泛化能力。