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

        ?

        基于期望值函數(shù)的離策略深度Q神經(jīng)網(wǎng)絡(luò)算法

        2019-04-11 07:40:40劉川莉蔡樂才居錦武吳昊霖
        關(guān)鍵詞:狀態(tài)值神經(jīng)網(wǎng)絡(luò)維度

        劉川莉,蔡樂才,高 祥,居錦武,吳昊霖

        (1.四川輕化工大學(xué)自動化與信息工程學(xué)院,四川 自貢643000;2.人工智能四川省重點實驗室,四川 自貢643000;3.宜賓學(xué)院,四川 宜賓644000;4.企業(yè)信息化與物聯(lián)網(wǎng)測控技術(shù)四川省高校重點實驗室,四川 自貢643000;5.四川大學(xué)計算機學(xué)院,成都610065)

        引言

        深度強化學(xué)習(xí)作為人工智能領(lǐng)域一個新的并且最活躍的研究熱點,得到了廣泛的關(guān)注和長期的發(fā)展[1]。近年來,深度學(xué)習(xí)(Deep Learning,DL)作為機器學(xué)習(xí)領(lǐng)域一個研究熱點[2],其基本思想是對于多層的網(wǎng)絡(luò)結(jié)構(gòu),通過非線性變化,結(jié)合底層特征,形成容易區(qū)分、抽象的高層表示,以便于發(fā)現(xiàn)數(shù)據(jù)特征表示[3]。強化學(xué)習(xí)(Reinforcement Learning,RL)是機器學(xué)習(xí)領(lǐng)域另一個分支[4]。強化學(xué)習(xí)又稱為評價學(xué)習(xí)、再勵學(xué)習(xí)[5],在一些任務(wù)中,需要利用深度學(xué)習(xí)來學(xué)習(xí)大規(guī)模的數(shù)據(jù)表征,并根據(jù)此表征進行自我激勵的強化學(xué)習(xí),以達到優(yōu)化策略。深度強化學(xué)習(xí)(Deep Reinforcement Learning,DRL)應(yīng)運而生,它使用深度學(xué)習(xí)來擬合強化學(xué)習(xí)中與確定動作策略有關(guān)的參數(shù),如值函數(shù),其本質(zhì)是強化學(xué)習(xí)算法的一個發(fā)展。深度強化學(xué)習(xí)被認為是實現(xiàn)通用人工智能的重要途徑[6],因其通用性在眾多領(lǐng)域中受到推崇,如機器人手臂控制、參數(shù)優(yōu)化[6]、機器人控制[7-9]、機器視覺[10]、游戲[11]等。

        2015年,Mnih等人[12]提出了深度Q神經(jīng)網(wǎng)絡(luò)(Deep Q-Network,DQN)算法,該算法采用神經(jīng)網(wǎng)絡(luò)來逼近值函數(shù),實現(xiàn)了使用少量的先驗知識完成端對端的自主學(xué)習(xí)任務(wù)。在DQN算法中,通常使用的是Q-learning算法,該算法以下一個狀態(tài)最大的動作值函數(shù)作更新目標,表面上看似短期內(nèi)會直接向“貪婪”的方向收斂,其實際可能不是以長期回報作為最大方向。針對此問題,采用期望值思想求解的期望值函數(shù)取代深度Q神經(jīng)網(wǎng)絡(luò)算法中最大動作值函數(shù)作為更新目標,提出了基于期望值函數(shù)的離策略DQN算法(DQN Based on Expected Value Function,EVDQN)。

        1 強化學(xué)習(xí)值函數(shù)更新方法

        強化學(xué)習(xí)按照評估策略和行為策略是否一致可以分為兩種:在策略(on-policy)強化學(xué)習(xí)算法和離策略(off-policy)強化學(xué)習(xí)算法[13]。強化學(xué)習(xí)最終是以迭代的基本思想持續(xù)不斷地基于行為策略產(chǎn)生動作并作用于環(huán)境,在環(huán)境中對產(chǎn)生的策略進行評估并用于更新值函數(shù),以達到獲得最為穩(wěn)定的策略輸出。

        1.1 在策略強化學(xué)習(xí)

        時間差分學(xué)習(xí)(Temporal-Difference learning,TD learning)結(jié)合了動態(tài)規(guī)劃算法(DP)和蒙特卡羅方法(MC)兩種算法的優(yōu)點。蒙特卡羅狀態(tài)值函數(shù)更新表示為:

        其中:Rt是每一個episode結(jié)束以后獲得的實際累積回報;α是學(xué)習(xí)率,利用實際累積回報Rt當(dāng)作是狀態(tài)值函數(shù)V(st)的估計值。也就是針對每一個episode,先得到實際回報和當(dāng)前狀態(tài)值函數(shù)的偏差,利用該偏差值乘以學(xué)習(xí)率α來更新得到V(st)新的估計值。

        將公式(1)中Rt更換成rt+1+γV(st+1),得到了時間差分學(xué)習(xí)的狀態(tài)值函數(shù)更新公式:

        在策略強化學(xué)習(xí)方法主要特點是用于評估和改進策略的評估策略(Estimation Policy)和用于產(chǎn)生動作的行為策略(Behavior Policy)是同一個策略[14]。Sarsa算法屬于on-policy算法[15],Sarsa算法估計的是動作值函數(shù)而不是狀態(tài)值函數(shù),一個狀態(tài)-動作對序列片段以及相應(yīng)回報值如圖1所示。

        圖1 狀態(tài)-動作對序列片段相應(yīng)回報值

        Sarsa算法動作值函數(shù)的更新表示為[16]:

        其中,針對每一個非終止?fàn)顟B(tài)St,當(dāng)下一個狀態(tài)到達后,都用公式(3)更新Q(st,at),如果St是終止?fàn)顟B(tài),則表示當(dāng)前迭代完畢。由于動作值函數(shù)的每次更新都與st,at,at+1,st+1有關(guān),所以該算法被命名為Sarsa算法,也就是說Agent在狀態(tài)執(zhí)行動作獲得動作值函數(shù),狀態(tài)轉(zhuǎn)移到st+1;接著Agent在狀態(tài)執(zhí)行動作得到動作值函數(shù);最后使用下一狀態(tài)動作值函數(shù)更新當(dāng)前狀態(tài)動作值函數(shù)。

        1.2 離策略強化學(xué)習(xí)

        在實際問題中,會面臨復(fù)雜性較高的決策問題,這就使得在策略學(xué)習(xí)算法無法進行求解,此時需要用到離策略強化學(xué)習(xí)算法。離策略算法通過遵循另一個策略(行為策略)來估計某一個策略的值函數(shù)(評估策略)。離策略算法可以看作是基于在策略算法的一個改進。離策略方法中最為常用的算法是Q-learning算法,它選取動作時遵循的策略與動作值函數(shù)更新時的策略不同。Q-learning算法的動作值函數(shù)更新表示為:

        Sarsa算法和Q-learning算法最大的不同點在于更新Q值的時候,Q-learning算法采用了Q(st+1,a)值的最大動作,也就是直接使用了最大Q(st+1,a)的值,并且選取動作at時采用的策略與當(dāng)前執(zhí)行的策略沒有任何關(guān)系。

        同理,動作值函數(shù)的遞推關(guān)系式為:

        2 期望值函數(shù)的離策略DQN算法

        深度Q神經(jīng)網(wǎng)絡(luò)算法是通過Q-learning使用reward來構(gòu)造標簽,通過經(jīng)驗回放(Experience Replay)的方法將系統(tǒng)探索環(huán)境得到的數(shù)據(jù)儲存起來,隨機采樣樣本更新深度神經(jīng)網(wǎng)絡(luò)的參數(shù),可以解決相關(guān)性及非靜態(tài)分布問題。

        2.1 DQN算法應(yīng)用在策略方法分析

        從式(3)可以看出,在策略(on-policy)的更新方式除了使用當(dāng)前狀態(tài)st、當(dāng)前狀態(tài)執(zhí)行動作at、下一狀態(tài)st+1以及當(dāng)前狀態(tài)st執(zhí)行動作at所獲得的立即回報rt以外,還需要在下一狀態(tài)st+1執(zhí)行的動作at+1用于滿足使用實際的行為策略進行評估策略工作。在策略算法是一種單步更新法,在環(huán)境中每走一步,更新一次自己的行為準則。在策略方法訓(xùn)練使用五元組Transition<st,at,st+1,at+1,done>,而該五元組需要進行兩次動作才可以獲得。

        “經(jīng)驗回放”方法可以消除相關(guān)性,而經(jīng)驗池獲取樣本的方式是每執(zhí)行一次動作策略便存儲五元組,該種機制明顯不適合在策略方法。因此將DQN算法應(yīng)用于在策略方法中是沒有意義且不可行的。

        2.2 DQN算法應(yīng)用離策略方法分析

        DQN算法中另外一個重要的改進是增加了一個直接與目標值函數(shù)有關(guān)的神經(jīng)網(wǎng)絡(luò),使用原逼近值函數(shù)的神經(jīng)網(wǎng)絡(luò)參數(shù)來評估下一個狀態(tài)的動作值函數(shù)Q(s′,a′;w-),通過下一個狀態(tài)的動作值函數(shù)Q(s′,a′;w-)為Q-network提供一個較為穩(wěn)定的訓(xùn)練目標。經(jīng)過足夠多的訓(xùn)練后,可以使學(xué)習(xí)得到有效的動作策略,最小化了損失函數(shù)。

        在DQN算法中,將Q-network的訓(xùn)練目標來定義Q-learning算法的迭代目標函數(shù):

        式(7)使用了下一狀態(tài)最大的動作值函數(shù)提供訓(xùn)練目標。該方法使用最典型的離策略Q-learning算法的思想來為Q-network提供訓(xùn)練目標。使用該訓(xùn)練目標減去在當(dāng)前狀態(tài)所執(zhí)行動作的動作值函數(shù)獲得均方誤差,其形式為:

        Q-learning算法相對于Sarsa算法來說要大膽一些,因為Q-learning算法永遠都想著max Q最大化,正是由于這個max Q所以變得貪婪,不會再去考慮其他非max Q的結(jié)果。Q-learning算法可以理解為是貪婪的、大膽的算法。因此,離策略最終還是不利于獲得長期回報。

        2.3 基于期望值函數(shù)的離策略DQN算法

        離策略在“探索”階段,直接逼近最優(yōu)動作值函數(shù)的方法有傾向于“激進”策略的可能性,不利于獲得長期回報?;诖?,提出一種基于期望值函數(shù)的離策略深度Q神經(jīng)網(wǎng)絡(luò)改進方法(Off-Policy Based on Expected Value Function,EVDQN)。

        神經(jīng)網(wǎng)絡(luò)Target-network根據(jù)當(dāng)前狀態(tài)st執(zhí)行策略所確定的動作at來獲得下一狀態(tài)st+1,去逼近下一個狀態(tài)-動作值函數(shù)Q(st+1,a)。在DQN算法中,由于神經(jīng)網(wǎng)絡(luò)需要進行足夠多的訓(xùn)練,所以一般在動作策略中使用ε-貪婪策略。通過ε-貪婪策略和各動作方向動作值函數(shù)Q(st+1,a)的期望可以估算出下一狀態(tài)st+1的狀態(tài)值函數(shù)V∧(st+1)。其具體形式為:

        將式(9)得到的結(jié)果代入DQN算法的迭代目標函數(shù)中,可以得到一個新的逼近目標:

        那么此時新的逼近目標函數(shù)的神經(jīng)網(wǎng)絡(luò)訓(xùn)練的損失函數(shù)表達式為:

        其中,outputDQN(s,aΔ;w)神經(jīng)網(wǎng)絡(luò)在aΔ維度上的輸出,aΔ為當(dāng)前樣本中所執(zhí)行的某一具體動作策略;在經(jīng)過訓(xùn)練之后,可認為是在aΔ維度上的逼近目標,r+γV∧(st+1)是上述基于期望值函數(shù)的新的逼近目標。

        2.4 基于期望值函數(shù)離策略的改進原理

        式(10)所示的逼近目標在形式上可以看作是通過式(3)所估計的下一個狀態(tài)的期望狀態(tài)值函數(shù)。在DQN算法中使用的是式(11)所示的均方差計算方法,使用逼近目標減去執(zhí)行動作方向aΔ的神經(jīng)網(wǎng)絡(luò)輸出[17]。式(10)中,由于神經(jīng)網(wǎng)絡(luò)所使用的逼近目標為根據(jù)下一狀態(tài)的狀態(tài)值函數(shù)V∧(s+1)的迭代近似值r+γV∧(st+1),所以不斷通過式(11)所示的均方誤差更新神經(jīng)網(wǎng)絡(luò)參數(shù),最終神經(jīng)網(wǎng)絡(luò)輸出的是當(dāng)前狀態(tài)的狀態(tài)值函數(shù)V∧(st)。

        DQN神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。

        從圖2中可知,在實際的DQN算法訓(xùn)練過程中實際參與的僅在當(dāng)前狀態(tài)st具有執(zhí)行動作aΔ維度上的輸出,又由于采用隨機策略方式,所以每次狀態(tài)st會執(zhí)行不同的動作,最終導(dǎo)致每次參與訓(xùn)練的動作維度不同,繼而使得神經(jīng)網(wǎng)絡(luò)在狀態(tài)st上每個動作維度的輸出均不相同。因此可以認為通過V∧(st+1)逼近所得的V∧(st)是在某一方向上的狀態(tài)值函數(shù),即可近似認為神經(jīng)網(wǎng)絡(luò)輸出的是動作值函數(shù)Q∧(st,aΔ)。

        圖2 離策略改進方法神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)示意圖

        為進一步說明,假設(shè)在當(dāng)前狀態(tài)st,基于策略執(zhí)行動作a1到達下一狀態(tài)st+1,得到立即回報r,并且將Transition<st,a1,r,st+1,done>存入經(jīng)驗池。在此后的某次訓(xùn)練,同樣在狀態(tài)st基于策略執(zhí)行其他動作a2到達另一個下一狀態(tài)s′t+1,得到立即回報r′,并且Transition<st,a2,r′,s′t+1,done>也存入經(jīng)驗池。在使用“經(jīng)驗回放”方法隨機抽取樣本的過程中,當(dāng)抽取到樣本Transition<st,a1,r,st+1,done>時根據(jù)式(11)更新神經(jīng)網(wǎng)絡(luò);由于DQN神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)在參數(shù)更新時采用one-h(huán)ot形式,只針對a1維度上的輸出代入式(11)進行參數(shù)更新,使得在狀態(tài)st時神經(jīng)網(wǎng)絡(luò)的輸出中在動作a1的維度上所獲得期望狀態(tài)值函數(shù)更加準確。同理當(dāng)隨機抽取到樣本Transition<st,a2,r′,s′t+1,done>時,DQN神經(jīng)網(wǎng)絡(luò)也只將a2維度上輸出代入式(11)使得以狀態(tài)s′t為輸入的神經(jīng)網(wǎng)絡(luò)的輸出中在動作a2的維度上所獲得期望狀態(tài)值函數(shù)更加準確。由于上述兩次訓(xùn)練所獲得的立即回報r不同,參與訓(xùn)練的輸出維度也不同,所以經(jīng)過不斷的訓(xùn)練,神經(jīng)網(wǎng)絡(luò)在維度a1和維度a2的輸出值也必然不同。

        此外,神經(jīng)網(wǎng)絡(luò)的每個輸出在形式上根據(jù)式(1)和式(11)可視為是在逼近狀態(tài)值函數(shù)V∧(st)。但根據(jù)上述內(nèi)容可知,神經(jīng)網(wǎng)絡(luò)在狀態(tài)st上每個動作維度的輸出均不相同(圖2)。由于在同樣的狀態(tài)st上,每個動作維度的值函數(shù)V∧(st;w)。均表示在狀態(tài)st執(zhí)行相應(yīng)動作的好壞程度,其作用和動作值函數(shù)相同,也可以用于衡量動作策略確定。因此,式(11)實際上是將神經(jīng)網(wǎng)絡(luò)的逼近目標設(shè)置為動作值函數(shù)Q∧(st,a;w)。

        綜上所述,在每次訓(xùn)練中,實際上總是使用執(zhí)行某動作aΔ得到的逼近目標與當(dāng)前狀態(tài)上該動作aΔ的神經(jīng)網(wǎng)絡(luò)輸出的該動作維度的值函數(shù)均方誤差來更新神經(jīng)網(wǎng)絡(luò)Q-network的參數(shù);經(jīng)過若干次訓(xùn)練之后,Q-network神經(jīng)網(wǎng)絡(luò)在每個狀態(tài)st所對應(yīng)的動作值函數(shù)都逐漸逼近基于下一狀態(tài)st+1的動作值函數(shù)Q∧(st+1,a;w-)的訓(xùn)練目標,而Q∧(st+1,a;w-)由 定 期 復(fù) 制Q-network參 數(shù) 的Target-network神經(jīng)網(wǎng)絡(luò)所輸出。

        3 EVDQN算法

        基于期望值函數(shù)的離策略DQN算法(EVDQN)初始化經(jīng)驗回放緩存空間D,并設(shè)置經(jīng)驗回放緩存空間為N初始化DQN神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)中的Q-network的參數(shù)初始化DQN神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)中的Target-network的參數(shù)即令θ-=θ for episode=1,2,...,M do 初始化狀態(tài)St=S0 for STEP=1,2,...,m∩step!=Sterminal do 根據(jù)Q-network得到Q(St,a) 根據(jù)ε-貪婪策略確定在當(dāng)前狀態(tài)st的動作策略at π(a s)=arg max a Q(st,a),if q>ε arandom,{ otherwise 執(zhí)行動作at并得到立即回報r和下一狀態(tài)st+1

        將st,at,r,st+1存儲到經(jīng)驗回放緩存D 令st,st+1 令iter=iter+1 if iter%train_period=0 從經(jīng)驗回放緩存D中隨機選取數(shù)量為 Batch的訓(xùn)練集<st,at,r,st+1> 分別得到Q-network和Target-network的輸出 Q(st,at;θ)和Q(st+1,a;θ-) 根據(jù)式(5)~式(6)獲得在下一狀態(tài)St+1所獲得狀態(tài)值函數(shù)V∧(st+1) V∧(st+1)=Q(st+1,agreedy;θ-)1-2ε1-ε( )()A +∑a∈AQ(st+1,a;θ-)ε1-ε( )A 根據(jù)式(5)~式(8)采用隨機梯度方法訓(xùn)練Q-network的參數(shù)θ L(wp)=E[(r+γ^V(st+1)-Q(s,aΔ;w))2] end if if iter%update_period=0 更新Target-network的參數(shù),即令θ-=θ end if end end

        4 仿真實驗與結(jié)果分析

        為了驗證期望值函數(shù)的離策略DQN算法能夠較快地得到回報較高的動作策略和更高的穩(wěn)定性,以及EVDQN算法的有效性,在基于OpenAI Gym的CartPole環(huán)境和Acrobot環(huán)境中進行實驗分析。

        4.1 CartPole實驗

        實驗采用兩個相同的神經(jīng)網(wǎng)絡(luò),Q-network神經(jīng)網(wǎng)絡(luò)和Target-network神經(jīng)網(wǎng)絡(luò)。并且神經(jīng)網(wǎng)絡(luò)設(shè)置有兩個隱含層,最后一層是輸出為動作空間維度A的輸出層。將Q-network與Target-network分別運用于DQN算法和EVDQN算法,實驗開始前的初始參數(shù)均采用正態(tài)分布的隨機初始化。

        將兩種算法所獲得策略的性能進行對比,兩種算法的情節(jié)數(shù)均設(shè)置為300。在ε-貪婪策略中使用動態(tài)變化的ε:將其初始值設(shè)置1.0,此時Agent處于“探索與利用”的“探索階段”,完全按照隨機策略確定動作;隨著訓(xùn)練的進行,當(dāng)ε大于0.001時,按照式(12)進行數(shù)值更新:

        式中,SUM為設(shè)置的總訓(xùn)練情節(jié)數(shù),step為訓(xùn)練的情節(jié)數(shù),fa為設(shè)置的加速因子。因為有了加速因子的存在,加快了ε進入“利用階段”的速度。本實驗采用的是定期更新的方法,設(shè)置周期為100次,即Agent通過執(zhí)行動作完成狀態(tài)轉(zhuǎn)移100次。

        在實驗中,設(shè)置了訓(xùn)練階段每情節(jié)所獲得的回報、訓(xùn)練回報、測試回報三個參數(shù)對不同算法的性能進行判斷。訓(xùn)練階段每情節(jié)所獲回報表示的是在訓(xùn)練過程中,記錄Agent在CartPole環(huán)境中每情節(jié)從初始狀態(tài)到終止?fàn)顟B(tài)所經(jīng)歷的步數(shù)(在本實驗環(huán)境下即該情節(jié)學(xué)習(xí)所獲回報的直接疊加)。

        訓(xùn)練回報是在訓(xùn)練中,記錄Agent在CartPole環(huán)境中從初始狀態(tài)到終止?fàn)顟B(tài)經(jīng)歷的步數(shù)(在本實驗環(huán)境下即每一情節(jié)學(xué)習(xí)收獲的累積回報進行疊加)。每一情節(jié)訓(xùn)練的初始狀態(tài)和終止?fàn)顟B(tài)的具體設(shè)置均由CartPole環(huán)境所決定,在CartPole-v0實驗環(huán)境中,終止?fàn)顟B(tài)指實驗次數(shù)達到200次和判定實驗為失?。ㄖ绷U觸碰到黑線的情況)兩種情況。

        測試回報是在訓(xùn)練一定的次數(shù)后,開展的10次測試實驗。測試實驗中Agent直接使用貪婪策略確定動作,記錄每次實驗所執(zhí)行的步數(shù),然后將10次測試實驗的結(jié)果分別保存。進行測試實驗的訓(xùn)練次數(shù)周期設(shè)置為5情節(jié)。此外,測試實驗所獲得的實驗樣本并不放入經(jīng)驗池參與訓(xùn)練,以避免額外干擾。測試實驗的仿真環(huán)境使用CartPole-v1,其最大終止步數(shù)為500;訓(xùn)練階段所使用的CartPole-v0實驗環(huán)境的最大終止步數(shù)為200。

        仿真實驗中強化學(xué)習(xí)算法相關(guān)的參數(shù)設(shè)置見表1。

        表1 強化學(xué)習(xí)算法相關(guān)參數(shù)設(shè)置

        在兩種算法中,都包含了深度Q神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),其中的Q-network通過優(yōu)化算法不斷更新參數(shù)(如隨機梯度下降算法),Target-network的參數(shù)是通過直接復(fù)制Q-network參數(shù)獲得。Q-network是在每一個步驟后進行訓(xùn)練;將Target-network參數(shù)的更新周期設(shè)置為500,以便Agent能夠更好地進行學(xué)習(xí)。在“經(jīng)驗回放”方法中將經(jīng)驗緩存的大小設(shè)置為10 000。使用RMSProp優(yōu)化方法進行神經(jīng)網(wǎng)絡(luò)的參數(shù)訓(xùn)練,其學(xué)習(xí)率設(shè)置為0.0005,且每批隨機取出的樣本數(shù)為32。在CartPole環(huán)境中,動作空間的維度為2,所以將所有神經(jīng)網(wǎng)絡(luò)的輸出層神經(jīng)元個數(shù)均設(shè)置為2,保證每個動作對應(yīng)輸出一個相應(yīng)的動作值函數(shù)或信息強度。相關(guān)參數(shù)設(shè)置見表2。

        表2 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)參數(shù)設(shè)置

        在上述仿真實驗環(huán)境中,分別采用DQN算法和EVDQN算法進行對比實驗,其實驗結(jié)果如圖3所示。從圖3中可知,兩種算法經(jīng)過有限訓(xùn)練,最后都能夠通過學(xué)習(xí)得到有效策略,但EVDQN算法較DQN算法來說容易獲得更高的累積回報。

        圖3 CartPole實驗每幕所獲回報結(jié)果圖

        訓(xùn)練階段累積回報結(jié)果如圖4所示,圖中對比顯示了兩種算法學(xué)習(xí)的總體情況,兩條斜線的斜率分別表示兩種算法累積回報的增加量。從圖4可知,訓(xùn)練情節(jié)數(shù)大于100后,累積回報開始出現(xiàn)差異。整體來說,在整個訓(xùn)練階段EVDQN算法所獲得的累積回報要高于DQN算法。

        圖4 CartPole實驗訓(xùn)練階段累積回報結(jié)果圖

        圖5 為每經(jīng)過5幕訓(xùn)練,使用貪婪策略進行10次測試實驗所累計的回報情況。從圖5可知,EVDQN算法測試累積回報的斜率增長明顯早于DQN算法,說明EVDQN算法可更先學(xué)習(xí)到能獲得更高回報的策略。且最終EVDQN算法曲線的斜率要高于DQN算法,說明使用EVDQN算法能獲得更好的策略。

        圖5 CartPole實驗測試階段累積回報結(jié)果圖

        4.2 Acrobot實驗

        在Acrobot環(huán)境中使用DQN算法和使用EVDQN算法所得到的每一幕回報總數(shù)如圖6所示。

        從圖6可知,EVDQN算法性能提升較為明顯,所以比DQN算法能更快地學(xué)習(xí)到有效策略,且EVDQN算法采用基于動作策略和動作值函數(shù)的期望的訓(xùn)練目標,相比于采用最大動作值函數(shù)的DQN算法,其穩(wěn)定性也更好。

        圖6 Acrobot實驗每幕所獲回報結(jié)果圖

        Acrobot環(huán)境中使用兩種算法在訓(xùn)練階段所獲得的累積回報的對比結(jié)果如圖7所示。從圖7可知,由于在Acrobot環(huán)境中希望通過較少次數(shù)的狀態(tài)轉(zhuǎn)移達到目標位置,所以每幕的次數(shù)越少越好(由于每一步的回報為-1,所以在數(shù)值上依然表現(xiàn)為越大越好,也可以說絕對值越小越好)。隨著訓(xùn)練情節(jié)數(shù)的增大,兩條曲線差異越來越大,充分說明了隨著復(fù)雜環(huán)境中動作策略復(fù)雜性的提高,EVDQN算法的性能表現(xiàn)較之DQN算法的提升更突出。

        圖7 Acrobot實驗訓(xùn)練階段累積回報結(jié)果圖

        Acrobot實驗中測試階段累積回報結(jié)果如圖8所示,從中可知EVDQN算法的確能夠較快學(xué)習(xí)到有效動作策略。且在訓(xùn)練階段和測試階段中EVDQN算法累積回報曲線的斜率低于DQN算法,即此時每幕執(zhí)行狀態(tài)轉(zhuǎn)移的次數(shù)少于DQN算法(在Acrobot環(huán)境中,有效策略能夠使Agent在更少的狀態(tài)轉(zhuǎn)移次數(shù)內(nèi)達到成功的終止?fàn)顟B(tài),無效策略會導(dǎo)致Agent運行到最大的狀態(tài)轉(zhuǎn)移次數(shù)而判定為失敗的終止?fàn)顟B(tài)),表明EVDQN算法所獲得動作策略優(yōu)于DQN算法的。

        圖8 Acrobot實驗測試階段累積回報結(jié)果圖

        5 結(jié)束語

        本文介紹了在策略和離策略兩種強化學(xué)習(xí)算法中更新值函數(shù)常用的算法,并結(jié)合神經(jīng)網(wǎng)絡(luò)的訓(xùn)練,給出該改進方法的工作原理。針對深度Q神經(jīng)網(wǎng)絡(luò)算法較易采取“激進”策略傾向的離策略Q-learning算法思想作為神經(jīng)網(wǎng)絡(luò)損失函數(shù),而不利于獲得長期穩(wěn)定策略的問題,以期望值函數(shù)代替Q-learning算法中貪婪值函數(shù)的逼近目標,提出基于期望值函數(shù)的離策略DQN算法。從神經(jīng)網(wǎng)絡(luò)參數(shù)更新的角度給出基于期望值函數(shù)的離策略DQN算法的工作原理,最后在基于OpenAI的Cartpole和Acrobot環(huán)境中進行仿真實驗,驗證了基于期望值函數(shù)的離策略DQN算法所獲取策略的穩(wěn)定性改善情況。

        猜你喜歡
        狀態(tài)值神經(jīng)網(wǎng)絡(luò)維度
        研究降雨事件對交通流時空特性的影響
        一種基于切換拓撲的離散時間一致性協(xié)議
        淺論詩中“史”識的四個維度
        中華詩詞(2019年7期)2019-11-25 01:43:00
        神經(jīng)網(wǎng)絡(luò)抑制無線通信干擾探究
        電子制作(2019年19期)2019-11-23 08:42:00
        基于短文本的突發(fā)事件發(fā)展過程表示方法
        光的維度
        燈與照明(2016年4期)2016-06-05 09:01:45
        “五個維度”解有機化學(xué)推斷題
        基于神經(jīng)網(wǎng)絡(luò)的拉矯機控制模型建立
        重型機械(2016年1期)2016-03-01 03:42:04
        復(fù)數(shù)神經(jīng)網(wǎng)絡(luò)在基于WiFi的室內(nèi)LBS應(yīng)用
        基于支持向量機回歸和RBF神經(jīng)網(wǎng)絡(luò)的PID整定
        色视频不卡一区二区三区| 四虎影视亚洲精品| 国产激情久久久久久熟女老人| 精品不卡视频在线网址| 亚洲综合天堂av网站在线观看 | 国产av天堂一区二区二区| 97久久国产亚洲精品超碰热| 亚洲av综合av国产av| 狠狠丁香激情久久综合| 好看的中文字幕中文在线| 久久久久亚洲av成人人电影| 日日噜狠狠噜天天噜av| 9久9久女女热精品视频免费观看| 白色月光免费观看完整版| 中文字幕有码无码人妻av蜜桃 | 国产一级一片内射视频在线| 久久久国产精品| 成 人 免费 黄 色 视频| 亚洲国产欧美另类va在线观看| av在线播放一区二区免费| 欧美国产激情二区三区| 99精品国产兔费观看久久99| 人妻系列影片无码专区| 在线观看午夜视频国产| 亚瑟国产精品久久| 狠狠躁天天躁无码中文字幕图| 日韩熟女精品一区二区三区视频| 国产精品亚洲专区无码不卡| 三级4级全黄60分钟| 亚洲av午夜成人片精品| 一区二区二区三区亚洲| 欧美精品黑人粗大免费| 中文字幕少妇AV| 亚洲一区二区三区在线激情| 狠狠色丁香婷婷久久综合| 8888四色奇米在线观看| 亚洲伊人久久综合精品| 中文乱码字字幕在线国语| 国产熟女露脸大叫高潮| 亚洲一区二区三区久久蜜桃| 女人18毛片aa毛片免费|