国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于多智能體強(qiáng)化學(xué)習(xí)的空間機(jī)械臂軌跡規(guī)劃

2021-03-28 02:34:26趙毓管公順郭繼峰于曉強(qiáng)顏鵬
航空學(xué)報(bào) 2021年1期
關(guān)鍵詞:軌跡決策機(jī)械

趙毓,管公順,郭繼峰,于曉強(qiáng),顏鵬

哈爾濱工業(yè)大學(xué) 航天學(xué)院,哈爾濱 150001

近年來,人類對(duì)太空探索和開發(fā)活動(dòng)愈發(fā)頻繁,對(duì)空間機(jī)械臂的能力提出了更高要求[1]??臻g飛行器在軌運(yùn)行過程中,易發(fā)生空間碎片近距離碰撞或表面結(jié)構(gòu)脫離等突發(fā)情況,可以通過空間機(jī)械臂的有效抓捕動(dòng)作使得飛行器避免主體結(jié)構(gòu)受到損壞[2]。受限于任務(wù)場景的動(dòng)態(tài)性和偶發(fā)性,傳統(tǒng)空間機(jī)械臂軌跡規(guī)劃方法難以滿足實(shí)時(shí)性需求,為了保證能夠高效完成相關(guān)動(dòng)作,亟需開展空間機(jī)械臂快速自主在軌捕捉操作的軌跡規(guī)劃算法研究[3]。

本文研究的空間自由漂浮機(jī)械臂系統(tǒng)軌跡規(guī)劃問題與地面機(jī)械臂相比,有很大不同:① 空間機(jī)器人基座不固定,系統(tǒng)存在非完整約束,無法使用地面機(jī)械臂路徑規(guī)劃方法求解;② 空間機(jī)械臂Jacobi矩陣受載具平臺(tái)動(dòng)力學(xué)影響,其動(dòng)力學(xué)奇異比地面機(jī)械臂復(fù)雜很多;③ 當(dāng)前通訊條件下很難實(shí)現(xiàn)對(duì)空間機(jī)械臂的地面實(shí)時(shí)遙操作,因此對(duì)其軌跡規(guī)劃自主性要求遠(yuǎn)高于地面系統(tǒng)。

空間機(jī)械臂軌跡規(guī)劃目的是,在動(dòng)力學(xué)和運(yùn)動(dòng)學(xué)約束條件下設(shè)計(jì)一條以時(shí)間為參數(shù)的連續(xù)曲線,使機(jī)械臂末端執(zhí)行機(jī)構(gòu)在一定時(shí)間內(nèi)達(dá)到特定姿態(tài)和位置[4]??紤]到空間機(jī)械臂在運(yùn)動(dòng)過程中會(huì)對(duì)基座狀態(tài)產(chǎn)生擾動(dòng),其軌跡規(guī)劃問題需要在動(dòng)量守恒前提下求解,整個(gè)系統(tǒng)存在非完整性約束[5]。針對(duì)以上特性,傳統(tǒng)方法采用Jacobi矩陣和Lyapunov函數(shù)等算法進(jìn)行系統(tǒng)動(dòng)力學(xué)耦合分析,并以此為基礎(chǔ)進(jìn)行軌跡規(guī)劃。Yoshida等采用廣義Jacobi逆矩陣方式求取可執(zhí)行軌跡[6]。徐文福采用求解參數(shù)方程方法進(jìn)行軌跡規(guī)劃,其中將關(guān)節(jié)角函數(shù)進(jìn)行參數(shù)分解,然后通過牛頓迭代法取得最優(yōu)解[7]。崔浩和戈新生使用多項(xiàng)式插值結(jié)合序列二次規(guī)劃方法改進(jìn)了參數(shù)方程求解算法[8]。劉宏等應(yīng)用控制理論,基于Lyapunov函數(shù)對(duì)機(jī)械臂軌跡進(jìn)行設(shè)計(jì),該方法充分考慮了空間機(jī)械臂非完整約束特點(diǎn)[9]。隨著群體智能算法興起,王明等提出了基于群智能粒子群算法的機(jī)械臂軌跡規(guī)劃方法,并以此實(shí)現(xiàn)了最小擾動(dòng)規(guī)劃軌跡[10]。上述基于數(shù)值求解和優(yōu)化的空間機(jī)械臂軌跡規(guī)劃算法雖然能夠得到較為準(zhǔn)確和理想的結(jié)果,但始終限制于計(jì)算量龐大和局部最優(yōu)難以跳出的困境,無法應(yīng)用在實(shí)時(shí)捕捉系統(tǒng)中。

隨后機(jī)械臂運(yùn)動(dòng)規(guī)劃算法逐漸向全局規(guī)劃方向發(fā)展,常見機(jī)械臂全局軌跡規(guī)劃方法包括人工勢場法[11]、隨機(jī)采樣法[12]和智能優(yōu)化方法[13]。早期有學(xué)者提出適用于不確定動(dòng)態(tài)環(huán)境的基于隨機(jī)采樣機(jī)械臂運(yùn)動(dòng)規(guī)劃算法,研究主要圍繞快速擴(kuò)展隨機(jī)樹(Rapidly-exploring Random Trees, RRT)方法開展[14-15]?;赗RT的算法雖然在一定程度上解決了奇點(diǎn)問題和不確定環(huán)境問題,但運(yùn)算效率仍然是其瓶頸。本文采用文獻(xiàn)[16]中改進(jìn)RRT算法作為對(duì)比方法,應(yīng)用在所研究場景中。

