























摘 要:針對具有非線性干擾以及多變環境的機械臂軌跡跟蹤問題,提出了一種結合行為克隆(behavior cloning,BC)的多智能體深度強化學習(multi-agent deep reinforcement learning,MDRL)控制方法。多智能體控制算法中包含了以孿生延遲深度確定性策略梯度算法(twin delayed deep deterministic policy gradient algorithm,TD3)為基底算法的比例積分微分智能體(proportional-integral-derivative agent,PID agent)和直接用深度強化學習策略輸出扭矩的智能體(direct deep reinforcement learning agent,DDR agent),并采用兩個獎勵函數來優化兩個agent的策略網絡。PID agent用于輸出PID控制器的參數,再由PID控制器輸出力矩控制機械臂以增加控制器的跟蹤泛性,DDR agent則直接輸出扭矩增加控制器的抗干擾性。為了克服多智能體訓練難度高的問題,在訓練中引入行為克隆技術,利用PID控制器的專家經驗對PID agent進行預訓練,形成預策略在訓練初期就可以輸出較合適的PID參數,增加有效經驗來加速訓練過程的獎勵收斂。為了驗證方法的有效性,通過歐拉拉格朗日建模二自由度機械臂,并在具有干擾的多種環境下進行仿真實驗對比。實驗結果表明,所提算法在具有隨機干擾環境以及與訓練軌跡不同的跟蹤軌跡中都具有最好的跟蹤效果,驗證了所提算法的有效性。
關鍵詞:多智能體;孿生延遲深度確定性策略梯度;深度強化學習;軌跡跟蹤;行為克隆
中圖分類號: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 引言
近幾年隨著智能制造的蓬勃發展,機器人系統進步迅速,并且已經廣泛應用到光伏、汽車等多個行業中[1, 2]。機器人路徑規劃和軌跡跟蹤是機器人自動化和智能化的關鍵技術之一,目前關于機械臂控制的研究已經取得了很多成果[3, 4]。隨著控制復雜性的增加,機器人的不確定性和系統干擾也應該在控制設計中得到特別關注。因此,文獻[5]提出了一種用于機械臂的自適應非奇異魯棒積分滑模控制器,以處理時變干擾。Soltanpour等人[6]提出了一種利用模糊滑動模式跟蹤機器人位置的優化控制方法,并采用粒子群優化算法來克服機器人的不確定性。此外,文獻[7]還詳細介紹了一種基于模型的控制算法,通過識別動態參數實現液壓機械臂的高精度軌跡跟蹤。然而,上述研究需要機器人系統的數學模型部分已知或對其進行估計。值得注意的是,機器人的動態模型,尤其是在復雜的工業應用中,往往是時變或不確定的。
為了適應這種不確定性,近年來神經網絡被廣泛應用于解決不確定的非線性動態機器人系統的控制設計問題[8]。文獻[9]提出了一種基于徑向基函數神經網絡(radial basis function neural networks,RBFNN)的自適應控制方法來實現位置跟蹤控制。文獻[10]引入了一種基于神經網絡的控制方法。該方法具有自學習和近似能力,可以解決不確定性和外部干擾問題。文獻[11]利用神經網絡提高了機械臂控制系統的穩定性和魯棒性。上述研究減少了對線性數學模型的依賴,但是在訓練神經網絡時容易遇到訓練不充分以及局部最優的問題。
深度強化學習(deep reinforcement learning,DRL)的出現豐富了神經網絡的訓練方法,增強神經網絡在不確定的環境中進行決策的能力[12]。DRL將深度學習和強化學習相結合,廣泛應用于機器人控制領域。文獻[13]引入了深度確定性策略梯度(deep deterministic policy gradient,DDPG)算法來訓練機械臂在復雜環境中執行連續動作。在文獻[14]中,近端策略優化(proximal policy optimization,PPO)被用于使機械臂在模擬環境中跟蹤軌跡。雖然這些基于 DRL 的方法實現了機器臂軌跡跟蹤任務,但是其訓練出的模型只能在訓練集包含的軌跡中具有良好表現,泛化能力仍有待提高。
多智能體深度強化學習(MDRL)[15]可以將任務分解給單個智能體,一起協同解決復雜任務,適應復雜環境。文獻[16]提出了一種MDRL方法來解決目標搜索問題。Ali Shahid等人[17]提出了一種分布式MDRL控制方法,用于協調多個機械臂完成復雜的抓取和提升任務。文獻[18]將解耦多智能體深度確定性策略梯度(decoupling multi-agent deep deterministic policy gradient, DE-MADDPG)算法應用到軸孔裝配問題,將機械臂的前三個關節和后三個關節構造成多智能體系統,分開獨立控制以降低耦合性。文獻[19]采用近端策略優化(proximal policy optimization,PPO)與多智能體(multi-agents)結合的M-PPO算法完成機械臂執行末端避障并到達目標物體位置任務,解決傳統運動控制算法存在的環境適應性較差、效率低的問題。雖然上述論文使用MDRL解決了很多問題,但是針對隨機干擾環境下機器人軌跡跟蹤任務的MDRL方法的研究還很有限。因此,本文結合了MDRL和PID控制器設計了一種多智能體控制系統,解決非線性隨機干擾和多變環境下的機器人跟蹤控制問題。本文的主要貢獻如下:
a)文獻[17]中,MDRL被用于控制機械臂完成特定任務,但并未考慮到具有強隨機干擾以及多變的環境。針對這種環境,本文設計了一種多智能深度強化學習體控制器,用于控制機械臂完成軌跡跟蹤任務。該控制系統包含了兩個以TD3為基礎算法的智能體:一個智能體用于調整 PID 控制器的參數,結合PID反饋控制器增加控制器的泛化能力;另一個智能體直接輸出補償扭矩增加抗干擾能力。通過多智能體協同工作,增強控制器的抗干擾能力和泛化能力。
b)由于兩個agent工作邏輯的差異和工作重點的不同,本文必須設計兩種不同的獎勵函數來反映每一個agent的工作表現。本文將整體獎勵分化成內部獎勵,使PID agent對整體跟蹤效果獎勵權重更大,更注重整體跟蹤效果,而DDR agent對誤差變化率獎勵權重更大,更加注重跟蹤穩定性。經過兩個獎勵函數的協調反饋,具有不同控制特性的兩個智能體可以朝著共同的控制目標更新。
c)由于使用多智能體會導致訓練難度加大,受到文獻[20]的啟發,本文采用BC解決多智能體系統收斂困難的問題。通過BC技術利用PID控制器的專家經驗對PID agent進行預訓練,形成的預策略在訓練初期就可以輸出較合適的PID參數增加有效經驗,提高了多智能體算法探索過程的有效性,解決了多智能體系統收斂困難甚至不收斂的問題。
1 問題描述
1.1 動態模型
機器人系統的動力學方程由拉格朗日函數導出,機械臂關節角變量是q,關節角速度是,動態方程用歐拉拉格朗日方程可以表示為[21]:
其中:qmin表示力矩的最小值;qmax表示力矩的最大值。
1.2 非線性隨機干擾設計
本文設計了非線性干擾來驗證算法的魯棒性。非線性干擾的定義如下:
(4)
其中:r=1,2,3,…,k是一個隨機數;Euclid Math OneFApi(r)是第i個關節受到的干擾力,一共有n個關節;Radn∈[0,1]是一個隨機生成數,設置數值x∈[0,1],當隨機數Radn超過所設置的數x時,干擾就會發生;G(r)∈(-K,K)是一個具有值域(-K,K)的未知函數,用于確定干擾發生時的干擾力矩,其大小與隨機數r有關,與機械臂的力無關,屬于外部干擾。可以通過設置x以及K來設置干擾的大小范圍以及發生概率。因此,當使用這種干擾時,已知的只有干擾力矩大小和發生概率,其他所有信息都未知。本文的干擾強度以及發生概率都是由隨機數或者隨機函數控制,并且這些隨機數或隨機函數都是在一定范圍內均勻分布。因此,隨機干擾的干擾強度在確定了大小范圍后其分布特性以及變化規律也符合均勻分布特性。此干擾模擬在現實環境中可能遇到的信息有限的環境干擾,比如風、海浪或者未知外部力等。
1.3 控制目標及研究意義
給定具有隨機非線性干擾環境以及目標跟蹤軌跡qd,為機械臂設計一個多智能體深度強化學習控制器,無須預知機械臂動態模型即可在有干擾的多變環境中使機械臂跟蹤目標跟蹤軌跡qd。本文研究的內容是在具有干擾以及多變環境中的機械臂軌跡跟蹤任務,本文創新性地結合兩個輸出力矩方式不同的agent并通過BC訓練成功,增加了跟蹤任務過程中的控制泛性以及抗干擾能力。在實際控制中,控制器的控制泛性可以增加其應用前景以及特殊情況的應對能力,抗干擾能力則可以增加控制器的控制穩定性以適應更多的極端應用場景。因此本文研究對在海上、沙漠等惡劣環境以及惡劣天氣中的噴涂、裝配等任務的解決方案具有重要參考意義。
2 基于行為克隆的多智能體深度強化學習算法設計
2.1 TD3深度強化學習算法
TD3是一種專門為了連續動作空間任務設計的非在線actor-critic DRL算法[23]。一個深度強化學習系統可以用一個元組D=(S,A,π,Q,R,γ)來定義。其中:S表示狀態空間;A表示行動空間,π代表需要訓練的行為神經網絡;Q代表需要訓練的critic神經網絡;R代表獎勵空間;γ是折扣因子。當給定一個 DRL 任務時,確定當前狀態s、當前動作a、獎勵r以及下一個狀態s′,TD3網絡的更新過程如圖1所示。TD3的目標策略輸出目標動作的公式如下:
(5)
其中:a′是目標動作;s′是根據當前動作作用于當前狀態所產生的下一個狀態;πφ′(s′)目標策略πφ′根據下一動作s′產生的目標動作;是添加的隨機噪聲;(-c,c)是添加噪聲的值域;(alow,ahigh)是輸出的動作的大小范圍;符號clip(a,b,c)代表用范圍(b,c)對a進行截斷裁剪。
TD3使用兩個不同的Q網絡對動作進行估計并且選擇兩個Q值中的最小值更新目標,抑制持續的過高估計。因此在TD3中計算目標Q值的公式如下:
y(r,s′)=r+γmini=1,2Qθ ′i(s′,a′(s′))
(6)
其中:r代表環境給的回報值;γ代表折扣因子;Qθi=[Qθ1,Qθ2]是由雙Q網絡組成的critic網絡。
actor網絡的更新公式如下:
2.2 行為克隆
行為克隆(behavioral cloning,BC) 是模擬學習的一種。行為克隆的學習過程就是學習專家經驗給出的行為[24]。行為克隆可以用于模型的預訓練以及降低模型的獎勵收斂難度。行為克隆的學習過程就是學習一種從狀態到專家行為的映射關系,這種映射關系通常用神經網絡表達。行為克隆的訓練目的是使智能體在遇到與專家相同的情況時作出相同的動作,因此行為克隆的訓練過程可以理解為減少神經網絡輸出的動作與專家經驗展示的行為的差異。如果一個神經網絡使用均方誤差(mean square error,MSE)作為損失函數,那么在行為克隆時計算loss的公式如下:
(8)
其中:(si,ai)是一個回合的狀態和專家動作;N是從數據集中抽取的樣本數;f(si)是待訓練網絡對當前狀態的預測動作。
2.3 PID控制器
PID的全稱是比例積分微分(proportional integral derivative,PID)[25],是一種反饋控制算法。 PID 控制器通常表示為
(9)
其中:P是比例項的輸出;Kp是比例系數;e(t)表示t時刻的誤差;I表示積分項的輸出;Ki是積分系數;Euclid SymbolrCpt0e(t)dt表示誤差從開始到當前時刻的積分;D是微分項的輸出;Kd是微分系數;de(t)/dt是誤差的變化率。本文的PID agent使用TD3輸出PID的三個參數Kp、Ki以及Kd,PID agent只需要找到適合當前機械臂的PID參數就可以良好地完成跟蹤任務,因此其訓練速度較快,但是其抗干擾效果還需要DDR agent進行彌補。
2.4 獎勵函數設計
本文的多智能體算法使用兩個智能體控制同一個機械臂,兩個智能體輸出力矩的方式完全不同,PID agent輸出PID控制器的參數,再由PID控制器輸出控制力矩,DDR agent則直接輸出控制力矩。兩個agent在跟蹤任務過程中的工作重點也有差異:PID agent更加關注整體的跟蹤效果,DDR agent更加關注抗干擾能力以及跟蹤穩定性。由于兩個agent工作邏輯差異和工作重點不同,本文必須設計兩種不同的獎勵函數來反映每一個agent的工作表現,在兩個智能體的共同目標相同時對不同的參數變化更加敏感。兩個獎勵函數將整體任務進行分化,形成兩個agent的內部獎勵,增強兩個agent的協作能力。PID agent在時刻t的即時獎勵定義為
rp(t)=-ve·e(t)
(10)
其中:e(t)=q(t)-qd(t)表示跟蹤誤差;q(t)、qd(t)分別表示機械臂位置以及期望位置;ve代表跟蹤誤差的系數。PID agent更注重整體軌跡跟蹤性能,因此PID agent的獎勵只使用軌跡誤差作為獎勵值。
DDR agent在時刻t的即時獎勵定義為
rd(t)=-(ve·e(t))+ved·ed(t)
(11)
其中:ed(t)=e(t-1)-e(t)表示誤差的變化量;edv是誤差變化量的參數。使用誤差變化量作為獎勵可以讓DDR agent對跟蹤的穩定性更加敏感。DDR agent是直接輸出力矩到機械臂,因此其對干擾或者系統波動可以快速反應,可以提升系統的抗干擾能力以及跟蹤穩定性。假設時間步長t之后來自環境的獎勵序列可以表示為rt+1,rt+2,rt+3…。那么加權即時獎勵的總和就是預期的折扣獎勵:
RP(t)=∑Nk=1γk-1r1t+k
(12)
RD(t)=∑Nk=1γk-1r2t+k
(13)
結合式(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 結合行為克隆的MDRL控制算法流程
根據上文所述,結合事后篩選經驗回放的深度強化學習控制算法流程如圖2所示。
本文要解決的問題是多關節的機械臂在具有非線性干擾以及多變的環境中的軌跡跟蹤控制問題,孿生延遲深度確定性策略梯度(twin delayed deep deterministic policy gradient algorithm,TD3)可以很好地解決機械臂軌跡跟蹤的控制問題并且具有良好的抗干擾能力,但由于神經網絡具有與任務擬合的特性,其在跟蹤與訓練軌跡不同的其他軌跡時表現不佳。為了克服這個問題,本文引入了比例積分微分(proportional integral derivative,PID)反饋控制器設計出了TD3 with PID算法,此算法使用神經網絡輸出PID控制器參數再通過PID控制器輸出力矩控制機械臂進行軌跡跟蹤。這種方法提升了算法的跟蹤泛性,但由于神經網絡需要先輸出參數到PID控制器再由PID控制器輸出力矩進行控制,降低了算法對干擾的反應能力,導致此算法的抗干擾能力并不理想。因此針對多關節的機械臂在具有非線性干擾以及多變的環境中的軌跡跟蹤控制任務,本文設計出多智能體深度強化學習(multi-agent deep reinforcement learning,MDRL)控制方法解決問題。多智能體控制器可以結合兩種算法的優點,同時提升算法跟蹤泛性以及抗干擾能力。根據圖3訓練獎勵收斂圖可知,設計出的MDRL算法在進行訓練實驗的過程中存在無法收斂、甚至沒有正向收斂趨勢的問題,因此本文還引入了行為克隆(behavioral cloning,BC) 來加速訓練。本文算法與前人的多智能體機械臂控制算法[26]有所不同。前人的多智能體機械臂控制算法大多是對任務進行分階段拆解,在不同任務階段由不同智能體進行控制以提升任務執行的穩定性以及泛性。而本文算法對復雜任務進行功能拆解,PID agent結合PID控制算法提升算法的泛性能力,DDR agent則主要提升算法的抗干擾能力。本文為了讓機械臂適應不同環境中的軌跡跟蹤任務,關注的是算法具備不同功能適應環境,因此功能拆解更加適合本文所研究任務。
c)使用actor網絡輸出動作a=πφ(s)輸入PID控制器,再由PID控制器輸出力矩到環境,得到下一個狀態s′,并且通過獎勵函數式(12)獲得獎勵RM,將當前的狀態轉移元組(s,a,r,s′)作為經驗儲存在經驗池Euclid Math OneBAp中。如果s′為本回合結束狀態就重設環境狀態。
d)當經驗池的經驗數量滿足用于更新的數量時,抽取N個小批量樣本進行訓練更新。
e)使用式(5)(6)計算目標動作以及Q值y(r,s′)。
f)使用計算出來的Q值y(r,s′)更新critic網絡:
其中:α為不大于1的軟更新權重。
DDR agent:
a)用隨機的網絡參數θ1、θ2和φ初始化評論網絡Qθi=[Qθ1,Qθ2]和動作網絡πφ,初始化目標網絡參數θ′1←θ1,θ′2←θ2,φ′←φ,初始化回放經驗池Euclid Math OneBAp。
b)使用actor網絡輸出動作a=πφ(s)到環境,得到下一個狀態s′,并且通過獎勵函數式(13)獲得獎勵RD,將當前的狀態轉移元組(s,a,r,s′)作為經驗存儲在經驗池Euclid Math OneBAp中。如果s′為本回合結束狀態就重設環境狀態。
c)當經驗池的經驗數量滿足用于更新的數量時,抽取N個小批量樣本進行更新。
d)使用式(5)(6)計算目標動作以及Q值y(r,s′)。
e)使用計算出來的Q值y(r,s′)更新critic網絡:
θi′←αθi+(1-α)θi′, φ′←αφ+(1-α)φ′
其中:α為不大于1的軟更新權重。
本文中的兩個agent具有不同的控制特點,因此在訓練過程中使用了不同的獎勵函數以及訓練流程對兩個agent在同一個環境中進行訓練。其中PID agent使用BC進行預訓練,這種訓練需要一些PID控制器的專家經驗。在TD3 with PID算法的訓練過程中,神經網絡只需要輸出PID控制器的控制參數就可以在整個跟蹤任務中達到良好的控制效果,其探索域會比使用TD3直接輸出力矩控制機械臂小得多,因此使用TD3 with PID算法的收斂速度比只使用TD3快得多。根據TD3 with PID 算法好訓練的特點,本文先對TD3 with PID 算法進行訓練,再使用訓練好的模型進行跟蹤測試,在跟蹤過程中收集由當前狀態se、模型輸出的專家動作ae、當前獎勵re以及下一個狀態s′e形成的狀態轉移元組(se,ae,re,s′e)作為專家經驗。最后用由專家經驗形成的經驗池作為PID agent預訓練所需的專家經驗池εβ進行BC預訓練。雖然使用BC使訓練流程變得復雜了,但單獨的TD3 with PID 算法訓練難度低使得專家經驗獲取相對容易,使用BC后降低了MDRL的訓練難度,解決了MDRL本身十分難訓練的問題。除了行為克隆,還有很多可以提升訓練成功率的算法,例如事后經驗回放(handsight experience replay,HER)[27],這種方法不需要提前準備專家經驗。但是文獻[28]表明,HER主要是針對稀疏獎勵并且需要對任務獎勵描述十分準確,如果獎勵工程不夠準確甚至會導致訓練產生偏差,因此不適合復雜的多智能體訓練。行為克隆則并不需要對復雜系統再進行獎勵分析就可以達到降低訓練復雜性的效果。因此本文通過BC利用PID控制器的專家經驗對PID agent進行預訓練,在正式訓練之前使用PID控制器的專家經驗組成的訓練集,將PID agent在相同狀態下的決策與專家決策的差距作為損失對PID agent進行預更新,從而使智能體具有接近專家決策水平的能力。形成的預策略在訓練初期就可以輸出較合適的PID參數增加正向反饋的經驗,降低訓練復雜性,解決了多智能體系統收斂困難甚至不收斂的問題。
3 仿真實驗與結果分析
本章將進行仿真實驗,以評估所提方法的性能。本文使用 PyTorch 進行基本的實驗搭建。為了評估所提方法,將使用TD3 with PID算法[29]、單純的TD3算法[30]以及未使用BC的MDRL算法與本文MDRL進行對比實驗。
3.1 仿真環境搭建
在仿真中,使用歐拉-拉格朗日公式建立二自由度機械臂模型完成軌跡跟蹤任務。當確認自由度為2時,在式(1)中的慣性矩陣、哥氏力矩陣和重力矩陣可以詳細表示為
(18)
其中:q=[q1,q2]T代表兩個機械臂的關節角位置;=[1,2]T代表兩個機械臂關節角速度;r1和r2代表兩個機械臂的長度;兩條機械臂的質量由m1和m2表示;g代表重力加速度。機械臂的初始狀態和屬性設置如表1所示,其中q(0)代表初始位置,(0)代表初始速度。在實驗中所有算法的網絡模型都是三個全連接層,如圖2中的MDRL網絡結構所示。actor網絡的輸入是狀態state,輸出為動作action。critic網絡的輸入是狀態state和動作action,輸出是Q值。算法的訓練參數如表2所示。訓練的最大輪數是400輪,每一輪的運動時間是30 s,分為3 000步,每一步0.01 s。訓練時所有算法的訓練參數相同。當機械臂的當前位置位于期望位置時視為誤差為0,期望位置會隨著時間的變化而變化,當時間步等于3 000步時當前跟蹤回合結束,結束后將機械臂復位,所有輸入機械臂的力都會被限制在(-100,100)。本文提出的多智能體深度強化學習輸出力矩時,力矩由PID agent 和 DDR agent 兩個智能體輸出的力矩組成。PID agent輸出的力矩用于維持整體的跟蹤效果,DDR agent輸出的力矩用于補償PID agent輸出的力矩。經過實驗,將PID agent的最大力矩設置為總力矩的80%,DDR agent的最大力矩設置為總力矩的20%。本文將輸入機械臂的力矩限制在(-100,100),因此PID agent輸出的力矩被限制在(-80,80),DDR agent的力矩被限制在(-20,20)。最后MDRL的力矩由兩個agent的力矩相加后輸出。在仿真部分本文將設計兩個不同的跟蹤軌跡來測試所提算法的跟蹤泛性,并且添加隨機干擾來測試所提算法的抗干擾能力。
3.2 仿真實驗1
在仿真實驗1中,選擇非線性的跟蹤軌跡qd,其公式如下:
qd=qd1 qd2T=sin(t) cos(t)T
(19)
其中:t∈[0,te],te=30 s是最大時間。實驗1中的測試跟蹤軌跡與訓練時用的跟蹤軌跡一樣,本文使用這個軌跡對所有算法進行訓練,訓練過程如圖3所示。由于PID控制器以及BC預訓練的加入,每個算法一開始的獎勵值可能有所不同。訓練圖表明,沒有使用BC的MDRL由于系統本身的復雜性以及任務的復雜性導致訓練失敗。TD3雖然訓練過程中存在不穩定的情況,但是其在訓練的過程中也有表現較好的模型以及收斂趨勢。TD3 with PID只需要找到合適的控制器參數就可以達到很好的跟蹤效果,其任務本質不難,很容易完成訓練,因此BC所需的專家經驗也可以很容易獲得,使用了BC降低MDRL的訓練復雜性之后,MDRL則可以像其他算法一樣訓練成功。跟蹤效果如圖4、5所示,跟蹤誤差如圖6、7所示,跟蹤過程中MDRL輸出的力矩信息如圖8、9所示。圖4~9表明,本文算法的整體跟蹤效果最優。力矩輸出信息圖表明,在沒有干擾的情況下,誤差波動幅度不大,MDRL力矩主要由PID agent輸出來維持整體跟蹤效果,DDR agent只是在PID agent具有輸出振蕩時會補償一些力矩。為了更加直觀地展現差距,所有算法跟蹤過程中的誤差信息如表3所示,其中AE是指平均誤差,定義如下:
AE=12(AE1+AE2)=12(1s∑si=1(qd1-q1)+1s∑si=1(qd2-q2))(20)
其中:AE1是關節1的平均誤差;AE2是關節2的平均誤差。
隨后為跟蹤環境中加入式(4)定義的隨機干擾,設置其干擾出現概率為20%,干擾大小范圍為(-200,200)來測試所提算法的抗干擾能力,實際擾動力如圖10、11所示。在具有干擾的環境中的跟蹤效果如圖12、13所示,跟蹤誤差如圖14、15所示,力矩輸出如圖16、17所示。為了力矩信息的可讀性,本文將所有力矩輸出圖的實際輸出力矩進行虛化處理,將平滑后的力矩數據變化線實化輸出。平均誤差隨著干擾出現概率增高的變化如圖14所示。可以看出,所提算法具有很強的抗干擾能力。在具有干擾的情況下跟蹤誤差波動較大,DDR agent快速反應輸出力矩進行補償,增強了控制器的抗干擾能力。
添加了干擾的實驗結果表明,所提算法在添加了20%概率的干擾后整體誤差依然保持在0.031左右,整體誤差最低。隨著干擾的出現,概率增加,DDR agent會對干擾進行快速反應,及時輸出相應扭矩,大幅減小干擾的影響。相比對比算法,MDRL在高頻率干擾的環境下也表現出良好的跟蹤能力。驗證了本文算法具有強大的抗干擾能力,如圖18所示。
3.3 仿真實驗2
為了測試所提算法的泛化能力,本文設計了與訓練軌跡不一樣的測試軌跡進行實驗。在本實驗中,非線性期望軌跡qd為
qd=qd1qd2T=0.1sinπ2t+0.5cosπ3t0.1cosπ3t+0.5sinπ4t
(21)
仿真實驗2的跟蹤效果如圖19、20所示,跟蹤誤差如圖21、22所示,MDRL力矩輸出如圖23、24所示,詳細數據在表4中展示。
以上實驗表明,在變換跟蹤軌跡之后,所提算法的跟蹤誤差保持在0.014,與對比算法相比最低。所提算法的跟蹤誤差甚至比更換軌跡前還低,這可能是因為跟蹤軌跡的最大幅度降低讓PID agent更加容易進行跟蹤。PID agent中的PID控制器是一種反饋控制器,agent只需要輸出合適的參數,就可以在大部分軌跡上保持良好的跟蹤效果,只要控制對象不變,就可以保持良好的跟蹤效果。此實驗也證明所提算法具有強大的泛性能力。
為實驗2的跟蹤添加相同的干擾,測試在非訓練軌跡的跟蹤穩定性,所添加的擾動大小與實驗1一樣如圖10、11所示。添加擾動后的實驗結果如圖25~28所示,跟蹤過程中MDRL輸出力矩如圖29、30所示。所有算法被添加的擾動都一樣,并且隨時間變化而變化,平均誤差隨著干擾出現概率增高的變化如圖31所示。
添加擾動后的所有誤差詳細數據也在表4中展示,數據證明加入擾動后,相比于其他算法,所提算法在具有干擾以及變化的環境中都可以保持良好的跟蹤效果。此實驗證明所提算法在跟蹤不同軌跡的有效性以及跟蹤穩定性上,在變換跟蹤軌跡后兩個agent的工作模式是不變的,都是PID agent維持整體跟蹤效果,在誤差波動大時DDR agent輸出力矩補償。
4 結束語
針對未知模型參數的2自由度機械臂在具有干擾以及變化的環境中的軌跡跟蹤問題,本文提出了一種結合行為克隆的多智能體深度強化學習控制算法解決問題。通過訓練以及仿真結果表明:所提算法通過BC的加速預訓練后可以收斂到更大的獎勵,可以跟蹤與訓練軌跡不同的跟蹤軌跡,并且具有更強的抗干擾能力,同時它獨立于特定的神經網絡模型,具有較高的可移植性,可以將算法移植到其他多自由度的機械臂控制任務當中。但是本文實驗只在二維平面進行建模仿真驗證深度強化控制算法的可行性,未來可在三維空間中進一步進行驗證實驗。
參考文獻:
[1]羅凱翔, 王援兵. 機械自動化技術在汽車制造中的應用研究 [J]. 內燃機與配件, 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]寧會峰, 周曉虎, 楊從堯. 面向光伏電站除塵作業的移動機械臂抗傾覆穩定性研究 [J]. 太陽能學報, 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]楊繼紅. 基于自適應控制算法的機械控制系統優化研究 [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]溫瓊陽, 朱學軍, 李毅, 等. 基于改進粒子群算法的機械臂能耗軌跡優化 [J]. 計算機應用研究, 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六足機器人步態運動控制 [J]. 計算機應用研究, 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]趙春宇, 賴俊, 陳希亮, 等. 一種基于梯度的多智能體元深度強化學習算法 [J]. 計算機應用研究, 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]王晶. 基于解耦多智能體深度強化學習的機械臂裝配研究[D]. 武漢: 武漢紡織大學, 2023. (Wang Jing. Research on mechanical arm assembly based on decoupling multi-agent deep reinforcement learning[D]. Wuhan: Wuhan Textile University, 2023.)
[19]羊波, 王琨, 馬祥祥, 等. 多智能體強化學習的機械臂運動控制決策研究 [J]. 計算機工程與應用, 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]代戰勝. 多自由度機械臂關節角度自動控制方法設計研究 [J]. 商丘職業技術學院學報, 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]黃毅航. 復雜工況下機械臂系統的控制策略研究[D]. 徐州: 中國礦業大學, 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算法的機器人路徑規劃 [J]. 齊魯工業大學學報, 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]秦浩, 李雙益, 趙迪, 等. 基于行為克隆的高通量衛星通信頻譜資源分配 [J]. 通信學報, 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控制算法的恒溫控制器設計與研究 [J]. 無線互聯科技, 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多智能體強化學習機械臂裝配 [J]. 組合機床與自動化加工技術, 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]黃煜銘. 應用于機器人環境下稀疏獎勵問題的深度強化學習算法研究[D]. 東莞: 東莞理工學院, 2024. (Huang Yuming. Research on deep reinforcement learning algorithm for sparse reward problem in robot environment[D]. Dongguan: Dongguan Institute of Technology, 2024.)
[28]王吉富. 稀疏獎勵場景下的事后經驗回放機制研究[D]. 長沙: 湖南大學, 2023. (Wang Jifu. Research on afterwards experience playback mechanism in sparse reward scenario[D]. Changsha: Hunan University, 2023.)
[29]張夢杰, 陳姚節, 鄧江. 改進TD3算法在電機PID控制器中的應用 [J]. 計算機系統應用, 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算法的機械臂智能規劃方法研究 [J]. 智能科學與技術學報, 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.)