亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于深度強化學(xué)習的軟件定義衛(wèi)星姿態(tài)控制算法

        2019-01-14 06:46:38許軻吳鳳鴿趙軍鎖
        關(guān)鍵詞:姿態(tài)控制控制算法姿態(tài)

        許軻, 吳鳳鴿, 趙軍鎖

        (中國科學(xué)院軟件研究所, 北京 100190)

        近年來,隨著衛(wèi)星軟硬件技術(shù)的迅速發(fā)展,衛(wèi)星逐漸向小型化、低成本化、快速設(shè)計及部署的方向發(fā)展,每年有過百顆小衛(wèi)星成功發(fā)射,這些小衛(wèi)星有著不同的載荷和任務(wù)目標、物理參數(shù)和軌道等,因此對其姿態(tài)控制系統(tǒng)的要求也不盡相同。而隨著軟件定義衛(wèi)星概念的提出,利用可重組的動態(tài)載荷和智能性更強的姿態(tài)控制算法,有助于研發(fā)出更加通用的姿態(tài)控制系統(tǒng)。此外,隨著衛(wèi)星數(shù)量的增加,地面測控系統(tǒng)也越來越難以滿足需求,太空環(huán)境的不穩(wěn)定性[1]和衛(wèi)星本身可能出現(xiàn)的故障[2-3]等因素也對衛(wèi)星姿態(tài)控制系統(tǒng)的自主性和適應(yīng)性提出了更高的要求。因此,有必要研發(fā)新型的衛(wèi)星姿態(tài)智能控制系統(tǒng)。

        基于深度學(xué)習和強化學(xué)習算法已經(jīng)成功地解決了很多具有挑戰(zhàn)性的問題,如圍棋程序和機器人學(xué)習[4]。AlphaZero[5]作為基于深度強化學(xué)習的圍棋程序新版本,在棋類游戲的離散狀態(tài)空間下已經(jīng)體現(xiàn)出了其在沒有棋譜等先驗知識的情況下學(xué)會多種棋類游戲并且超越人類的能力。引導(dǎo)策略搜索(Guided Policy Search,GPS)[4]作為一種基于模型(model-based)的算法,可以在機器人控制這種高維連續(xù)狀態(tài)空間下重復(fù)實驗中不斷優(yōu)化控制效果,完成機器人拾取物體等動作。而深度確定性策略梯度(Deep Deterministic Policy Gradient,DDPG)算法[6]作為一種非基于模型(model-free)的算法,也在OpenAI Gym[7]仿真平臺上實現(xiàn)了多種控制任務(wù)的自主學(xué)習,完成傳統(tǒng)控制算法難以完成的復(fù)雜控制目標,如自主學(xué)習雙足行走等。這些實驗結(jié)果表明深度強化學(xué)習(Deep Reinforcement Learning,DRL)算法可以達到軟件定義衛(wèi)星姿態(tài)控制系統(tǒng)對自主性、智能性、適應(yīng)性的要求。

        然而機器學(xué)習算法普遍對計算平臺的計算能力和存儲能力有較高的要求,衛(wèi)星姿態(tài)控制系統(tǒng)往往使用的是PID控制[8-9]、滑??刂芠10]、模糊控制[11-12]等傳統(tǒng)控制算法。PID控制算法易于理解和實現(xiàn),需要的計算資源少,仍然是目前衛(wèi)星姿態(tài)控制使用的主流基礎(chǔ)控制算法,然而該算法需要針對不同的硬件系統(tǒng)和軟件進行調(diào)節(jié),無法快速適應(yīng)空間環(huán)境的變化和空間任務(wù)的變化?;?刂频闹饕康氖翘幚砜刂葡到y(tǒng)的非線性,和PID控制一樣,有自適應(yīng)能力的問題。智能控制算法如模糊控制,提升了系統(tǒng)的適應(yīng)能力,然而模糊控制系統(tǒng)需要專家知識進行系統(tǒng)設(shè)計,而不是根據(jù)實時生成的數(shù)據(jù)進行調(diào)節(jié)。軟件定義衛(wèi)星搭載的超算平臺大大提升了衛(wèi)星的計算能力,因此使得基于機器學(xué)習的控制算法成為可能,從而進一步提升控制算法的自適應(yīng)能力和自主性。

        本文使用了基于模型的深度強化學(xué)習算法來建立姿態(tài)控制系統(tǒng)。該算法主要由3部分構(gòu)成:動力學(xué)模型網(wǎng)絡(luò)、控制策略網(wǎng)絡(luò)以及基于啟發(fā)式搜索的優(yōu)化方法。其中,動力學(xué)模型網(wǎng)絡(luò)使用深度學(xué)習網(wǎng)絡(luò)、可以根據(jù)地面仿真和在線生成數(shù)據(jù)的學(xué)習生成動力學(xué)模型,使用基于模型的算法比非基于模型的算法收斂速度更快,可以更快的速度找到優(yōu)化策略??刂撇呗跃W(wǎng)絡(luò)同樣使用深度學(xué)習網(wǎng)絡(luò),可以根據(jù)地面仿真和啟發(fā)式搜索優(yōu)化的效果來學(xué)習控制策略,同時為啟發(fā)式搜索的優(yōu)化提供具有一定效果的初始策略,加速算法的收斂。啟發(fā)式搜索根據(jù)動力學(xué)模型和強化學(xué)習原理進行策略迭代,在每一步實際執(zhí)行控制策略時尋找更優(yōu)的策略。通過這種深度強化學(xué)習算法,姿態(tài)控制系統(tǒng)可以在衛(wèi)星物理參數(shù)未知、執(zhí)行機構(gòu)和傳感器不同、衛(wèi)星軌道不同的情況下根據(jù)在線生成的數(shù)據(jù)不斷優(yōu)化姿態(tài)控制的效果。

        1 基本理論

        背景分為3個部分,包括姿態(tài)仿真系統(tǒng)、傳統(tǒng)控制算法和強化學(xué)習算法。首先介紹姿態(tài)仿真系統(tǒng),由于衛(wèi)星發(fā)射成本較高,在進行姿態(tài)控制算法實驗時,需要在仿真環(huán)境下進行仿真實驗,仿真系統(tǒng)主要考慮到衛(wèi)星姿態(tài)動力學(xué)、運動學(xué)模型和空間干擾力矩。衛(wèi)星的姿態(tài)動力學(xué)介紹衛(wèi)星角速度隨執(zhí)行機構(gòu)控制力矩的變化規(guī)律,運動學(xué)模型介紹衛(wèi)星姿態(tài)四元數(shù)隨角速度的變化規(guī)律。衛(wèi)星姿態(tài)動力學(xué)和運動學(xué)模型是進行衛(wèi)星姿態(tài)控制的基礎(chǔ)模型。然后介紹傳統(tǒng)控制算法,PID控制算法仍然是衛(wèi)星姿態(tài)控制的主流算法,因此主要介紹基于PID的衛(wèi)星姿態(tài)控制算法相關(guān)研究進展。最后介紹強化學(xué)習算法的基礎(chǔ),主要介紹應(yīng)用較為廣泛的Q學(xué)習算法,以及在Q學(xué)習基礎(chǔ)上結(jié)合深度學(xué)習發(fā)展起來的深度強化學(xué)習。

        1.1 衛(wèi)星姿態(tài)動力學(xué)和運動學(xué)模型

        如圖1所示,衛(wèi)星姿態(tài)動力學(xué)模型的輸入為衛(wèi)星所受的空間環(huán)境力矩,輸出為衛(wèi)星姿態(tài)角速度,動力學(xué)模型主要依賴于衛(wèi)星的動力學(xué)方程。

        如果假設(shè)衛(wèi)星為剛體,那么衛(wèi)星姿態(tài)的動力學(xué)模型表達式為

        (1)

        式中:M為衛(wèi)星的控制力矩,為3維空間矢量;H為衛(wèi)星的角動量;ω為衛(wèi)星的角速度;t為時間。式(1)表示了衛(wèi)星的角速度和控制力矩根據(jù)轉(zhuǎn)動慣量變化的關(guān)系。

        以四元數(shù)表示衛(wèi)星的姿態(tài),那么衛(wèi)星姿態(tài)運動學(xué)表達式為

        (2)

        (3)

        式中:ωx、ωy和ωz分別為衛(wèi)星姿態(tài)角速度在三維坐標軸的分量。

        此外,衛(wèi)星的姿態(tài)還會受到空間干擾力矩的影響,主要包括重力梯度力矩、空氣阻力力矩、太陽光壓力矩和潮汐力矩等。

        根據(jù)文獻[13]的攝動力數(shù)據(jù),結(jié)合經(jīng)驗公式推算出干擾力矩如表1所示,可見在不同的軌道高度下,不同類型的干擾力矩對姿態(tài)的影響也有所不同。在低軌狀態(tài)下,地球重力梯度力矩和空氣阻力力矩是主要的干擾力矩;在中軌狀態(tài)下,地球重力梯度力矩依舊是主要的干擾力矩,而空氣阻力力矩已經(jīng)大幅下降,太陽光壓力矩、月球和太陽重力梯度力矩影響增大;而在地球同步軌道狀態(tài)下,地球重力梯度力矩也大幅下降,空氣阻力力矩則可以忽略不計。

        圖1 衛(wèi)星姿態(tài)控制系統(tǒng)過程圖Fig.1 Procedure chart of satellite attitude control system

        表1 3種經(jīng)典軌道狀態(tài)下的干擾力矩Table 1 Disturbance torque under three classic orbit statesN·m

        主要考慮了3種干擾力矩的影響:地球重力梯度力矩、空氣阻力力矩和太陽光壓力矩。每種干擾力矩的影響主要依據(jù)文獻中使用的經(jīng)驗公式進行仿真計算。

        地球重力梯度力矩計算式為[14]

        (4)

        空氣阻力力矩計算式為[14]

        (5)

        式中:CD為空氣阻力參數(shù);ρ為大氣密度參數(shù),由標準大氣模型計算得到;Vr為衛(wèi)星相對于大氣的速度;A為衛(wèi)星的迎風面積;Cp為壓力中心相對于衛(wèi)星中心距離的向量;v為風速的單位方向向量。這些參數(shù)可以根據(jù)經(jīng)驗進行初始化。

        太陽光壓力矩計算式為[15]

        Ts=-PAcosα(Cnen+Ctet)

        (6)

        式中:P為距離1 AU的太陽輻射壓力常數(shù),1 AU≈1.496×1 011m;en和et分別為衛(wèi)星的法向和切向向量;α為太陽角度;Cn和Ct表達式分別為

        Cn=(1+crcs)cosα+Bfcr(1-cs)+

        Ct=(1-crcs)sinα

        其中:cr為表面反射率;cs為鏡面反射系數(shù);ef和eb分別為前向和后向輻射系數(shù);Bf和Bb分別為前向和后向的非朗伯系數(shù)。

        將3種干擾力矩和控制力矩Tc相疊加,可以給出衛(wèi)星所受的合力矩的影響,即本節(jié)所述的衛(wèi)星姿態(tài)動力學(xué)方程中的M值:

        M=Tc+Tg+Ta+Ts

        (7)

        1.2 基于PID的衛(wèi)星姿態(tài)控制算法

        雖然PID控制有前面所述的缺點,但因為其實現(xiàn)簡單,計算資源要求較低,仍然被大量衛(wèi)星姿態(tài)控制系統(tǒng)所使用。PID控制算法的定義如下[16]:

        (8)

        式中:Kp、Ki和Kd是非負參數(shù),分別為比例、積分和微分系數(shù);e(t)為當前狀態(tài)和目標狀態(tài)的誤差值;τ為積分中間變量。PID控制算法的原理如圖2所示,反饋環(huán)節(jié)通過對3種誤差的調(diào)節(jié)實驗控制過程,y(t)表示當前狀態(tài),r(t)表示目標狀態(tài)。

        通常使用比例(P)和微分(D)環(huán)節(jié)設(shè)計衛(wèi)星姿態(tài)控制算法,用式(9)表示:

        a=Kpqe+Kdωe

        (9)

        式中:qe為衛(wèi)星姿態(tài)四元數(shù)的誤差;ωe為衛(wèi)星角速度的誤差;a為執(zhí)行機構(gòu)的控制力矩輸出。忽略積分環(huán)節(jié)可以增加控制算法對誤差的反應(yīng)速度,但可能會導(dǎo)致控制的穩(wěn)定度下降。

        PID控制算法的性能會受到傳感器誤差和空間環(huán)境的干擾力矩的影響,導(dǎo)致衛(wèi)星的姿態(tài)確定系統(tǒng)穩(wěn)定性降低。因此一種平滑角速度觀測器[9]的方法被提出以提升衛(wèi)星姿態(tài)的估計精度:

        a=Kpqe+KdC(q)ωe

        (10)

        式中:C(q)為根據(jù)衛(wèi)星姿態(tài)對角速度的補償矩陣。這類改進方法提升了控制算法輸入的精度和穩(wěn)定度,從而提升了算法的性能。

        PID控制算法的性能同樣會受到執(zhí)行機構(gòu)誤差的影響,導(dǎo)致衛(wèi)星的姿態(tài)控制穩(wěn)定性下降。因此一種非線性模型[2]被提出,用來處理執(zhí)行機構(gòu)飽和,死區(qū)非線性和動量輪速度限制的問題。一種基于最優(yōu)控制的方法[8]被提出,使用磁力矩器幫助動量輪進行動量卸載,防止其到達速度上限。這一類改進可以提升控制系統(tǒng)輸出的性能。

        圖2 PID控制算法原理圖Fig.2 Schematic diagram of PID control algorithm

        為了提升控制系統(tǒng)的整體性能,一種基于量化控制的方法[17]被提出用來改進PID控制的反饋機制。此外,一種使用線性二次型控制算法的方法被提出,能夠比傳統(tǒng)PID控制降低8%的能量消耗[18]。在能量有限的太空環(huán)境中,節(jié)約能源可以讓衛(wèi)星整體的運行更加穩(wěn)定。

        這些在傳統(tǒng)PID控制基礎(chǔ)上改進的方法需要對不同問題分別建模分析并且加以改進,然而基于機器學(xué)習的深度強化學(xué)習姿態(tài)控制算法可以根據(jù)實時生成的數(shù)據(jù)利用神經(jīng)網(wǎng)絡(luò)的泛化能力對這些問題進行整體優(yōu)化。例如在輸入不穩(wěn)定的情況下,狀態(tài)觀測器的補償矩陣可以通過深度強化學(xué)習中的模型網(wǎng)絡(luò)進行學(xué)習優(yōu)化,同時執(zhí)行機構(gòu)的非線性誤差也可以通過深度強化學(xué)習中的策略網(wǎng)絡(luò)進行自適應(yīng)的學(xué)習改進;此外,能量消耗也可以通過強化學(xué)習的價值函數(shù)給出,讓強化學(xué)習算法在優(yōu)化控制效果的同時盡量降低系統(tǒng)的能量消耗。

        1.3 強化學(xué)習算法

        PID控制仍可作為智能控制算法的基礎(chǔ)策略,為強化學(xué)習控制提供初始化功能。強化學(xué)習包含以下幾個部分:智能體、智能體所處的環(huán)境和所執(zhí)行的動作。在每個離散時間步長t內(nèi)智能體會觀測其所處的環(huán)境得到t時刻的狀態(tài)st,根據(jù)該狀態(tài)執(zhí)行動作at,并且獲得此時的獎勵值rt以及達到下一時刻的狀態(tài)st+1。在一個具有隨機性的環(huán)境中,包含一個初始狀態(tài)分布p(s0),狀態(tài)轉(zhuǎn)移模型p(st+1st,at)和獎勵函數(shù)r。

        Q學(xué)習[19]作為強化學(xué)習里的一類基本算法,使用:

        (11)

        隨著深度學(xué)習技術(shù)的發(fā)展,神經(jīng)網(wǎng)絡(luò)對高維度且高度非線性的函數(shù)擬合能力越來越強,神經(jīng)網(wǎng)絡(luò)對復(fù)雜Q值的表示能力也越來越強,因此在DDPG算法中,使用了神經(jīng)網(wǎng)絡(luò)擬合Q值,加強了強化學(xué)習算法對高維空間內(nèi)復(fù)雜任務(wù)的學(xué)習能力。假設(shè)擬合函數(shù)為θQ,那么損失函數(shù)的定義如下:

        (12)

        式中:Q(st,atθQ)為t時刻網(wǎng)絡(luò)對Q值的估計;最后兩項為t時刻執(zhí)行動作之后的效果。DDPG算法通過最小化損失函數(shù)來擬合Q值。該算法同時使用神經(jīng)網(wǎng)絡(luò)來擬合策略函數(shù)μ(sθμ),該函數(shù)會根據(jù)當前狀態(tài)和網(wǎng)絡(luò)中的參數(shù)確定執(zhí)行的策略,因此網(wǎng)絡(luò)同時需要對策略網(wǎng)絡(luò)進行學(xué)習,更新算法定義如下:

        (13)

        μ′(s)=μ(sθμ)+N

        (14)

        式中:N為隨著時間衰減的噪聲值。不同于傳統(tǒng)有監(jiān)督學(xué)習的是,直接對Q值網(wǎng)絡(luò)和策略網(wǎng)絡(luò)的更新收斂性能不佳,需要設(shè)計額外的目標網(wǎng)絡(luò)來穩(wěn)定網(wǎng)絡(luò)參數(shù),具體介紹在2.1節(jié)中。

        機器學(xué)習算法通常使用梯度下降算法進行算法收斂的計算,但在模型梯度不可靠的時候,也會采取其他方案進行優(yōu)化計算。對應(yīng)于梯度下降算法,啟發(fā)式搜索類的算法是另一種對神經(jīng)網(wǎng)絡(luò)等機器學(xué)習算法進行優(yōu)化的方案。梯度下降算法的優(yōu)點是收斂速度快,缺點是容易陷入局部最優(yōu)。而啟發(fā)式搜索類的算法收斂速度較慢,但是一種全局性的優(yōu)化算法。因此,在很多實際應(yīng)用中,也會采用基于啟發(fā)式搜索的優(yōu)化方法進行機器學(xué)習算法收斂過程的計算。

        常用的啟發(fā)式搜索算法有很多種,如粒子群優(yōu)化、人工蜂群算法、蟻群算法、螢火蟲算法、模擬退火算法和進化策略等。每種算法的優(yōu)缺點和應(yīng)用場景都有所不同。本文對啟發(fā)式搜索算法的具體選取在2.3節(jié)中介紹。

        2 深度強化學(xué)習姿態(tài)控制算法

        基于模型的深度強化學(xué)習算法由以下3個部分組成:模型網(wǎng)絡(luò)、策略網(wǎng)絡(luò)和啟發(fā)式搜索。如圖3所示,模型網(wǎng)絡(luò)為啟發(fā)式搜索提供動力學(xué)模型,并且從實際執(zhí)行的數(shù)據(jù)中學(xué)習,提高模型的精度。策略網(wǎng)絡(luò)為模型預(yù)測控制提供根據(jù)經(jīng)驗優(yōu)化的初始策略,并且從實際執(zhí)行的數(shù)據(jù)中學(xué)習,優(yōu)化初始策略。模型策略根據(jù)模型網(wǎng)絡(luò)提供的動力學(xué)模型和策略網(wǎng)絡(luò)提供的初始策略進行優(yōu)化,通過強化學(xué)習尋優(yōu),進一步優(yōu)化策略,并且實際執(zhí)行控制輸出。此外,本文算法在初始化時可用PID控制等對策略網(wǎng)絡(luò)和模型網(wǎng)絡(luò)進行初始化。

        圖3 基于模型的深度強化學(xué)習算法原理圖Fig.3 Schematic diagram of model based deep reinforcement learning algorithm

        本文算法的運行過程如下:

        步驟1隨機初始化模型網(wǎng)絡(luò)和策略網(wǎng)絡(luò),或者通過遷移學(xué)習等進行預(yù)初始化。

        步驟2由策略網(wǎng)絡(luò)根據(jù)當前狀態(tài)計算出當前策略,然后使用模型網(wǎng)絡(luò)預(yù)測下一狀態(tài)并給出Q值,交給啟發(fā)式搜索進行下一步優(yōu)化。

        步驟3使用啟發(fā)式搜索在當前策略的鄰域進行搜索,以找到具有更高Q值的策略。

        步驟4執(zhí)行啟發(fā)式搜索給出的優(yōu)化后的策略,并且獲取真實的狀態(tài)輸出和Q值,計算出模型預(yù)測誤差。

        步驟5如果得到的Q值比初始化策略更好,則將此次結(jié)果作為策略網(wǎng)絡(luò)的訓(xùn)練集。

        步驟6如果到達的狀態(tài)空間超出了安全閾值,則使用如PID控制等引導(dǎo)策略使其回歸到安全區(qū)域。

        步驟7每一次執(zhí)行的結(jié)果都可以作為模型網(wǎng)絡(luò)的訓(xùn)練集。

        步驟8如果狀態(tài)達到且穩(wěn)定在控制目標,則訓(xùn)練結(jié)束,否則返回步驟2。

        2.1 模型網(wǎng)絡(luò)

        機器學(xué)習算法已經(jīng)被應(yīng)用于衛(wèi)星姿態(tài)動力學(xué)構(gòu)建。本文使用深度學(xué)習神經(jīng)網(wǎng)絡(luò)構(gòu)建動力學(xué)模型。模型網(wǎng)絡(luò)st+1=fθs(st,at)使用前一時間點的動作-狀態(tài)對作為輸入,下一時間點的狀態(tài)作為輸出,θs為網(wǎng)絡(luò)中的參數(shù)。系統(tǒng)狀態(tài)st包括四元數(shù)q和三維角速度ω,策略輸出at為三維力矩。參數(shù)可以隨機初始化,也可以通過地面仿真或事先獲取的數(shù)據(jù)進行初始化,使用遷移學(xué)習等方法進行應(yīng)用。使用經(jīng)過預(yù)訓(xùn)練的網(wǎng)絡(luò)可以提高算法的在線性能。

        加入模型網(wǎng)絡(luò)的算法比非基于模型的算法可以更快地收斂,因為模型網(wǎng)絡(luò)可以根據(jù)每次得到的數(shù)據(jù)進行優(yōu)化,而非基于模型的算法在找到合理的解之前會進行漫長的探索,從而收斂得更慢。而且模型網(wǎng)絡(luò)在使用其他控制算法時也可以進行優(yōu)化,讓算法的適應(yīng)性更強。

        2.2 策略網(wǎng)絡(luò)

        策略網(wǎng)絡(luò)同樣使用深度網(wǎng)絡(luò)構(gòu)建網(wǎng)絡(luò)模型:at=gθa(st),當前狀態(tài)st為模型的輸入,θa為網(wǎng)絡(luò)參數(shù),生成的策略at為模型的輸出。類似地,模型參數(shù)可以隨機初始化,也可以通過PID控制等引導(dǎo)策略進行初始化,從而加快算法的收斂速度,并且降低算法進入發(fā)散不可控區(qū)域的可能性。

        與模型網(wǎng)絡(luò)不同的是,數(shù)據(jù)中的策略并不是一個“正確的策略”,實際執(zhí)行的策略也是在不斷優(yōu)化中生成的,無法保證每次學(xué)習都讓策略得到優(yōu)化。因此,需要使用模型預(yù)測控制作為優(yōu)化方法使得生成的數(shù)據(jù)可以保證不斷優(yōu)化,從而讓策略網(wǎng)絡(luò)的學(xué)習進一步優(yōu)化。策略網(wǎng)絡(luò)的輸出也并不直接給出控制輸出,而是作為模型預(yù)測控制的輸入給出合理的初始策略。

        和GPS算法不同的是,基于深度學(xué)習的策略網(wǎng)絡(luò)可以給出一個全局的初始化策略,和任務(wù)路徑無關(guān),并且可以根據(jù)不同的任務(wù)學(xué)習模仿新的引導(dǎo)策略,提升在線適應(yīng)的能力。

        2.3 啟發(fā)式搜索

        啟發(fā)式搜索包括多種性能優(yōu)異的算法,如:模擬退火算法[20]、粒子群算法[21]和進化策略[22]算法等。它們使用策略網(wǎng)絡(luò)的輸出作為輸入,輸出獎勵值最高的動作作為最優(yōu)策略。每個時間點內(nèi)的獎勵函數(shù)為

        t時刻的獎勵函數(shù)為狀態(tài)st下執(zhí)行動作at導(dǎo)致的狀態(tài)st+1和目標sT之間的二次差值。負號代表二者距離越近獎勵值越高。

        模擬退火算法和AlphaGo中使用的蒙特卡羅搜索樹同屬于蒙特卡羅-馬爾可夫鏈(Monte Carlo-Markov Chain,MCMC)方法,較適合于應(yīng)用在多維連續(xù)空間的控制算法中。然而該算法的隨機游走過程不利于并行化實現(xiàn),因此本文使用易于并行化且同樣在強化學(xué)習中被證明有效的自然進化策略算法來進行優(yōu)化,以提高算法的收斂速度。

        自然進化策略計算式為

        式中:左邊為參數(shù)的更新梯度;右邊為計算方法;θa為策略網(wǎng)絡(luò)的參數(shù),也可以直接對動作輸出進行直接優(yōu)化;N(0,I)為標準差為0,方差為單位矩陣的正態(tài)分布矩陣,目的是生成一個與θ維度相同的隨機變量;σ為該隨機變量的標準差;為一個小量的正數(shù);F函數(shù)是強化學(xué)習的價值函數(shù),該更新公式可以使得θ參數(shù)朝F值最大的方向移動。

        通過并行化執(zhí)行該過程,同時生成n個隨機正態(tài)分布,并且統(tǒng)一對θ參數(shù)執(zhí)行更新過程:

        該并行化更新算法可以大幅降低運行時間。

        算法1基于模型的深度強化學(xué)習算法

        初始化:θa和θs。

        while未到控制目標 do

        生成初始策略ain←gθa(st)和最優(yōu)策略aopt

        while啟發(fā)式搜索 do

        在范圍內(nèi)搜索:aout←ain+rand()

        狀態(tài)預(yù)測:st+1←fθs(st,aout)

        進化策略更新:aopt

        end while

        執(zhí)行aopt并得到數(shù)據(jù)

        根據(jù)數(shù)據(jù)優(yōu)化θa和θs

        end while

        3 實驗結(jié)果

        本文使用基于STK(Satellite Tool Kit)開發(fā)的衛(wèi)星姿態(tài)控制仿真系統(tǒng)進行仿真實驗,仿真系統(tǒng)結(jié)構(gòu)如圖4所示,衛(wèi)星軌道和空間環(huán)境參數(shù)由STK生成,并且傳遞給仿真系統(tǒng)??刂破鲿鶕?jù)當前姿態(tài),控制指令和控制目標確定當前策略輸出給執(zhí)行器執(zhí)行,執(zhí)行器會輸出控制力拒,衛(wèi)星的姿態(tài)動力學(xué)會根據(jù)控制力矩和空間干擾力矩得到新的姿態(tài)信息,傳感器會將帶有測量誤差的姿態(tài)信息交給姿態(tài)確定系統(tǒng),并且返回給控制器,進行下一次控制循環(huán)。

        圖4 衛(wèi)星姿態(tài)控制仿真系統(tǒng)結(jié)構(gòu)Fig.4 Satellite attitude control simulation system structure

        圖5 控制算法比較Fig.5 Comparison of control algorithms

        姿態(tài)仿真實驗對比了全連接網(wǎng)絡(luò)和基于目標網(wǎng)絡(luò)的模型網(wǎng)絡(luò)精度,同時對比了并行化前后算法的執(zhí)行時間。使用tanh作為激活函數(shù),3層全連接網(wǎng)絡(luò)神經(jīng)元個數(shù)分別為64、128和64,5層全連接網(wǎng)絡(luò)神經(jīng)元個數(shù)分別為32、128、512、128和32,目標網(wǎng)絡(luò)使用的神經(jīng)網(wǎng)絡(luò)設(shè)置與3層全連接網(wǎng)絡(luò)相同,學(xué)習速率設(shè)置為0.000 1。此外,進化策略使用1 024個線程同時進行策略計算,學(xué)習速率設(shè)置為0.01,為了提高搜索精度,算法的搜索范圍會隨著迭代過程而減小。

        實驗結(jié)果如圖6所示,分別對比了3層全連接網(wǎng)絡(luò),5層全連接網(wǎng)絡(luò)和目標網(wǎng)絡(luò)的模型網(wǎng)絡(luò)收斂精度。每組實驗進行了20次,圖中圓點代表均值,直線的兩端分別為模型收斂之后的最后100次模型預(yù)測誤差的最大值和最小值。圖6(a)為3層全連接網(wǎng)絡(luò)的實驗結(jié)果,可見均值基本在1.0以上,其中可見多次均值貼近最小值,因為模型最后基本穩(wěn)定在最小值處,但仍然有小概率會出現(xiàn)模型效果變差的情況出現(xiàn)。圖6 (b)為5層全連接網(wǎng)絡(luò)的實驗結(jié)果,均值已經(jīng)能達到1.0以下,相比于3層網(wǎng)絡(luò)有小幅改進,同樣出現(xiàn)了均值貼近最小值的情況。圖6 (c)為目標網(wǎng)絡(luò)的實驗結(jié)果,可見均值已經(jīng)可以達到0.5左右,而最小值已經(jīng)可以接近于0,相比于全連接網(wǎng)絡(luò)有了明顯的提高。而最大值接近2.0,說明網(wǎng)絡(luò)的穩(wěn)定程度還需要改進。

        圖6 不同網(wǎng)絡(luò)設(shè)置下的均方誤差Fig.6 Mean square error with different networks

        對比圖6(a)~(c)可知,全連接網(wǎng)絡(luò)可以相對穩(wěn)定地收斂,然而網(wǎng)絡(luò)的最小值和均值無法降低,證明了不帶目標網(wǎng)絡(luò)的算法的理論精度要低于目標網(wǎng)絡(luò)。而帶目標網(wǎng)絡(luò)的算法收斂的穩(wěn)定程度有所不足,最小值和均值之間的間距偏大,但這一段距離都在全連接網(wǎng)絡(luò)的收斂精度之下,可見整體的收斂性能明顯高于全連接網(wǎng)絡(luò),在實際應(yīng)用時使用目標網(wǎng)絡(luò)會取得更好的預(yù)測結(jié)果。

        總體統(tǒng)計結(jié)果如表2所示,結(jié)果表明,僅使用更深層的網(wǎng)絡(luò)對于動力學(xué)模型精度提升有限,且增加了系統(tǒng)的計算量。而使用基于目標網(wǎng)絡(luò)的算法能夠顯著提高動力學(xué)網(wǎng)絡(luò)的平均收斂精度,尤其是均值和最小值,均值平均收精度從0.913提升到0.448,最小值平均收精度從0.745提升到0.014。此外,經(jīng)過并行化的進化策略也使得收斂速度提高了10倍左右,大大提升了算法的在線運行能力。

        表2 不同算法收斂精度及速度對比Table 2 Comparison of convergence accuracy and speed among different algorithms

        4 結(jié) 論

        本文使用深度強化學(xué)習算法學(xué)習動力學(xué)模型和全局策略,并且使用模型預(yù)測控制優(yōu)化控制策略。該算法框架下,可以使用不同的神經(jīng)網(wǎng)絡(luò)模型和策略優(yōu)化方法。得益于軟件定義衛(wèi)星的發(fā)展,機器學(xué)習的算法可以在軌運行甚至于在軌學(xué)習,衛(wèi)星姿態(tài)控制算法可以脫離傳統(tǒng)姿態(tài)控制算法使用機器學(xué)習算法,從而為整星提供更好的姿態(tài)控制服務(wù)。本文算法可以在衛(wèi)星物理參數(shù)未知的情況下學(xué)習得到優(yōu)化的控制策略,并且在引導(dǎo)策略效果變差時通過學(xué)習生成優(yōu)化的控制策略,使得衛(wèi)星姿態(tài)控制系統(tǒng)更加智能化、自主化,對環(huán)境的適應(yīng)性也有所提高。

        實驗結(jié)果表明,基于目標網(wǎng)絡(luò)的動力學(xué)模型網(wǎng)絡(luò)可以明顯提升算法的收斂精度,而基于進化策略的啟發(fā)式搜索并行化算法可以大大提升算法的收斂速度,從而提高強化學(xué)習姿態(tài)控制系統(tǒng)在軌運行在線計算的能力。

        本文所使用的強化學(xué)習算法為貪心算法,在面對可能具有多個局部最優(yōu)解的復(fù)雜控制問題如路徑跟蹤、目標追蹤等問題時較容易陷入局部最優(yōu)解。因此需要使用動態(tài)規(guī)劃或模型預(yù)測控制等全局優(yōu)化算法進一步提升算法的性能。神經(jīng)網(wǎng)絡(luò)目前使用的是全連接網(wǎng)絡(luò),泛化能力有限,在較為簡單的仿真環(huán)境中可以取得不錯的效果,然而實際空間環(huán)境更為復(fù)雜,需要使用泛化能力更強的卷積神經(jīng)網(wǎng)絡(luò)構(gòu)建學(xué)習算法,并且可以使用遞歸神經(jīng)網(wǎng)絡(luò)擬合實際控制系統(tǒng)中的時間滯后效應(yīng)。

        猜你喜歡
        姿態(tài)控制控制算法姿態(tài)
        風擾動下空投型AUV的飛行姿態(tài)控制研究
        攀爬的姿態(tài)
        全新一代宋的新姿態(tài)
        汽車觀察(2018年9期)2018-10-23 05:46:40
        跑與走的姿態(tài)
        中國自行車(2018年8期)2018-09-26 06:53:44
        多星發(fā)射上面級主動抗擾姿態(tài)控制技術(shù)研究
        基于ARM+FPGA的模塊化同步控制算法研究
        基于UC/OS-II四旋翼姿態(tài)控制系統(tǒng)設(shè)計
        一種優(yōu)化的基于ARM Cortex-M3電池組均衡控制算法應(yīng)用
        一種非圓旋轉(zhuǎn)工件支撐裝置控制算法
        DI材橫向厚差自動控制算法及其應(yīng)用
        上海金屬(2013年4期)2013-12-20 07:57:17
        四虎国产精品免费久久麻豆| 久久精品国产亚洲av麻豆| 国产性一交一乱一伦一色一情| 国产乱色国产精品免费视频| 亚洲一区久久久狠婷婷| 日本伦理精品一区二区三区| 亚洲国产av玩弄放荡人妇系列| 尤物99国产成人精品视频| 国产黄色精品高潮播放| 91精品国产91综合久久蜜臀| 尤物在线精品视频| 国产精品视频一区国模私拍| 久久中文字幕久久久久91| 亚洲第一区二区精品三区在线| 无码人妻丰满熟妇啪啪网站| 18禁男女爽爽爽午夜网站免费| 国产欧美日本亚洲精品一5区| 亚洲一区二区三区av资源 | 亚洲国产精品一区二区第一 | 国产av普通话对白国语| 国产主播一区二区三区蜜桃| 国产免费av片无码永久免费| 99国产小视频| 中文字幕日韩精品亚洲精品| 亚洲 欧美 综合 在线 精品 | 999国产精品999久久久久久| 精品人人妻人人澡人人爽牛牛| 黄 色 成 年 人 网 站免费| 亚洲自拍偷拍一区二区三区| 乱人妻中文字幕| 亚洲一区视频在线| 99久久久无码国产精品免费砚床| 亚洲欧美日韩精品香蕉| 日本久久精品视频免费| 国产真实乱对白精彩| 在线观看av手机网址| 亚洲精品女人天堂av麻| 日韩av午夜在线观看| 欧美性猛交xxxx乱大交蜜桃| 一级做a爱视频在线播放| 国产精品一区二区三区卡|