伴隨人工智能技術(shù)研究的熱潮[17-18],以強(qiáng)化學(xué)習(xí)[19-20]和深度學(xué)習(xí)[21-22]為代表的自學(xué)習(xí)算法被廣泛應(yīng)用于機(jī)械臂運(yùn)動(dòng)規(guī)劃工程問題中?;跈C(jī)器學(xué)習(xí)算法進(jìn)行空間機(jī)械臂軌跡規(guī)劃的優(yōu)點(diǎn)為其適用性較強(qiáng),對(duì)非完整約束可以進(jìn)行有效求解,也可以在無模型的條件下進(jìn)行訓(xùn)練仿真,甚至可以實(shí)現(xiàn)規(guī)劃行為的預(yù)測和提前分解。2017年OpenAI研究組發(fā)表了一種基于多智能體的Actor-Critic研究方法,該方法用于訓(xùn)練智能體在特定環(huán)境中進(jìn)行協(xié)同決策[23]。本文提出的自學(xué)習(xí)訓(xùn)練方法靈感即來源于此文,空間機(jī)械臂系統(tǒng)可以視為由多個(gè)獨(dú)立的機(jī)械剛體關(guān)節(jié)桿件組成,其中每個(gè)關(guān)節(jié)桿件都可以看成一個(gè)智能體。由此,空間機(jī)械臂對(duì)運(yùn)動(dòng)目標(biāo)捕捉的規(guī)劃問題,可以看作是多個(gè)智能體連續(xù)動(dòng)作協(xié)同決策問題。

本文針對(duì)某型六自由度空間機(jī)械臂建立了多關(guān)節(jié)桿件的標(biāo)準(zhǔn)DH(Denavit-Hartenberg)參數(shù)模型。對(duì)空間機(jī)械臂系統(tǒng)的一般運(yùn)動(dòng)方程進(jìn)行研究,引入多剛體力學(xué)耦合特性分析,進(jìn)一步推導(dǎo)出機(jī)械臂與基座的組合體運(yùn)動(dòng)學(xué)與動(dòng)力學(xué)模型。結(jié)合多智能體深度確定性策略梯度學(xué)習(xí)理論,建立空間機(jī)械臂對(duì)勻速直線運(yùn)動(dòng)目標(biāo)捕捉的強(qiáng)化學(xué)習(xí)訓(xùn)練系統(tǒng)。通過集中訓(xùn)練與分布式執(zhí)行方式,對(duì)捕捉問題進(jìn)行智能化自主軌跡規(guī)劃。將每個(gè)機(jī)械臂關(guān)節(jié)視為一個(gè)決策智能體,訓(xùn)練過程中使用觀察全局的Critic指導(dǎo)訓(xùn)練,進(jìn)而實(shí)現(xiàn)多智能體的協(xié)作行為,提升強(qiáng)化學(xué)習(xí)穩(wěn)定性。使用深度強(qiáng)化學(xué)習(xí)方法進(jìn)行空間機(jī)械臂軌跡規(guī)劃的優(yōu)點(diǎn)在于:避免了復(fù)雜系統(tǒng)無法精確建模問題;解決了陷入局部最優(yōu)解問題;有效降低了實(shí)時(shí)計(jì)算復(fù)雜度,提高規(guī)劃效率;實(shí)現(xiàn)了在線自主軌跡規(guī)劃。

本文所述方法是一種即時(shí)決策方法,可以進(jìn)行快速連續(xù)決策,不像傳統(tǒng)控制方法需要對(duì)控制律進(jìn)行求解。隨著“數(shù)字孿生”等技術(shù)的發(fā)展,通過計(jì)算機(jī)仿真模擬即可實(shí)現(xiàn)規(guī)劃決策神經(jīng)網(wǎng)絡(luò)訓(xùn)練,離線訓(xùn)練好的規(guī)劃系統(tǒng)移植到實(shí)物系統(tǒng)中經(jīng)過少量在線訓(xùn)練就能夠達(dá)到應(yīng)用要求。國內(nèi)很多機(jī)構(gòu)已經(jīng)實(shí)現(xiàn)了地面模擬空間機(jī)械臂的實(shí)物實(shí)驗(yàn)系統(tǒng),可以進(jìn)行地面模擬訓(xùn)練[24]?;谝陨戏治?,如果未來有應(yīng)用需求,本文算法可應(yīng)用于實(shí)物驗(yàn)證和使用環(huán)境。

本文所述自學(xué)習(xí)訓(xùn)練方法采用Python的TensorFlow工具包進(jìn)行開發(fā),為了直觀展示所得仿真結(jié)果,使用MATLAB的Robotics工具箱進(jìn)行驗(yàn)證和繪圖。用于對(duì)比分析的改進(jìn)型RRT算法在MATLAB環(huán)境下實(shí)現(xiàn)。將兩種方法的仿真結(jié)果進(jìn)行對(duì)比分析,可得本文提出的算法得到軌跡規(guī)劃時(shí)間更短,所得軌跡平滑度更高,對(duì)環(huán)境參數(shù)不確定情況具有較好的魯棒性。

