付宇鵬,鄧向陽,朱子強,方 君,余應福,閆文君,張立民
(海軍航空大學,山東煙臺 264001)
飛行控制系統(tǒng)中,姿態(tài)控制器的設計原則是使飛機能夠隨時準確達到所需的正常過載姿態(tài)[1-2]。傳統(tǒng)的姿態(tài)控制通常采用經(jīng)典的PID(Proportion Integration Differentiation)控制,具有良好的工程適應性[3]。隨著現(xiàn)代控制理論和智能控制方法的不斷發(fā)展,模糊控制等一些新的控制方法被引入姿態(tài)控制中,并發(fā)揮了良好的控制效果。無論是經(jīng)典控制理論還是現(xiàn)代控制理論,都需要對被控模型進行數(shù)學建模并設計其參數(shù),但這無疑會產生一定的工作量。此外,對于六自由度(6-DoF)飛機模型[4]來說,由于各控制變量,如發(fā)動機推力,各操作面如升降舵、方向舵、副翼的偏轉角相互耦合,傳統(tǒng)單輸入、單輸出控制器需要首先完成各變量的解耦,理論復雜,計算量大。文獻[5-8]中提出了基于神經(jīng)網(wǎng)絡的多變量PID(MPIDNN)算法,能夠實現(xiàn)簡單問題或環(huán)境的解耦,但實際飛機空氣動力學模型復雜,MPIDNN 中神經(jīng)元數(shù)量較少,很難擬合實際模型,因此極少實際應用在飛行控制系統(tǒng)中。
近年來,深度強化學習(Deep Reinforcement Learning,DRL)在圍棋、游戲、自動駕駛等領域取得突破性發(fā)展,能夠達到甚至戰(zhàn)勝人類專家的水平,成為學術界研究的熱點。
強化學習框架,如圖1 所示。智能體(Agent)以“試錯”的方式進行學習,通過與環(huán)境交互獲得的獎賞(Reward)指導行為,目標是使智能體獲得最大的獎賞。其本質可有效實現(xiàn)擬合過程的自學習,因此具備飛機姿態(tài)控制器中模型建立和參數(shù)自動調節(jié)的能力。
圖1 強化學習框架Fig.1 Structure of Reinforcement Learning
目前,強化學習在控制領域取得了一定的進展。文獻[9]利用DDPG 算法訓練得到的控制器能夠實現(xiàn)對旋翼無人機位置控制;文獻[1]利用采樣池Actor-Critic算法,通過選擇基本指令實現(xiàn)了固定翼無人機軌跡跟蹤。但目前,強化學習設計姿態(tài)控制器難度較大,故普遍采用簡化的飛機空氣動力學模型[10]。然而,采用強化學習算法訓練模型時:一方面存在數(shù)據(jù)利用低、收斂速度慢的問題;另一方面,模型效果依賴獎勵函數(shù)設計。在姿態(tài)控制中,不當?shù)莫剟詈瘮?shù)會導致模型姿態(tài)轉移不符合人類習慣。
為此,本文提出1 種基于模仿強化學習(Imitation Reinforcement Learning,IRL)的姿態(tài)控制器。受控對象由飛機空氣動力學模型和增穩(wěn)系統(tǒng)組成,控制器根據(jù)不同飛機狀態(tài),輸出增穩(wěn)系統(tǒng)控制指令,從而實現(xiàn)飛行姿態(tài)快速變換。
傳統(tǒng)的PID 姿態(tài)控制器通常只能控制1 個通道,如俯仰角、滾轉角的響應。由于航向和滾轉通道具有較高耦合性,如果獨立控制滾轉角誤差和航向角誤差,會出現(xiàn)滾轉角首先穩(wěn)定,而航向僅僅由方向舵緩慢調節(jié)的情況。此外,在輸入誤差跳變或輸出響應時間較長等的條件下,傳統(tǒng)PID 控制器存在積分飽和現(xiàn)象,會帶來滯后和較大超調的情況,需要采用超限削弱等技術緩解,但這將帶來額外的調節(jié)參數(shù)。而且,對于高階非線性系統(tǒng)或慣性大的系統(tǒng),PID 控制器調節(jié)能力有限[11]。鑒于此,本文利用神經(jīng)網(wǎng)絡的強擬合能力實現(xiàn)飛機姿態(tài)控制器設計。
基于神經(jīng)網(wǎng)絡模型的姿態(tài)控制器原理圖,如圖2所示??刂破鞑捎蒙窠?jīng)網(wǎng)絡結構,根據(jù)受控對象當前狀態(tài)輸出控制指令,實現(xiàn)姿態(tài)變換。其中,受控對象為六自由度固定翼飛機模型,由空氣動力學模型和增穩(wěn)系統(tǒng)組成,增穩(wěn)系統(tǒng)輸出副翼、升降舵、方向舵偏轉指令,當各操縱面變化時,氣動模型根據(jù)對應的Cl、Cm、Cn等氣動系數(shù),計算模型各部分合力和合力矩[12-13]。增穩(wěn)系統(tǒng)中利用包括角速度反饋、過載反饋和控制指令前饋[14-16]等方式提高系統(tǒng)穩(wěn)定性。
圖2 基于神經(jīng)網(wǎng)絡姿態(tài)控制器Fig.2 Neural Network based attitude controller
控制網(wǎng)絡πθ(st)根據(jù)當前狀態(tài)st輸出動作at,θ表示網(wǎng)絡參數(shù)。初始化時,通過行為克隆技術,將專家經(jīng)驗數(shù)據(jù)作為標簽,對πθ進行監(jiān)督學習。利用損失函數(shù)?bc( )θ反向傳播和梯度下降更新網(wǎng)絡參數(shù)θ,得到預訓練模型。
在此預訓練模型基礎上進行強化學習訓練。飛機姿態(tài)的狀態(tài)轉移過程可以認為是馬爾可夫決策過程(MDP),如式(2)所示,即環(huán)境當前狀態(tài)轉移到下一狀態(tài)的概率僅與當前狀態(tài)和動作有關。
在狀態(tài)轉移時,智能體將獲得環(huán)境反饋的獎勵rt,在本設計中,將其表示為式(3),為三通道獎勵之和?;睾掀谕貓蟊硎緸槭剑?),網(wǎng)絡在訓練過程中目標即為得到最大的期望回報R。
根據(jù)飛機各通道響應特點,滾轉通道響應最快,航向變換速度較慢,因此,本文將其分別設置為0.2、0.1和0.7,即期望控制器實現(xiàn)帶坡度轉彎,實現(xiàn)姿態(tài)快速轉換。
此外,為避免智能體陷入不停旋轉、盡快死亡等獲得較大獎勵的局部最優(yōu)解,獎勵函數(shù)額外設置懲罰項,包括角速度限制和空速、高度限制。
本文以近端策略優(yōu)化算法(PPO)[17-18]作為強化學習網(wǎng)絡參數(shù)訓練算法。PPO算法是1種Actor-Critic方法,Actor 網(wǎng)絡即上述控制網(wǎng)絡πθ(st),輸出動作at,Critic 網(wǎng)絡輸出價值函數(shù)Vφ(st)。期望得到最大回報,因此,目標函數(shù)為:
用來衡量在當前狀態(tài)下某個動作與其他動作相比的優(yōu)劣,如果該動作優(yōu)于其他動作,則反饋正獎勵,否則反饋負獎勵,即懲罰。A?t表示時刻t的優(yōu)勢函數(shù)的估計,A?t一般采用目前應用較多的廣義優(yōu)勢估計(generalized advantage estimator,GAE)方法。定義為式(8)(9)[20]:
表1 IRL算法流程Tab.1 Algorithm IRL
本文強化學習訓練環(huán)境采用OpenAI gym 平臺,固定翼飛機空氣動力學模型是基于JSBSim開源平臺F-16 模型,其中,氣動系數(shù)使用了NASA 公布的F-16風洞試驗數(shù)據(jù)[13]。
網(wǎng)絡結構參數(shù)和算法超參數(shù)設計,如表2 所示。為了提高算法訓練速度,訓練基于并行分布式計算框架ray平臺,設置rollout worker數(shù)量為40,當樣本數(shù)達到回合buffer size 時,各worker 計算策略梯度,由learner更新10次網(wǎng)絡參數(shù)。
表2 IRL算法參數(shù)設置Tab.2 Parameter setting of IRL Algorithm
訓練環(huán)境設置時,將F-16 飛機模型初始姿態(tài)角、角速度、空速和高度等狀態(tài)隨機設置,服從高斯分布,目標狀態(tài)為恢復平飛,每回合時長限制60 s。仿真中網(wǎng)絡訓練平均獎勵,如圖3 所示。僅利用PPO 算法訓練隨機網(wǎng)絡模型時,在初始400回合中回報較低,隨訓練回合數(shù)逐漸上升;IRL 算法在通過行為克隆對模型預訓練后,回報初始值較高且快速實現(xiàn)收斂。由于平均回報與初始狀態(tài)密切相關,比如大角度誤差條件下,系統(tǒng)響應時間較長,平均獎勵較低,反之較高,因此,當網(wǎng)絡收斂后,平均獎勵會在一定范圍內波動。由于訓練中隨機采樣經(jīng)驗數(shù)據(jù)集計算策略梯度,因此,在有效利用強化學習算法探索環(huán)境的同時,輸出策略接近專家數(shù)據(jù)。
圖3 平均獎勵函數(shù)vs回合Fig.3 Average reward vs episode
為了驗證系統(tǒng)工作性能,本節(jié)進行了基于模仿強化學習算法的控制器與傳統(tǒng)PID控制器的姿態(tài)角響應仿真對比。
圖4 給出了基于模仿強化學習控制器(IRL Control)和PID 控制器(PID control)的俯仰角階躍響應曲線。為了防止出現(xiàn)積分飽和現(xiàn)象,PID 控制器設計時使用超限削弱。飛行器初始保持平飛狀態(tài),俯仰角階躍函數(shù)幅度為-30°~50°的響應中,在不改變控制器參數(shù)的情況下,兩者均能實現(xiàn)穩(wěn)定跟蹤,同時無穩(wěn)態(tài)誤差。
圖4 俯仰角階躍響應曲線Fig.4 Step response of pitch angle
圖5 a)、b)分別為IRL 和PID 控制器在航向180°保持條件下的航向角仿真曲線和滾轉角階躍響應曲線。當階躍函數(shù)幅度在30°以下、滾轉角保持的需求下,PID控制器能夠保持航向,但滾轉角響應速度明顯變慢,IRL控制器能夠同時保持航向角和滾轉角,說明IRL控制器在訓練中能夠根據(jù)當前狀態(tài)對滾轉和偏航通路參數(shù)解耦。當目標滾轉角進一步變大,IRL 和PID 控制器均失去航向保持能力,IRL 控制器滾轉角保持更好。
圖5 航向角仿真曲線和滾轉角階躍響應曲線Fig.5 Simulation curve of yaw angle and step response curve of roll angle
圖6為IRL控制器和PID控制器在目標航向階躍變化下的姿態(tài)角響應曲線,圖6 a)、b)分別表示當航向角由0°到90°和由0°到180°的響應情況。IRL 控制器在訓練中以快速對準航向為目標,仿真結果表明IRL控制器能夠實現(xiàn)與人類習慣相符的帶坡度轉彎,而后恢復目標姿態(tài),實現(xiàn)快速偏轉航向。單通路PID 控制器完全依靠方向舵偏轉航向,因此,速度明顯更慢。
圖6 IRL控制器和PID控制器的姿態(tài)角響應曲線Fig.6 Response curves of attitude angle for IRL controller and PID controller
通過比較分析可以證明,基于模仿強化學習算法訓練的IRL 控制器能夠高效地優(yōu)化在不同角速度、角度、空速等條件下的姿態(tài)響應,根據(jù)當前狀態(tài)輸出增穩(wěn)系統(tǒng)控制指令,實現(xiàn)快速姿態(tài)變換的目的,同時,能實現(xiàn)基于專家經(jīng)驗的帶坡度轉彎等動作。
本文提出了一種基于模仿強化學習算法的固定翼飛機姿態(tài)控制器,可實現(xiàn)對飛機姿態(tài)角的控制。相比傳統(tǒng)PID 控制器,本文提出的模仿強化學習控制器核心優(yōu)勢在于能夠通過智能體在學習過程中遍歷狀態(tài)空間,找到當前狀態(tài)下的數(shù)值最優(yōu)解,同時結合經(jīng)驗數(shù)據(jù)提高模型逼真度。
在仿真中發(fā)現(xiàn)一些問題,有待進一步研究:模仿強化學習控制器對于正誤差角度和負誤差角度的響應并不完全對稱,控制器參數(shù)不方便調節(jié);對專家經(jīng)驗數(shù)據(jù)準確性具有一定的要求。