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

        ?

        基于經(jīng)驗指導(dǎo)的深度確定性多行動者-評論家算法

        2019-07-30 11:26:54陳紅名姜玉斌張琳琳
        計算機研究與發(fā)展 2019年8期
        關(guān)鍵詞:經(jīng)驗動作策略

        陳紅名 劉 全,2,3,4 閆 巖 何 斌 姜玉斌 張琳琳

        1(蘇州大學(xué)計算機科學(xué)與技術(shù)學(xué)院 江蘇蘇州 215006)2(江蘇省計算機信息處理技術(shù)重點實驗室(蘇州大學(xué)) 江蘇蘇州 215006)3(符號計算與知識工程教育部重點實驗室(吉林大學(xué)) 長春 130012)4(軟件新技術(shù)與產(chǎn)業(yè)化協(xié)同創(chuàng)新中心 南京 210000)

        目前,強化學(xué)習(xí)已經(jīng)廣泛應(yīng)用于仿真模擬、工業(yè)控制和博弈游戲等領(lǐng)域[1-5].強化學(xué)習(xí)(reinforcement learning)的目標(biāo)是學(xué)習(xí)一個最優(yōu)策略使得智能體(agent)能夠獲得最大的累積獎賞[6].強化學(xué)習(xí)方法大體上可以分為3類:基于值函數(shù)的方法、策略搜索方法(或策略梯度方法)和行動者-評論家方法.

        基于值函數(shù)的方法通過學(xué)習(xí)一個值函數(shù)獲得一個最優(yōu)策略,這種方法適用于離散動作空間的任務(wù),對于連續(xù)動作空間來說是并不適用的.例如Rummery和Niranjan[7]提出的Sarsa算法、Watkins等人[8]提出的Q-Learning算法.對比基于值函數(shù)的方法,策略搜索方法并沒有學(xué)習(xí)值函數(shù)而是直接學(xué)習(xí)一個策略,使得累積獎賞最大化.例如Williams提出的基于蒙特卡洛方法[9](Monte Carlo methods, MC)的強化(reinforce)算法和使用基線的強化(reinforce with baseline)算法[10],后者是前者的泛化.行動者-評論家算法結(jié)合了基于值的方法和策略搜索方法,其中參數(shù)化的策略稱為行動者,學(xué)習(xí)到的值函數(shù)稱為評論家.例如Barto和Sutton等人[11]提出的行動者-評論家算法(actor-critic, AC),Peters和Schaal提出的自然行動者-評論家方法[12](natural actor-critic, NAC).

        傳統(tǒng)強化學(xué)習(xí)面臨的問題是對于高維狀態(tài)動作空間感知能力不足.最近幾年隨著深度學(xué)習(xí)(deep learning, DL)的流行,由于其對高維狀態(tài)動作空間有很好的表示能力,因此深度學(xué)習(xí)與傳統(tǒng)強化學(xué)習(xí)的結(jié)合產(chǎn)生了深度強化學(xué)習(xí)(deep reinforcement learning, DRL)這一研究熱點.這一類方法在一些游戲和機器人控制任務(wù)上取得了不錯的成果.比如基于Q-Learning的深度Q網(wǎng)絡(luò)(deep Q-network, DQN)[13]算法在49個Atari 2600游戲中的實驗結(jié)果超過以往所有算法,并且可以媲美職業(yè)人類玩家的水平.在DQN之上有很多改進(jìn)的算法版本,例如在此基礎(chǔ)上提出的競爭網(wǎng)絡(luò)結(jié)構(gòu)[14](dueling network architecture, DNA)和可用于連續(xù)動作空間的歸一化優(yōu)勢函數(shù)連續(xù)Q學(xué)習(xí)[15](continuous Q-Learning with normalized advantage functions, NAF)等,還有基于行動者-評論家方法的深度確定性策略梯度[16](deep deterministic policy gradient, DDPG)方法,以及異步優(yōu)勢行動者-評論家[17](asynchronous advantage actor-critic, A3C)方法等.此外深度強化學(xué)習(xí)在其他研究方向比如圖像處理、自然語言處理等都有一些重要應(yīng)用[18-20].

        基于值函數(shù)的方法像深度Q網(wǎng)絡(luò)等,大多是根據(jù)值函數(shù)通過ε-greedy策略來選擇動作,即以ε的概率隨機選擇動作,以1-ε的概率選擇具有最大值的動作.這類方法在離散動作空間任務(wù)中具有很好的效果,而對于連續(xù)控制任務(wù)卻不是很適用[21],這是因為連續(xù)動作空間中具有最大值的動作不易確定.基于策略梯度的方法可以分為隨機策略梯度[22](stochastic policy gradients, SPG)和確定性策略梯度[23](deterministic policy gradients, DPG).隨機策略梯度在選擇動作時輸出是每個可能的動作的概率,這類方法也不太適用于連續(xù)動作空間任務(wù).而確定性策略梯度方法在選擇行動時,策略的輸出是一個確定的動作,因此可以很好地應(yīng)用于連續(xù)控制任務(wù).確定性策略梯度與AC方法的結(jié)合形成了確定性AC方法[23](deterministic actor-critic, DAC),比如DDPG.這類方法雖然可以很好地適用于連續(xù)動作空間,但是其性能很大程度上取決于探索方法的好壞.它們一般通過在動作中加入外部噪聲實現(xiàn)探索或者使用高斯策略實現(xiàn)探索,但這些探索方式實際上是盲目的,因此在一些連續(xù)控制任務(wù)表現(xiàn)不是很好.

        為了提高確定性AC方法在連續(xù)控制問題上的性能,本文提出了基于經(jīng)驗指導(dǎo)的深度確定性多行動者-評論家算法(experience-guided deep deter-ministic actor-critic with multi-actor,EGDDAC-MA). EGDDAC-MA并不需要外部探索噪聲源,而是從自身優(yōu)秀經(jīng)驗中學(xué)習(xí)一個指導(dǎo)網(wǎng)絡(luò),對行動的選擇和評論家網(wǎng)絡(luò)的更新進(jìn)行指導(dǎo).此外為了緩解單個網(wǎng)絡(luò)的學(xué)習(xí)壓力,EGDDAC-MA使用了多個行動者網(wǎng)絡(luò),各個行動者網(wǎng)絡(luò)之間互不干擾,執(zhí)行情節(jié)的不同階段.

        實驗上,本文首先對比基于經(jīng)驗的指導(dǎo)相比于外部探索噪聲的優(yōu)勢,證明了多行動者機制可以有效緩解網(wǎng)絡(luò)學(xué)習(xí)波動,然后比較了深度確定性策略梯度算法(deep deterministic policy gradient, DDPG)、置信區(qū)域策略優(yōu)化算法[24](trust region policy optimization, TRPO)、對TRPO進(jìn)行改進(jìn)的近端策略優(yōu)化算法(proximal policy optimization Algorithms, PPO)和EGDDAC-MA在多個連續(xù)任務(wù)上的性能.本文還使用了專家經(jīng)驗來取代自身優(yōu)秀經(jīng)驗進(jìn)行實驗,發(fā)現(xiàn)在提供專家經(jīng)驗條件下,EGDDAC-MA可以快速學(xué)到一個不錯的策略.

        1 背景知識

        1.1 強化學(xué)習(xí)和隨機行動者-評論家算法

        強化學(xué)習(xí)問題通常使用Markov決策過程(Markov decision process, MDP)進(jìn)行建模.一個MDP問題可以用一個四元組(S,A,R,P)表示,其中S為狀態(tài)集合,A為動作集合,R為獎賞函數(shù),P為狀態(tài)轉(zhuǎn)移函數(shù).在與環(huán)境E交互過程中,每個時間步agent在狀態(tài)st執(zhí)行動作at,獲得獎賞rt+1并到達(dá)下一個狀態(tài)st+1,這里st∈S,at∈A,rt=R(st,at),S?Rns,A?Rna.Agent的目標(biāo)是最大化累積獎賞:

        (1)

        作為強化學(xué)習(xí)中的一種重要方法,隨機行動者-評論家算法(stochastic actor-critic)使用隨機策略梯度來更新策略,其中行動者(actor)和評論家(critic)進(jìn)行了參數(shù)化處理,這里用π(a|s,θπ):S→P(A)和Q(s,a|θq)分別表示行動者(策略)和評論家(動作值函數(shù)),其中,θπ和θq是參數(shù),P(A)表示動作空間概率分布.策略和動作值函數(shù)可以是線性的,也可以使用神經(jīng)網(wǎng)絡(luò)表示.行動者-評論家算法的目標(biāo)是尋找一個最優(yōu)策略使得累積獎賞最大化.

        在強化學(xué)習(xí)中,無論是狀態(tài)值函數(shù)還是動作值函數(shù)都滿足貝爾曼方程:

        Qπ(st,at)=Est~E,at~π,rt+1=R(st,at)[rt+1+
        γEat+1~π[Qπ(st+1,at+1)]].

        (2)

        式(2)中,由于期望回報是不可知的,所以值函數(shù)在隨機行動者-評論家算法中是用來做評估的,用于計算TD 誤差(TD error):

        δ=rt+1+γQ(st+1,at+1|θq)-Q(st,at|θq),

        (3)

        其中,γ是折扣因子,根據(jù)隨機策略梯度理論[6](stochastic policy gradient theorem),策略π(a|s,θπ)參數(shù)更新所使用的梯度可以表示為

        (4)

        (5)

        (6)

        其中,αθq,αθπ是梯度更新的步長參數(shù).

        行動者-評論家算法的模型如圖1所示:

        Fig. 1 The diagram of Actor-Critic framework圖1 行動者-評論家算法

        根據(jù)圖1,算法首先初始化策略和值函數(shù),進(jìn)入循環(huán),在每個時間步t,策略在狀態(tài)st選擇動作at并執(zhí)行,環(huán)境給出下一個狀態(tài)st+1和獎賞rt+1作為反饋,然后使用式(3)計算出TD誤差,最后使用式(5)和(6)來更新策略和值函數(shù)參數(shù),重復(fù)執(zhí)行以上步驟直至收斂.

        1.2 深度確定性策略梯度算法

        強化學(xué)習(xí)使用深度神經(jīng)網(wǎng)絡(luò)來逼近值函數(shù)時,會表現(xiàn)得不穩(wěn)定甚至?xí)l(fā)散.因此同DQN中一樣,深度確定性策略梯度算法(deep deterministic policy gradient, DDPG)使用了目標(biāo)網(wǎng)絡(luò)和經(jīng)驗重放2個機制.

        深度確定性策略梯度算法是確定性策略梯度算法與行動者-評論家算法的結(jié)合.與隨機策略梯度中定義的策略形式不同.在確定性行動者-評論家方法中用π(s|θπ):S→A表示行動者網(wǎng)絡(luò),注意S指向的是動作空間而不是動作空間的概率分布,用Q(s,a|θq)來表示評論家網(wǎng)絡(luò),這里θπ和θq表示網(wǎng)絡(luò)參數(shù).同時使用π(s|θπ′)和Q(s,a|θq′)表示目標(biāo)行動者網(wǎng)絡(luò)和目標(biāo)評論家網(wǎng)絡(luò).

        根據(jù)確定性策略梯度理論[23](deterministic policy gradient theorem),確定性策略的策略梯度可以表示為

        (7)

        DDPG評論家的優(yōu)化目標(biāo)是最小化損失函數(shù):

        L(θq)=Est~E,at=π(st|θπ),rt+1=R(st,at)
        [(Q(st,at|θq)-yt)2],

        (8)

        其中:

        yt=rt+1+γQ(st+1,π(st+1|θπ′)|θq′),

        (9)

        注意在yt中,動作是由目標(biāo)行動者網(wǎng)絡(luò)選擇的,狀態(tài)-動作對的值是由目標(biāo)評論家網(wǎng)絡(luò)評估的.

        為解決探索問題,DDPG中使用的噪聲是通過奧恩斯坦-烏倫貝克(Ornstein-Uhlenbeck, OU)過程[25]生成的時間相關(guān)噪聲.這里使用參數(shù)φ和σ表示為

        nt←-nt-1φ+N(0,σI).

        (10)

        最終動作為

        at=π(st|θπ)+nt.

        (11)

        目標(biāo)網(wǎng)絡(luò)使用了“soft”的更新方式

        θ′←τθ+(1-τ)θ′.

        (12)

        DDPG中使用的經(jīng)驗重放機制要求算法在每個時間步將得到的經(jīng)驗放入經(jīng)驗池.在訓(xùn)練時,算法從經(jīng)驗池中隨機抽取批量經(jīng)驗用于訓(xùn)練.

        2 算 法

        Fig. 2 An overview of EGDDAC-MA圖2 EGDDAC-MA結(jié)構(gòu)示意圖

        2.1 多行動者-評論家模型

        一般來說AC方法中只會在同一個情節(jié)中使用一個行動者網(wǎng)絡(luò)比如DDPG,或者是多個行動者網(wǎng)絡(luò)分別并行執(zhí)行不同的情節(jié)比如像A3C,又或者像MAAC[26](multi-agent actor-critic)一樣通過多個agent之間合作學(xué)習(xí).而EGDDAC-MA中定義的多個行動者網(wǎng)絡(luò),在情節(jié)之中不是并行的,也沒有交流與合作,而是在同一個情節(jié)中針對不同階段使用不同的行動者網(wǎng)絡(luò).對于學(xué)習(xí)任務(wù),EGDDAC-MA將任務(wù)情節(jié)進(jìn)行階段劃分,每個階段配置單獨的行動者網(wǎng)絡(luò)和經(jīng)驗池.

        某些任務(wù)在情節(jié)的不同階段可能由于狀態(tài)空間和動作空間之間的映射變化造成學(xué)習(xí)波動,對于單個行動者網(wǎng)絡(luò)來說就會很難學(xué)習(xí)(3.4節(jié)部分進(jìn)行實驗說明).而多個行動者網(wǎng)絡(luò),它們在各自所控制的階段學(xué)習(xí),互不干擾,在一定程度上緩解了學(xué)習(xí)的波動.此外,單個行動者網(wǎng)絡(luò)學(xué)習(xí)率是固定,但是對于多個行動者網(wǎng)絡(luò)來說,其每個階段的學(xué)習(xí)率是可以不同的.這樣實際上對于每一個情節(jié),EGDDAC-MA使用了多個策略進(jìn)行控制.

        模型中還有一個編碼過程,這個過程是嵌入到行動者網(wǎng)絡(luò)中的.其輸入的是狀態(tài)st,輸出狀態(tài)信號sst,對于具有較高維度的狀態(tài)空間,sst的維度要比st的維度要低,sst會作為行動者網(wǎng)絡(luò)和指導(dǎo)網(wǎng)絡(luò)的輸入.實際上在狀態(tài)空間中,有許多狀態(tài)是相似的,那么在進(jìn)行動作選擇時,它們的最優(yōu)動作很可能是相同的.通過編碼過程的降維,將狀態(tài)空間映射到低維空間中,這樣就可以使得相似的狀態(tài)在一定程度上重合,減小了狀態(tài)空間的大小.并且優(yōu)秀的經(jīng)驗會以元組(sst,at)的形式放入經(jīng)驗池B′用于訓(xùn)練指導(dǎo)網(wǎng)絡(luò),從而加速G(ss|θg)的學(xué)習(xí).

        要注意的是,EGDDAC-MA中并沒有把狀態(tài)信號sst用于評論家網(wǎng)絡(luò),這是因為編碼層的參數(shù)在不斷更新,因此同一個狀態(tài)在編碼層中得到的狀態(tài)信號會不斷變化,這樣就不利于評論家網(wǎng)絡(luò)進(jìn)行評估.此外,評論家網(wǎng)絡(luò)也沒有創(chuàng)建多個,因為評論家網(wǎng)絡(luò)在進(jìn)行網(wǎng)絡(luò)參數(shù)更新時,使用了當(dāng)前狀態(tài)-動作對的值函數(shù)Q(st,at|θq)作為預(yù)測值,使用后繼狀態(tài)來計算目標(biāo)值,然后通過反向傳播進(jìn)行參數(shù)更新.在預(yù)測值和目標(biāo)值的計算之中不僅使用了前一個狀態(tài),還使用了后一個狀態(tài),而樣本是從經(jīng)驗池中隨機抽樣的,無法判斷樣本中后繼狀態(tài)是否屬于下一個階段,這樣在階段連接處的狀態(tài),用其來進(jìn)行訓(xùn)練時就不好計算評論家訓(xùn)練所需的目標(biāo)值,因此模型中就沒有使用多個評論家的結(jié)構(gòu).

        EGDDAC-MA在學(xué)習(xí)過程中,每個時間步,首先判斷該時間步屬于的階段,使用對應(yīng)階段的行動者網(wǎng)絡(luò)來生成原始動作.更新網(wǎng)絡(luò)參數(shù)時,只有對應(yīng)的那一個行動者網(wǎng)絡(luò)會被更新,并通過確定性策略梯度理論計算梯度:

        (13)

        EGDDAC-MA的目標(biāo)行動者網(wǎng)絡(luò)的更新也是使用“soft”更新方式.其評論家網(wǎng)絡(luò)的更新由于受到指導(dǎo)網(wǎng)絡(luò)的影響,將在2.2節(jié)詳細(xì)介紹.

        2.2 基于經(jīng)驗的指導(dǎo)

        連續(xù)動作空間的一個挑戰(zhàn)是探索問題的解決.一般來說,離散動作空間問題的探索是通過改變動作的選擇概率來實現(xiàn)的.而連續(xù)動作空間中由于動作的連續(xù)性不方便為每個動作分配相應(yīng)的概率,因此通過改變選擇概率來實現(xiàn)探索就不適用于連續(xù)動作空間.由于動作是連續(xù)變化的,因此可以通過直接改變動作來實現(xiàn)探索,通常是直接在動作空間中加上外部探索噪聲,比如DDPG中使用的OU噪聲.但是這種探索是盲目的,并不能有效地學(xué)習(xí)到優(yōu)秀經(jīng)驗.與DDPG使用外部噪聲不同,本文提出的EGDDAC-MA并不需要額外的噪聲源,而是通過自身優(yōu)秀經(jīng)驗指導(dǎo)學(xué)習(xí).

        在DDPG算法的學(xué)習(xí)過程中,agent會遇到一些具有高回報的軌跡,這些軌跡中包含有許多有用的信息,但是這些信息并沒有被有效利用.因此,為了利用這些經(jīng)驗,EGDDAC-MA中定義了一個存儲優(yōu)秀經(jīng)驗的經(jīng)驗池B′.B′的大小是一定的,不同于普通經(jīng)驗池的是,其存放經(jīng)驗的過程是其本身的進(jìn)化過程.此外基于這個經(jīng)驗池,定義了一個指導(dǎo)網(wǎng)絡(luò)G(ss|θg).

        對于普通的經(jīng)驗池,在每個時間步,根據(jù)該時間步所屬的階段,經(jīng)驗會以五元組(st,at,rt+1,st+1,sst+1)的形式放入相應(yīng)的經(jīng)驗池中,這里的sst+1在式(19)中用于指導(dǎo)評論家更新.對于經(jīng)驗池B′,并不是在每個時間步放入經(jīng)驗,而是在每個情節(jié)結(jié)束時,先判斷該情節(jié)是否是優(yōu)秀的情節(jié),若是,則放入B′中,否則舍去.注意放入經(jīng)驗時,是以情節(jié)經(jīng)驗[(ss0,a0),(ss1,a1),…,T]的形式放入的,T是情節(jié)結(jié)束標(biāo)志.每個情節(jié)是否優(yōu)秀是相對的,會隨著學(xué)習(xí)進(jìn)程而變化.其判斷標(biāo)準(zhǔn)如下:

        (14)

        其中:

        (15)

        表示已經(jīng)放入經(jīng)驗池B′中的最近k個優(yōu)秀情節(jié)的回報均值,m表示第m個情節(jié),Gm表示其回報.

        指導(dǎo)網(wǎng)絡(luò)G(ss|θg)是在B′上通過監(jiān)督學(xué)習(xí)而來的,其訓(xùn)練所用的損失函數(shù)為

        L(θg)=E[(G(sst|θg)-at)2].

        (16)

        指導(dǎo)網(wǎng)絡(luò)G(ss|θg)在進(jìn)化的經(jīng)驗池B′上通過監(jiān)督學(xué)習(xí)學(xué)習(xí),這樣G(ss|θg)學(xué)習(xí)到的經(jīng)驗也是不斷進(jìn)化的.并且經(jīng)驗池B′中的經(jīng)驗是比普通經(jīng)驗池中的經(jīng)驗更好的,而經(jīng)驗網(wǎng)和行動網(wǎng)事實上都是狀態(tài)到動作的映射,因此在進(jìn)行動作選擇時,可以使用經(jīng)驗網(wǎng)為動作加上一個指導(dǎo)項

        (17)

        其中,ξ是干擾系數(shù),0<ξ?1.通過式(17),指導(dǎo)網(wǎng)絡(luò)會引導(dǎo)行動者網(wǎng)絡(luò)向具有高回報的動作方向進(jìn)行選擇.

        由梯度式(13)可知評論家網(wǎng)絡(luò)也影響著行動者網(wǎng)絡(luò)的學(xué)習(xí).根據(jù)式(11),DDPG只在動作空間中加入探索噪聲,而EGDDAC-MA中的指導(dǎo)網(wǎng)絡(luò)G(ss|θg)不僅指導(dǎo)動作的選擇而且還對評論家網(wǎng)絡(luò)的更新進(jìn)行指導(dǎo).評論家網(wǎng)絡(luò)更新所使用的標(biāo)簽值式(9)的改寫為

        (18)

        qt+1=qt+1+ξ(Q(st+1,
        G(sst+1|θg)|θq′)-qt+1),

        (19)

        yt=rt+1+γqt+1φ,

        (20)

        其中,φ是情節(jié)是否結(jié)束的標(biāo)志,若情節(jié)結(jié)束則其值為0,否則為1.最終評論家網(wǎng)絡(luò)更新所使用的損失函數(shù)表示為

        (21)

        每次在進(jìn)行動作選擇時,指導(dǎo)網(wǎng)絡(luò)G(ss|θg)通過式(17)指導(dǎo)動作的選擇,并且通過式(19)指導(dǎo)評論家網(wǎng)絡(luò)的學(xué)習(xí).由于經(jīng)驗池B′中的經(jīng)驗集合是普通經(jīng)驗池中經(jīng)驗集合的子集,所以當(dāng)行動者網(wǎng)絡(luò)收斂時,指導(dǎo)網(wǎng)絡(luò)也就自然收斂了.此時,式(17)和式(19)中的指導(dǎo)也就不存在了.可以看出EGDDAC-MA與DDPG一樣都屬于異策略(off-policy)學(xué)習(xí),即學(xué)習(xí)的策略和執(zhí)行的策略是不一樣的.整個算法的過程如算法1所示.

        算法1.EGDDAC-MA.

        ② FOREPISODE=1,2,…,M

        ③ 情節(jié)回報G=0,空的情節(jié)軌跡Trace,獲取初始狀態(tài)s1;

        ④ FORt=1,2,…,T

        ⑤ 判斷情節(jié)所屬階段n;

        ⑦ 加入指導(dǎo):at=at+ξ(G(sst|θg)-at);

        ⑧ 執(zhí)行動作at并獲取獎賞rt+1和后繼狀態(tài)st+1;

        ⑨ 累積回報:G=G+rt+1;

        ⑩ 通過行動者網(wǎng)絡(luò)中的編碼層對st+1進(jìn)行處理,得到sst+1;

        更新評論家網(wǎng)絡(luò)參數(shù);

        3 實 驗

        3.1 實驗平臺及實驗介紹

        本文采用了OpenAI GYM平臺[27]上Mujoco物理模擬器[28]中的6個連續(xù)性控制任務(wù)作為實驗環(huán)境.GYM是開發(fā)和對比強化學(xué)習(xí)的一個開源工具包,其提供了各種連續(xù)控制性任務(wù)的環(huán)境接口,旨在促進(jìn)機器人、生物力學(xué)、圖形和動畫以及其他需要快速精確仿真的領(lǐng)域的研究和開發(fā),為人工智能研究者提供了豐富的模擬實驗環(huán)境.此外,為了進(jìn)一步說明算法的適用性,本文還額外增加了2個PyBullet連續(xù)任務(wù).PyBullet強化學(xué)習(xí)環(huán)境也是基于GYM平臺的,使用的是Bullet物理模擬器.整體來說PyBullet強化學(xué)習(xí)環(huán)境要比Mujoco環(huán)境更難.

        本文使用的6個Mujoco連續(xù)任務(wù)包括:

        1) Ant.使3D四足螞蟻形態(tài)機器人學(xué)會快速向前行走,如圖3所示;

        2) HumanoidStandup.使3D人形態(tài)機器人學(xué)會快速站立;

        3) Humanoid.使3D人形態(tài)機器人學(xué)會行走;

        4) HalfCheetah.使2D-獵豹形態(tài)機器人學(xué)會快速奔跑;

        5) InvertedDoublePendulum.平衡具有2個關(guān)節(jié)的平衡桿;

        6) Reacher.使2D手臂形態(tài)機器人伸向指定位置.

        Fig. 3 Ant圖3 四足螞蟻形態(tài)機器人

        使用的2個PyBullet連續(xù)任務(wù)包括:

        1) AntBullet.是類似于Mujoco中Ant的連續(xù)任務(wù),只是加重了Ant的重量,來鼓勵其行走過程中以更多條腿接觸地面;

        2) Walker2DBullet.任務(wù)是使雙足機器人學(xué)會行走,產(chǎn)生更加逼真的慢節(jié)奏動作,如圖4所示:

        Fig. 4 Walker2DBullet圖4 Bullet中的2D行走任務(wù)

        本文首先說明優(yōu)秀經(jīng)驗篩選方法的效果,以及基于經(jīng)驗的指導(dǎo)機制和多行動者機制的效果,然后對比了EGDDAC-MA,DDPG,TRPO和PPO這4種算法的性能,最后研究使用專家經(jīng)驗取代自身優(yōu)秀經(jīng)驗對EGDDAC-MA的影響.本文實驗使用Intel?Xeon?CPU E5-2680處理器,使用NVIDIA Tesla P40圖形處理器對深度學(xué)習(xí)運算進(jìn)行輔助加速計算.

        3.2 參數(shù)設(shè)置

        本文實驗中所使用的DDPG算法其網(wǎng)絡(luò)結(jié)構(gòu)和參數(shù)設(shè)置與參考文獻(xiàn)中設(shè)置一樣,TRPO和PPO算法來自是OpenAI baselines[29]的深度強化學(xué)習(xí)算法集.在EGDDAC-MA中,其使用的評論家網(wǎng)絡(luò)與DDPG算法中的評論家網(wǎng)絡(luò)設(shè)置一樣.EGDDAC-MA的每一個編碼層包含2層,第1層有300個神經(jīng)網(wǎng)絡(luò)節(jié)點,第2層有100個網(wǎng)絡(luò)節(jié)點.每個行動者網(wǎng)絡(luò)包含2層,第1層有200個神經(jīng)網(wǎng)絡(luò)節(jié)點,第2層有100個神經(jīng)網(wǎng)絡(luò)節(jié)點.EGDDAC-MA的指導(dǎo)網(wǎng)絡(luò)也包含2層,第1層200個神經(jīng)網(wǎng)絡(luò)節(jié)點,第2層有100個神經(jīng)網(wǎng)絡(luò)節(jié)點.EGDDAC-MA的每一個普通經(jīng)驗池容量是300 000,而經(jīng)驗池B′的容量是100 000,是普通經(jīng)驗池1/3.干擾系數(shù)ξ=1×10-5,mini-bach的大小是64,τ=0.001,學(xué)習(xí)率γ=0.99,k=50.評論家網(wǎng)絡(luò)的學(xué)習(xí)率是1×10-3,指導(dǎo)網(wǎng)絡(luò)的學(xué)習(xí)率是0.000 2,行動者網(wǎng)絡(luò)的學(xué)習(xí)率是1×10-5.每個Mujoco環(huán)境下每個算法訓(xùn)練的總時間步數(shù)是250萬步,除了Reacher中是100萬步,這是因為Reacher在100萬步內(nèi)可以學(xué)習(xí)到一個穩(wěn)定的策略.此外,2個PyBullet環(huán)境下每個算法訓(xùn)練的總時間步數(shù)是400萬步.由于實驗中使用了多個不同環(huán)境,為了統(tǒng)一參數(shù),EGDDAC-MA都是以60個時間步作為一個階段來設(shè)置的.每個情節(jié)的最長時間步設(shè)置為1 000.

        3.3 優(yōu)秀經(jīng)驗篩選方法的效果

        為了說明通過式(14)和式(15)的篩選,經(jīng)驗池B′中的經(jīng)驗在變好,這里通過均值μ=1,方差σ2分別為0.1,1,5,10,20的正態(tài)分布來做一個模擬實驗.實驗中會定義一個經(jīng)驗池B′,每個情節(jié)只是正態(tài)分布生成的一個隨機變量,然后使用這個隨機變量作為該情節(jié)的回報,同時情節(jié)經(jīng)驗也用這個隨機變量表示,在B′存放經(jīng)驗時,就使用式(14)和式(15)來判斷情節(jié)是否優(yōu)秀,若優(yōu)秀則將該情節(jié)經(jīng)驗也就是對應(yīng)的隨機變量(也表示情節(jié)回報)放入B′.模擬中k取的10,經(jīng)驗池容量為100,情節(jié)總數(shù)為100 000,模擬結(jié)果如圖5所示.第1幅圖顯示的是放入經(jīng)驗池中的最近k個情節(jié)的平均回報隨時間步數(shù)的變化.第2幅圖顯示的是放入經(jīng)驗池中的所有情節(jié)的平均回報隨時間步數(shù)的變化.從圖5可以看出,雖然均值是1,但是通過使用式(14)和式(15)對優(yōu)秀經(jīng)驗進(jìn)行判定,無論方差多大,最近k個情節(jié)的均值,和整個經(jīng)驗池的均值都是向著大于1的方向進(jìn)化的,這說明經(jīng)驗池中的經(jīng)驗整體上在變得越來越好.

        Fig. 5 The results of normal distribution simulating episodic return 圖5 正態(tài)分布模擬情節(jié)回報值的結(jié)果

        3.4 基于經(jīng)驗的指導(dǎo)和多行動者機制的優(yōu)勢

        為了說明基于經(jīng)驗的指導(dǎo)和多行動者機制的優(yōu)勢,本文在InvertedDoublePendulum任務(wù)上對比了EGDDAC-MA,EGDDAC-One actor和DDPG的性能.首先為了說明基于經(jīng)驗指導(dǎo)的方法優(yōu)于外部噪聲探索,這里對比只使用一個行動者網(wǎng)絡(luò)的EGDDAC-One actor和使用外部OU噪聲探索的DDPG.對比結(jié)果如圖6所示,圖6中橫坐標(biāo)為訓(xùn)練時間步,縱坐標(biāo)為平均回報.

        Fig. 6 The average return in InvertedDoublePendulum圖6 在Inverte-dDoublePendulum中的平均回報對比

        可以看見DDPG在整個訓(xùn)練過程中,平均回報處于較低值,而且沒有上升趨勢,這說明基于外部OU噪聲的探索,并沒有探索到好的經(jīng)驗供agent學(xué)習(xí).但EGDDAC-One actor可以獲得更高的平均回報,即使整個訓(xùn)練過程中波動很大.這是因為基于經(jīng)驗的指導(dǎo)機制可以引導(dǎo)agent傾向選擇具有高回報軌跡,而外部的OU噪聲探索是沒有方向性的盲目探索.

        為了緩解圖6中出現(xiàn)的波動,我們在基于經(jīng)驗的指導(dǎo)的基礎(chǔ)上加上多行動者機制,如圖6所示.這里對比EGDDAC-MA和EGDDAC-One actor 在InvertedDoublePendulum中的學(xué)習(xí)表現(xiàn).可以看出EGDDAC-MA沒有出現(xiàn)像EGDDAC-One actor中的劇烈波動,而是在一定程度波動內(nèi)穩(wěn)步上升.這說明多行動者機制可以緩解單個網(wǎng)絡(luò)學(xué)習(xí)壓力.而且可以看到經(jīng)過200萬步后網(wǎng)絡(luò)學(xué)習(xí)的波動被控制在一定范圍之內(nèi).

        3.5 對比不同算法的性能

        本文在Mujoco的6個連續(xù)任務(wù)和PyBullet 的2個連續(xù)任務(wù)中對比了EGDDAC-MA,DDPG,TRPO和PPO這4種算法的性能.其中TRPO和PPO也都是基于AC方法的改進(jìn),與DDPG和EGDDAC-MA不同的是,TRPO和PPO兩者都使用高斯策略實現(xiàn)探索,并且沒有使用經(jīng)驗回放,而是在線進(jìn)行更新.實驗結(jié)果如圖7所示.

        在Ant環(huán)境中,DDPG整體上呈現(xiàn)先上升后下降的學(xué)習(xí)趨勢.TRPO和PPO的平均回報雖然隨著學(xué)習(xí)的進(jìn)行會有增長趨勢,但是兩者最終的平均回報值都維持在一個較低值.而EGDDAC-MA 的表現(xiàn)比其他3種算法都好,最終平均回報值維持在4 000左右.此外在HalfCheetah,HumanoidStandup和Reacher中,EGDDAC-MA也是明顯優(yōu)于其他方法.這是因為DDPG以及TRPO和PPO算法的探索是盲目的,而基于優(yōu)秀經(jīng)驗的指導(dǎo)機制,會引導(dǎo)agent去選擇具有高回報的軌跡,因此EGDDAC-MA會表現(xiàn)的更好.在Humanoid中,EGDDAC-MA前期表現(xiàn)不如TRPO和PPO,可能是因為TRPO和PPO這類方法直接是在線學(xué)習(xí)的不需要經(jīng)驗累積,而EGDDAC-MA的經(jīng)驗池B′中的優(yōu)秀經(jīng)驗需要經(jīng)歷一定的時間步去收集,這個問題在Inverted-DoublePendulum中也可以看到.但是EGDDAC-MA最終在Humanoid和 InvertedDoubleP-endulum兩個環(huán)境中都超過TRPO和PPO.

        從圖7的實驗結(jié)果可以看出:EGDDAC-MA的性能很大程度上取決于經(jīng)驗池B′中經(jīng)驗的優(yōu)秀程度,因此下一個實驗我們將展現(xiàn)使用專家經(jīng)驗取代自身優(yōu)秀經(jīng)驗后,EGDDAC-MA的學(xué)習(xí)效果.

        Fig. 7 The average returns of four approaches in eight continues control tasks圖7 4種方法在8個不同連續(xù)任務(wù)中的平均回報

        3.6 使用專家經(jīng)驗的EGDDAC-MA

        相比基于自身優(yōu)秀經(jīng)驗的EGDDAC-MA,基于專家經(jīng)驗的EGDDAC-MA其指導(dǎo)網(wǎng)絡(luò)的輸入不再是狀態(tài)信號而是狀態(tài),而且B′中直接裝入的是預(yù)先訓(xùn)練得到的專家經(jīng)驗.

        整個實驗是在InvertedDoublePendulum環(huán)境中進(jìn)行的,探索了不同干擾因子下,基于專家經(jīng)驗的EGDDAC-MA的學(xué)習(xí)效果.實驗結(jié)果如圖8所示,圖8中的前5幅圖片,分別是在ξ=0.9,0.7,0.5,0.3,0.1下,基于專家經(jīng)驗的EGDDAC-MA的行動者網(wǎng)絡(luò)的學(xué)習(xí)表現(xiàn).要注意的是,為了體現(xiàn)行動者網(wǎng)絡(luò)的學(xué)習(xí)效果,圖8中的每一個綠點都表示沒有指導(dǎo)網(wǎng)絡(luò)的指導(dǎo)時,只使用行動者網(wǎng)絡(luò)來生成的情節(jié)回報.也就是在1 000 000時間步的訓(xùn)練過程中,每隔500時間步就會單獨使用行動者網(wǎng)絡(luò)來生成一個情節(jié),因此每一個ξ下,都有2 000個綠點.圖8中紅線表示專家水平.圖8中最后一幅圖片對比訓(xùn)練過程中不同ξ下的只使用行動者網(wǎng)絡(luò)生成的平均情節(jié)回報隨時間步數(shù)的變化.

        從圖8可以看出,在ξ=0.9時,行動者網(wǎng)絡(luò)的情節(jié)回報雖然有向上趨勢,但是最終基本上維持在一個較低值.在ξ=0.7時,情節(jié)回報的向上趨勢更加明顯,但大部分回報值都很低.在ξ=0.5時,可以看見200 000時間步后,行動者網(wǎng)絡(luò)很快學(xué)到一個不錯策略,情節(jié)回報值基本上達(dá)到專家水平,只有少數(shù)情節(jié)回報值較低.在ξ為0.1和0.3時,隨著ξ值的降低,情節(jié)回報值上升趨勢會下降,而且大多數(shù)情節(jié)回報值在專家水平之下.

        Fig. 8 The effect of using expert experiences圖8 使用專家經(jīng)驗的效果

        整體上來看,在ξ=0.5時,在基于專家經(jīng)驗的指導(dǎo)下,行動者網(wǎng)絡(luò)可以快速學(xué)習(xí)到一個不錯的策略,而在ξ高于0.5或低于0.5時,行動者網(wǎng)絡(luò)學(xué)習(xí)的并不好.出現(xiàn)這種現(xiàn)象的原因是,若ξ值過高,高于0.5,此時行動的選擇,主要取決于指導(dǎo)網(wǎng)絡(luò),而行動者網(wǎng)絡(luò)對行動決策貢獻(xiàn)較小,這樣得到的經(jīng)驗是不利于行動者網(wǎng)絡(luò)學(xué)習(xí)的.若ξ值過低,低于0.5,此時行動的選擇,主要取決于行動者網(wǎng)絡(luò)自身,指導(dǎo)網(wǎng)絡(luò)對行動決策貢獻(xiàn)較小,而行動者網(wǎng)絡(luò)學(xué)習(xí)的方向并不一定是專家策略的方向,這樣行動者網(wǎng)絡(luò)的決策與指導(dǎo)網(wǎng)絡(luò)的決策就可能出現(xiàn)沖突,而且指導(dǎo)網(wǎng)絡(luò)同樣會影響評論家網(wǎng)絡(luò)的學(xué)習(xí),因此也不利于行動者網(wǎng)絡(luò)學(xué)習(xí).只有ξ=0.5時,行動的決策受行動者網(wǎng)絡(luò)和指導(dǎo)網(wǎng)絡(luò)均等程度上的控制,評論家的學(xué)習(xí)也是這樣,從而行動者網(wǎng)絡(luò)可以快速的學(xué)習(xí)一個不錯的策略.與基于專家經(jīng)驗的EGDDAC-MA在ξ=0.5時表現(xiàn)最好不同,基于自身優(yōu)秀經(jīng)驗的EGDDAC-MA的ξ一定要是一個較小的值.這是因為指導(dǎo)網(wǎng)絡(luò)所使用的經(jīng)驗是自身優(yōu)秀經(jīng)驗,是行動者網(wǎng)絡(luò)學(xué)習(xí)所使用的自身經(jīng)驗的子集,從而指導(dǎo)網(wǎng)絡(luò)和行動者網(wǎng)絡(luò)學(xué)習(xí)的策略的方向是一致的.因此,在選擇動作和更新評論家網(wǎng)絡(luò)時,指導(dǎo)網(wǎng)絡(luò)只需要做一個微弱的指導(dǎo)就可以.

        4 結(jié)束語

        連續(xù)控制問題一直是強化學(xué)習(xí)研究的一個重要方向.確定性策略梯度方法和深度學(xué)習(xí)結(jié)合可以在一定程度上解決這類問題.但是這類方法在一些連續(xù)任務(wù)中的表現(xiàn)并不是很好,這很大程度上是由于探索不當(dāng)造成的.本文提出了一種不需要外部探索噪聲的基于經(jīng)驗指導(dǎo)的深度確定性多行動者-評論家算法(EGDDAC-MA).

        EGDDAC-MA中通過定義多個行動者網(wǎng)絡(luò)來應(yīng)對情節(jié)的不同階段,這樣可以緩解情節(jié)內(nèi)部波動對單個網(wǎng)絡(luò)學(xué)習(xí)造成的壓力,并通過在自身優(yōu)秀經(jīng)驗上學(xué)習(xí)得來的指導(dǎo)網(wǎng)絡(luò)為動作執(zhí)行以及評論家網(wǎng)絡(luò)更新提供指導(dǎo).此外本文不僅使用自身優(yōu)秀經(jīng)驗來訓(xùn)練指導(dǎo)網(wǎng)絡(luò),也嘗試了使用專家經(jīng)驗來訓(xùn)練,并且發(fā)現(xiàn)使用專家經(jīng)驗,在ξ=0.5時EGDDAC-MA可以更快的學(xué)到一個不錯的策略.最終,Mujoco上的模擬實驗結(jié)果顯示:相比于DDPG,TRPO和PPO,EGDDAC-MA在大多數(shù)連續(xù)控制任務(wù)上均取得更好的效果.

        實際上,本文采用的是簡單的階段劃分方法,也取得了不錯的效果,未來的一些工作可以使用無監(jiān)督方法來對情節(jié)進(jìn)行自適應(yīng)的階段劃分來提高階段劃分的有效性.

        猜你喜歡
        經(jīng)驗動作策略
        2021年第20期“最值得推廣的經(jīng)驗”評選
        黨課參考(2021年20期)2021-11-04 09:39:46
        例談未知角三角函數(shù)值的求解策略
        我說你做講策略
        經(jīng)驗
        2018年第20期“最值得推廣的經(jīng)驗”評選
        黨課參考(2018年20期)2018-11-09 08:52:36
        動作描寫要具體
        高中數(shù)學(xué)復(fù)習(xí)的具體策略
        畫動作
        動作描寫不可少
        非同一般的吃飯動作
        亚洲av综合色区在线观看| 国产成人av大片大片在线播放 | 久久在一区二区三区视频免费观看| 人人妻人人澡人人爽国产一区| 特级做a爰片毛片免费看108| 亚洲AV无码成人网站久久精品| 亚洲一区日本一区二区| 久久一道精品一区三区| 丁香美女社区| 国产偷国产偷亚洲清高| 中文字幕一区二区三区日韩网| 熟妇人妻精品一区二区视频| 好紧好爽免费午夜视频| 无码精品国产va在线观看| 亚洲免费一区二区三区视频| 伊人影院成人在线观看| 中文字幕av中文字无码亚| 午夜男女爽爽爽在线视频| 中文字幕无码免费久久9一区9 | 国产丝袜美腿在线播放| 在线看片免费人成视频电影| 亚洲av色福利天堂| 亚洲香蕉av一区二区蜜桃| 与漂亮的女邻居少妇好爽 | 六月婷婷亚洲性色av蜜桃| 国产男小鲜肉同志免费| 国产人成精品免费视频| 亚洲av日韩一区二三四五六七| 亚洲中文字幕人妻av在线| 久久人与动人物a级毛片| 亚洲免费视频网站在线| 大香蕉青青草视频在线| 成人乱码一区二区三区av| 国产精品二区在线观看| 人妻少妇无乱码中文字幕| 色偷偷久久久精品亚洲| 久久久精品人妻一区二区三区| 国产欧美激情一区二区三区| 午夜av天堂精品一区| 久久精品无码一区二区三区免费| 久久无码精品精品古装毛片|