1 問題描述與系統(tǒng)建模

1.1 空間捕捉問題簡化

本文研究對(duì)象為在軌運(yùn)行的自由漂浮小型六自由度機(jī)械臂系統(tǒng),機(jī)械臂基座安裝在自由漂浮平臺(tái)一端,展開結(jié)構(gòu)如圖1所示。由于空間環(huán)境特殊性,僅通過仿真分析驗(yàn)證算法,并未進(jìn)行實(shí)物實(shí)驗(yàn)。

為了關(guān)注軌跡規(guī)劃問題本身,對(duì)研究環(huán)境進(jìn)行如下假設(shè):

1) 將目標(biāo)物體理想化為均質(zhì)小球,球體在機(jī)械臂近距離空間內(nèi)做勻速直線運(yùn)動(dòng),仿真初始時(shí)刻一定時(shí)間內(nèi)不會(huì)飛出機(jī)械臂工作空間。

2) 不考慮末端執(zhí)行機(jī)構(gòu)對(duì)小球的抓捕動(dòng)作,為機(jī)械臂末端位置與球體質(zhì)心位置重合即為捕捉成功。

3) 將機(jī)械臂基座平臺(tái)抽象為零控均質(zhì)剛體,在目標(biāo)捕捉過程中忽略平臺(tái)-機(jī)械臂系統(tǒng)整體受到的一切外力和外力矩。

仿真所用機(jī)械臂對(duì)象的DH參數(shù)如表1所示。

表1 空間機(jī)械臂DH參數(shù)Table 1 DH parameters of space manipulator

機(jī)械臂在非工作狀態(tài)下采取收攏姿態(tài),本文研究以此姿態(tài)作為空間機(jī)械臂初始狀態(tài),如圖2所示。由圖2可以看出,除了關(guān)節(jié)2有硬性幅度限制外,其余關(guān)節(jié)均無幅度限制。不失一般性地,設(shè)定關(guān)節(jié)2轉(zhuǎn)角取值范圍為[0,π],其余關(guān)節(jié)轉(zhuǎn)角范圍均為[-π,π]。機(jī)械臂動(dòng)力學(xué)參數(shù)如表2所示,表中Ix、Iy、Iz分別為轉(zhuǎn)動(dòng)慣量在各軸的分量,Tc為關(guān)節(jié)轉(zhuǎn)矩。

表2 空間機(jī)械臂動(dòng)力學(xué)參數(shù)Table 2 Dynamic parameters of space manipulator

1.2 空間機(jī)械臂運(yùn)動(dòng)學(xué)模型

對(duì)本文研究的空間自由漂浮機(jī)械臂系統(tǒng)建立運(yùn)動(dòng)學(xué)模型,因?yàn)闄C(jī)械臂基座固定連接在航天器平臺(tái)上,其在捕捉操作期間無控且不受重力影響,所以在機(jī)械臂執(zhí)行動(dòng)作期間會(huì)與平臺(tái)產(chǎn)生動(dòng)力學(xué)耦合情況。

由于推導(dǎo)過程較為基礎(chǔ),在此僅給出重要環(huán)節(jié)公式,具體的推導(dǎo)過程可參考文獻(xiàn)[25]。針對(duì)文中機(jī)械臂,根據(jù)一般力學(xué)原理可得機(jī)械臂末端在慣性坐標(biāo)系下的位置矢量re、速度矢量ve和角速度矢量ωe,具體表達(dá)式為

(1)

式中:r0為空間飛行器質(zhì)心在慣性系中的位置矢量;b0為關(guān)節(jié)1相對(duì)于平臺(tái)質(zhì)心的位置矢量;ai為桿件i相對(duì)于關(guān)節(jié)i的位置矢量;bi為關(guān)節(jié)i+1相對(duì)于桿件i的位置矢量;v0、ω0分別為平臺(tái)在慣性系中的速度矢量和角速度矢量;ki為關(guān)節(jié)i旋轉(zhuǎn)單位矢量;ri為連桿i的位置矢量;qi為關(guān)節(jié)i的旋轉(zhuǎn)角度;“·”表示求導(dǎo)。由于本文研究的機(jī)械臂末端關(guān)節(jié)有位置偏移,所以不能將關(guān)節(jié)質(zhì)心作為末端位置進(jìn)行捕捉結(jié)果判斷。

對(duì)自由漂浮機(jī)械臂應(yīng)用動(dòng)量守恒分析,設(shè)定初始時(shí)刻線動(dòng)量和角動(dòng)量均為0,則得到以下多剛體系統(tǒng)約束:

(2)

式中:m0為平臺(tái)質(zhì)量;mLi和mJi分別為連桿i和關(guān)節(jié)i的質(zhì)量;pi為關(guān)節(jié)i的位置矢量;I0、ILi、IJi分別為平臺(tái)、連桿i和關(guān)節(jié)i的轉(zhuǎn)動(dòng)慣量矩陣;ωLi、ωJi分別為連桿i和關(guān)節(jié)i的角速度矢量。

