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

        ?

        基于DDPG的自主水下機(jī)器人角度控制研究

        2023-06-01 13:44:22李凌霄王偉明賀佳飛
        計(jì)算機(jī)仿真 2023年4期
        關(guān)鍵詞:角度神經(jīng)網(wǎng)絡(luò)曲線

        李凌霄,王偉明,賀佳飛,聞 程

        (石家莊鐵道大學(xué)電氣與電子工程學(xué)院,河北 石家莊 050043)

        1 引言

        經(jīng)典的控制理論在解決AUV這種復(fù)雜非線性模型時具有很多的局限性,比如傳統(tǒng)的PID控制[1],模糊控制[2],滑模控制[3],在實(shí)際環(huán)境中通常會出現(xiàn)各種各樣的問題,PID控制雖然結(jié)構(gòu)和實(shí)現(xiàn)較為簡便,但是在不確定性和干擾性強(qiáng)的被控對象中,參數(shù)的整定和調(diào)試會限制PID控制在高級應(yīng)用中的性能。模糊控制和滑模控制不需要建立復(fù)雜的系統(tǒng)模型,但是模糊控制的控制精確度會隨著模糊處理的信息多少而降低,滑??刂频淖兞慷秳臃纫蚕噍^于其它方法有著很明顯的差距。這些控制方法都對在水下航行的AUV進(jìn)行精確地角度控制帶來了很大的困難,為了解決傳統(tǒng)控制理論難以解決的難題,通過近些年來興起的強(qiáng)化學(xué)習(xí)的控制方法可以有效地進(jìn)行AUV的水下控制[4]。強(qiáng)化學(xué)習(xí)是機(jī)器學(xué)習(xí)的一種分支,標(biāo)準(zhǔn)的強(qiáng)化學(xué)習(xí)過程是馬爾可夫決策[5],假設(shè)整個過程的狀態(tài)集合為S,轉(zhuǎn)化到到下一個時刻的狀態(tài)St+1僅僅和上一個狀態(tài)St有關(guān),與之前的狀態(tài)無關(guān)。由于在實(shí)際過程中會遇到各種各樣的環(huán)境參數(shù),應(yīng)用傳統(tǒng)的控制方法會陷入復(fù)雜的模型設(shè)計(jì)中,強(qiáng)化學(xué)習(xí)不要求預(yù)先給定任何數(shù)據(jù),而是通過接收環(huán)境對動作的獎勵(反饋)獲得學(xué)習(xí)信息并更新模型參數(shù)[6],具有很強(qiáng)的環(huán)境適應(yīng)性,非常適合水下非線性的AUV控制設(shè)計(jì)。

        文獻(xiàn)[7]將神經(jīng)網(wǎng)絡(luò)融合到了AUV的水下動力定位跟蹤,然而優(yōu)化的整體程度還不夠明顯。文獻(xiàn)[8]提出了一種DQN(Deep Q Network)的強(qiáng)化學(xué)習(xí)算法,這種算法將深度神經(jīng)網(wǎng)絡(luò)和Q學(xué)習(xí)相結(jié)合,通過學(xué)習(xí)當(dāng)前的動作與記憶回放單元中的經(jīng)歷,達(dá)到有效的神經(jīng)網(wǎng)絡(luò)參數(shù)更新,但收斂得過于緩慢。文獻(xiàn)[9]通過建立兩個深度神經(jīng)網(wǎng)絡(luò),Actor網(wǎng)絡(luò)用來輸出動作的選擇,Critic網(wǎng)絡(luò)則利用Actor網(wǎng)絡(luò)輸出的動作來進(jìn)行Q值的評分,使得AUV在水下跟蹤復(fù)雜的軌跡時可以保持良好的精度和穩(wěn)定性,但是在復(fù)雜的非線性環(huán)境下表現(xiàn)欠佳,容易收到環(huán)境的干擾。文獻(xiàn)[10]提出了深度確定性策略梯度(Deep Deterministic Policy Gradient)的強(qiáng)化學(xué)習(xí)算法,解決了在狀態(tài)復(fù)雜的非線性環(huán)境中連續(xù)動作的控制要求,但在訓(xùn)練中其價(jià)值網(wǎng)絡(luò)通常會將偏差高估,造成最后選擇的策略無法達(dá)到最優(yōu)。文獻(xiàn)[11]將DDPG算法應(yīng)用于AUV的水下路徑跟蹤控制,很好地改善了在跟蹤參考路徑時的軌跡,但是訓(xùn)練的過程過于繁瑣。

        本文的創(chuàng)新在于將熵正則化的網(wǎng)絡(luò)輸出方式引入到DDPG的強(qiáng)化學(xué)習(xí)算法架構(gòu)中,并將其應(yīng)用到AUV的水下角度控制領(lǐng)域,通過AUV水下角度控制的訓(xùn)練可知,改進(jìn)后得DDPG算法相比于未改進(jìn)前可以在更短得訓(xùn)練時間內(nèi)達(dá)到收斂,避免了Actor網(wǎng)絡(luò)的動作選擇局部最優(yōu),同時更容易達(dá)到全局最優(yōu)得控制效果。

        2 AUV的運(yùn)動數(shù)學(xué)模型

        圖1為AUV的體坐標(biāo)系,其中ROLL為翻滾角,PITCH為俯仰角,YAW為偏航角,分別記為φ、θ、ψ。

        X、Y、Z分別是沿x、y、z軸方向上運(yùn)動所受到的力,具體的計(jì)算公式如下

        (1)

        K、M、N分別是繞x、y、z軸進(jìn)行旋轉(zhuǎn)產(chǎn)生的力矩,具體的計(jì)算公式如下

        (2)

        其中俯仰角的計(jì)算公式為

        (3)

        力和力矩主要是由水下環(huán)境中的靜水壓力、浮力,阻力已經(jīng)外加推力和控制力組成。其中,u、v、w分別是AUV在x、y、z軸方向上運(yùn)動時的線速度;p、q、r分別是AUV繞x、y、z軸旋轉(zhuǎn)的角速度。Ix、Iy和Iz是車輛的慣性矩,xG、zG是AUV體系中x和z方向上的質(zhì)心。由于在實(shí)際建造中AUV的俯仰角不可能達(dá)到完全垂直,因此添加一個[-30,30]的角度限制。

        3 DDPG算法的設(shè)計(jì)與改進(jìn)

        3.1 DDPG算法

        DDPG算法以DQN算法的理論為依據(jù),借助Actor-Critic的算法[12]框架實(shí)現(xiàn)了在連續(xù)狀態(tài)下輸出對應(yīng)的策略,同時采用DPG算法中確定性策略的方法[13],將輸出的動作由概率性變成確定性。圖2為DDPG算法原理結(jié)構(gòu)圖。DDPG算法設(shè)置了兩種深度神經(jīng)網(wǎng)絡(luò),分別是Actor和Critic,每種網(wǎng)絡(luò)又分為現(xiàn)實(shí)主網(wǎng)絡(luò)與目標(biāo)網(wǎng)絡(luò),各個網(wǎng)絡(luò)的功能可概括如下[14]:

        圖2 DDPG算法原理結(jié)構(gòu)圖

        主Actor網(wǎng)絡(luò):進(jìn)行網(wǎng)絡(luò)參數(shù)θQ的更新設(shè)置,以輸入的狀態(tài)St為基礎(chǔ),選擇出當(dāng)前的最優(yōu)動作at,輸出下一時刻的狀態(tài)St+1,獎勵R。

        目標(biāo)Actor網(wǎng)絡(luò):根據(jù)記憶回放單元存放的采樣數(shù)據(jù)選擇最優(yōu)下一動作at+1。網(wǎng)絡(luò)參數(shù)θQ′定期從θQ更新。

        主Critic網(wǎng)絡(luò):更新網(wǎng)絡(luò)參數(shù)θμ,計(jì)算當(dāng)前狀態(tài)-動作價(jià)值Q(St,at)。

        目標(biāo)Critic網(wǎng)絡(luò):負(fù)責(zé)計(jì)算Q′(St+1,at+1)部分,用于生成目標(biāo)Q值Q′=R+γQ(St+1,at+1),網(wǎng)絡(luò)參數(shù)θμ′定期從θμ更新。

        3.2 獎勵函數(shù)的設(shè)計(jì)

        AUV的學(xué)習(xí)效能以及控制效率的關(guān)鍵在于獎勵函數(shù)R的設(shè)置,為此,設(shè)計(jì)獎勵函數(shù)。

        (4)

        其中ξ是一個常數(shù),并且其數(shù)值大于零,θt和ψt為t時刻下AUV的俯仰角和偏航角,θ1和ψ1是t時刻下預(yù)設(shè)的角度,通過選取合適的ξ可以優(yōu)化獎勵函數(shù),提高AUV角度控制的學(xué)習(xí)效率。

        在AUV的實(shí)際偏轉(zhuǎn)角度等于預(yù)設(shè)的偏轉(zhuǎn)角度時R=ζ,ζ為常數(shù),其數(shù)值與ξ有關(guān)。通過設(shè)立這步獎勵函數(shù)來使得角度達(dá)到預(yù)定值時,可以一直跟蹤預(yù)設(shè)角度。因此獎勵函數(shù)可以寫為

        (5)

        經(jīng)過多次的仿真調(diào)試,在本設(shè)計(jì)中,ξ取60,ζ取-40。

        3.3 網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)

        以深度學(xué)習(xí)框架為基礎(chǔ)設(shè)計(jì)Actor和Critic兩種深度神經(jīng)網(wǎng)絡(luò)。由狀態(tài)變量組成的狀態(tài)矩陣St作為現(xiàn)實(shí)Actor主網(wǎng)絡(luò)的輸入,Actor網(wǎng)絡(luò)的構(gòu)架中使用三層隱藏層,第一層和第三層的節(jié)點(diǎn)數(shù)為32個,第二層的節(jié)點(diǎn)數(shù)為16個。將Critic網(wǎng)絡(luò)的構(gòu)架進(jìn)行改進(jìn),使用兩層隱藏層,避免由于網(wǎng)絡(luò)層數(shù)的過于復(fù)雜造成梯度計(jì)算的過大問題,其中每層的節(jié)點(diǎn)數(shù)都為16個。使用全網(wǎng)絡(luò)連接來作為神經(jīng)網(wǎng)絡(luò)中各個節(jié)點(diǎn)之間的連接方式,使用tanh函數(shù)來對輸出層進(jìn)行歸一化處理,避免各個參數(shù)權(quán)值的不同導(dǎo)致結(jié)果的量級問題。圖3為Actor網(wǎng)絡(luò)結(jié)構(gòu)。圖4為Critic網(wǎng)絡(luò)結(jié)構(gòu)。

        圖3 Actor網(wǎng)絡(luò)結(jié)構(gòu)

        圖4 Critic網(wǎng)絡(luò)結(jié)構(gòu)

        3.4 DDPG算法的改進(jìn)

        在AUV實(shí)際的學(xué)習(xí)控制當(dāng)中,Actor網(wǎng)絡(luò)經(jīng)常會選擇那些概率比較大的動作作為自己的輸出,因此動作輸出的確定程度比較大,這就容易造成AUV不求上進(jìn),探索能力變?nèi)?動作的可選擇范圍變窄,導(dǎo)致最終無法獲取最優(yōu)解。為了改善算法的Actor網(wǎng)絡(luò)輸出情況,本文采取熵正則化的方法使得Actor網(wǎng)絡(luò)輸出的動作具有較大的不確定性,增加可選擇動作的多樣性,避免局部優(yōu)化,使得AUV可以探索到最佳的策略。

        熵正則化的方法主要是通過熵進(jìn)行動作概率的表示,在n個概率分布當(dāng)中,熵值的計(jì)算公式如下

        (6)

        熵值大則概率分布均勻,動作隨機(jī)性大,如圖5(左);熵值小則概率分布較為集中,動作隨機(jī)性小,如圖5(右)。

        圖5 概率分布圖

        Actor網(wǎng)絡(luò)輸出的動作有不同的概率密度,動作的集合向量A,其熵值可以被表示為

        (7)

        在進(jìn)行Actor網(wǎng)絡(luò)參數(shù)優(yōu)化的同時,需要考慮到熵值的大小,因此將熵設(shè)置成代價(jià)函數(shù)的正則項(xiàng),新的函數(shù)在進(jìn)行梯度更新的公式為

        ?θ[J(θ)+λ·Es[H(s;θ)]]=Es[EA~π(·|s;θ)[g(s,a;θ)]]

        (8)

        3.5 算法的實(shí)現(xiàn)步驟

        實(shí)際環(huán)境中AUV的狀態(tài)變量有12個,分別是三個空間坐標(biāo)軸方向上的位移、角度、線速度和角速度,這些狀態(tài)變量作為當(dāng)前的的狀態(tài)值St,Actor網(wǎng)絡(luò)采取的動作值為at,Critic網(wǎng)絡(luò)評測的獎勵值為R,下一步的狀態(tài)值為St+1,主網(wǎng)絡(luò)通過訓(xùn)練樣本數(shù)據(jù)(St,St+1,R,at)來進(jìn)行角度的控制訓(xùn)練,每一步的結(jié)果與上一步都是獨(dú)立不相關(guān)的,經(jīng)過樣本的采集與更新,將參數(shù)輸送給目標(biāo)網(wǎng)絡(luò),然后進(jìn)行目標(biāo)網(wǎng)絡(luò)的更新,具體的算法流程如下:

        步驟1:構(gòu)建Actor網(wǎng)絡(luò),以θQ作為神經(jīng)網(wǎng)絡(luò)參數(shù),構(gòu)建Critic網(wǎng)絡(luò),以θμ作為神經(jīng)網(wǎng)絡(luò)參數(shù)

        步驟2:初始化神經(jīng)網(wǎng)絡(luò)參數(shù)θQ和θμ

        步驟3:把θQ和θμ參數(shù)值輸送給目標(biāo)Actor網(wǎng)絡(luò)和目標(biāo)Critic網(wǎng)絡(luò)。

        步驟4:以Actor主網(wǎng)絡(luò)為基礎(chǔ),通過熵正則化的方法使得Actor網(wǎng)絡(luò)輸出一個動作at。

        步驟5:執(zhí)行at動作,經(jīng)過神經(jīng)網(wǎng)絡(luò)得到下一個由下步狀態(tài)變量組成的狀態(tài)St+1,同時返回一個獎勵值R。以元組形式表示這一過程中的數(shù)據(jù)(St,St+1,R,at),同時作為樣本數(shù)據(jù)的狀態(tài)轉(zhuǎn)換過程儲存到回放記憶單元作為在線網(wǎng)絡(luò)訓(xùn)練的數(shù)據(jù)樣本。

        步驟6:從記憶回放單元中提取樣本數(shù)據(jù)(St,St+1,R,at),以St和at為現(xiàn)實(shí)Critic主網(wǎng)絡(luò)的輸入,得到Q(St,at)。

        步驟7:以St+1作為目標(biāo)Actor的輸入,得到t+1狀態(tài)的動作at+1。

        步驟8:St+1和at+1一起輸入到目標(biāo)Critic網(wǎng)絡(luò),得到Q′(St+1,at+1)。對目標(biāo)Q值進(jìn)行估計(jì)得到目標(biāo)的Q值Q′=R+γQ(St+1,at+1),為折扣因子,表示γ估計(jì)得出的決策獎勵對當(dāng)前決策的影響程度。

        步驟9:最后的目的是讓現(xiàn)實(shí)Critic網(wǎng)絡(luò)輸出的Q值要接近于目標(biāo)Q′的值,因此更新現(xiàn)實(shí)Critic網(wǎng)絡(luò)使得輸出Q盡量接近目標(biāo)的Q′。更新的方法為使用損失函數(shù)Loss,用Adam optimizer進(jìn)行現(xiàn)實(shí)Critic網(wǎng)絡(luò)的更新。

        步驟10:進(jìn)行現(xiàn)實(shí)Actor的更新,現(xiàn)實(shí)Actor輸出的動作與現(xiàn)實(shí)Critic里給出的評分有關(guān),更新Actor使得Q值輸出最大,使用策略梯度的方法對總獎勵進(jìn)行梯度計(jì)算以更新參數(shù),更新時引入帶熵值得正則項(xiàng).

        步驟12:在進(jìn)行設(shè)定的步數(shù)后,將現(xiàn)實(shí)主網(wǎng)絡(luò)Actor和Critic中的參數(shù)作為目標(biāo)Actor和Critic的參數(shù)輸入,更新目標(biāo)網(wǎng)絡(luò)。

        (9)

        步驟13:最后回到現(xiàn)實(shí)主網(wǎng)絡(luò)Actor進(jìn)行采樣,循環(huán)過程。

        4 實(shí)驗(yàn)驗(yàn)證

        實(shí)驗(yàn)在64位的windows10系統(tǒng)下進(jìn)行,使用Python3.8作為編譯的環(huán)境,深度神經(jīng)網(wǎng)絡(luò)使用PyTorch1.8.1搭建,根據(jù)第2節(jié)的運(yùn)動學(xué)模型建立AUV的仿真模型。

        在本文的仿真中,經(jīng)過多次調(diào)試,神經(jīng)網(wǎng)絡(luò)的參數(shù)設(shè)置見表1。

        表1 神經(jīng)網(wǎng)絡(luò)參數(shù)值

        設(shè)置進(jìn)行的總回合數(shù)為1500次,得到獎勵函數(shù)曲線,圖6為改進(jìn)前后的獎勵函數(shù)曲線對比,其中,橫坐標(biāo)為訓(xùn)練的回合數(shù),縱坐標(biāo)為獎勵值R。

        圖6 改進(jìn)前后的獎勵函數(shù)曲線對比

        由圖可以看出未改進(jìn)的算法計(jì)算出的獎勵值在550回左右才達(dá)到收斂,并且在后面回合數(shù)的訓(xùn)練中,獎勵始終在45到55內(nèi)來回波動,效果表現(xiàn)的不太理想。改進(jìn)后的算法的獎勵值在100回左右就達(dá)到了收斂,并且在之后的訓(xùn)練回合中,波動的范圍較小。

        搭建強(qiáng)化學(xué)習(xí)環(huán)境進(jìn)行仿真來驗(yàn)證DDPG算法對AUV進(jìn)行角度控制的效果,通過預(yù)先給出相應(yīng)的角度,使得AUV經(jīng)過仿真環(huán)境的訓(xùn)練學(xué)習(xí)之后可以跟據(jù)預(yù)設(shè)的指令進(jìn)行角度的跟蹤。

        在改進(jìn)后的算法經(jīng)歷1500回合的訓(xùn)練之后,進(jìn)行角度跟蹤的測試,測試俯仰角和偏航角的追蹤效果。翻滾角主要根據(jù)AUV的尾翼來進(jìn)行設(shè)計(jì),主要目的是為了控制AUV航行時的姿態(tài),并且大多數(shù)是有界的,因此在本設(shè)計(jì)中不考慮翻滾角對角度控制的影響。

        使用DDPG算法進(jìn)行與改進(jìn)后的DDPG算法的效果對比,圖7為DDPG的俯仰角跟蹤曲線。圖8為改進(jìn)后的DDPG俯仰角跟蹤曲線。

        圖7 DDPG的俯仰角跟蹤曲線

        圖8 改進(jìn)后DDPG的俯仰角跟蹤曲線

        圖9為DDPG的偏航角跟蹤曲線。圖10為改進(jìn)后的DDPG偏航角跟蹤曲線。

        圖9 DDPG的偏航角跟蹤曲線

        圖10 改進(jìn)后DDPG的偏航角跟蹤曲線

        可以看出在相同情況下的角度跟蹤控制,無論是俯仰角還是偏航角,改進(jìn)后的DDPG算法都具備更優(yōu)良的控制效果。在穩(wěn)態(tài)誤差方面,改進(jìn)后的DDPG算法也表現(xiàn)得更為出色,具有更高的穩(wěn)態(tài)控制精度。

        在實(shí)際環(huán)境中,AUV在控制作業(yè)時避免不了外界因素的干擾,為了驗(yàn)證該算法的抗干擾性和魯棒性,在實(shí)驗(yàn)過程中10秒的時候分別對俯仰角和偏航角施加一個階躍擾動,模擬水下環(huán)境的瞬時干擾,圖11為俯仰角變化曲線,圖12為偏航角變化曲線。

        圖11 俯仰角變化曲線

        圖12 偏航角變化曲線

        通過仿真可以看出,俯仰角和偏航角在10秒時都受到了階躍信號的瞬時干擾,并且出現(xiàn)了震蕩的效果,但是在很短的時間內(nèi)就又跟蹤到了期望角度。

        5 結(jié)束語

        針對AUV的角度控制問題,本文提出了一種基于強(qiáng)化學(xué)習(xí)DDPG算法的角度跟蹤方法,通過調(diào)整深度神經(jīng)網(wǎng)絡(luò)和加入熵正則化的方法,來對DDPG算法進(jìn)行改進(jìn),使得AUV可以在水下環(huán)境下無需進(jìn)行系統(tǒng)性的模型建立就可以進(jìn)行相應(yīng)的角度控制。

        通過實(shí)驗(yàn)結(jié)果可以表明:①改進(jìn)后的DDPG算法在角度控制時有著更高的控制精度,可以提高約50%的穩(wěn)態(tài)控制精度,同時在收到干擾時也可以很快地達(dá)到穩(wěn)定狀態(tài),具有較強(qiáng)的魯棒性和抗干擾能力;②改進(jìn)后得DDPG算法相比于未改進(jìn)之前的算法獎勵曲線的穩(wěn)定誤差優(yōu)化了6倍左右,優(yōu)化效果更好;③引入熵正則化的DDPG強(qiáng)化學(xué)習(xí)算法在訓(xùn)練時可以迅速地達(dá)到收斂狀態(tài),在應(yīng)用于AUV的水下角度控制時具有良好的控制效果,應(yīng)用前景廣泛。

        猜你喜歡
        角度神經(jīng)網(wǎng)絡(luò)曲線
        未來訪談:出版的第二增長曲線在哪里?
        出版人(2022年8期)2022-08-23 03:36:50
        神奇的角度
        幸福曲線
        英語文摘(2020年6期)2020-09-21 09:30:40
        沿平坦凸曲線Hilbert變換的L2有界性
        神經(jīng)網(wǎng)絡(luò)抑制無線通信干擾探究
        電子制作(2019年19期)2019-11-23 08:42:00
        一個涉及角度和的幾何不等式鏈的改進(jìn)
        角度不同
        37°女人(2017年8期)2017-08-12 11:20:48
        人啊
        滇池(2017年7期)2017-07-18 19:32:42
        基于神經(jīng)網(wǎng)絡(luò)的拉矯機(jī)控制模型建立
        復(fù)數(shù)神經(jīng)網(wǎng)絡(luò)在基于WiFi的室內(nèi)LBS應(yīng)用
        自拍偷自拍亚洲精品第按摩| 亚洲午夜久久久久中文字幕| 日本av在线精品视频| 日本一区二区三区熟女俱乐部| 久久精品中文闷骚内射| 亚洲巨乳自拍在线视频| 亚洲欧美日韩高清一区二区三区 | 论理视频二区三区四区在线观看| 中文字幕人妻无码视频| 日韩欧美在线综合网| 天天中文字幕av天天爽| 国产黄色一区二区三区av| 久久精品国产99久久无毒不卡| 久久久精品欧美一区二区免费| 北岛玲日韩精品一区二区三区| 久久久噜噜噜久久熟女| 男人的天堂中文字幕熟女人妻| 国产乱人伦av在线a| 国产h视频在线观看网站免费| 亚洲av无一区二区三区综合| 国产毛多水多高潮高清| 中日av乱码一区二区三区乱码| 高潮社区51视频在线观看| 亚洲毛片免费观看视频| 大地资源中文第3页| 欧美日韩亚洲成人| 国产一区二区毛片视频| 丰满人妻一区二区三区视频| 摸进她的内裤里疯狂揉她动视频| 国产精品情侣露脸av在线播放| 国产在线观看一区二区三区av| 免费国产a国产片高清网站| 色婷婷日日躁夜夜躁| 一区二区三区在线蜜桃| 在线免费观看黄色国产强暴av| 亚洲精品无码久久久久秋霞| 亚洲激情人体艺术视频| 国产一区二区三区免费视| 亚洲av无码一区二区三区天堂古代 | 欧洲人妻丰满av无码久久不卡| 日本欧美在线播放|