孫 康,王耀兵,杜德嵩,齊乃明
(1. 哈爾濱工業(yè)大學(xué) 航天工程系, 哈爾濱 150001; 2. 北京空間飛行器總體設(shè)計(jì)部,北京 100094)
隨著人類航天活動(dòng)的逐年增加,空間飛行器的數(shù)量呈現(xiàn)快速增長(zhǎng)趨勢(shì)[1]。在軌航天器由于使用壽命有限,零部件故障或意外碰撞等原因而無(wú)法正常運(yùn)行,從而形成非合作的失效航天器或稱太空垃圾,通常還帶有一定程度的翻滾特性[2]。失效航天器的及時(shí)捕獲、接管、修復(fù)或清理等對(duì)于正常在軌運(yùn)行航天器的安全以及軌道資源再回收等有重大意義。
空間機(jī)械臂因其具有質(zhì)量輕、靈活性高、操控性強(qiáng)等優(yōu)勢(shì),在空間失效目標(biāo)的捕獲任務(wù)中具有廣泛的應(yīng)用前景[3-4]。為實(shí)現(xiàn)抓捕過(guò)程的穩(wěn)定可靠,應(yīng)使空間機(jī)械臂在接近目標(biāo)抓捕位置時(shí)平穩(wěn),且相對(duì)速度應(yīng)盡可能小,從而減小抓捕碰撞力。國(guó)內(nèi)外學(xué)者針對(duì)抓捕過(guò)程空間機(jī)械臂的控制策略進(jìn)行了諸多研究。Yoshida等[5-7]研究了針對(duì)空間機(jī)械臂的在軌動(dòng)力學(xué)與控制問(wèn)題,并在ETS-VII任務(wù)中進(jìn)行了實(shí)際應(yīng)用;Matsumoto等[8-9]對(duì)捕獲空間失效航天器的路徑規(guī)劃和捕獲過(guò)程的動(dòng)力學(xué)進(jìn)行了研究;Angel等[10-11]針對(duì)空間翻滾目標(biāo)的抓捕任務(wù),通過(guò)控制空間機(jī)械臂的接近速度,使其與目標(biāo)的相對(duì)速度通過(guò)抓捕系統(tǒng)的質(zhì)心,實(shí)現(xiàn)了基座姿態(tài)擾動(dòng)最優(yōu);Yu等[12]針對(duì)帶有柔性帆板的空間漂浮機(jī)械臂的動(dòng)力學(xué)建模和非合作目標(biāo)的抓捕任務(wù)進(jìn)行了研究;Xu等[13]針對(duì)空間機(jī)械臂的運(yùn)動(dòng)學(xué)、動(dòng)力學(xué)和末端執(zhí)行器存在的不確定性問(wèn)題,提出一種改進(jìn)的自適應(yīng)反步控制器 (Backstepping Controller),保證了傳統(tǒng)動(dòng)態(tài)曲面控制方法跟蹤誤差的漸近收斂性。上述針對(duì)空間機(jī)械臂的抓捕控制均基于多體系統(tǒng)動(dòng)力學(xué)模型來(lái)實(shí)現(xiàn),而多體系統(tǒng)的動(dòng)力學(xué)模型很難被精確建立,特別是針對(duì)帶有柔性帆板、柔性臂桿等結(jié)構(gòu)的航天器,嚴(yán)格按照動(dòng)力學(xué)模型實(shí)現(xiàn)抓捕控制會(huì)產(chǎn)生較大的位置和速度偏差,從而產(chǎn)生抓捕逃逸或碰撞力過(guò)大等問(wèn)題。
強(qiáng)化學(xué)習(xí)(Reinforcement Learning,RL)算法在機(jī)器人系統(tǒng)控制中的應(yīng)用近年來(lái)逐漸興起,并取得了較好的應(yīng)用[14]。Smrui[15]基于深度強(qiáng)化學(xué)習(xí)算法(Deep Reinforcement Learning, DRL)對(duì)機(jī)械手臂的多種操作任務(wù)進(jìn)行了研究,同時(shí)介紹了DRL針對(duì)高維狀態(tài)空間的目標(biāo)逼近策略的實(shí)驗(yàn)室級(jí)的應(yīng)用;Wang等[16]基于深度強(qiáng)化學(xué)習(xí)算法對(duì)輪式機(jī)器人在斜坡路面上的動(dòng)態(tài)路徑規(guī)劃進(jìn)行了研究,并與傳統(tǒng)的依靠動(dòng)力學(xué)模型的D*規(guī)劃算法作對(duì)比,仿真結(jié)果證明了深度強(qiáng)化學(xué)習(xí)算法能在保證精度的前提下較快地實(shí)現(xiàn)動(dòng)態(tài)路徑規(guī)劃。
DRL算法具有不依賴系統(tǒng)運(yùn)動(dòng)學(xué)或動(dòng)力學(xué)模型的特點(diǎn),通過(guò)設(shè)定獎(jiǎng)賞函數(shù)實(shí)現(xiàn)機(jī)器人系統(tǒng)的運(yùn)動(dòng)軌跡及驅(qū)動(dòng)力矩控制,對(duì)于空間非合作目標(biāo)的多自由度機(jī)械臂抓捕問(wèn)題有較好的適用性。本文基于DRL算法提出一種深度確定性規(guī)則策略(Deep Deterministic Policy Algorithm, DDPG),將空間非合作目標(biāo)的抓捕過(guò)程的漂浮基機(jī)械臂的位置、力矩和速度控制問(wèn)題轉(zhuǎn)化為高維空間的目標(biāo)逼近問(wèn)題,通過(guò)設(shè)置目標(biāo)獎(jiǎng)賞函數(shù),驅(qū)動(dòng)空間機(jī)械臂的末端位置和運(yùn)動(dòng)參數(shù)滿足抓捕條件,從而實(shí)現(xiàn)穩(wěn)定可靠抓捕。
圖1為漂浮基空間機(jī)械臂抓捕空間非合作目標(biāo)的物理模型??臻g機(jī)械臂具有n自由度,一端與漂浮狀態(tài)的本體星連接,非合作目標(biāo)為帶有自旋特性的空間漂浮物體。FI(OXYZ)為系統(tǒng)慣性坐標(biāo)系;F0(o0x0y0z0)為本體星質(zhì)心坐標(biāo)系,其原點(diǎn)位于本體星質(zhì)心位置;Fi(oixiyizi)為空間機(jī)械臂關(guān)節(jié)i的中心坐標(biāo)系,qi(i=1,…,n)為關(guān)節(jié)i的轉(zhuǎn)角,關(guān)節(jié)轉(zhuǎn)動(dòng)方向zi(i=1,…,n)與關(guān)節(jié)轉(zhuǎn)軸平行;Fe(oexeyeze)為空間機(jī)械臂末端抓捕機(jī)構(gòu)中心坐標(biāo)系;Ft(otxtytzt)為非合作自旋目標(biāo)質(zhì)心坐標(biāo)系;Fh(ohxhyhzh)為非合作目標(biāo)的抓捕位置中心坐標(biāo)系;ωt為目標(biāo)自旋角速度;R0為慣性系下的本體星質(zhì)心矢徑;Ri(i=1,…,n)為慣性系下關(guān)節(jié)i中心坐標(biāo)系的原點(diǎn)矢徑;Re為慣性系下的空間機(jī)械臂末端機(jī)構(gòu)中心坐標(biāo)系的矢徑;Rt為慣性系下自旋目標(biāo)的質(zhì)心矢徑;r0為關(guān)節(jié)1的中心坐標(biāo)系F1在基座質(zhì)心坐標(biāo)系F0下的矢徑;rh為Ft到Fh的矢徑;di(i=1,…,n)為臂桿i+1的始末點(diǎn)矢徑(由Fi指向Fi+1)。
圖1 空間漂浮基機(jī)械臂非合作目標(biāo)抓捕物理模型Fig.1 Physical model of free-floating space manipulator capturing uncooperative target
利用代理(Agent)的思想實(shí)現(xiàn)對(duì)漂浮基座的空間機(jī)械臂進(jìn)行抓捕控制,將控制指標(biāo)作為獎(jiǎng)賞函數(shù)的變量,利用代理對(duì)空間機(jī)械臂的關(guān)節(jié)運(yùn)動(dòng)進(jìn)行控制,并將獎(jiǎng)勵(lì)值最為運(yùn)動(dòng)方向的控制反饋,逐步訓(xùn)練,使空間機(jī)械臂滿足抓捕條件。
1)定義狀態(tài)空間S={s0,s1,…,sn},起始時(shí)刻的狀態(tài)s0及其所對(duì)應(yīng)的概率分布P(s0);
2)定義行為空間A={a0,a1,…,an};
3)定義環(huán)境的動(dòng)態(tài)更新驅(qū)動(dòng)函數(shù)p(st);
4)定義行為獎(jiǎng)賞函數(shù)R(st,at,st+1);
5)定義獎(jiǎng)賞折扣系數(shù)λ∈[0,1],用于強(qiáng)調(diào)即時(shí)的回報(bào)。
圖2 深度強(qiáng)化學(xué)習(xí)算法的狀態(tài)-行為-學(xué)習(xí)循環(huán)框圖Fig.2 State-action-learning loop of DRL algorithm
DRL算法具有局部決策獨(dú)立與整體歷程的基本特性,即當(dāng)前環(huán)境狀態(tài)st僅與前一時(shí)刻的環(huán)境狀態(tài)st-1和行為at-1有關(guān),而與此前0時(shí)刻到t-2時(shí)刻對(duì)應(yīng)的環(huán)境狀態(tài)和行為均無(wú)關(guān)。DRL算法的這種特性滿足Markov離散隨機(jī)變量的概率分布特性,因此其深度強(qiáng)化學(xué)習(xí)的過(guò)程也可稱為Markov過(guò)程,數(shù)學(xué)表述如式(1):
p(st|a0,a1,…,at-1,s0,s1,…,st-1)=p(st|at-1,st-1)
(1)
空間機(jī)械臂系統(tǒng)包含自由漂浮基座和n自由度空間機(jī)械臂兩部分,根據(jù)DLR控制策略的構(gòu)成要素,定義漂浮基座對(duì)應(yīng)的狀態(tài)空間集合為式(2):
(2)
(3)
定義t時(shí)刻各關(guān)節(jié)對(duì)應(yīng)驅(qū)動(dòng)力矩為式(47):
(4)
定義空間機(jī)械臂末端抓捕機(jī)構(gòu)與空間非合作自旋漂浮目標(biāo)的距離在時(shí)刻t時(shí)為式(5):
dt=|Re-Rt|
(5)
以完成捕獲任務(wù)的時(shí)間、機(jī)械臂末端抓捕機(jī)構(gòu)距離目標(biāo)點(diǎn)的距離、關(guān)節(jié)觀測(cè)驅(qū)動(dòng)力矩大小為獎(jiǎng)賞值的參考指標(biāo),定義獎(jiǎng)賞函數(shù)如式(6):
rt=f(t)[l1g(dt)+l2h(|τt|)]
(6)
其中,f(t)為與捕獲時(shí)間相關(guān)的指標(biāo)函數(shù),g(dt)為與機(jī)械臂末端抓捕機(jī)構(gòu)距離目標(biāo)點(diǎn)的距離的指標(biāo)函數(shù),h(|τ|)為與機(jī)械臂的關(guān)節(jié)控制力矩相關(guān)的指標(biāo)函數(shù);l1、l2分別對(duì)對(duì)應(yīng)函數(shù)的調(diào)和系數(shù)。為使訓(xùn)練過(guò)程更加有效,應(yīng)使得抓捕任務(wù)的整個(gè)過(guò)程獎(jiǎng)勵(lì)值隨著相對(duì)應(yīng)的指標(biāo)的變化均有明顯波動(dòng),因此設(shè)置上述各指標(biāo)函數(shù)如式(7):
(7)
其中,f(t)、g(dt)、h(|τt|)具有相同的函數(shù)形式,對(duì)于如式(8)所示形式的函數(shù):
(8)
式(8)求一階導(dǎo)并取絕對(duì)值得式(9):
(9)
顯然,在Δ接近0或者遠(yuǎn)離0時(shí),Γ(Δ)對(duì)應(yīng)的函數(shù)值波動(dòng)范圍均較大。同理,式(7)中各函數(shù)在遠(yuǎn)離或接近對(duì)應(yīng)指標(biāo)的情況下,獎(jiǎng)勵(lì)函數(shù)rt均會(huì)產(chǎn)生較為明顯的波動(dòng),可促使訓(xùn)練更加有效,從而減少訓(xùn)練收斂次數(shù),加快目標(biāo)的抓捕進(jìn)度。
DDPG算法是對(duì)確定性策略算法(Deterministic Policy Algorithm, DPG)算法的改進(jìn)。DPG算法包含行為函數(shù)λ(s|q)以及價(jià)值函數(shù)J(s,a)兩部分,算法通過(guò)評(píng)價(jià)函數(shù)對(duì)離散時(shí)刻的行為進(jìn)行評(píng)價(jià),以求得行為的確定性狀態(tài)。為了實(shí)現(xiàn)對(duì)行為的逐步更新,定義與行為參數(shù)相關(guān)的鏈?zhǔn)揭?guī)則函數(shù)如式(10):
(10)
價(jià)值函數(shù)J(s,a)通過(guò)式(11)所示Bellman方程實(shí)現(xiàn)逐步更新:
BJ=E[y-J(s,a|qJ)2|s=st,a=λ(st|qλ)]
(11)
漂浮基座的空間機(jī)械臂抓捕非合作自旋目標(biāo)屬于高維連續(xù)空間問(wèn)題,無(wú)法直接用QL(Q-Learning)算法解決。圖3所示為DDPG控制算法的結(jié)構(gòu)流程圖,在DDPG算法中,定義目標(biāo)價(jià)值函數(shù)J′(s,a|qJ′)和目標(biāo)行為函數(shù)λ′(s|qλ′),上述兩目標(biāo)函數(shù)用于分別計(jì)算目標(biāo)值。目標(biāo)網(wǎng)絡(luò)的權(quán)重通過(guò)下式(12)實(shí)現(xiàn)軟更新,可有效避免直接引用前一步計(jì)算結(jié)果所帶來(lái)的訓(xùn)練結(jié)果超調(diào)、目標(biāo)不收斂等問(wèn)題,提高算法訓(xùn)練過(guò)程的穩(wěn)定性。
(12)
圖3 DDPG算法的結(jié)構(gòu)流程圖Fig.3 Structure schematic diagram of DDPG algorithm
對(duì)于包含高維度的狀態(tài)空間和行為空間的非合作目標(biāo)捕獲問(wèn)題,直接利用DDPG算法對(duì)空間機(jī)械臂的抓捕任務(wù)進(jìn)行控制,由于數(shù)據(jù)量和計(jì)算量極大,訓(xùn)練模型效率和收斂時(shí)間均不理想。因此,本文利用包含預(yù)演練(Pre-traing, PT)過(guò)程的DDPG控制策略[18]。PT策略是指預(yù)先訓(xùn)練空間機(jī)械臂進(jìn)行主動(dòng)隨機(jī)運(yùn)動(dòng),訓(xùn)練過(guò)程產(chǎn)生的狀態(tài)轉(zhuǎn)換函數(shù)存儲(chǔ)至重放緩沖集合{R}。PT過(guò)程并不包含參數(shù)更新的步驟,因此較短時(shí)間內(nèi)可對(duì)空間機(jī)械臂進(jìn)行大量的訓(xùn)練,使得空間機(jī)械臂在訓(xùn)練前就具有大量學(xué)習(xí)數(shù)據(jù)作為參考。此方法可顯著提高DDPG算法在高維度狀態(tài)空間和行為空間的訓(xùn)練效率,縮短收斂時(shí)間。
利用漂浮基座空間三自由度機(jī)械臂抓捕空間非合作自旋目標(biāo)的模型進(jìn)行仿真分析,目標(biāo)為空間自由漂浮狀態(tài),且存在自旋特性。表1為漂浮基座空間機(jī)械臂的零位對(duì)應(yīng)D-H參數(shù)。表2為漂浮基座空間機(jī)械臂各模塊以及非合作自旋目標(biāo)的質(zhì)量和慣量參數(shù),其中m0、m1、m2、m3、mt分別為漂浮基座、臂桿1、臂桿2、臂桿3、非合作目標(biāo)的質(zhì)量,Ixx、Ixy、Ixz、Iyy、Iyz、Izz為對(duì)應(yīng)的慣量矩陣。需要特別說(shuō)明的是,表中非合作目標(biāo)的慣量參數(shù)是在Fh坐標(biāo)下表示的。假設(shè)目標(biāo)的抓捕位置位于目標(biāo)自旋軸上,且抓捕過(guò)程的最后階段,空間機(jī)械臂末端抓捕機(jī)構(gòu)的速度方向與目標(biāo)自旋軸重合,降低實(shí)際抓捕難度。
表1 零位D-H參數(shù)
表2 質(zhì)量和慣量參數(shù)
目標(biāo)抓取點(diǎn)位置為Rh=[0.75 0.15 1.85]Tm。式(5-5)對(duì)應(yīng)的獎(jiǎng)勵(lì)函數(shù)中,設(shè)置l1=0.05,l1=0.1;設(shè)置獎(jiǎng)賞累加折扣系數(shù)λ=0.85;批量參考數(shù)組個(gè)數(shù)n=20;行為網(wǎng)絡(luò)λ(s|q)與J(s,a|qJ)設(shè)置為3層,每層單元個(gè)數(shù)分別為100,100,20,神經(jīng)網(wǎng)絡(luò)的LR參數(shù)(Learning Rate,學(xué)習(xí)率)設(shè)置為10-4;訓(xùn)練次數(shù)為1000;目標(biāo)行為網(wǎng)絡(luò)與目標(biāo)評(píng)價(jià)網(wǎng)絡(luò)更新步間距分別為100和150;其余參數(shù)設(shè)置參照文獻(xiàn)[17],此處不再贅述。
目標(biāo)抓捕成功的條件設(shè)定如下:①末端抓捕機(jī)構(gòu)冗余誤差設(shè)定為0.05 m,定義目標(biāo)球形抓捕域的半徑為SR=0.05 m,即抓捕位置中心點(diǎn)坐標(biāo)與末端抓捕機(jī)構(gòu)中心距離誤差εt≤SR;②且|τt|2≤1 N·m時(shí),抓捕機(jī)構(gòu)實(shí)施收攏動(dòng)作并完成目標(biāo)捕獲;③抓捕機(jī)構(gòu)與目標(biāo)抓取點(diǎn)的相對(duì)速度小于0.05 m/s。
仿真工具為MATLAB R2017b,設(shè)置仿真步長(zhǎng)為0.05 s,仿真結(jié)果如下:圖4分別為加入PT訓(xùn)練策略和未加入PT訓(xùn)練策略的訓(xùn)練歷程,由獎(jiǎng)勵(lì)值曲線變化對(duì)比可知,包含了PT訓(xùn)練策略的DDPG訓(xùn)練在經(jīng)歷600次訓(xùn)練歷程后,總獎(jiǎng)賞值趨于穩(wěn)定,約為150,對(duì)應(yīng)為控制策略逐漸收斂至目標(biāo)要求;而不包含PT訓(xùn)練策略的DDPG訓(xùn)練在經(jīng)歷1000次訓(xùn)練歷程后,獎(jiǎng)賞值未達(dá)到100且仍處于振蕩狀態(tài),未能收斂。因此,通過(guò)PT訓(xùn)練策略可有效提高訓(xùn)練效率,縮短非合作目標(biāo)抓捕任務(wù)所需時(shí)間。因此,采用包含PT訓(xùn)練策略的DDPG控制算法訓(xùn)練FFSM完成非合作自旋目標(biāo)的捕獲,仿真結(jié)果如圖5~9所示。圖5為3個(gè)關(guān)節(jié)訓(xùn)練歷程的角度和角速度變化曲線,圖6為抓捕過(guò)程3個(gè)關(guān)節(jié)訓(xùn)練歷程的輸出力矩曲線,圖7為空間機(jī)械臂末端點(diǎn)的抓捕過(guò)程三維軌跡,圖8為空間機(jī)械臂抓捕距離及與目標(biāo)的相對(duì)速度變化曲線圖,圖9為漂浮基座在抓捕過(guò)程中的位置和線速度、角度和角速度變化曲線。
圖4 DDPG訓(xùn)練歷程獎(jiǎng)勵(lì)值變化曲線Fig.4 Curves of reward value with DDPG training times
圖5 關(guān)節(jié)角度和角速度曲線 Fig.5 Angle and angular velocity of three joints
圖6 關(guān)節(jié)力矩曲線圖Fig.6 Control torque of three joints
圖7 機(jī)械臂末端抓捕機(jī)構(gòu)中心三維軌跡圖Fig.7 3D trajectory of end effector of FFSM
圖8 機(jī)械臂末端抓捕距離及相對(duì)速度曲線圖Fig.8 Distance and relative velocity between end effector of FFSM and target
圖9 漂浮基座位置、速度、角度及角速度曲線圖Fig.9 Position, velocity, angle and angular velocity curves of free-floating base
由圖5可知,抓捕機(jī)構(gòu)從初始位置機(jī)動(dòng)至抓捕位置時(shí),關(guān)節(jié)角速度在抓捕初段逐漸增加,而在抓捕中后段逐漸趨于0附近,可有效降低空間機(jī)械臂與目標(biāo)在抓捕瞬間的碰撞力;由圖6可知,3個(gè)關(guān)節(jié)控制力矩在3 s以后逐漸收斂,且最終τxf值為0.1543 Nm,τyf值為0.4497 Nm,τzf值為0.4497 Nm,綜合力矩‖τf‖為0.6615 Nm,滿足抓捕條件中的關(guān)節(jié)輸出力矩‖τt‖2≤1 Nm的指標(biāo)要求,表明DDPG控制算法可實(shí)現(xiàn)抓捕末段減小與目標(biāo)碰撞力的要求,更有利于捕獲過(guò)程系統(tǒng)的姿態(tài)穩(wěn)定;由圖7和圖8(a)可知,整個(gè)抓捕過(guò)程中,機(jī)械臂末端抓捕機(jī)構(gòu)的中心與目標(biāo)抓捕中心點(diǎn)的間距逐漸趨于0,具體εtx=3.8E-3 m,εty=2.62E-3 m,εtz=2.0E-2 m,對(duì)應(yīng)的空間三維距離εt約為3.318E-2 m,小于抓捕域球半徑SR,即目標(biāo)處于可抓捕范圍內(nèi);由圖8(b)可知,接近目標(biāo)抓捕位置時(shí),相對(duì)速度趨于0,具體vtx=1.9E-3 m/s,vty=1.1E-3 m/s,vtz=2.0E-3 m/s,綜合相對(duì)速度為‖vt‖=2.97E-3 m/s。由圖9可知,F(xiàn)FSM系統(tǒng)的漂浮基座在整個(gè)抓捕過(guò)程中隨著末端抓捕機(jī)構(gòu)的速度降低,姿態(tài)和速度均處于可控狀態(tài)。
綜合仿真結(jié)果可知:抓捕時(shí)刻的關(guān)節(jié)驅(qū)動(dòng)力矩為0.6615 Nm,抓捕中心誤差為0.02 m,機(jī)械臂末端與目標(biāo)間的相對(duì)抓捕速度小于3 mm/s;以上指標(biāo)均能滿足預(yù)設(shè)的抓捕條件,可有效減小抓捕碰撞力對(duì)本體星和目標(biāo)運(yùn)動(dòng)狀態(tài)的影響,使得抓捕任務(wù)安全可靠。
1) 基于DRL算法的控制策略可在不依賴系統(tǒng)的運(yùn)動(dòng)學(xué)和動(dòng)力學(xué)模型的情況下,對(duì)空間漂浮基座機(jī)械臂的抓捕軌跡和速度進(jìn)行有效控制;
2)根據(jù)仿真結(jié)果,抓捕過(guò)程的末段,機(jī)械臂的關(guān)節(jié)驅(qū)動(dòng)總力矩約為0.66 Nm,末端抓捕機(jī)構(gòu)與目標(biāo)抓捕位置的位置偏差約為3E-2 m,相對(duì)速度約為3 mm/s;
3)基于DRL算法的DDPG控制策略能較好地實(shí)現(xiàn)對(duì)非合作目標(biāo)的精確定位和低碰撞力抓捕,相比于DPG控制策略,計(jì)算速度略有降低,但DDPG控制策略通過(guò)逐步更新行為的方式,使得目標(biāo)抓捕過(guò)程的控制效果更加穩(wěn)定和準(zhǔn)確;
4)針對(duì)多體系統(tǒng)的運(yùn)動(dòng)控制以及目標(biāo)抓捕等難以精確建立系統(tǒng)動(dòng)力學(xué)模型的問(wèn)題,可利用DRL算法這一新型控制策略解決。