本文為小型機(jī)械臂系統(tǒng),關(guān)節(jié)質(zhì)量較輕,在學(xué)習(xí)訓(xùn)練過程中可以將同一序號(hào)的關(guān)節(jié)和連桿視為整體,進(jìn)而降低計(jì)算復(fù)雜度。由此得到自由漂浮機(jī)器人的動(dòng)量守恒方程為

(3)

(4)

式中:rL0i表示桿件i指向平臺(tái)質(zhì)心的位置矢量;JTLi、JRLi分別為機(jī)械臂切向和徑向轉(zhuǎn)動(dòng)慣量。

由式(3)和式(4)進(jìn)一步推導(dǎo)求解,可得自由漂浮空間機(jī)械臂系統(tǒng)的運(yùn)動(dòng)學(xué)方程為

(5)

式中:Js為平臺(tái)Jacobi矩陣;Jm為定基座機(jī)械臂Jacobi矩陣,此處不予贅述;re0為末端相對(duì)平臺(tái)的位置矢量。

1.3 空間機(jī)械臂系統(tǒng)動(dòng)力學(xué)模型

本文以拉格朗日法為基礎(chǔ)推導(dǎo)動(dòng)力學(xué)模型。機(jī)械臂系統(tǒng)的總動(dòng)能為各部件動(dòng)能之和,每個(gè)桿件和關(guān)節(jié)動(dòng)能可由其質(zhì)心線速度動(dòng)能和轉(zhuǎn)動(dòng)角速度動(dòng)能組成,則自由漂浮空間機(jī)械臂系統(tǒng)的總動(dòng)能為

(6)

式中:mi為部件質(zhì)量;vi為部件慣性系下速度矢量;Ii為部件轉(zhuǎn)動(dòng)慣量;ωi為部件角速度矢量。將1.2節(jié)中運(yùn)動(dòng)學(xué)方程代入可得:

(7)

其中:Hφ為定基座機(jī)械臂慣性張量矩陣,其表達(dá)式為

(8)

則有整個(gè)系統(tǒng)的拉格朗日動(dòng)力學(xué)方程為

(9)

式中:cb為平臺(tái)本體牽連速度的非線性項(xiàng),本研究中設(shè)定為常值;cm為機(jī)械臂牽連速度的非線性項(xiàng),本研究中設(shè)為常值;Fb為基體所受外力及外力矩,前文中已假設(shè)為0;τm為機(jī)械臂關(guān)節(jié)力矩。

2 多智能體深度強(qiáng)化學(xué)習(xí)軌跡規(guī)劃

2.1 改進(jìn)深度確定性策略梯度算法分析

因?yàn)檩d具平臺(tái)處于自由漂浮狀態(tài),數(shù)學(xué)模型無法完全描述系統(tǒng)的非完整性約束。機(jī)械臂從收攏狀姿態(tài)到捕捉姿態(tài)的軌跡規(guī)劃可以看作其運(yùn)動(dòng)過程中一系列的動(dòng)作決策行為,每個(gè)關(guān)節(jié)可視為一個(gè)決策智能體,最終的軌跡即為所有關(guān)節(jié)序列決策的集合。為了解決機(jī)械臂與環(huán)境交互無法精確建模和決策序列集合生成的問題,本文采用深度神經(jīng)網(wǎng)絡(luò)對(duì)捕捉軌跡規(guī)劃策略進(jìn)行逼近。

