吳萬(wàn)毅, 劉芳華, 郭文龍
(江蘇科技大學(xué)機(jī)械工程學(xué)院, 江蘇 鎮(zhèn)江 212000)
雙足機(jī)器人為仿人類外形設(shè)計(jì), 具有多種行走模式,經(jīng)控制可實(shí)現(xiàn)在樓梯、崎嶇地面等復(fù)雜地形環(huán)境中智能行走.為保證機(jī)器人的穩(wěn)定運(yùn)行, 國(guó)內(nèi)外學(xué)者開展了大量研究.葛一敏[1], Kim[2], Chen[3]等將離線步態(tài)規(guī)劃作為主要控制手段, 結(jié)合其他在線步態(tài)修正算法, 實(shí)現(xiàn)了雙足機(jī)器人的持續(xù)穩(wěn)定行走, 但對(duì)算法解算的快速性與實(shí)時(shí)性要求較高, 雙足機(jī)器人行走至復(fù)雜地形時(shí)無(wú)法迅速適應(yīng)環(huán)境變化, 故該方法對(duì)雙足機(jī)器人的實(shí)際控制效果不理想.深度強(qiáng)化學(xué)習(xí)(deep reinforcement learning, DRL)算法具有深層網(wǎng)絡(luò)結(jié)構(gòu), 可處理高維狀態(tài)信息[3-5].近端策略優(yōu)化(proximal policy optimization, PPO)作為一種DRL算法, 可重復(fù)使用樣本, 減少采樣次數(shù), 縮短學(xué)習(xí)時(shí)間, 在串聯(lián)剛性體的軌跡規(guī)劃控制中得到了廣泛應(yīng)用[6-10].Hou等[7]將PPO算法與單剛體的模型預(yù)測(cè)控制算法相結(jié)合, 準(zhǔn)確預(yù)測(cè)雙足機(jī)器人擺動(dòng)下肢的運(yùn)動(dòng)狀態(tài), 同時(shí)抵抗行走干擾, 實(shí)現(xiàn)了雙足機(jī)器人的穩(wěn)定行走, 但該控制方法的模型訓(xùn)練收斂速度較慢, 并且機(jī)器人自重可能會(huì)影響行走的穩(wěn)定性; Zhang等[8]采用PPO算法結(jié)合卷積神經(jīng)網(wǎng)絡(luò)處理拍攝的圖像, 提高了狀態(tài)處理效率, 使智能體具有穩(wěn)定的控制效果, 但該方法僅適用于視覺領(lǐng)域的圖像處理, 對(duì)于非視覺領(lǐng)域的應(yīng)用存在局限性.針對(duì)上述問(wèn)題, 本文擬提出一種基于改進(jìn)近端策略優(yōu)化算法的雙足機(jī)器人控制方法, 將長(zhǎng)短時(shí)記憶(long short-term memory, LSTM)與近端策略優(yōu)化算法相結(jié)合, 并在非視覺領(lǐng)域引入注意力機(jī)制[11], 以期提高算法的學(xué)習(xí)效率和實(shí)現(xiàn)雙足機(jī)器人在復(fù)雜環(huán)境下的自適應(yīng)穩(wěn)定行走.
圖1 LSTM結(jié)構(gòu)圖Fig.1 Structure diagram of LSTM
多頭注意力機(jī)制(multi-head attention mechanism, MHSA)是注意力機(jī)制的一種擴(kuò)展形式, 結(jié)構(gòu)如圖2所示.多頭注意力機(jī)制的頭數(shù)為h, 多個(gè)查詢向量Q和狀態(tài)信息輸入向量X經(jīng)LSTM輸出后, 每個(gè)注意力關(guān)注LSTM輸出信息的不同部分, 并進(jìn)行平行計(jì)算, 最后將輸出狀態(tài)信息的不同權(quán)重進(jìn)行拼接att((K,V),Q)=att((K,V),q1)?…?att((K,V),qm), 從而獲得帶有不同權(quán)重的狀態(tài)信息, 提高神經(jīng)網(wǎng)絡(luò)處理信息的能力.
圖2 多頭注意力機(jī)制Fig.2 Multi-head attention mechanism
改進(jìn)后PPO算法網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示.在動(dòng)作策略網(wǎng)絡(luò)中, 把速度、位姿、雷達(dá)信息等24個(gè)搜集到的狀態(tài)信息作為輸入, 轉(zhuǎn)化到具有256個(gè)隱藏單元的中間層, 通過(guò)LSTM映射及注意力機(jī)制計(jì)算, 輸出帶有權(quán)重差異的狀態(tài)信息高維表示, 得到連續(xù)空間的輸出動(dòng)作概率分布.在價(jià)值網(wǎng)絡(luò)中, 輸入狀態(tài)經(jīng)兩層全連接層, 由LSTM映射為一維的價(jià)值函數(shù),得到輸出的預(yù)測(cè)值.
圖3 網(wǎng)絡(luò)結(jié)構(gòu)Fig.3 Network structure
為驗(yàn)證所提算法的有效性, 在Open AI gym提供的BipedalWalker-v3環(huán)境中進(jìn)行仿真測(cè)試, 利用MuJoCo物理仿真器模擬雙足機(jī)器人在崎嶇道路環(huán)境下運(yùn)動(dòng)時(shí)身體姿態(tài)和關(guān)節(jié)角度的自適應(yīng)變化.機(jī)器人具有四自由度和24個(gè)維度的狀態(tài)信息, 前14個(gè)維度的狀態(tài)信息包括機(jī)器人的關(guān)節(jié)運(yùn)動(dòng)速度、質(zhì)心角度、地面接觸力等, 后10個(gè)維度的狀態(tài)信息由雷達(dá)提供.機(jī)器人行走建模時(shí),設(shè)置學(xué)習(xí)率為0.000 1,衰減率為0.99, 剪切函數(shù)的超參數(shù)為0.2, 批量大小為256, 梯度閾值為1.
圖4為改進(jìn)后PPO算法的損失函數(shù)曲線.由圖4可知, 隨著迭代次數(shù)的增加, 損失函數(shù)曲線逐漸趨于平穩(wěn), 表明該算法收斂到最優(yōu)解.為進(jìn)一步分析所提算法的性能, 采用本文改進(jìn)算法與PPO算法和深度確定性策略梯度(deep deterministic policy gradient, DDPG)算法[13]進(jìn)行對(duì)比仿真實(shí)驗(yàn), 結(jié)果如圖5和表1所示.由圖5和表1可知, 本文算法的最終獎(jiǎng)勵(lì)結(jié)果與PPO算法相近, 而收斂速度更快, 這是因?yàn)樵撍惴ㄉ朴诶脧?fù)雜的狀態(tài)信息進(jìn)行機(jī)器人動(dòng)作預(yù)判.綜上, 本文改進(jìn)的PPO算法較其他算法具有更好的綜合性能.
表1 3種算法的實(shí)驗(yàn)結(jié)果對(duì)比
圖4 改進(jìn)后PPO算法的損失函數(shù)曲線Fig.4 Loss function curve of enhanced PPO algorithm
圖5 不同算法的平均獎(jiǎng)勵(lì)對(duì)比曲線Fig.5 Average reward graph of each algorithm
利用雙足機(jī)器人膝關(guān)節(jié)和髖關(guān)節(jié)的彎曲角度數(shù)據(jù)創(chuàng)建可視化窗口, 分析雙足機(jī)器人在仿真環(huán)境中的表現(xiàn), 得到如圖6~7所示的雙足機(jī)器人自適應(yīng)行走和四維動(dòng)作的輸出結(jié)果.由圖6可知, 雙足機(jī)器人能夠根據(jù)輸入狀態(tài)信息, 不斷調(diào)整并輸出4個(gè)關(guān)節(jié)的角度, 最終形成穩(wěn)定步態(tài), 實(shí)現(xiàn)自適應(yīng)行走.由圖7可知, 雙足機(jī)器人的4個(gè)關(guān)節(jié)能夠交替進(jìn)行周期性運(yùn)動(dòng), 進(jìn)一步證明了算法收斂后雙足機(jī)器人運(yùn)動(dòng)過(guò)程的穩(wěn)定性.
圖6 雙足機(jī)器人自適應(yīng)性行走示意圖Fig.6 Adaptive walking diagram of biped robot
圖7 機(jī)器人四維動(dòng)作輸出值Fig.7 Output value of robot four-dimensional action
為驗(yàn)證本文所提算法對(duì)雙足機(jī)器人在不同行走環(huán)境下的控制效果, 搭建四自由度雙足機(jī)器人實(shí)物模型, 模型照片及各部分具體參數(shù)如圖8和表2所示.
表2 各段參數(shù)和關(guān)節(jié)幅度
圖8 雙足機(jī)器人實(shí)物模型Fig.8 Physical model of biped robot
在Gazebo物理仿真平臺(tái)上, 利用本文所提算法對(duì)雙足機(jī)器人在平坦地面和高度變化地面分別進(jìn)行行走訓(xùn)練, 具體行走過(guò)程如圖9所示.訓(xùn)練完畢后, 遷移近端策略的網(wǎng)絡(luò)數(shù)據(jù), 進(jìn)行實(shí)物模型驗(yàn)證, 并通過(guò)超聲波距離傳感器測(cè)試雙足機(jī)器人在平坦地面和高度變化地面行走時(shí)水平方向和豎直方向的位移變化情況, 結(jié)果如圖10所示.由圖10(a)可知, 雙足機(jī)器人在平坦地面行走時(shí)的步態(tài)周期為2.5 s, 一個(gè)步態(tài)周期內(nèi)的水平位移為60 mm, 豎直位移為10 mm以內(nèi), 行走過(guò)程中雙足機(jī)器人始終保持穩(wěn)定前行.由圖10(b)可知, 雙足機(jī)器人在高度變化地面行走時(shí), 能夠根據(jù)地面突起高度調(diào)節(jié)步態(tài),進(jìn)而實(shí)現(xiàn)自適應(yīng)行走.綜上, 改進(jìn)后的PPO算法能夠控制雙足機(jī)器人在平坦地面及高度變化地面實(shí)現(xiàn)自適應(yīng)行走.
圖9 雙足機(jī)器人在不同行走環(huán)境下的行走示意圖Fig.9 Illustrations of bipedal robot walking in various environments