摘 要:針對具有非線性干擾以及多變環(huán)境的機械臂軌跡跟蹤問題,提出了一種結(jié)合行為克?。╞ehavior cloning,BC)的多智能體深度強化學(xué)習(multi-agent deep reinforcement learning,MDRL)控制方法。多智能體控制算法中包含了以孿生延遲深度確定性策略梯度算法(twin delayed deep deterministic policy gradient algorithm,TD3)為基底算法的比例積分微分智能體(proportional-integral-derivative agent,PID agent)和直接用深度強化學(xué)習策略輸出扭矩的智能體(direct deep reinforcement learning agent,DDR agent),并采用兩個獎勵函數(shù)來優(yōu)化兩個agent的策略網(wǎng)絡(luò)。PID agent用于輸出PID控制器的參數(shù),再由PID控制器輸出力矩控制機械臂以增加控制器的跟蹤泛性,DDR agent則直接輸出扭矩增加控制器的抗干擾性。為了克服多智能體訓(xùn)練難度高的問題,在訓(xùn)練中引入行為克隆技術(shù),利用PID控制器的專家經(jīng)驗對PID agent進行預(yù)訓(xùn)練,形成預(yù)策略在訓(xùn)練初期就可以輸出較合適的PID參數(shù),增加有效經(jīng)驗來加速訓(xùn)練過程的獎勵收斂。為了驗證方法的有效性,通過歐拉拉格朗日建模二自由度機械臂,并在具有干擾的多種環(huán)境下進行仿真實驗對比。實驗結(jié)果表明,所提算法在具有隨機干擾環(huán)境以及與訓(xùn)練軌跡不同的跟蹤軌跡中都具有最好的跟蹤效果,驗證了所提算法的有效性。
關(guān)鍵詞:多智能體;孿生延遲深度確定性策略梯度;深度強化學(xué)習;軌跡跟蹤;行為克隆
中圖分類號:TP301"" 文獻標志碼:A""" 文章編號:1001-3695(2025)04-008-1025-09
doi: 10.19734/j.issn.1001-3695.2024.09.0340
Multi-agent deep reinforcement learning tracking control for robotic manipulator based on behavior cloning
Yi Jiahao, Wang Fujie, Hu Jintao, Qin Yi, Guo Fang, Luo Junxuan
(Dept. of Computer Science, Dongguan University of Technology, Dongguan Guangdong 523000, China)
Abstract:For the robotic arm trajectory tracking in different environment with nonlinear disturbances problem, this paper proposed an MDRL control method combined with BC to solve problem. The MDRL control algorithm contained a PID agent and a DDR agent. Both of agents were based on TD3 algorithm, and designed two reward functions to optimise the policy networks of two agents. The PID agent was used to output the parameters of the PID controller and then the torque was output by PID controller to increase controller tracking generality. The DDR agent directly outputed the torque to increase the interference resis-tance of the controller. To overcome the complexity of multi-agent training, this paper utilised expert experience to pre-train the PID agent by BC. Which accelerate the reward convergence of the training process. In order to verify the validity of the method, it modeled a two-degree-of-freedom robotic arm by Eulerian-Lagrangian and compared the simulation experiments in a variety environment with disturbances. The experimental results show that the proposed algorithm has the best tracking performance in variety tracking trajectories in random interference environment, which validates the effectiveness of the algorithm.
Key words:multi-agent; twin delayed deep deterministic policy gradient; deep reinforcement learning; trajectory tracking; behavior cloning
0 引言
近幾年隨著智能制造的蓬勃發(fā)展,機器人系統(tǒng)進步迅速,并且已經(jīng)廣泛應(yīng)用到光伏、汽車等多個行業(yè)中[1, 2]。機器人路徑規(guī)劃和軌跡跟蹤是機器人自動化和智能化的關(guān)鍵技術(shù)之一,目前關(guān)于機械臂控制的研究已經(jīng)取得了很多成果[3, 4]。隨著控制復(fù)雜性的增加,機器人的不確定性和系統(tǒng)干擾也應(yīng)該在控制設(shè)計中得到特別關(guān)注。因此,文獻[5]提出了一種用于機械臂的自適應(yīng)非奇異魯棒積分滑??刂破?,以處理時變干擾。Soltanpour等人[6]提出了一種利用模糊滑動模式跟蹤機器人位置的優(yōu)化控制方法,并采用粒子群優(yōu)化算法來克服機器人的不確定性。此外,文獻[7]還詳細介紹了一種基于模型的控制算法,通過識別動態(tài)參數(shù)實現(xiàn)液壓機械臂的高精度軌跡跟蹤。然而,上述研究需要機器人系統(tǒng)的數(shù)學(xué)模型部分已知或?qū)ζ溥M行估計。值得注意的是,機器人的動態(tài)模型,尤其是在復(fù)雜的工業(yè)應(yīng)用中,往往是時變或不確定的。
為了適應(yīng)這種不確定性,近年來神經(jīng)網(wǎng)絡(luò)被廣泛應(yīng)用于解決不確定的非線性動態(tài)機器人系統(tǒng)的控制設(shè)計問題[8]。文獻[9]提出了一種基于徑向基函數(shù)神經(jīng)網(wǎng)絡(luò)(radial basis function neural networks,RBFNN)的自適應(yīng)控制方法來實現(xiàn)位置跟蹤控制。文獻[10]引入了一種基于神經(jīng)網(wǎng)絡(luò)的控制方法。該方法具有自學(xué)習和近似能力,可以解決不確定性和外部干擾問題。文獻[11]利用神經(jīng)網(wǎng)絡(luò)提高了機械臂控制系統(tǒng)的穩(wěn)定性和魯棒性。上述研究減少了對線性數(shù)學(xué)模型的依賴,但是在訓(xùn)練神經(jīng)網(wǎng)絡(luò)時容易遇到訓(xùn)練不充分以及局部最優(yōu)的問題。
深度強化學(xué)習(deep reinforcement learning,DRL)的出現(xiàn)豐富了神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方法,增強神經(jīng)網(wǎng)絡(luò)在不確定的環(huán)境中進行決策的能力[12]。DRL將深度學(xué)習和強化學(xué)習相結(jié)合,廣泛應(yīng)用于機器人控制領(lǐng)域。文獻[13]引入了深度確定性策略梯度(deep deterministic policy gradient,DDPG)算法來訓(xùn)練機械臂在復(fù)雜環(huán)境中執(zhí)行連續(xù)動作。在文獻[14]中,近端策略優(yōu)化(proximal policy optimization,PPO)被用于使機械臂在模擬環(huán)境中跟蹤軌跡。雖然這些基于 DRL 的方法實現(xiàn)了機器臂軌跡跟蹤任務(wù),但是其訓(xùn)練出的模型只能在訓(xùn)練集包含的軌跡中具有良好表現(xiàn),泛化能力仍有待提高。
多智能體深度強化學(xué)習(MDRL)[15]可以將任務(wù)分解給單個智能體,一起協(xié)同解決復(fù)雜任務(wù),適應(yīng)復(fù)雜環(huán)境。文獻[16]提出了一種MDRL方法來解決目標搜索問題。Ali Shahid等人[17]提出了一種分布式MDRL控制方法,用于協(xié)調(diào)多個機械臂完成復(fù)雜的抓取和提升任務(wù)。文獻[18]將解耦多智能體深度確定性策略梯度(decoupling multi-agent deep deterministic policy gradient, DE-MADDPG)算法應(yīng)用到軸孔裝配問題,將機械臂的前三個關(guān)節(jié)和后三個關(guān)節(jié)構(gòu)造成多智能體系統(tǒng),分開獨立控制以降低耦合性。文獻[19]采用近端策略優(yōu)化(proximal policy optimization,PPO)與多智能體(multi-agents)結(jié)合的M-PPO算法完成機械臂執(zhí)行末端避障并到達目標物體位置任務(wù),解決傳統(tǒng)運動控制算法存在的環(huán)境適應(yīng)性較差、效率低的問題。雖然上述論文使用MDRL解決了很多問題,但是針對隨機干擾環(huán)境下機器人軌跡跟蹤任務(wù)的MDRL方法的研究還很有限。因此,本文結(jié)合了MDRL和PID控制器設(shè)計了一種多智能體控制系統(tǒng),解決非線性隨機干擾和多變環(huán)境下的機器人跟蹤控制問題。本文的主要貢獻如下:
a)文獻[17]中,MDRL被用于控制機械臂完成特定任務(wù),但并未考慮到具有強隨機干擾以及多變的環(huán)境。針對這種環(huán)境,本文設(shè)計了一種多智能深度強化學(xué)習體控制器,用于控制機械臂完成軌跡跟蹤任務(wù)。該控制系統(tǒng)包含了兩個以TD3為基礎(chǔ)算法的智能體:一個智能體用于調(diào)整 PID 控制器的參數(shù),結(jié)合PID反饋控制器增加控制器的泛化能力;另一個智能體直接輸出補償扭矩增加抗干擾能力。通過多智能體協(xié)同工作,增強控制器的抗干擾能力和泛化能力。
b)由于兩個agent工作邏輯的差異和工作重點的不同,本文必須設(shè)計兩種不同的獎勵函數(shù)來反映每一個agent的工作表現(xiàn)。本文將整體獎勵分化成內(nèi)部獎勵,使PID agent對整體跟蹤效果獎勵權(quán)重更大,更注重整體跟蹤效果,而DDR agent對誤差變化率獎勵權(quán)重更大,更加注重跟蹤穩(wěn)定性。經(jīng)過兩個獎勵函數(shù)的協(xié)調(diào)反饋,具有不同控制特性的兩個智能體可以朝著共同的控制目標更新。
c)由于使用多智能體會導(dǎo)致訓(xùn)練難度加大,受到文獻[20]的啟發(fā),本文采用BC解決多智能體系統(tǒng)收斂困難的問題。通過BC技術(shù)利用PID控制器的專家經(jīng)驗對PID agent進行預(yù)訓(xùn)練,形成的預(yù)策略在訓(xùn)練初期就可以輸出較合適的PID參數(shù)增加有效經(jīng)驗,提高了多智能體算法探索過程的有效性,解決了多智能體系統(tǒng)收斂困難甚至不收斂的問題。
1 問題描述
1.1 動態(tài)模型
機器人系統(tǒng)的動力學(xué)方程由拉格朗日函數(shù)導(dǎo)出,機械臂關(guān)節(jié)角變量是q,關(guān)節(jié)角速度是,動態(tài)方程用歐拉拉格朗日方程可以表示為[21]:
其中:qmin表示力矩的最小值;qmax表示力矩的最大值。
1.2 非線性隨機干擾設(shè)計
本文設(shè)計了非線性干擾來驗證算法的魯棒性。非線性干擾的定義如下:
(4)
其中:r=1,2,3,…,k是一個隨機數(shù);Euclid Math OneFApi(r)是第i個關(guān)節(jié)受到的干擾力,一共有n個關(guān)節(jié);Radn∈[0,1]是一個隨機生成數(shù),設(shè)置數(shù)值x∈[0,1],當隨機數(shù)Radn超過所設(shè)置的數(shù)x時,干擾就會發(fā)生;G(r)∈(-K,K)是一個具有值域(-K,K)的未知函數(shù),用于確定干擾發(fā)生時的干擾力矩,其大小與隨機數(shù)r有關(guān),與機械臂的力無關(guān),屬于外部干擾??梢酝ㄟ^設(shè)置x以及K來設(shè)置干擾的大小范圍以及發(fā)生概率。因此,當使用這種干擾時,已知的只有干擾力矩大小和發(fā)生概率,其他所有信息都未知。本文的干擾強度以及發(fā)生概率都是由隨機數(shù)或者隨機函數(shù)控制,并且這些隨機數(shù)或隨機函數(shù)都是在一定范圍內(nèi)均勻分布。因此,隨機干擾的干擾強度在確定了大小范圍后其分布特性以及變化規(guī)律也符合均勻分布特性。此干擾模擬在現(xiàn)實環(huán)境中可能遇到的信息有限的環(huán)境干擾,比如風、海浪或者未知外部力等。
1.3 控制目標及研究意義
給定具有隨機非線性干擾環(huán)境以及目標跟蹤軌跡qd,為機械臂設(shè)計一個多智能體深度強化學(xué)習控制器,無須預(yù)知機械臂動態(tài)模型即可在有干擾的多變環(huán)境中使機械臂跟蹤目標跟蹤軌跡qd。本文研究的內(nèi)容是在具有干擾以及多變環(huán)境中的機械臂軌跡跟蹤任務(wù),本文創(chuàng)新性地結(jié)合兩個輸出力矩方式不同的agent并通過BC訓(xùn)練成功,增加了跟蹤任務(wù)過程中的控制泛性以及抗干擾能力。在實際控制中,控制器的控制泛性可以增加其應(yīng)用前景以及特殊情況的應(yīng)對能力,抗干擾能力則可以增加控制器的控制穩(wěn)定性以適應(yīng)更多的極端應(yīng)用場景。因此本文研究對在海上、沙漠等惡劣環(huán)境以及惡劣天氣中的噴涂、裝配等任務(wù)的解決方案具有重要參考意義。
2 基于行為克隆的多智能體深度強化學(xué)習算法設(shè)計
2.1 TD3深度強化學(xué)習算法
TD3是一種專門為了連續(xù)動作空間任務(wù)設(shè)計的非在線actor-critic DRL算法[23]。一個深度強化學(xué)習系統(tǒng)可以用一個元組D=(S,A,π,Q,R,γ)來定義。其中:S表示狀態(tài)空間;A表示行動空間,π代表需要訓(xùn)練的行為神經(jīng)網(wǎng)絡(luò);Q代表需要訓(xùn)練的critic神經(jīng)網(wǎng)絡(luò);R代表獎勵空間;γ是折扣因子。當給定一個 DRL 任務(wù)時,確定當前狀態(tài)s、當前動作a、獎勵r以及下一個狀態(tài)s′,TD3網(wǎng)絡(luò)的更新過程如圖1所示。TD3的目標策略輸出目標動作的公式如下:
(5)
其中:a′是目標動作;s′是根據(jù)當前動作作用于當前狀態(tài)所產(chǎn)生的下一個狀態(tài);πφ′(s′)目標策略πφ′根據(jù)下一動作s′產(chǎn)生的目標動作;是添加的隨機噪聲;(-c,c)是添加噪聲的值域;(alow,ahigh)是輸出的動作的大小范圍;符號clip(a,b,c)代表用范圍(b,c)對a進行截斷裁剪。
TD3使用兩個不同的Q網(wǎng)絡(luò)對動作進行估計并且選擇兩個Q值中的最小值更新目標,抑制持續(xù)的過高估計。因此在TD3中計算目標Q值的公式如下:
y(r,s′)=r+γmini=1,2Qθ ′i(s′,a′(s′))
(6)
其中:r代表環(huán)境給的回報值;γ代表折扣因子;Qθi=[Qθ1,Qθ2]是由雙Q網(wǎng)絡(luò)組成的critic網(wǎng)絡(luò)。
actor網(wǎng)絡(luò)的更新公式如下:
2.2 行為克隆
行為克隆(behavioral cloning,BC) 是模擬學(xué)習的一種。行為克隆的學(xué)習過程就是學(xué)習專家經(jīng)驗給出的行為[24]。行為克隆可以用于模型的預(yù)訓(xùn)練以及降低模型的獎勵收斂難度。行為克隆的學(xué)習過程就是學(xué)習一種從狀態(tài)到專家行為的映射關(guān)系,這種映射關(guān)系通常用神經(jīng)網(wǎng)絡(luò)表達。行為克隆的訓(xùn)練目的是使智能體在遇到與專家相同的情況時作出相同的動作,因此行為克隆的訓(xùn)練過程可以理解為減少神經(jīng)網(wǎng)絡(luò)輸出的動作與專家經(jīng)驗展示的行為的差異。如果一個神經(jīng)網(wǎng)絡(luò)使用均方誤差(mean square error,MSE)作為損失函數(shù),那么在行為克隆時計算loss的公式如下:
(8)
其中:(si,ai)是一個回合的狀態(tài)和專家動作;N是從數(shù)據(jù)集中抽取的樣本數(shù);f(si)是待訓(xùn)練網(wǎng)絡(luò)對當前狀態(tài)的預(yù)測動作。
2.3 PID控制器
PID的全稱是比例積分微分(proportional integral derivative,PID)[25],是一種反饋控制算法。 PID 控制器通常表示為
(9)
其中:P是比例項的輸出;Kp是比例系數(shù);e(t)表示t時刻的誤差;I表示積分項的輸出;Ki是積分系數(shù);Euclid SymbolrCpt0e(t)dt表示誤差從開始到當前時刻的積分;D是微分項的輸出;Kd是微分系數(shù);de(t)/dt是誤差的變化率。本文的PID agent使用TD3輸出PID的三個參數(shù)Kp、Ki以及Kd,PID agent只需要找到適合當前機械臂的PID參數(shù)就可以良好地完成跟蹤任務(wù),因此其訓(xùn)練速度較快,但是其抗干擾效果還需要DDR agent進行彌補。
2.4 獎勵函數(shù)設(shè)計
本文的多智能體算法使用兩個智能體控制同一個機械臂,兩個智能體輸出力矩的方式完全不同,PID agent輸出PID控制器的參數(shù),再由PID控制器輸出控制力矩,DDR agent則直接輸出控制力矩。兩個agent在跟蹤任務(wù)過程中的工作重點也有差異:PID agent更加關(guān)注整體的跟蹤效果,DDR agent更加關(guān)注抗干擾能力以及跟蹤穩(wěn)定性。由于兩個agent工作邏輯差異和工作重點不同,本文必須設(shè)計兩種不同的獎勵函數(shù)來反映每一個agent的工作表現(xiàn),在兩個智能體的共同目標相同時對不同的參數(shù)變化更加敏感。兩個獎勵函數(shù)將整體任務(wù)進行分化,形成兩個agent的內(nèi)部獎勵,增強兩個agent的協(xié)作能力。PID agent在時刻t的即時獎勵定義為
rp(t)=-ve·e(t)
(10)
其中:e(t)=q(t)-qd(t)表示跟蹤誤差;q(t)、qd(t)分別表示機械臂位置以及期望位置;ve代表跟蹤誤差的系數(shù)。PID agent更注重整體軌跡跟蹤性能,因此PID agent的獎勵只使用軌跡誤差作為獎勵值。
DDR agent在時刻t的即時獎勵定義為
rd(t)=-(ve·e(t))+ved·ed(t)
(11)
其中:ed(t)=e(t-1)-e(t)表示誤差的變化量;edv是誤差變化量的參數(shù)。使用誤差變化量作為獎勵可以讓DDR agent對跟蹤的穩(wěn)定性更加敏感。DDR agent是直接輸出力矩到機械臂,因此其對干擾或者系統(tǒng)波動可以快速反應(yīng),可以提升系統(tǒng)的抗干擾能力以及跟蹤穩(wěn)定性。假設(shè)時間步長t之后來自環(huán)境的獎勵序列可以表示為rt+1,rt+2,rt+3…。那么加權(quán)即時獎勵的總和就是預(yù)期的折扣獎勵:
RP(t)=∑Nk=1γk-1r1t+k
(12)
RD(t)=∑Nk=1γk-1r2t+k
(13)
結(jié)合式(10)(11),式(12)(13)可以被表示為
RP(t)=∑Nk=1γk-1-ve·e(t)
(14)
RD(t)=∑Nk=1γk-1(-(ve·e(t))+ved·ed(t))
(15)
其中:γ∈[0,1]表示折扣因子。
2.5 結(jié)合行為克隆的MDRL控制算法流程
根據(jù)上文所述,結(jié)合事后篩選經(jīng)驗回放的深度強化學(xué)習控制算法流程如圖2所示。
本文要解決的問題是多關(guān)節(jié)的機械臂在具有非線性干擾以及多變的環(huán)境中的軌跡跟蹤控制問題,孿生延遲深度確定性策略梯度(twin delayed deep deterministic policy gradient algorithm,TD3)可以很好地解決機械臂軌跡跟蹤的控制問題并且具有良好的抗干擾能力,但由于神經(jīng)網(wǎng)絡(luò)具有與任務(wù)擬合的特性,其在跟蹤與訓(xùn)練軌跡不同的其他軌跡時表現(xiàn)不佳。為了克服這個問題,本文引入了比例積分微分(proportional integral derivative,PID)反饋控制器設(shè)計出了TD3 with PID算法,此算法使用神經(jīng)網(wǎng)絡(luò)輸出PID控制器參數(shù)再通過PID控制器輸出力矩控制機械臂進行軌跡跟蹤。這種方法提升了算法的跟蹤泛性,但由于神經(jīng)網(wǎng)絡(luò)需要先輸出參數(shù)到PID控制器再由PID控制器輸出力矩進行控制,降低了算法對干擾的反應(yīng)能力,導(dǎo)致此算法的抗干擾能力并不理想。因此針對多關(guān)節(jié)的機械臂在具有非線性干擾以及多變的環(huán)境中的軌跡跟蹤控制任務(wù),本文設(shè)計出多智能體深度強化學(xué)習(multi-agent deep reinforcement learning,MDRL)控制方法解決問題。多智能體控制器可以結(jié)合兩種算法的優(yōu)點,同時提升算法跟蹤泛性以及抗干擾能力。根據(jù)圖3訓(xùn)練獎勵收斂圖可知,設(shè)計出的MDRL算法在進行訓(xùn)練實驗的過程中存在無法收斂、甚至沒有正向收斂趨勢的問題,因此本文還引入了行為克?。╞ehavioral cloning,BC) 來加速訓(xùn)練。本文算法與前人的多智能體機械臂控制算法[26]有所不同。前人的多智能體機械臂控制算法大多是對任務(wù)進行分階段拆解,在不同任務(wù)階段由不同智能體進行控制以提升任務(wù)執(zhí)行的穩(wěn)定性以及泛性。而本文算法對復(fù)雜任務(wù)進行功能拆解,PID agent結(jié)合PID控制算法提升算法的泛性能力,DDR agent則主要提升算法的抗干擾能力。本文為了讓機械臂適應(yīng)不同環(huán)境中的軌跡跟蹤任務(wù),關(guān)注的是算法具備不同功能適應(yīng)環(huán)境,因此功能拆解更加適合本文所研究任務(wù)。
c)使用actor網(wǎng)絡(luò)輸出動作a=πφ(s)輸入PID控制器,再由PID控制器輸出力矩到環(huán)境,得到下一個狀態(tài)s′,并且通過獎勵函數(shù)式(12)獲得獎勵RM,將當前的狀態(tài)轉(zhuǎn)移元組(s,a,r,s′)作為經(jīng)驗儲存在經(jīng)驗池Euclid Math OneBAp中。如果s′為本回合結(jié)束狀態(tài)就重設(shè)環(huán)境狀態(tài)。
d)當經(jīng)驗池的經(jīng)驗數(shù)量滿足用于更新的數(shù)量時,抽取N個小批量樣本進行訓(xùn)練更新。
e)使用式(5)(6)計算目標動作以及Q值y(r,s′)。
f)使用計算出來的Q值y(r,s′)更新critic網(wǎng)絡(luò):
其中:α為不大于1的軟更新權(quán)重。
DDR agent:
a)用隨機的網(wǎng)絡(luò)參數(shù)θ1、θ2和φ初始化評論網(wǎng)絡(luò)Qθi=[Qθ1,Qθ2]和動作網(wǎng)絡(luò)πφ,初始化目標網(wǎng)絡(luò)參數(shù)θ′1←θ1,θ′2←θ2,φ′←φ,初始化回放經(jīng)驗池Euclid Math OneBAp。
b)使用actor網(wǎng)絡(luò)輸出動作a=πφ(s)到環(huán)境,得到下一個狀態(tài)s′,并且通過獎勵函數(shù)式(13)獲得獎勵RD,將當前的狀態(tài)轉(zhuǎn)移元組(s,a,r,s′)作為經(jīng)驗存儲在經(jīng)驗池Euclid Math OneBAp中。如果s′為本回合結(jié)束狀態(tài)就重設(shè)環(huán)境狀態(tài)。
c)當經(jīng)驗池的經(jīng)驗數(shù)量滿足用于更新的數(shù)量時,抽取N個小批量樣本進行更新。
d)使用式(5)(6)計算目標動作以及Q值y(r,s′)。
e)使用計算出來的Q值y(r,s′)更新critic網(wǎng)絡(luò):
θi′←αθi+(1-α)θi′, φ′←αφ+(1-α)φ′
其中:α為不大于1的軟更新權(quán)重。
本文中的兩個agent具有不同的控制特點,因此在訓(xùn)練過程中使用了不同的獎勵函數(shù)以及訓(xùn)練流程對兩個agent在同一個環(huán)境中進行訓(xùn)練。其中PID agent使用BC進行預(yù)訓(xùn)練,這種訓(xùn)練需要一些PID控制器的專家經(jīng)驗。在TD3 with PID算法的訓(xùn)練過程中,神經(jīng)網(wǎng)絡(luò)只需要輸出PID控制器的控制參數(shù)就可以在整個跟蹤任務(wù)中達到良好的控制效果,其探索域會比使用TD3直接輸出力矩控制機械臂小得多,因此使用TD3 with PID算法的收斂速度比只使用TD3快得多。根據(jù)TD3 with PID 算法好訓(xùn)練的特點,本文先對TD3 with PID 算法進行訓(xùn)練,再使用訓(xùn)練好的模型進行跟蹤測試,在跟蹤過程中收集由當前狀態(tài)se、模型輸出的專家動作ae、當前獎勵re以及下一個狀態(tài)s′e形成的狀態(tài)轉(zhuǎn)移元組(se,ae,re,s′e)作為專家經(jīng)驗。最后用由專家經(jīng)驗形成的經(jīng)驗池作為PID agent預(yù)訓(xùn)練所需的專家經(jīng)驗池εβ進行BC預(yù)訓(xùn)練。雖然使用BC使訓(xùn)練流程變得復(fù)雜了,但單獨的TD3 with PID 算法訓(xùn)練難度低使得專家經(jīng)驗獲取相對容易,使用BC后降低了MDRL的訓(xùn)練難度,解決了MDRL本身十分難訓(xùn)練的問題。除了行為克隆,還有很多可以提升訓(xùn)練成功率的算法,例如事后經(jīng)驗回放(handsight experience replay,HER)[27],這種方法不需要提前準備專家經(jīng)驗。但是文獻[28]表明,HER主要是針對稀疏獎勵并且需要對任務(wù)獎勵描述十分準確,如果獎勵工程不夠準確甚至會導(dǎo)致訓(xùn)練產(chǎn)生偏差,因此不適合復(fù)雜的多智能體訓(xùn)練。行為克隆則并不需要對復(fù)雜系統(tǒng)再進行獎勵分析就可以達到降低訓(xùn)練復(fù)雜性的效果。因此本文通過BC利用PID控制器的專家經(jīng)驗對PID agent進行預(yù)訓(xùn)練,在正式訓(xùn)練之前使用PID控制器的專家經(jīng)驗組成的訓(xùn)練集,將PID agent在相同狀態(tài)下的決策與專家決策的差距作為損失對PID agent進行預(yù)更新,從而使智能體具有接近專家決策水平的能力。形成的預(yù)策略在訓(xùn)練初期就可以輸出較合適的PID參數(shù)增加正向反饋的經(jīng)驗,降低訓(xùn)練復(fù)雜性,解決了多智能體系統(tǒng)收斂困難甚至不收斂的問題。
3 仿真實驗與結(jié)果分析
本章將進行仿真實驗,以評估所提方法的性能。本文使用 PyTorch 進行基本的實驗搭建。為了評估所提方法,將使用TD3 with PID算法[29]、單純的TD3算法[30]以及未使用BC的MDRL算法與本文MDRL進行對比實驗。
3.1 仿真環(huán)境搭建
在仿真中,使用歐拉-拉格朗日公式建立二自由度機械臂模型完成軌跡跟蹤任務(wù)。當確認自由度為2時,在式(1)中的慣性矩陣、哥氏力矩陣和重力矩陣可以詳細表示為
(18)
其中:q=[q1,q2]T代表兩個機械臂的關(guān)節(jié)角位置;=[1,2]T代表兩個機械臂關(guān)節(jié)角速度;r1和r2代表兩個機械臂的長度;兩條機械臂的質(zhì)量由m1和m2表示;g代表重力加速度。機械臂的初始狀態(tài)和屬性設(shè)置如表1所示,其中q(0)代表初始位置,(0)代表初始速度。在實驗中所有算法的網(wǎng)絡(luò)模型都是三個全連接層,如圖2中的MDRL網(wǎng)絡(luò)結(jié)構(gòu)所示。actor網(wǎng)絡(luò)的輸入是狀態(tài)state,輸出為動作action。critic網(wǎng)絡(luò)的輸入是狀態(tài)state和動作action,輸出是Q值。算法的訓(xùn)練參數(shù)如表2所示。訓(xùn)練的最大輪數(shù)是400輪,每一輪的運動時間是30 s,分為3 000步,每一步0.01 s。訓(xùn)練時所有算法的訓(xùn)練參數(shù)相同。當機械臂的當前位置位于期望位置時視為誤差為0,期望位置會隨著時間的變化而變化,當時間步等于3 000步時當前跟蹤回合結(jié)束,結(jié)束后將機械臂復(fù)位,所有輸入機械臂的力都會被限制在(-100,100)。本文提出的多智能體深度強化學(xué)習輸出力矩時,力矩由PID agent 和 DDR agent 兩個智能體輸出的力矩組成。PID agent輸出的力矩用于維持整體的跟蹤效果,DDR agent輸出的力矩用于補償PID agent輸出的力矩。經(jīng)過實驗,將PID agent的最大力矩設(shè)置為總力矩的80%,DDR agent的最大力矩設(shè)置為總力矩的20%。本文將輸入機械臂的力矩限制在(-100,100),因此PID agent輸出的力矩被限制在(-80,80),DDR agent的力矩被限制在(-20,20)。最后MDRL的力矩由兩個agent的力矩相加后輸出。在仿真部分本文將設(shè)計兩個不同的跟蹤軌跡來測試所提算法的跟蹤泛性,并且添加隨機干擾來測試所提算法的抗干擾能力。
3.2 仿真實驗1
在仿真實驗1中,選擇非線性的跟蹤軌跡qd,其公式如下:
qd=qd1 qd2T=sin(t) cos(t)T
(19)
其中:t∈[0,te],te=30 s是最大時間。實驗1中的測試跟蹤軌跡與訓(xùn)練時用的跟蹤軌跡一樣,本文使用這個軌跡對所有算法進行訓(xùn)練,訓(xùn)練過程如圖3所示。由于PID控制器以及BC預(yù)訓(xùn)練的加入,每個算法一開始的獎勵值可能有所不同。訓(xùn)練圖表明,沒有使用BC的MDRL由于系統(tǒng)本身的復(fù)雜性以及任務(wù)的復(fù)雜性導(dǎo)致訓(xùn)練失敗。TD3雖然訓(xùn)練過程中存在不穩(wěn)定的情況,但是其在訓(xùn)練的過程中也有表現(xiàn)較好的模型以及收斂趨勢。TD3 with PID只需要找到合適的控制器參數(shù)就可以達到很好的跟蹤效果,其任務(wù)本質(zhì)不難,很容易完成訓(xùn)練,因此BC所需的專家經(jīng)驗也可以很容易獲得,使用了BC降低MDRL的訓(xùn)練復(fù)雜性之后,MDRL則可以像其他算法一樣訓(xùn)練成功。跟蹤效果如圖4、5所示,跟蹤誤差如圖6、7所示,跟蹤過程中MDRL輸出的力矩信息如圖8、9所示。圖4~9表明,本文算法的整體跟蹤效果最優(yōu)。力矩輸出信息圖表明,在沒有干擾的情況下,誤差波動幅度不大,MDRL力矩主要由PID agent輸出來維持整體跟蹤效果,DDR agent只是在PID agent具有輸出振蕩時會補償一些力矩。為了更加直觀地展現(xiàn)差距,所有算法跟蹤過程中的誤差信息如表3所示,其中AE是指平均誤差,定義如下:
AE=12(AE1+AE2)=12(1s∑si=1(qd1-q1)+1s∑si=1(qd2-q2))(20)
其中:AE1是關(guān)節(jié)1的平均誤差;AE2是關(guān)節(jié)2的平均誤差。
隨后為跟蹤環(huán)境中加入式(4)定義的隨機干擾,設(shè)置其干擾出現(xiàn)概率為20%,干擾大小范圍為(-200,200)來測試所提算法的抗干擾能力,實際擾動力如圖10、11所示。在具有干擾的環(huán)境中的跟蹤效果如圖12、13所示,跟蹤誤差如圖14、15所示,力矩輸出如圖16、17所示。為了力矩信息的可讀性,本文將所有力矩輸出圖的實際輸出力矩進行虛化處理,將平滑后的力矩數(shù)據(jù)變化線實化輸出。平均誤差隨著干擾出現(xiàn)概率增高的變化如圖14所示??梢钥闯?,所提算法具有很強的抗干擾能力。在具有干擾的情況下跟蹤誤差波動較大,DDR agent快速反應(yīng)輸出力矩進行補償,增強了控制器的抗干擾能力。
添加了干擾的實驗結(jié)果表明,所提算法在添加了20%概率的干擾后整體誤差依然保持在0.031左右,整體誤差最低。隨著干擾的出現(xiàn),概率增加,DDR agent會對干擾進行快速反應(yīng),及時輸出相應(yīng)扭矩,大幅減小干擾的影響。相比對比算法,MDRL在高頻率干擾的環(huán)境下也表現(xiàn)出良好的跟蹤能力。驗證了本文算法具有強大的抗干擾能力,如圖18所示。
3.3 仿真實驗2
為了測試所提算法的泛化能力,本文設(shè)計了與訓(xùn)練軌跡不一樣的測試軌跡進行實驗。在本實驗中,非線性期望軌跡qd為
qd=qd1qd2T=0.1sinπ2t+0.5cosπ3t0.1cosπ3t+0.5sinπ4t
(21)
仿真實驗2的跟蹤效果如圖19、20所示,跟蹤誤差如圖21、22所示,MDRL力矩輸出如圖23、24所示,詳細數(shù)據(jù)在表4中展示。
以上實驗表明,在變換跟蹤軌跡之后,所提算法的跟蹤誤差保持在0.014,與對比算法相比最低。所提算法的跟蹤誤差甚至比更換軌跡前還低,這可能是因為跟蹤軌跡的最大幅度降低讓PID agent更加容易進行跟蹤。PID agent中的PID控制器是一種反饋控制器,agent只需要輸出合適的參數(shù),就可以在大部分軌跡上保持良好的跟蹤效果,只要控制對象不變,就可以保持良好的跟蹤效果。此實驗也證明所提算法具有強大的泛性能力。
為實驗2的跟蹤添加相同的干擾,測試在非訓(xùn)練軌跡的跟蹤穩(wěn)定性,所添加的擾動大小與實驗1一樣如圖10、11所示。添加擾動后的實驗結(jié)果如圖25~28所示,跟蹤過程中MDRL輸出力矩如圖29、30所示。所有算法被添加的擾動都一樣,并且隨時間變化而變化,平均誤差隨著干擾出現(xiàn)概率增高的變化如圖31所示。
添加擾動后的所有誤差詳細數(shù)據(jù)也在表4中展示,數(shù)據(jù)證明加入擾動后,相比于其他算法,所提算法在具有干擾以及變化的環(huán)境中都可以保持良好的跟蹤效果。此實驗證明所提算法在跟蹤不同軌跡的有效性以及跟蹤穩(wěn)定性上,在變換跟蹤軌跡后兩個agent的工作模式是不變的,都是PID agent維持整體跟蹤效果,在誤差波動大時DDR agent輸出力矩補償。
4 結(jié)束語
針對未知模型參數(shù)的2自由度機械臂在具有干擾以及變化的環(huán)境中的軌跡跟蹤問題,本文提出了一種結(jié)合行為克隆的多智能體深度強化學(xué)習控制算法解決問題。通過訓(xùn)練以及仿真結(jié)果表明:所提算法通過BC的加速預(yù)訓(xùn)練后可以收斂到更大的獎勵,可以跟蹤與訓(xùn)練軌跡不同的跟蹤軌跡,并且具有更強的抗干擾能力,同時它獨立于特定的神經(jīng)網(wǎng)絡(luò)模型,具有較高的可移植性,可以將算法移植到其他多自由度的機械臂控制任務(wù)當中。但是本文實驗只在二維平面進行建模仿真驗證深度強化控制算法的可行性,未來可在三維空間中進一步進行驗證實驗。
參考文獻:
[1]羅凱翔, 王援兵. 機械自動化技術(shù)在汽車制造中的應(yīng)用研究 [J]. 內(nèi)燃機與配件, 2024(17): 121-123. (Luo Kaixiang, Wang Yuanbing. Research on application of mechanical automation tech-nology in automotive manufacturing [J]. Internal Combustion Engine amp; Parts, 2024(17): 121-123.)
[2]寧會峰, 周曉虎, 楊從堯. 面向光伏電站除塵作業(yè)的移動機械臂抗傾覆穩(wěn)定性研究 [J]. 太陽能學(xué)報, 2024, 45(8): 377-384. (Ning Huifeng, Zhou Xiaohu, Yang Congyao. Research on anti overturning stability of mobile manipulator for dust removal operation of photovoltaic power station [J]. Acta Energiae Solaris Sinica, 2024, 45(8): 377-384.)
[3]楊繼紅. 基于自適應(yīng)控制算法的機械控制系統(tǒng)優(yōu)化研究 [J]. 模具制造, 2024, 24(7): 35-37. (Yang Jihong. Research on optimization of mechanical control system based on adaptive control algorithm [J]. Die amp; Mould Manufacture, 2024, 24(7): 35-37.)
[4]溫瓊陽, 朱學(xué)軍, 李毅, 等. 基于改進粒子群算法的機械臂能耗軌跡優(yōu)化 [J]. 計算機應(yīng)用研究, 2024, 41(6): 1649-1655. (Wen Qiongyang, Zhu Xuejun, Li Yi, et al. Optimisation of energy consumption trajectory of robotic arm based on improved particle swarm algorithm [J]. Application Research of Computers, 2024, 41(6): 1649-1655.)
[5]Ma Guoyao, Jiang Qi, Zong Xiju, et al. Trajectory tracking control strategy of robotic arm based on adaptive non-singular sliding mode[C]//Proc of IEEE International Conference on Real-Time Computing and Robotics. Piscataway,NJ: IEEE Press, 2023: 532-537.
[6]Soltanpour M R, Khooban M H. A particle swarm optimization approach for fuzzy sliding mode control for tracking the robot manipulator [J]. Nonlinear Dynamics, 2013, 74(1): 467-478.
[7]Carron A, Arcari E, Wermelinger M, et al. Data-driven model predictive control for trajectory tracking with a robotic arm [J]. IEEE Robotics and Automation Letters, 2019, 4(4): 3758-3765.
[8]羅疏桐, 宋自根. 基于Hopf振蕩器的Spiking-CPG六足機器人步態(tài)運動控制 [J]. 計算機應(yīng)用研究, 2024, 41(10): 3053-3058. (Luo Shutong, Song Zigen. Gait locomotion of hexapod robot based on Spiking-CPG neural system using Hopf oscillator [J]. Application Research of Computers, 2024, 41(10): 3053-3058.)
[9]Yang Zeqi, Peng Jinzhu, Liu Yanhong. Adaptive neural network force tracking impedance control for uncertain robotic manipulator based on nonlinear velocity observer [J]. Neurocomputing, 2019, 331: 263-280.
[10]Xu Kun, Wang Zhiliang. The design of a neural network-based adaptive control method for robotic arm trajectory tracking [J]. Neural Computing and Applications, 2023, 35(12): 8785-8795.
[11]Baghbani F, Akbarzadeh-T M R. Adaptive emotional neuro control for a class of uncertain affine nonlinear systems[C]// Proc of the 28th Iranian Conference on Electrical Engineering. Piscataway,NJ: IEEE Press, 2020: 1-5.
[12]Liu Chunming, Xu Xin, Hu Dewen. Multiobjective reinforcement learning:a comprehensive overview [J]. IEEE Trans on Systems, Man, and Cybernetics: Systems, 2015, 45(3): 385-398.
[13]Shao Yanpeng, Zhou Haibo, Zhao Shuaishuai,et al. A control method of robotic arm based on improved deep deterministic policy gradient[C]// Proc of IEEE International Conference on Mechatronics and Automation. Piscataway,NJ: IEEE Press, 2023: 473-478.
[14]Yang Shilin, Wang Qingling. Robotic arm motion planning with autonomous obstacle avoidance based on deep reinforcement learning[C]// Proc of the 41st Chinese Control Conference. Piscataway,NJ: IEEE Press, 2022: 3692-3697.
[15]趙春宇, 賴俊, 陳希亮, 等. 一種基于梯度的多智能體元深度強化學(xué)習算法 [J]. 計算機應(yīng)用研究, 2024, 41(5): 1356-1361. (Zhao Chunyu, Lai Jun, Chen Xiliang, et al. Gradient-based multi-agent meta deep reinforcement learning algorithm [J]. Application Research of Computers, 2024, 41(5): 1356-1361.)
[16]AlaghaA, Mizouni R, Bentahar J, et al. Multiagent deep reinforcement learning with demonstration cloning for target localization [J]. IEEE Internet of Things Journal, 2023, 10(15): 13556-13570.
[17]Ali Shahid A, Sesin J S V, Pecioski D, et al. Decentralized multi-agent control of a manipulator in continuous task learning [J]. Applied Sciences, 2021, 11(21): 10227.
[18]王晶. 基于解耦多智能體深度強化學(xué)習的機械臂裝配研究[D]. 武漢: 武漢紡織大學(xué), 2023. (Wang Jing. Research on mechanical arm assembly based on decoupling multi-agent deep reinforcement learning[D]. Wuhan: Wuhan Textile University, 2023.)
[19]羊波, 王琨, 馬祥祥, 等. 多智能體強化學(xué)習的機械臂運動控制決策研究 [J]. 計算機工程與應(yīng)用, 2023, 59(6): 318-325. (Yang Bo, Wang Kun, Ma Xiangxiang, et al. Research on motion control method of manipulator based on reinforcement learning [J]. Computer Engineering and Applications, 2023, 59(6): 318-325.)
[20]Choi J, Kim H, Son Y, et al. Robotic behavioral cloning through task building[C]//Proc of International Conference on Information and Communication Technology Convergence. Piscataway,NJ: IEEE Press, 2020: 1279-1281.
[21]代戰(zhàn)勝. 多自由度機械臂關(guān)節(jié)角度自動控制方法設(shè)計研究 [J]. 商丘職業(yè)技術(shù)學(xué)院學(xué)報, 2024, 23(4): 81-86. (Dai Zhansheng. Design and research of automatic joint angle control method for multi-degree-of-freedom manipulators [J]. Journal of Shangqiu Polytechnic, 2024, 23(4): 81-86.)
[22]黃毅航. 復(fù)雜工況下機械臂系統(tǒng)的控制策略研究[D]. 徐州: 中國礦業(yè)大學(xué), 2023. (Huang Yihang. Research on control strategy of manipulator system under complex working conditions[D]. Xuzhou: China University of Mining and Technology, 2023.)
[23]方立平, 陳遠明, 楊哲, 等. 基于改進TD3算法的機器人路徑規(guī)劃 [J]. 齊魯工業(yè)大學(xué)學(xué)報, 2024, 38(4): 1-9. (Fang Liping, Chen Yuanming, Yang Zhe, et al. Robot path planning based on improved TD3 algorithm [J]. Journal of Qilu University of Techno-logy, 2024, 38(4): 1-9.)
[24]秦浩, 李雙益, 趙迪, 等. 基于行為克隆的高通量衛(wèi)星通信頻譜資源分配 [J]. 通信學(xué)報, 2024, 45(5): 101-114. (Qin Hao, Li Shuangyi, Zhao Di, et al. Spectrum resource allocation for high-throughput satellite communications based on behavior cloning [J]. Journal on Communications, 2024, 45(5): 101-114.)
[25]杜金清, 謝艷新, 趙子萱, 等. 基于PID控制算法的恒溫控制器設(shè)計與研究 [J]. 無線互聯(lián)科技, 2024, 21(10): 43-49. (Du Jinqing, Xie Yanxin, Zhao Zixuan, et al. Design and research for thermostatic controller based on PID control algorithm [J]. Wireless Internet Science and Technology, 2024, 21(10): 43-49.)
[26]王晶, 蘇工兵, 袁夢, 等. 基于DE-MADDPG多智能體強化學(xué)習機械臂裝配 [J]. 組合機床與自動化加工技術(shù), 2023(12): 183-187, 192. (Wang Jing, Su Gongbing, Yuan Meng, et al. Based on DE-MADDPG multi-agent reinforcement learning robotic arm assembly [J]. Modular Machine Tool amp; Automatic Manufacturing Technique, 2023(12): 183-187, 192.)
[27]黃煜銘. 應(yīng)用于機器人環(huán)境下稀疏獎勵問題的深度強化學(xué)習算法研究[D]. 東莞: 東莞理工學(xué)院, 2024. (Huang Yuming. Research on deep reinforcement learning algorithm for sparse reward problem in robot environment[D]. Dongguan: Dongguan Institute of Technology, 2024.)
[28]王吉富. 稀疏獎勵場景下的事后經(jīng)驗回放機制研究[D]. 長沙: 湖南大學(xué), 2023. (Wang Jifu. Research on afterwards experience playback mechanism in sparse reward scenario[D]. Changsha: Hunan University, 2023.)
[29]張夢杰, 陳姚節(jié), 鄧江. 改進TD3算法在電機PID控制器中的應(yīng)用 [J]. 計算機系統(tǒng)應(yīng)用, 2024, 33(5): 262-270. (Zhang Mengjie, Chen Yaojie, Deng Jiang. Application of improved TD3 algorithm in motor PID controllers [J]. Computer Systems and Applications, 2024, 33(5): 262-270.)
[30]張強, 文聞, 周曉東, 等. 基于改進TD3算法的機械臂智能規(guī)劃方法研究 [J]. 智能科學(xué)與技術(shù)學(xué)報, 2022, 4(2): 223-232. (Zhang Qiang, Wen Wen, Zhou Xiaodong, et al. Research on the manipulator intelligent trajectory planning method based on the improved TD3 algorithm [J]. Chinese Journal of Intelligent Science and Technology, 2022, 4(2): 223-232.)