由于機(jī)械臂展開抓捕動(dòng)作為連續(xù)動(dòng)作,其用于評(píng)價(jià)的Q值函數(shù)不易精確設(shè)計(jì),因此采用了策略梯度方法解決該問題。策略梯度算法可以通過最大化期望累積獎(jiǎng)勵(lì)來直接優(yōu)化策略[26]。考慮到目標(biāo)移動(dòng)和環(huán)境的隨機(jī)性,使用評(píng)價(jià)器擬合累積獎(jiǎng)勵(lì),此評(píng)價(jià)器被稱為Critic。針對(duì)機(jī)械臂關(guān)節(jié)運(yùn)動(dòng)取值連續(xù),搜索空間較大的問題,為了縮小隨機(jī)策略訓(xùn)練過程的樣本空間,本文采用了確定性策略梯度方法。確定性策略梯度算法訓(xùn)練過程中同時(shí)學(xué)習(xí)Q函數(shù)和策略,對(duì)Q函數(shù)的學(xué)習(xí)是為了實(shí)現(xiàn)對(duì)環(huán)境適度探索。本文算法中執(zhí)行器(Actor)和評(píng)價(jià)器(Critic)均采用雙網(wǎng)絡(luò)結(jié)構(gòu),分別稱為決策網(wǎng)絡(luò)和估計(jì)網(wǎng)絡(luò)。在訓(xùn)練過程中直接對(duì)各自估計(jì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練。決策網(wǎng)絡(luò)由對(duì)應(yīng)估計(jì)網(wǎng)絡(luò)每隔一段時(shí)間進(jìn)行優(yōu)選后保存;評(píng)價(jià)器的決策網(wǎng)絡(luò)同時(shí)輸入所有智能體的聯(lián)合動(dòng)作和外部觀測值,對(duì)自身某一動(dòng)作對(duì)環(huán)境產(chǎn)生的影響進(jìn)行評(píng)價(jià)。

下面將給出本文所用多智能體深度強(qiáng)化學(xué)習(xí)理論公式。深度強(qiáng)化學(xué)習(xí)過程中,智能體與環(huán)境進(jìn)行交互,期間智能體的決策過程可以用馬爾科夫決策過程(Markov Decision Process, MDP)進(jìn)行描述。MDP模型是一個(gè)五元組(S,A,Ptrans,R,γ),分別對(duì)應(yīng)于狀態(tài)空間、動(dòng)作空間、轉(zhuǎn)移函數(shù)、獎(jiǎng)勵(lì)函數(shù)和折扣因子。對(duì)于第i個(gè)智能體的執(zhí)行器Pi和評(píng)價(jià)器Qi的定義分別為

(10)

訓(xùn)練過程評(píng)價(jià)器策略優(yōu)化的目標(biāo)函數(shù)為

(11)

式中:E為貝爾曼方程;y代表當(dāng)前累計(jì)獎(jiǎng)勵(lì),由迭代而來,為區(qū)別于當(dāng)前動(dòng)作,累計(jì)獎(jiǎng)勵(lì)相關(guān)變量使用“′”表示。然后通過梯度下降法更新網(wǎng)絡(luò)參數(shù),對(duì)應(yīng)的梯度計(jì)算函數(shù)為

(12)

從式(12)可以看出策略損失的梯度即為策略函數(shù)梯度與評(píng)價(jià)函數(shù)梯度的近似數(shù)學(xué)期望。

為了提高訓(xùn)練效率,學(xué)習(xí)過程中設(shè)置了經(jīng)驗(yàn)池機(jī)制,決策網(wǎng)絡(luò)定期抽取經(jīng)驗(yàn)池信息進(jìn)行訓(xùn)練,考慮到經(jīng)驗(yàn)池中案例質(zhì)量分布不均,本文設(shè)計(jì)了一種優(yōu)先抽取高質(zhì)量經(jīng)驗(yàn)的方法。設(shè)計(jì)如下經(jīng)驗(yàn)案例抽取優(yōu)先級(jí)Pr(k)公式:

(13)

2.2 在線捕捉自學(xué)習(xí)系統(tǒng)設(shè)計(jì)

本文的主要工作聚焦于建立自學(xué)習(xí)系統(tǒng),通過訓(xùn)練使漂浮機(jī)械臂具備自主捕捉軌跡規(guī)劃能力。在2.1節(jié)中已經(jīng)提到,對(duì)于每個(gè)智能體都將建立4個(gè)雙隱層全連接神經(jīng)網(wǎng)絡(luò):執(zhí)行器的估計(jì)網(wǎng)絡(luò)(ActorE)用于策略迭代更新;執(zhí)行器決策網(wǎng)絡(luò)(ActorD)用于經(jīng)驗(yàn)池采樣交互,其網(wǎng)絡(luò)參數(shù)定期從ActorE處更新;評(píng)價(jià)器估計(jì)網(wǎng)絡(luò)(CriticE)負(fù)責(zé)價(jià)值函數(shù)迭代更新,為當(dāng)前ActorE的行為更新Q值;評(píng)價(jià)器決策網(wǎng)絡(luò)(CriticD)負(fù)責(zé)計(jì)算全局獎(jiǎng)勵(lì),其網(wǎng)絡(luò)參數(shù)定期從CriticE處更新。訓(xùn)練系統(tǒng)架構(gòu)示意圖如圖3所示,其中r1,r2,…,rn為各智能體的回報(bào)值。

本文采用集中訓(xùn)練分布執(zhí)行的方式進(jìn)行仿真,由于訓(xùn)練過程中評(píng)價(jià)器決策網(wǎng)絡(luò)的輸入為環(huán)境狀態(tài)和所有智能體的聯(lián)合動(dòng)作,所以其輸出的評(píng)價(jià)值函數(shù)已經(jīng)包含了對(duì)多智能體協(xié)同的指導(dǎo)信息。分布式執(zhí)行過程中各智能體執(zhí)行器決策網(wǎng)絡(luò)無需溝通,在訓(xùn)練回合數(shù)足夠大的情況下,完全可以通過訓(xùn)練實(shí)現(xiàn)全部協(xié)同,而不需要再單獨(dú)建立相關(guān)機(jī)制。但在未來算法改進(jìn)中可以加入智能體交流機(jī)制,使得協(xié)同性進(jìn)一步提升。

為了進(jìn)一步提高算法執(zhí)行效率,本文設(shè)計(jì)了以機(jī)械臂末端位置與目標(biāo)相對(duì)距離dT和總操作時(shí)間t為參數(shù)的獎(jiǎng)勵(lì)函數(shù):

(14)

式中:ep為動(dòng)力學(xué)參數(shù)評(píng)價(jià)項(xiàng)。由式(14)可以看出,當(dāng)目標(biāo)距離越遠(yuǎn)則回報(bào)值越小,當(dāng)操作用時(shí)越長則回報(bào)值越小,如果捕捉成功則獲得固定回報(bào)值。對(duì)于任意智能體,環(huán)境交互得到的獎(jiǎng)勵(lì)值是相同的。評(píng)價(jià)器輸入了聯(lián)合動(dòng)作信息,得到評(píng)價(jià)值不是只受單獨(dú)關(guān)節(jié)動(dòng)作影響。為了提高算法速度,超過關(guān)節(jié)運(yùn)動(dòng)限制的問題在運(yùn)動(dòng)學(xué)中處理,不計(jì)入獎(jiǎng)勵(lì)函數(shù)。

本文所述多智能體深度強(qiáng)化學(xué)習(xí)軌跡規(guī)劃訓(xùn)練算法流程如算法1所示。

算法1 改進(jìn)確定性策略梯度算法1.初始化各Agent的ActorE網(wǎng)絡(luò)參數(shù)θpe、ActorD網(wǎng)絡(luò)參數(shù)θpd、CriticE網(wǎng)絡(luò)參數(shù)θQe、CriticD網(wǎng)絡(luò)參數(shù)θQd2.初始化經(jīng)驗(yàn)池ψ,設(shè)定各超參數(shù)3.for episode = 1 to Max_epi do4. 初始化環(huán)境S和各智能體網(wǎng)絡(luò)參數(shù)5. 設(shè)定仿真步長step和最長仿真總時(shí)間Tsim6. 隨機(jī)生成初始聯(lián)合動(dòng)作集合a=[a1 a2 … an]7. 更新狀態(tài)S',得到初始獎(jiǎng)勵(lì)R0,將案例存儲(chǔ)到經(jīng)驗(yàn)池8. do while time i

從以上步驟可以看出,在每個(gè)回合中,評(píng)價(jià)器的決策網(wǎng)絡(luò)能夠接收全局信息,進(jìn)而指導(dǎo)執(zhí)行器更新網(wǎng)絡(luò),集中訓(xùn)練的協(xié)同性由此體現(xiàn)。規(guī)劃算法通過環(huán)境、智能體執(zhí)行器、智能體評(píng)價(jià)器三者交互來迭代訓(xùn)練策略網(wǎng)絡(luò)。最終形成的智能體執(zhí)行器決策網(wǎng)絡(luò)θpd即為空間漂浮機(jī)械臂捕捉行為軌跡規(guī)劃器。

3 仿真數(shù)據(jù)與分析

3.1 仿真條件

操作系統(tǒng)環(huán)境為Windows10 x64,使用軟件工具包版本為TensorFlow 2.1.0。硬件信息為Intel i5-9600K、GTX1060、DDR4 16 GB、240 GB SSD。網(wǎng)絡(luò)訓(xùn)練環(huán)境是基于Python 3.7修改Open AI開源代碼搭建的。仿真驗(yàn)證和數(shù)據(jù)處理均在MATLAB 2018b環(huán)境下實(shí)現(xiàn)。

在訓(xùn)練過程中,動(dòng)力學(xué)模型計(jì)算后如果機(jī)械臂達(dá)到平臺(tái)邊界,則案例會(huì)被直接放棄,重新選擇動(dòng)作??臻g勻速直線運(yùn)動(dòng)小球的初始位置隨機(jī)選擇在以基座質(zhì)心為球心,半徑為5 m的半球形包絡(luò)內(nèi),速度vtar取值不超過0.4 m/s,速度方向矢量與小球位置矢量ptar有如下關(guān)系:

(15)

式中:dtar為球心與基座間距離;p0為基座位置矢量。

仿真中每個(gè)智能體4個(gè)神經(jīng)網(wǎng)絡(luò)均采用雙隱層32節(jié)點(diǎn)全連接網(wǎng)絡(luò)。各神經(jīng)網(wǎng)絡(luò)的輸入輸出信息參見表3,其中關(guān)節(jié)末端位置由機(jī)械臂正運(yùn)動(dòng)學(xué)解算得出。

表中的聯(lián)合動(dòng)作指所有智能體的動(dòng)作合集,聯(lián)合動(dòng)作獎(jiǎng)勵(lì)值即為環(huán)境反饋的動(dòng)作獎(jiǎng)勵(lì)值,僅是為了區(qū)分輸入給對(duì)應(yīng)網(wǎng)絡(luò)。從表3中可以看出,執(zhí)行器和評(píng)價(jià)器的神經(jīng)網(wǎng)絡(luò)均為高維輸入低維輸出。執(zhí)行器神經(jīng)網(wǎng)絡(luò)要完成空間坐標(biāo)向角度映射,所以激活函數(shù)采用tanh函數(shù)。評(píng)價(jià)器網(wǎng)絡(luò)僅為數(shù)值求解,本文采用常見的sigmoid函數(shù)作為激活函數(shù)。

本文采用文獻(xiàn)[16]中滾動(dòng)RRT+比例導(dǎo)引算法作為對(duì)比算法,該算法將目標(biāo)捕捉過程分為2個(gè)多約束階段,在初始階段使用滾動(dòng)RRT算法提高搜索能力,在捕捉階段使用比例導(dǎo)引算法提高接近速度。該方法技術(shù)細(xì)節(jié)可參照文獻(xiàn)[16],不予贅述。

表3 各神經(jīng)網(wǎng)絡(luò)輸入輸出參數(shù)Table 3 Input and output parameters of neural networks

3.2 仿真結(jié)果與數(shù)據(jù)分析

由于本文中算法沒有完整數(shù)據(jù)集可以用作對(duì)比分析,評(píng)價(jià)算法優(yōu)劣的方法主要有2個(gè)方面:① 獎(jiǎng)勵(lì)值曲線變化趨勢,最終獎(jiǎng)勵(lì)值越高則算法越好,獎(jiǎng)勵(lì)值曲線收斂速度越快則算法收斂性越好;② 算法所得決策網(wǎng)絡(luò)在環(huán)境下的表現(xiàn),動(dòng)作執(zhí)行情況越好,則算法性能越好。因?yàn)闆]有類似自學(xué)習(xí)規(guī)劃算法可以進(jìn)行比較,所以在后文仿真中,重點(diǎn)對(duì)比了決策網(wǎng)絡(luò)在實(shí)際場景中的表現(xiàn)情況,作為算法主要評(píng)價(jià)依據(jù)。

