郭繼峰 陳宇燊 白成超
哈爾濱工業(yè)大學(xué)智能感知與自主規(guī)劃實(shí)驗(yàn)室, 哈爾濱 150001
隨著人類(lèi)對(duì)太空的探索和開(kāi)發(fā),為保證航天器更加持久地在軌運(yùn)行、提高航天器的自主運(yùn)行能力的智能化在軌服務(wù)技術(shù)研究具有重大意義,也是目前國(guó)際關(guān)注的熱點(diǎn)。
在軌服務(wù)過(guò)程中,提供在軌服務(wù)的航天器需要與目標(biāo)逼近,以便對(duì)目標(biāo)進(jìn)行抓取和維修等操作,而逼近過(guò)程涉及航天器相對(duì)運(yùn)動(dòng),包含受控個(gè)體的局部運(yùn)動(dòng)以及耦合關(guān)聯(lián)的整體非線(xiàn)性運(yùn)動(dòng),并且需要考慮包括安全速度限制和服務(wù)航天器敏感器指向約束等諸多約束,這些約束直接導(dǎo)致接近過(guò)程中制導(dǎo)、控制難以實(shí)現(xiàn)。為了滿(mǎn)足日益增長(zhǎng)的在軌服務(wù)需求,研究給定目標(biāo)下的在軌逼近問(wèn)題,對(duì)構(gòu)建通用化在軌服務(wù)基礎(chǔ)技術(shù)體系有重要價(jià)值。
根據(jù)服務(wù)航天器與目標(biāo)航天器的距離,在軌目標(biāo)逼近過(guò)程大致可以分為遠(yuǎn)距離導(dǎo)引段、中距離尋的逼近段和近距離末端逼近段,其中近距離末端逼近段起始于與目標(biāo)距離幾百米到幾千米的位置,是在軌逼近過(guò)程的核心階段,受到相關(guān)研究者的廣泛關(guān)注。目前末端逼近的研究方式一般是將控制系統(tǒng)分為導(dǎo)航、制導(dǎo)和控制3部分,對(duì)每部分單獨(dú)研究,本文研究的是在導(dǎo)航信息已知情況下的末端逼近制導(dǎo)與控制。
制導(dǎo)方式根據(jù)控制力施加方式不同,在軌逼近過(guò)程相對(duì)制導(dǎo)方法可以分為脈沖制導(dǎo)和連續(xù)推力制導(dǎo)。
脈沖制導(dǎo)控制力施加的形式是速度脈沖,通過(guò)短期的速度增量改變服務(wù)航天器的軌道運(yùn)動(dòng)狀態(tài),雙脈沖制導(dǎo)是比較經(jīng)典的一種脈沖制導(dǎo)方式,通過(guò)2次速度脈沖實(shí)現(xiàn)軌道轉(zhuǎn)移,可以分別通過(guò)相對(duì)運(yùn)動(dòng)方程[1]和線(xiàn)性化的Guass運(yùn)動(dòng)方程[2]2種方法計(jì)算脈沖施加位置和大小,2種計(jì)算方式描述的都是同一個(gè)問(wèn)題,區(qū)別是基于線(xiàn)性化的Guass運(yùn)動(dòng)方程求解可以避免奇異,但只適用于近圓軌道。此外,相關(guān)學(xué)者基于主矢量理論研究多脈沖轉(zhuǎn)移問(wèn)題,Sgubini等[3]通過(guò)研究同軌道面和異軌道面的轉(zhuǎn)移,指出最優(yōu)轉(zhuǎn)移次數(shù)最大為3。Broucke等[4]以燃料消耗為優(yōu)化目標(biāo),研究N脈沖最優(yōu)問(wèn)題,給出了圓-圓、圓橢圓、橢圓-橢圓情況下多脈沖最優(yōu)求解方法。
連續(xù)推力制導(dǎo)是指在逼近過(guò)程中服務(wù)航天器發(fā)動(dòng)機(jī)不關(guān)機(jī),持續(xù)產(chǎn)生推力的制導(dǎo)方式。經(jīng)典的連續(xù)推力制導(dǎo)主要有LQR[5]和線(xiàn)性規(guī)劃[6],兩者都是線(xiàn)性化設(shè)計(jì)方法,LQR設(shè)計(jì)思路清晰但涉及求解復(fù)雜的Raccati方程,線(xiàn)性規(guī)劃可以在諸多約束的情況下求解最優(yōu)解,缺點(diǎn)是需要針對(duì)問(wèn)題設(shè)計(jì)專(zhuān)門(mén)的數(shù)值求解算法,且不利于工程實(shí)現(xiàn)。
此外,相關(guān)學(xué)者直接研究非線(xiàn)性方程,通過(guò)自適應(yīng)算法、遺傳算法和模糊控制等[7]算法進(jìn)行制導(dǎo)算法設(shè)計(jì),相比于線(xiàn)性化的算法,消耗的燃料較少,但算法復(fù)雜且計(jì)算量大,難以直接應(yīng)用于工程。
在軌目標(biāo)逼近不僅需要控制服務(wù)航天器與目標(biāo)航天器的相對(duì)位置,還需要控制相對(duì)姿態(tài)保證對(duì)接和敏感器對(duì)目標(biāo)的觀測(cè)等需求,因此相關(guān)的研究分為相對(duì)軌道控制、相對(duì)姿態(tài)控制和姿軌耦合控制,其中相對(duì)軌道控制常采用基于線(xiàn)性化的LQR[8]和線(xiàn)性規(guī)劃[9]方法進(jìn)行軌道機(jī)動(dòng)和保持,需要針對(duì)近圓軌道和橢圓軌道設(shè)計(jì)控制算法,近圓軌道算法僅適用于離心率小的情況,在大離心率的情況下控制精度效果差且易發(fā)散;針對(duì)橢圓情況的算法以線(xiàn)性時(shí)變方程為控制模型,因此為保證控制性能,需要在周期重新計(jì)算控制參數(shù),運(yùn)算量大。此外還有研究者直接以非線(xiàn)性方程為控制模型,采用自適應(yīng)控制和魯棒控制等控制算法,在存在系統(tǒng)參數(shù)變化和攝動(dòng)等干擾的情況下仍保證控制精度和系統(tǒng)穩(wěn)定性。
強(qiáng)化學(xué)習(xí)(Reinforcement Learning,RL)是機(jī)器學(xué)習(xí)領(lǐng)域內(nèi)的研究熱點(diǎn),是目前應(yīng)用效果最為出色的智能算法之一,通過(guò)與環(huán)境的交互來(lái)獲取獎(jiǎng)勵(lì)(Reward),同時(shí)不斷優(yōu)化策略(Policy),直到獲得最優(yōu)的策略,是解決序列決策問(wèn)題的有效途徑。RL算法在動(dòng)力學(xué)未知或受到嚴(yán)重不確定性影響時(shí),通過(guò)學(xué)習(xí)可以有效地找到系統(tǒng)的最佳控制器。深度強(qiáng)化學(xué)習(xí)(Deep Reinforcement Learning,DRL)將深度學(xué)習(xí)的感知能力與強(qiáng)化學(xué)習(xí)的決策能力相結(jié)合,將傳統(tǒng)GNC系統(tǒng)的制導(dǎo)與控制合并,直接感知環(huán)境信息然后輸出控制量,是一種端對(duì)端(end-to-end)的感知與控制系統(tǒng),適合解決復(fù)雜系統(tǒng)的決策規(guī)劃問(wèn)題。
由于強(qiáng)化學(xué)習(xí)在處理復(fù)雜系統(tǒng)和序列決策上的優(yōu)勢(shì),人們對(duì)基于強(qiáng)化學(xué)習(xí)的智能控制進(jìn)行了廣泛的研究。Zhang等[10]基于DQN設(shè)計(jì)了一種機(jī)械臂控制算法,該算法僅以相機(jī)采集的原始圖像為輸入,在沒(méi)有任何先驗(yàn)信息的情況下通過(guò)學(xué)習(xí)就實(shí)現(xiàn)了三關(guān)節(jié)機(jī)械臂的控制,展現(xiàn)了DRL處理高維狀態(tài)空間的強(qiáng)大能力。MIT的Linares等[11]對(duì)行星表面軟著陸問(wèn)題進(jìn)行研究,利用強(qiáng)化學(xué)習(xí)設(shè)計(jì)了一種整合制導(dǎo)與控制的控制算法,實(shí)現(xiàn)由導(dǎo)航輸入直接到推力器輸出的端到端的控制器。該算法通過(guò)獎(jiǎng)勵(lì)函數(shù)的形式對(duì)約束建模,經(jīng)過(guò)訓(xùn)練使著陸器在著陸過(guò)程中滿(mǎn)足安全姿態(tài)角和姿態(tài)角速度的約束,且能優(yōu)化燃料消耗。Sallab等[12]基于強(qiáng)化學(xué)習(xí)提出了一種自動(dòng)駕駛框架,該算法采用循環(huán)神經(jīng)網(wǎng)絡(luò)整合信息,使得模型能應(yīng)對(duì)信息部分可觀測(cè)的情況,在仿真環(huán)境下能在多彎道路下行駛良好,并且可以與其他車(chē)輛進(jìn)行簡(jiǎn)單交互。Won等[13]針對(duì)機(jī)器人參與冰壺運(yùn)動(dòng)的場(chǎng)景,對(duì)標(biāo)準(zhǔn)的深度強(qiáng)化學(xué)習(xí)框架進(jìn)行改進(jìn),基于瞬時(shí)特征信息對(duì)冰壺運(yùn)動(dòng)中不可避免的不確定性進(jìn)行補(bǔ)償,在現(xiàn)實(shí)世界的比賽中以3:1的成績(jī)戰(zhàn)勝人類(lèi)職業(yè)隊(duì)伍,縮小了強(qiáng)化學(xué)習(xí)訓(xùn)練成果從虛擬訓(xùn)練環(huán)境遷移到現(xiàn)實(shí)物理世界的鴻溝。在DARPA組織舉行的“阿爾法狗斗”模擬飛行對(duì)抗賽中,蒼鷺系統(tǒng)公司基于強(qiáng)化學(xué)習(xí)框架設(shè)計(jì)的人工智能程序以5比0的大比分擊敗了美國(guó)空軍駕駛F-16戰(zhàn)機(jī)的王牌飛行員。此外強(qiáng)化學(xué)習(xí)還被應(yīng)用于電網(wǎng)控制[14]、通信安全[15]和無(wú)人機(jī)編隊(duì)控制[16]等領(lǐng)域,這些成果表明了在求解復(fù)雜非線(xiàn)性控制問(wèn)題中強(qiáng)化學(xué)習(xí)有著巨大的潛力和優(yōu)勢(shì)。本文針對(duì)在軌服務(wù)航天器對(duì)在軌目標(biāo)逼近問(wèn)題開(kāi)展研究,結(jié)合強(qiáng)化學(xué)習(xí)和控制理論的相關(guān)技術(shù)知識(shí),設(shè)計(jì)了一種端到端的整合制導(dǎo)與控制的在軌目標(biāo)逼近算法,通過(guò)仿真對(duì)算法有效性進(jìn)行驗(yàn)證。
(1)
則服務(wù)航天器相對(duì)于目標(biāo)航天器的位置矢量ρ在地心慣性坐標(biāo)系下滿(mǎn)足
(2)
根據(jù)矢量求導(dǎo)法則,服務(wù)航天器與目標(biāo)航天器的相對(duì)動(dòng)力學(xué)方程在目標(biāo)航天器軌道坐標(biāo)系下的形式為
(3)
(4)
進(jìn)一步整理為
(5)
(6)
強(qiáng)化學(xué)習(xí)算法可以分為基于值的、基于策略的和Actor-Critic三類(lèi)。DQN是經(jīng)典的基于值的算法,該算法是Q-learning擴(kuò)展到連續(xù)狀態(tài)空間的結(jié)果,通過(guò)值函數(shù)網(wǎng)絡(luò)評(píng)估動(dòng)作的好壞,適用于連續(xù)的狀態(tài)空間。該算法引入了經(jīng)驗(yàn)回放機(jī)制和目標(biāo)網(wǎng)絡(luò),極大的提高了訓(xùn)練過(guò)程的穩(wěn)定性,缺點(diǎn)是不能輸出連續(xù)的動(dòng)作,若要輸出一個(gè)區(qū)間上的動(dòng)作,需要將該區(qū)間離散化,對(duì)控制效果有影響。基于策略的算法不需要維護(hù)一個(gè)值函數(shù)網(wǎng)絡(luò)判斷動(dòng)作的好壞,而是直接對(duì)策略參數(shù)進(jìn)行優(yōu)化,適用于高維和連續(xù)動(dòng)作空間,可以學(xué)到隨機(jī)策略。Actor-Critic算法結(jié)合了前兩者的思想,包括Actor和Critic兩個(gè)網(wǎng)絡(luò),Actor網(wǎng)絡(luò)根據(jù)Critic的評(píng)判采取行動(dòng),Critic網(wǎng)絡(luò)根據(jù)環(huán)境的反饋對(duì)Actor的行為做評(píng)估,借助Critic的反饋,不用等到回合結(jié)束,可以單步更新。
DeepMind團(tuán)隊(duì)將Actor-Critic與DQN結(jié)合提出了DDPG算法,相比于Actor-Critic,DDPG輸出動(dòng)作不是概率分布而是一個(gè)確定的值,可以降低在連續(xù)空間中探索的成本;相比于DQN,DDPG可以輸出連續(xù)的動(dòng)作,在智能控制研究中廣泛應(yīng)用,因此采取DDPG作為空間目標(biāo)逼近問(wèn)題的RL算法框架。
相對(duì)位置控制的目標(biāo)是通過(guò)觀察服務(wù)航天器的位置速度等信息,控制發(fā)動(dòng)機(jī)推力,使服務(wù)航天器向期望位置運(yùn)動(dòng),實(shí)現(xiàn)服務(wù)航天器對(duì)目標(biāo)的逼近。在確定選取DDPG的算法框架后,需要設(shè)計(jì)的內(nèi)容包括觀測(cè)值、動(dòng)作、獎(jiǎng)勵(lì)、網(wǎng)絡(luò)4部分:
1)觀測(cè)值
觀測(cè)量的選取應(yīng)該保證對(duì)反映逼近效果的狀態(tài)量的可觀性,從而確保智能體能根據(jù)觀測(cè)的狀態(tài)輸出正確的控制指令。相對(duì)位置控制中相對(duì)位置和速度是反映逼近情況的關(guān)鍵指標(biāo),因此選取的觀測(cè)量為s=[rv],r和v分別為服務(wù)航天器相對(duì)于目標(biāo)的位置和速度矢量,通過(guò)在其體坐標(biāo)系下的三軸分量表示,這樣的狀態(tài)設(shè)置能保證智能體可以獲取足夠的關(guān)于逼近狀態(tài)的信息,保證逼近控制的性能。
2)動(dòng)作
智能體的動(dòng)作a=[Fx,Fy,Fz]T,其中Fx,F(xiàn)y和Fz為三軸發(fā)動(dòng)機(jī)推力,考慮硬件實(shí)際情況,推力應(yīng)該滿(mǎn)足限幅條件,即
Fx,Fy,Fz∈[-Flim,Flim]
3)獎(jiǎng)勵(lì)值
獎(jiǎng)勵(lì)是智能體判斷自身動(dòng)作好壞的唯一信息來(lái)源,好的獎(jiǎng)勵(lì)函數(shù)能加快模型收斂,提高策略控制性能。在軌逼近過(guò)程中,狀態(tài)值包括相對(duì)位置和速度,由于逼近段起始于km量級(jí),加上速度項(xiàng),智能體的狀態(tài)空間很大,獎(jiǎng)勵(lì)稀疏,如果僅在到達(dá)目標(biāo)點(diǎn)時(shí)給獎(jiǎng)勵(lì),模型很難收斂,因此需要設(shè)計(jì)輔助任務(wù)引導(dǎo)模型收斂。此外考慮安全相對(duì)速度等限制,相對(duì)速度需要隨著相對(duì)距離縮短而降低,因此輔助任務(wù)為跟蹤參考速度
(7)
(8)
在智能體的控制下,服務(wù)航天器需要盡可能與參考速度一致。此外發(fā)動(dòng)機(jī)工作消耗燃料,在實(shí)現(xiàn)逼近目標(biāo)的前提下應(yīng)盡可能降低燃料消耗,因此獎(jiǎng)勵(lì)函數(shù)需要包含燃料消耗帶來(lái)的懲罰,對(duì)應(yīng)獎(jiǎng)勵(lì)函數(shù)形式為
(9)
式中:α為跟蹤參考速度精度的獎(jiǎng)勵(lì)評(píng)估系數(shù),Isp為燃料比沖,gref為計(jì)算比沖所參考的重力加速度,g(·)為速度偏差獎(jiǎng)勵(lì)計(jì)算函數(shù),形式為
(10)
式中:β是對(duì)燃料消耗速率的獎(jiǎng)勵(lì)系數(shù),這樣的獎(jiǎng)勵(lì)函數(shù)能使模型盡可能的跟蹤參考速度實(shí)現(xiàn)目標(biāo)逼近,同時(shí)優(yōu)化燃料消耗率。
4)網(wǎng)絡(luò)設(shè)計(jì)
DDPG算法包括Actor和Critic兩個(gè)網(wǎng)絡(luò),Actor網(wǎng)絡(luò)輸入是六維觀測(cè)狀態(tài),輸出是三軸發(fā)動(dòng)機(jī)推力;Critic網(wǎng)絡(luò)輸入是由觀測(cè)值和動(dòng)作組成的九維向量。如表1所示,Actor和Critic網(wǎng)絡(luò)都包括3個(gè)中間層,采用Relu作為激活函數(shù),為實(shí)現(xiàn)推力限幅,策略網(wǎng)絡(luò)輸出層采用Tanh將輸出歸一化到-1~1之間,結(jié)合發(fā)動(dòng)機(jī)推力限制經(jīng)過(guò)一個(gè)比例放大輸出發(fā)動(dòng)機(jī)推力。
表1 Actor和Critic網(wǎng)絡(luò)結(jié)構(gòu)
按前述設(shè)計(jì)方式搭建仿真環(huán)境,模型參數(shù)設(shè)置如表2
表2 相對(duì)位置控制DDPG網(wǎng)絡(luò)設(shè)置
為保證訓(xùn)練結(jié)果的魯棒性,初始狀態(tài)在目標(biāo)點(diǎn)附近一定范圍內(nèi)隨機(jī)選擇,在MATLAB下搭建仿真環(huán)境如圖1。
圖1 RL逼近控制Simulink框圖
其中
訓(xùn)練過(guò)程每個(gè)回合獎(jiǎng)勵(lì)、平均獎(jiǎng)勵(lì)如圖2,隨著訓(xùn)練的進(jìn)行,每個(gè)回合獲得的總的獎(jiǎng)勵(lì)逐漸上升,經(jīng)過(guò)約1000回合的訓(xùn)練模型基本收斂,停止訓(xùn)練。
圖2 RL位置控制模型訓(xùn)練過(guò)程
設(shè)置初始狀態(tài)s1:
[x0,y0,z0]=[600,500,400]m
[vx0,vy0,vz0]=[0,0,0]m/s,
和s2:
[x0,y0,z0]=[-700,600,200]m
[vx0,vy0,vz0]=[0,0,0]m/s
在訓(xùn)練得到的智能體控制下,服務(wù)航天器逼近過(guò)程軌跡如圖3(a)和圖4(a),可以看到服務(wù)航天器最終到達(dá)目標(biāo)點(diǎn)并穩(wěn)定在該處,圖3(b)和圖4(b)為相對(duì)位置的分量。從圖3(c)和圖4(c)相對(duì)速度分量可以看到,在距離較遠(yuǎn)的時(shí)候,服務(wù)航天器以較快的速度逼近目標(biāo)點(diǎn),但隨著與目標(biāo)點(diǎn)距離越來(lái)越近,服務(wù)航天器的相對(duì)速度逐漸降低,到達(dá)目標(biāo)點(diǎn)后趨近于零,滿(mǎn)足逼近過(guò)程的安全要求??梢钥吹浇?jīng)過(guò)訓(xùn)練,服務(wù)航天器能逼近目標(biāo),最終穩(wěn)定在目標(biāo)點(diǎn)附近,并且隨著相對(duì)距離減小,相對(duì)速度也逐漸降低,滿(mǎn)足逼近過(guò)程的安全性要求。
圖3 初始狀態(tài)s1下逼近過(guò)程
圖4 初始狀態(tài)s2下逼近過(guò)程
在狀態(tài)s1下,分別基于RL和LQR的逼近過(guò)程燃料消耗曲線(xiàn)如下
圖5 初始狀態(tài)s1下RL控制燃料消耗情況
圖6 初始狀態(tài)s1下LQR控制燃料消耗
可以看到基于RL的算法和基于LQR的逼近控制分別消耗燃料質(zhì)量57.82kg和64.59kg。兩者的燃料有一半消耗在前100s內(nèi),這是因?yàn)榉?wù)航天器由初始的相對(duì)靜止到逼近所需一定的相對(duì)速度,需要發(fā)動(dòng)機(jī)推力加速,消耗了末端逼近的大部分燃料。
設(shè)初始狀態(tài)x0,y0∈[-1000,-600]∪[600,1000]m,z0∈[-300,300]m,通過(guò)300次實(shí)驗(yàn),對(duì)比相同初始狀態(tài)下基于RL的方法和基于LQR的控制方法所消耗燃料的質(zhì)量,其中118次基于RL的方法燃料消耗率低于基于LQR的方法,其他情況下基于LQR更省燃料,即兩種算法相比另一種優(yōu)勢(shì)并不明顯,這是因?yàn)榛趶?qiáng)化學(xué)習(xí)引入了參考速度,因此本質(zhì)上學(xué)習(xí)得到的是一種控制算法,而引入的參考速度是制導(dǎo)信號(hào),制導(dǎo)方案對(duì)燃料的影響較大,因此基于RL的方法在燃料消耗上的優(yōu)勢(shì)并不明顯。由于問(wèn)題特點(diǎn),為保證逼近過(guò)程的安全性要求,參考速度是必要的。
針對(duì)在軌目標(biāo)逼近問(wèn)題進(jìn)行了研究。首先介紹了在軌目標(biāo)逼近過(guò)程和基于強(qiáng)化學(xué)習(xí)的控制研究現(xiàn)狀,然后對(duì)在軌相對(duì)運(yùn)動(dòng)進(jìn)行建模,接著基于DDPG強(qiáng)化學(xué)習(xí)框架設(shè)計(jì)了端到端的逼近控制方法,通過(guò)引入?yún)⒖妓俣冉鉀Q了獎(jiǎng)勵(lì)稀疏和安全性問(wèn)題,最后通過(guò)仿真實(shí)驗(yàn),將基于強(qiáng)化學(xué)習(xí)的逼近算法與基于模型的LQR逼近控制方法進(jìn)行對(duì)比,基于強(qiáng)化學(xué)習(xí)的逼近控制算法不依賴(lài)模型,可以在沒(méi)有系統(tǒng)模型或模型復(fù)雜的情況下,通過(guò)學(xué)習(xí)實(shí)現(xiàn)在軌目標(biāo)逼近;由于引入了參考速度,在燃料消耗方面,相比于LQR控制算法,基于強(qiáng)化學(xué)習(xí)算法的優(yōu)勢(shì)并不始終保持。