張振寧,張 冉,聶文明,李惠峰
(北京航空航天大學(xué)宇航學(xué)院,北京100191)
航天任務(wù)中,姿態(tài)控制器的設(shè)計是飛行器設(shè)計的關(guān)鍵環(huán)節(jié)之一,其控制性能與任務(wù)能否成功密切相關(guān)。姿態(tài)控制精度、收斂時間、控制量需求是衡量控制性能的主要因素。目前,再入飛行器的姿態(tài)控制器設(shè)計思路主要有兩種。一是線性設(shè)計方法,對飛行器原始模型在選定工作點處進行小擾動線性化,采用線性系統(tǒng)理論及增益整定得到全彈道控制器[1]。但再入飛行包線大,速度通常在5馬赫以上,存在極強非線性特征,因此在機動過程中采用線性控制器容易產(chǎn)生失穩(wěn)現(xiàn)象。二是非線性設(shè)計方法,它一定程度上體現(xiàn)了模型中的非線性因素,如:反饋線性化方法[2-3]通過嚴格的狀態(tài)變化與反饋將非線性系統(tǒng)代數(shù)地轉(zhuǎn)化為線性系統(tǒng),再應(yīng)用線性系統(tǒng)理論設(shè)計控制器,但有相當多的系統(tǒng)無法進行反饋線性化;反步法[3]通過對系統(tǒng)進行多步遞推設(shè)計,獲得較好的全局或局部穩(wěn)定性,但容易發(fā)生微分膨脹現(xiàn)象;滑模法[5-6]以一階鎮(zhèn)定問題取代原高階跟蹤問題,設(shè)計過程比較簡單且性能很好,文獻[7]還用神經(jīng)網(wǎng)絡(luò)對估計模型、耦合等擾動進行估計,進一步改善了控制性能,但該方法容易出現(xiàn)控制量的顫振。
近年來,最優(yōu)控制理論已成為現(xiàn)代控制系統(tǒng)設(shè)計的基礎(chǔ)理論之一。針對再入飛行器的姿態(tài)控制,通過最優(yōu)控制理論設(shè)計控制器可以最大程度優(yōu)化舵面偏轉(zhuǎn)量、姿態(tài)跟蹤精度和速度等性能。動態(tài)規(guī)劃作為一種傳統(tǒng)的最優(yōu)控制問題求解方法,由于“維數(shù)災(zāi)難”導(dǎo)致Hamilton-Jacobian-Bellman(HJB)方程難以直接求解。隨著計算技術(shù)的不斷進步,求解HJB方程的迭代方法得到廣泛探索。Werbos[8]首先提出了自適應(yīng)動態(tài)規(guī)劃(Adaptive dynamic programming,ADP),建立執(zhí)行-評價估計結(jié)構(gòu),并通過值迭代方法求解。Al-Tamimi等[9]證明了這種方法在離散系統(tǒng)上的收斂性。 近幾年,Xu等[10]、Lakshmikanth等[11]學(xué)者將該方法直接應(yīng)用于連續(xù)系統(tǒng),但對數(shù)據(jù)采樣時間的苛刻要求導(dǎo)致算法收斂性難以保證,且加重了計算負擔(dān)。為使連續(xù)系統(tǒng)的HJB方程求解更加穩(wěn)定,基于策略迭代提出的積分型強化學(xué)習(xí)(Integral reinforcement learning,IRL)算法作為一種新興算法受到廣泛關(guān)注[12-13],該算法采用評價和執(zhí)行兩個網(wǎng)絡(luò)分別估計值函數(shù)和控制策略,并同時更新直到兩個網(wǎng)絡(luò)均收斂到最優(yōu)。Modares等[14]針對最優(yōu)跟蹤問題,提出了一種非二次型的代價函數(shù),采用IRL算法完成了跟蹤控制器的設(shè)計;Wang等[15]在Modares等[14]工作的基礎(chǔ)上通過修改代價函數(shù)設(shè)計了魯棒跟蹤控制器; Lee等[16]對IRL算法的收斂性進行了深入研究,并提出了四種衍生算法;Song等[17]通過將Off-Policy與IRL算法結(jié)合,大大減弱了控制器對模型的依賴性。以上研究均采用執(zhí)行-評價雙網(wǎng)絡(luò)結(jié)構(gòu)對HJB方程進行求解,但雙網(wǎng)絡(luò)結(jié)構(gòu)的計算效率和所占用的存儲空間不能滿足目前再入飛行器姿態(tài)控制器的設(shè)計要求。
本文提出了單網(wǎng)絡(luò)積分型強化學(xué)習(xí)(Single-network integral reinforcement learning, SNIRL)算法,將原評價-執(zhí)行結(jié)構(gòu)中執(zhí)行網(wǎng)絡(luò)的迭代過程用解析式表達,保留評價網(wǎng)絡(luò)的迭代對值函數(shù)進行估計,減少了近一半的計算量和存儲空間。該算法的收斂性及閉環(huán)系統(tǒng)的穩(wěn)定性均通過李雅普諾夫穩(wěn)定性理論得到了證明。
本文的結(jié)構(gòu)如下:第1節(jié)構(gòu)建再入飛行器的最優(yōu)姿態(tài)控制問題;第2節(jié)在策略迭代框架下用評價網(wǎng)絡(luò)估計值函數(shù),采用SNIRL算法求解最優(yōu)控制問題,設(shè)計姿態(tài)控制器;第3節(jié)給出算法收斂性和系統(tǒng)穩(wěn)定性證明;第4節(jié)進行縱向和橫側(cè)向姿態(tài)控制仿真。
從最優(yōu)控制角度出發(fā),將再入飛行器的姿態(tài)控制問題建模為最優(yōu)控制問題。
參考文獻[18],用于控制器設(shè)計的再入飛行器模型為
(1)
式中:α為攻角,β為側(cè)滑角,μ為傾側(cè)角,p為偏航角速率,q為俯仰角速率,q為滾轉(zhuǎn)角速率;g為地球引力加速度,取常值;Ix,Iy,Ixz為轉(zhuǎn)動慣量,也為常值;Z為升力,Y為橫向力,L為滾轉(zhuǎn)力矩,N為偏航力矩,M為俯仰力矩,X(·)表示X對(·)的偏導(dǎo)數(shù)(例如Mα表示俯仰力矩對攻角的偏導(dǎo)數(shù))。
該模型是在原始模型上進行適當簡化后的仿射模型,不包含速度及位置的相關(guān)狀態(tài),控制量顯式出現(xiàn)在方程中,可簡寫為
(2)
式中:x∈Rn為狀態(tài)量,u∈Rm為控制輸入;F(x)∈Rn,G(x)∈Rn×m是只與x相關(guān)的非線性函數(shù)。
最優(yōu)控制策略可以通過最小化某個人為選擇的代價函數(shù)V(在ADP中也稱為值函數(shù))得到,V的形式為
(3)
式中:
r(x,u)=Q(x)+uTRu
(4)
最優(yōu)控制問題描述為:對于由方程組(2)定義的系統(tǒng),尋找最優(yōu)控制策略u*,最小化代價函數(shù)(3)。
容許控制[19]定義為:若F+Gu在集合Ω∈RN上連續(xù),μ在Ω上連續(xù)且μ(0)=0,若μ在Ω上鎮(zhèn)定系統(tǒng)(2)且對?x0∈Ω,V(x0)有界,則稱μ容許控制,記作μ∈Ψ(Ω)。
對μ∈Ψ(Ω),可以將式(3)轉(zhuǎn)化為極小形式,它是一個李雅普諾夫方程
(5)
式中:Vx表示V對x的偏導(dǎo)。
這個無限時間最優(yōu)控制問題的哈密頓方程為
(6)
根據(jù)極大值原理,最優(yōu)控制μ*可通過最小化式(6)得到。實際上對形如式(2)的系統(tǒng),對式(6)應(yīng)用駐點條件,能得到最優(yōu)控制策略與最優(yōu)代價函數(shù)的關(guān)系,為
(7)
(8)
將策略迭代作為算法框架,保證迭代計算結(jié)果向最優(yōu)控制律收斂;設(shè)計評價網(wǎng)絡(luò),在迭代計算中估計值函數(shù);最后提出SNIRL算法使估計值向最優(yōu)值收斂,完成求解,得到自適應(yīng)最優(yōu)控制器。
策略迭代是利用強化學(xué)習(xí)求解最優(yōu)控制問題的一種迭代方法。具體過程為:
(1)確定當前控制策略下的值函數(shù)
(9)
(2)求解最小化哈密頓方程的控制策略,并對當前控制策略進行更新
(10)
事實上,對系統(tǒng)(2),通過式(10)可以解析得到
(11)
(3)在步驟(1)和步驟(2)之間不斷迭代直至收斂。
當初始控制策略為容許控制時,該算法過程中的每次迭代都會使得控制策略向更優(yōu)的方向收斂,并最終收斂到最優(yōu)控制策略u*(x)以及相應(yīng)的最優(yōu)代價函數(shù)V*(x)。該算法的收斂性在早年文獻中已有證明[21]。
針對由式(2)~式(3)構(gòu)成的最優(yōu)控制問題,策略迭代過程包括依據(jù)式(5)進行策略評價(即確定值函數(shù)),以及依據(jù)式(7)進行策略更新。
從第1節(jié)的分析可以看出,控制策略對應(yīng)的值函數(shù)難以求解,導(dǎo)致策略迭代過程的步驟1無法實現(xiàn),故設(shè)計評價網(wǎng)絡(luò)估計值函數(shù)。
選取Φ(x)=[φ1(x),φ2(x),…,φN(x)]T保證φ1(x),φ2(x),…,φN(x)互相獨立,并對Φ(x)各元素加權(quán)達到估計值函數(shù)的目的,該估計結(jié)構(gòu)被稱為評價網(wǎng)絡(luò),其表達式為
V=WTΦ(x)+ε
式中:W∈RN為網(wǎng)絡(luò)權(quán)重,Φ(x):Rn→RN為激勵函數(shù),ε為估計誤差。
在上述估計結(jié)構(gòu)下,值函數(shù)V對狀態(tài)量x的偏導(dǎo)為
(12)
在計算過程中,由于W為未知量,故采用其估計量來推動迭代運行
(13)
將網(wǎng)絡(luò)當前輸出與期望輸出之間的差異描述為誤差函數(shù)
(14)
迭代過程中采用式(13)估計值函數(shù)后,誤差函數(shù)為
(15)
采用梯度下降法調(diào)整網(wǎng)絡(luò)權(quán)重最小化Δ,從而使網(wǎng)絡(luò)輸出向期望輸出收斂,首先定義最小方差形式代價函數(shù)
(16)
(17)
為增強梯度下降法在求解多維方程組時的性能,借鑒Levenberg-Marquardt算法在式(17)中加入歸一化處理項得到
(18)
式中:a∈R+為學(xué)習(xí)速率,
(19)
在IRL算法中,用于估計控制策略的執(zhí)行網(wǎng)絡(luò)結(jié)構(gòu)為
(20)
Vamvoudakis等[13]和Zhang等[15]提出了一種“非標準形式的更新律”來更新執(zhí)行網(wǎng)絡(luò)。在文獻[13]中,這一更新律為
式中:aact是學(xué)習(xí)速率,為常值;ms=(T最后一項是為李雅普諾夫穩(wěn)定性證明增加的量。
圖1 算法流程Fig.1 Algorithm progress
基于以上猜想,提出SNIRL算法,下面給出整個算法流程。
(21)
求解。
(3)相應(yīng)的控制策略的計算式為
(22)
SNIRL算法將IRL算法中執(zhí)行網(wǎng)絡(luò)的迭代過程替換為解析式(22),單網(wǎng)絡(luò)的設(shè)計使得算法結(jié)構(gòu)更加簡潔。該算法使初始給出的容許控制在迭代過程中逐步收斂到最優(yōu)控制策略。
整個控制系統(tǒng)的結(jié)構(gòu)如圖1所示。圖中xcmd為指令信號;自適應(yīng)最優(yōu)控制策略記為uN,通過SNIRL求解最優(yōu)控制問題獲得;前饋網(wǎng)絡(luò)是一個神經(jīng)網(wǎng)絡(luò),作用是對飛行器配平點進行擬合,給出前饋控制量uF。總控制策略為
utotal=uN+uF
(23)
圖2 控制系統(tǒng)結(jié)構(gòu)圖Fig.2 Control system structure
下面進行算法的收斂性分析。
取李雅普諾夫候選函數(shù)
記ξ=(T+1)2,L的導(dǎo)數(shù)為
由柯西不等式:
由于實數(shù)具有稠密性,?κ,使
因此只要
為了增強參數(shù)調(diào)節(jié)的靈活性,在實際應(yīng)用時,學(xué)習(xí)速率取
a=diag(a1,a2,a3,…,aN)
(24)
式中:a1,a2,…,aN∈R+,為常值。
下面在代價函數(shù)為二次型,即C=xTQx+uTRu時,給出閉環(huán)系統(tǒng)穩(wěn)定性分析。
定理2. 對系統(tǒng)(2),當網(wǎng)絡(luò)更新律為式(18),控制律由式(22)計算時,存在時間T,使得x(t)一致最終有界。且
式中:η>0,λmin(Q)為矩陣Q的最小特征值。
證. 考慮指令信號xcmd,記z=x-xcmd,有:
(25)
由式(8)得
(26)
對V(z)沿式(25)取時間導(dǎo)數(shù),有
(27)
代入式(26),得
(28)
將式(22)代入式(28),得
考慮到R正定,有
則η有界且
本節(jié)以X33為對象,分縱向和橫側(cè)向?qū)ψ赃m應(yīng)最優(yōu)姿態(tài)控制器進行仿真校驗。在縱向姿態(tài)仿真中與IRL算法進行對比,驗證SNIRL可以提升收斂速度和計算效率,節(jié)省存儲空間;同時在兩種仿真中均以相同的Q,R矩陣設(shè)計傳統(tǒng)的LQR控制器作為對比,對自適應(yīng)最優(yōu)控制器的有效性進行校驗。
在高度h=45.09 km,速度v=3748 m/s,α=10°的工況下,給出機動指令αcmd=13°。
值函數(shù)由式(3)確定,式中:
權(quán)重記為
激勵函數(shù)φ定義為
故有
初始權(quán)重為
圖2給出了SNIRL算法及雙網(wǎng)絡(luò)的IRL算法的權(quán)重收斂過程圖。圖中Wcritic和Wactor分別為IRL算法的評價網(wǎng)絡(luò)權(quán)重和執(zhí)行網(wǎng)絡(luò)權(quán)重,W為SNIRL算法的評價網(wǎng)絡(luò)權(quán)重。兩種算法的權(quán)重均最終收斂到
圖3為兩種算法的權(quán)重收斂過程圖,下表為對兩種算法的計算時間、存儲占用、收斂時間的統(tǒng)計:
表1 SNIRL與IRL算法對比Table 1 Comparison of SNIRL and IRL
在迭代過程中,兩種算法的W1均幾乎沒有變化,這是由于W1在式(22)的計算中沒有貢獻,故算法不會對該值進行自適應(yīng)學(xué)習(xí),是合理的結(jié)果。
那么可以得到
總控制策略由式(24)計算。
控制結(jié)果在圖4中展示。LQR控制器的仿真結(jié)果也在圖中作為對比繪出。
圖3 SNIRL和IRL算法的收斂過程Fig.3 Convergence of IRL and SNIRL algorithm
圖4 狀態(tài)量和控制量曲線Fig.4 State and control versus time
從圖3可以看出,SNIRL算法能夠收斂到最優(yōu)解,且相比IRL算法,由于SNIRL算法在迭代過程中將執(zhí)行網(wǎng)絡(luò)逐漸更新的過程代替為解析式,消除了滯后的執(zhí)行網(wǎng)絡(luò)的收斂過程,故在每一次迭代中,權(quán)重都可以更快地收斂,因而總的收斂時間有所減少;從表1可以看出,SNIRL比IRL算法收斂更快,計算效率提高了近一倍。同時又由于SNIRL算法不需要存儲執(zhí)行網(wǎng)絡(luò)的權(quán)重數(shù)據(jù),故相比IRL算法可以節(jié)省近一半的存儲空間。
從圖4可以看出,自適應(yīng)最優(yōu)控制器完成了姿態(tài)跟蹤任務(wù)。且由于該控制器的設(shè)計是以非線性模型的最優(yōu)控制理論為基礎(chǔ)進行的,對比LQR控制器穩(wěn)態(tài)誤差更小,快速性也更好。
在高度h=45.09 km,速度v=3748 m/s,β=0.1293°,μ=-65.9°的工況下,給出機動指令βcmd=0°,μcmd=-68°。
值函數(shù)由式(3)確定,式中:
激勵函數(shù)φ定義為
φ(x)=[β2βμβpβrμ2μpμrp2prr2]T
權(quán)重記為
W=[W1W2W3W4W5W6W7W8W9W10]T
本節(jié)同樣對兩種算法進行了對比,仿真結(jié)果如圖5、圖6所示。表2進一步驗證了SNIRL算法能夠提高計算效率和節(jié)省存儲空間。
從圖5可以看出,在橫側(cè)向姿態(tài)控制中,自適應(yīng)最優(yōu)控制器相比LQR控制器表現(xiàn)出了更好的快速性和更小的穩(wěn)態(tài)誤差。圖6為控制量隨時間的變化曲線,可以看到LQR控制器所給出的控制量存在震蕩,而自適應(yīng)最優(yōu)控制器的控制策略則更加平滑,這是自適應(yīng)最優(yōu)控制器更好地滿足了性能指標要求的體現(xiàn)。
表2 SNIRL與IRL算法對比Table 2 Comparison of SNIRL and IRL
圖5 狀態(tài)量曲線Fig.5 State versus time
圖6 控制量曲線Fig.6 Control versus time
針對再入飛行器姿態(tài)控制問題,通過估計值函數(shù),采用基于策略迭代的單網(wǎng)絡(luò)積分型強化學(xué)習(xí)算法,設(shè)計了自適應(yīng)最優(yōu)控制器。在求解最優(yōu)控制問題時,改進了IRL算法,省去了執(zhí)行網(wǎng)絡(luò),并將其迭代計算過程用解析式代替,使算法結(jié)構(gòu)更加簡潔,計算效率更高。在性能分析中通過李雅普諾夫穩(wěn)定性理論證明了SNIRL算法的收斂性及閉環(huán)系統(tǒng)的穩(wěn)定性。仿真結(jié)果表明, SNIRL算法相比IRL算法節(jié)省了近一半的計算量和存儲量,且收斂速度更快;所得到的自適應(yīng)最優(yōu)控制器具有良好的性能。