本文算法可以用平均回報(bào)值方差或結(jié)果誤差值方差判斷作為終止條件。但設(shè)定此條件后,總訓(xùn)練回合數(shù)隨機(jī)性過大,無法進(jìn)行對(duì)比展示。所以采用人為確定回合數(shù)。仿真實(shí)驗(yàn)首先對(duì)經(jīng)驗(yàn)案例有無優(yōu)先抽取機(jī)制進(jìn)行了仿真,經(jīng)過20萬回合訓(xùn)練后,得到平均獎(jiǎng)勵(lì)隨訓(xùn)練回合數(shù)增長曲線如圖4所示。圖中綠色曲線訓(xùn)練時(shí)采用了優(yōu)先級(jí)抽取機(jī)制,藍(lán)色曲線訓(xùn)練過程中未使用優(yōu)先級(jí)機(jī)制。由圖可知當(dāng)采取案例優(yōu)先抽取機(jī)制時(shí),平均獎(jiǎng)勵(lì)曲線收斂速度得到了較大提高。

通過增大仿真回合數(shù)檢驗(yàn)算法收斂趨勢。經(jīng)過25萬回合的仿真訓(xùn)練后,得到如圖5所示的平均獎(jiǎng)勵(lì)曲線,圖中藍(lán)色曲線為15萬回合自學(xué)習(xí)訓(xùn)練過程平均獎(jiǎng)勵(lì)值曲線,紅色曲線為25萬回合訓(xùn)練平均獎(jiǎng)勵(lì)值曲線。

因?yàn)槭褂昧讼嗤亩嘀悄荏w強(qiáng)化學(xué)習(xí)算法,可以看到兩個(gè)曲線趨勢大體相似。但紅色曲線在21萬回合附近訓(xùn)練后期,出現(xiàn)了嚴(yán)重的過擬合現(xiàn)象。分析該現(xiàn)象產(chǎn)生原因,因?yàn)闄C(jī)械臂系統(tǒng)具有完整的約束模型,且訓(xùn)練過程中不存在外部擾動(dòng)或噪聲,所以分析認(rèn)為是空間小球目標(biāo)的初始位置隨機(jī)性波動(dòng)也被學(xué)習(xí)系統(tǒng)訓(xùn)練學(xué)習(xí)了。

多智能體強(qiáng)化學(xué)習(xí)系統(tǒng)訓(xùn)練結(jié)束后,執(zhí)行器的決策網(wǎng)絡(luò)訓(xùn)練成型。設(shè)定空間小球的初始位置為ptar=[-1,-0.5,5.8] m,運(yùn)動(dòng)目標(biāo)的初始速度為vtar=[-0.082,-0.037,0.042] m/s,分別使用該規(guī)劃決策器和滾動(dòng)RRT算法對(duì)該場景進(jìn)行機(jī)械臂軌跡規(guī)劃仿真,得到仿真曲線。圖6為多智能體規(guī)劃決策器規(guī)劃生成的捕捉過程各關(guān)節(jié)轉(zhuǎn)角曲線,圖7為對(duì)比算法生成的關(guān)節(jié)轉(zhuǎn)角曲線。

對(duì)比圖6和圖7可以看出:在同一場景下,本文提出的算法用時(shí)約為5.6 s,而對(duì)比算法規(guī)劃耗時(shí)約為7.4 s,可見本文算法規(guī)劃效率更高。文中所提出的算法規(guī)劃所得曲線較為平滑,而對(duì)比算法規(guī)劃所得關(guān)節(jié)轉(zhuǎn)角曲線相對(duì)較粗糙。相比之下,本文算法魯棒性更強(qiáng)。

2種算法在規(guī)劃前期曲線都存在抖動(dòng)。本文所述算法前期抖動(dòng)的原因是無法直接跟蹤移動(dòng)目標(biāo),且機(jī)械臂展開初始階段存在多種可能構(gòu)型,所以產(chǎn)生了曲線抖動(dòng)現(xiàn)象,隨著捕捉過程的推進(jìn),曲線逐漸變得平滑。而對(duì)比算法前期抖動(dòng)較為明顯,因?yàn)樵撍惴ㄒ?guī)劃前期使用RRT方法,該方法具有隨機(jī)搜索特性,在初始階段就產(chǎn)生了非必要的探索行為,中期算法交替時(shí)又耗費(fèi)時(shí)間進(jìn)行軌跡誤差補(bǔ)償,這是影響算法效率的因素之一。對(duì)比算法規(guī)劃后期因?yàn)槭褂帽壤龑?dǎo)引方法,規(guī)劃效率明顯提高,且關(guān)節(jié)角曲線趨于平滑。

圖8為本文算法在該仿真場景中規(guī)劃所得軌跡對(duì)應(yīng)的平臺(tái)姿態(tài)擾動(dòng)角曲線圖,擾動(dòng)角曲線并非在決策器規(guī)劃過程中決定,而是規(guī)劃軌跡生成后由動(dòng)力學(xué)模型解算得到。從圖8中可以看出,機(jī)械臂捕捉動(dòng)作對(duì)漂浮平臺(tái)的擾動(dòng)較小,各向擾動(dòng)角度均不超過10°,由此也可看出本文算法的有效性和可行性。

為了進(jìn)一步揭示空間目標(biāo)與機(jī)械臂基座距離和捕捉軌跡規(guī)劃耗時(shí)的關(guān)系,分別對(duì)2種算法進(jìn)行了1 000組不同初始狀態(tài)的規(guī)劃仿真,對(duì)仿真結(jié)果進(jìn)行統(tǒng)計(jì)分析,在1.5 m≤dtar<2.5 m時(shí)本文算法捕捉規(guī)劃平均耗時(shí)4.2 s,對(duì)比算法平均耗時(shí)3.6 s;在2.5 m≤dtar<3.5 m時(shí)本文算法平均耗時(shí)5.2 s,對(duì)比算法平均耗時(shí)5.7 s;在3.5 m≤dtar<4.5 m時(shí)本文算法平均耗時(shí)5.7 s,對(duì)比算法平均耗時(shí)7.4 s。于是得到如圖9所示柱狀圖。從圖中可以看出,在目標(biāo)距離較近時(shí)本文算法規(guī)劃軌跡較慢,此時(shí)RRT+比例導(dǎo)引方法規(guī)劃效率更高。隨著距離增加,本文方法規(guī)劃效率有所提高。分析其中原因,RRT的隨機(jī)搜索方法在短距離規(guī)劃中具有一定優(yōu)勢,其在長距離規(guī)劃中必然會(huì)消耗更多時(shí)間來探索執(zhí)行空間,所以長距離規(guī)劃中效率不如本文算法。

對(duì)上述1 000次仿真中2種算法耗時(shí)情況進(jìn)行統(tǒng)計(jì),本文所述算法得到平均捕捉完成耗時(shí)為5.4 s,對(duì)比算法平均耗時(shí)為6.3 s,由此可見本文算法規(guī)劃效率更高。

4 結(jié) 論

1) 本文在機(jī)械臂運(yùn)動(dòng)學(xué)和動(dòng)力學(xué)分析基礎(chǔ)上,提出了基于多智能體系統(tǒng)的強(qiáng)化學(xué)習(xí)機(jī)械臂軌跡規(guī)劃方法。

2) 應(yīng)用本文算法可以快速對(duì)空間捕捉問題進(jìn)行規(guī)劃和處理,平均捕捉動(dòng)作完成耗時(shí)5.4 s,相比前人算法規(guī)劃效率更高。

3) 仿真結(jié)果表明,本文算法規(guī)劃所得軌跡曲線更平滑,相比前人算法魯棒性更強(qiáng),具有很強(qiáng)的實(shí)際工程應(yīng)用價(jià)值。

猜你喜歡
軌跡決策機(jī)械
為可持續(xù)決策提供依據(jù)
軌跡
軌跡
調(diào)試機(jī)械臂
決策為什么失誤了
軌跡
簡單機(jī)械
進(jìn)化的軌跡(一)——進(jìn)化,無盡的適應(yīng)
中國三峽(2017年2期)2017-06-09 08:15:29
機(jī)械班長
按摩機(jī)械臂
周宁县| 峨边| 山东| 香格里拉县| 中卫市| 漯河市| 西乌| 临桂县| 阜新| 松原市| 原阳县| 普宁市| 读书| 本溪市| 新干县| 德格县| 鹤庆县| 南投市| 顺义区| 英超| 兰坪| 砚山县| 涟源市| 泰顺县| 永年县| 凤翔县| 西峡县| 酉阳| 江陵县| 沁源县| 津市市| 巴里| 阳朔县| 福清市| 香格里拉县| 老河口市| 柯坪县| 文安县| 平陆县| 阿巴嘎旗| 朝阳区|