祁文凱,桑國明
(大連海事大學 信息科學與技術學院,遼寧 大連116026)E-mail:sangguoming@dlmu.edu.cn
強化學習作為一種重要的機器學習方法,成為了繼深度學習之后,學術界和工業界追捧的熱點[1].從目前的形勢來看,強化學習發展前途一片光明,并在不同的領域取得了令人驚艷的成果,如視頻游戲,機器人控制,人機對話,無人駕駛等[2].強化學習的核心思想是解決序貫決策問題,在智能體和環境的交互過程中,需要連續不斷地做出決策[3],并從環境中獲得累計的獎勵值,最大化該獎勵值從而使整個任務序列達到最優.
近年來,強化學習領域的研究大多數集中于深度強化學習方面,Xuesong Wang等人通過最小化單步Bellman殘差來減少價值函數更新的累積誤差,提出了基于近似策略的加速算法(APA)[4],APA使用先前的值函數估計值來輔助更新當前值函數,減小了單步誤差對算法精度的影響,提高了智能體在復雜任務中的學習效率,最終獲得更準確的Q值估計,通過將APA與DQN,Double DQN和DDPG結合,形成了三種改進的算法:APA-DQN,APA-Double DQN和APADDPG.Xuesong Wang等人通過將神經網絡參數從某個單一值轉換為函數分布來增強智能體的探索能力,設置兩組參數來加速參數分配優化,提出了近端參數分布優化算法(PPDO)[5].PPDO限制了兩個連續的參數更新,避免隨機噪聲對優化穩定性的影響,減小了值函數逼近產生的方差和偏差,加快參數分布優化的過程并提高參數分布優化的穩定性.
在強化學習發展的道路上,谷歌的人工智能團隊Deepmind創造性地將深度網絡與強化學習算法結合形成深度強化學習,成為了人工智能研究領域的里程碑,并由此衍生出許多強化學習的經典算法.如將強化學習中的Q-Learning方法和卷積神經網絡(CNN)[6,7]結合而形成的深度Q網絡學習方法(DQN)[8];Hasselt等人將動作的選擇和動作的評估分別用不同的值函數來表示,提出了深度雙Q網絡(Double DQN)[9];Narasimhan等人將長短時間記憶單元(LSTM)引入 DQN 中,提出了帶有 LSTM 單元的深度循環 Q 網絡(DRQN)[10];Wang等人將DQN的網絡結構分解為優勢函數和與動作無關的狀態值函數,用這兩個分解后的函數來生成狀態動作值函數,提出了深度競爭的Q網絡(Dueling DQN)[11].
但上述的求解最優策略的強化學習算法都是基于值函數進行求解的,即求解arg maxaQ(s,a),當要解決的問題動作空間很大或者動作為連續集時[12],該式無法有效求解.因此相關領域的學者們研究出基于策略梯度的強化學習方法[13],該算法直接計算策略可能更新的方向[14].在真實的環境交互中,由于需要控制訓練智能體的成本,往往會造成與環境不充分的交互數據,從而導致智能體從環境中得到的獎勵回報產生較大的方差[15].為了使方差降低,學者們進一步提出了演員評論家(actor-critic)算法[16,17],該算法利用一個獨立的模型估計交互軌跡的長期回報,而不再使用交互軌跡的真實回報,并在多數Atari 2600游戲中取得了較高的獎勵回報分數[18].
傳統的強化學習算法在值函數的更新公式中都有最大化操作,這會導致估計的值函數比真實值函數大,從而產生過估計問題[19].在高維復雜的環境中,智能體與環境交互所得的樣本復雜度也會變得非常高,并且其獎勵回報值將變得難以收斂,表現出明顯的不穩定性[20,21].本文提出的基于延遲策略的最大熵優勢演員評論家(DAAC)算法,使用了兩個評論家網絡,分別計算狀態值函數和動作的優勢估計值函數,使智能體可以選擇更好的策略來獲得更高的獎勵回報;使用延遲策略更新的技巧來提高策略獎勵回報的收斂性;使用最大熵框架,使策略的期望獎勵回報和期望熵都達到最大,從而使智能體在有限的環境交互中,進行更廣泛的探索.該算法在OpenAI Gym的物理仿真模擬器MuJoCo上進行實驗,并與傳統的強化學習算法作對比,DAAC算法取得了更高的環境獎勵回報值,更快速的學習到了最優策略,并且表現出更好的收斂性和穩定性.
強化學習的基本內容是智能體在完成某項任務時,首先通過動作與環境進行交互,產生新的狀態并會獲得環境反饋給智能體的獎勵回報值,隨著交互次數的增加,智能體利用與環境交互產生的數據不斷改進動作選擇策略來獲得更高的獎勵值[22],經過多次迭代,智能體最終可以探索出完成相應任務的最優策略[23].
強化學習的目標是給定一個馬爾科夫決策過程,尋找最優策略,該決策過程由元組(S,A,P,R,γ)表示,其中S為有限的狀態集,A為有限的動作集,P為狀態轉移概率,R為環境獎勵回報值,γ為用于計算累計獎勵值的折扣系數[24].強化學習使用狀態動作值函數Qπ(s,a)來評估策略,該函數被定義為智能體在當前狀態s,根據策略π,執行動作a所獲取的獎勵值的期望:
(1)
智能體的目標是探索出最優的狀態動作值函數,即:
Q*(s,a)=maxQπ(s,a)
(2)
該最優函數遵循貝爾曼最優方程:
(3)
然后通過反復迭代該貝爾曼方程求解狀態動作值函數Q,最終該函數會收斂到最優解[7,9],也就得出了智能體的最優策略π*=argmaxaQ*(s,a).但在實際的環境交互過程中,通過迭代貝爾曼方程來求解最優策略會產生諸多問題.高維復雜的環境會使原有的計算量過大,并且迭代獲得的獎勵值會隨著時間的變化變得較難收斂甚至發散[15,20].在強化學習算法中,可以使用深度神經網絡等非線性函數去近似表示值函數或策略[4],但這種方式帶來的問題是,訓練樣本的復雜度會隨著迭代交互的次數而增加,訓練過程也存在著不穩定性[13].因此可以采取直接計算策略可能更新方向的方法,即策略梯度算法.該算法能夠提高計算效率,使智能體獲得更高的環境獎勵回報值以及更好的算法穩定性[7,16].
在傳統的強化學習算法中,智能體通過迭代計算狀態動作值函數的貝爾曼方程[1,10],來探索可以獲得最大獎勵回報值的策略.而在基于策略梯度的強化學習算法中,通過直接迭代更新策略的參數值,來獲得最大獎勵回報值的期望,這個參數值所對應的就是最優策略.與傳統算法中對值函數進行參數化表示相比,策略梯度算法對策略π進行參數化表示[15],使得算法參數化更簡單且有較好的收斂性,當智能體交互環境的動作為連續集或者動作空間域很大,策略梯度算法可以有效地進行求解.策略梯度算法公式見式(4):
θlogπθ(ai,t|si,t)
(4)
其中J(θ)表示目標函數,對目標函數進行求導運算,并做積分變換,最后再使用蒙特卡洛近似方法對上式中的期望進行替換:

(5)
但該計算策略梯度的公式中也存在一些缺陷:無論智能體在與環境的交互過程中處于什么時間段,策略的梯度總是乘以所有時刻的回報值總和,不符合實際需求,所以可以使用兩個不同的時間變量t,t′來表示t時刻之前和t時刻之后的獎勵值:
θlogπθ(ai,t|si,t)
(6)
存在某種情況,環境對智能體的獎勵值始終為正,會導致策略梯度求解問題存在一定的波動性,為了使智能體能夠讓最大化獎勵值策略的“權重”為正且盡可能大,讓不能最大化獎勵值策略的“權重”為負且盡可能小,這里引入一個偏移量bi,t′表示為:
(7)
策略梯度求解公式就可以表示為:
θlogπθ(ai,t|si,t)
(8)
這種方法不僅降低了算法的波動性,而且也不會影響最終智能體獲得的環境獎勵值.許多基于策略梯度的強化學習算法也普遍使用該方法.
在真實的智能體與環境的交互過程中,為了限制交互次數,會導致估計得到的獎勵值序列與真實值之間存在較大差異,導致獎勵回報值的方差較大,并且常規的策略梯度算法也表現出較慢的收斂速度,因此解決這些問題的一種方法是Actor-Critic,即演員評論家算法.
演員評論家算法包括兩個模型網絡,Actor 表示策略模型網絡,Critic表示價值模型網絡.Actor使用策略函數πθ(ai|si)并根據當前環境狀態來選擇下一步的動作,它將狀態的表現映射到動作選擇概率,并且可以在不需要對值函數進行優化的情況下做出決策策略.Critic負責評估Actor的決策策略,并引導Actor改進策略.它通過構造狀態動作值函數Qπ(s,a),使用TD偏差估計由Actor計算的策略πθ所能獲得的預期獎勵值,以此來加速智能體的學習進程并有效減小方差.狀態動作值函數由式(9)表示:
Qπ(s,a)=R(st,at)+V(st+1)-V(st)
(9)
圖1表示演員評論家算法的基本結構,其中智能體根據Actor網絡的策略πθ(ai|si)來選擇下一動作,并與環境交互獲得獎勵值和智能體的下一個狀態,將這兩個變量傳入Critic網絡,Critic網絡通過狀態動作值函數Qπ(s,a)計算出TD偏差,并將TD偏差傳入Actor網絡,由此來評估當前策略,便于Actor網絡對策略進行改進以獲得更高的獎勵值和更穩定的學習過程.

圖1 演員評論家算法結構圖
Actor-Critic算法通常從策略迭代開始,迭代在策略評估和策略改進之間交替進行,在環境較復雜的強化學習問題中,將這兩個步驟運行到收斂通常都是不現實的,因此本文提出了最大熵優勢模型,將值函數和策略聯合優化.傳統的強化學習算法的目標是最大化獎勵回報值的期望,即:
(10)
而在最大熵優勢模型中,將算法的目標設置為策略的預期熵,并最大化這個預期熵.由于在智能體探索環境的過程中,環境的條件以及下一時刻的狀態是未知的,因此智能體根據已探索過的環境得出的策略,不作任何對未知環境狀態的假設,策略把未知的狀態動作進行等概率處理,從而使狀態動作值函數的概率分布變得最均勻,因此熵也是最大的.基于該模型的隨機策略公式如式(11):
(11)
其中平衡系數ω表示在策略π中,獎勵值與熵的相對重要性,通過調整ω的大小變化,可以控制策略的隨機性.在本文的實驗中,使用該系數的倒數ω-1來表示.策略的熵用Η(π(at,st+1))表示.
在傳統的Actor-Critic算法中,Critic網絡通過使用Q-learning和單一的輸出序列來計算狀態動作值函數Qπ(s,a),并建立環境狀態和智能體動作之間的聯系.但在高維復雜的環境中,部分狀態不單單只取決于智能體選擇的動作,二者具有一定的獨立性.因此,本文提出的算法模型中設計了兩個評論家網絡,分別計算狀態值函數V(st)和動作優勢函數A(st,at).其結構模型如圖2所示.

圖2 演員優勢評論家算法結構圖
動作優勢值是一個相對值,它衡量智能體在某種狀態下可能發生的動作的相對優劣,并且它獨立于環境狀態和環境噪聲,因此它可以提高Q函數的準確性和運算效率.演員網絡基于策略梯度法選擇智能體的動作,兩個評論家網絡共同為演員網絡提供Q函數,以此來調整并選擇最優策略.該狀態動作值函數Q可形式化表示為式(12):
Qπ(st,at)=V(st)+A(st,at)
(12)
由于狀態值函數V(st)和動作優勢函數A(st,at)存在很多種潛在的可能組合,會增加算法的波動性,因此對動作優勢函數A(st,at)附加一定的約束條件,讓每一個A(st,at)函數減去當前狀態下所有A(st,at)函數的平均值,因為優勢值只需要以同樣的速度變化,以此來提高算法的穩定性:
(13)
將上述算法結構中的狀態值函數V(st)和狀態動作值函數Qπ(s,a)分別進行參數化表示,即Vα(st)和Qβ(st,at).通過更新參數α,β來分別優化值函數,其中狀態動作值函數Qβ(st,at)不使用經驗重放緩沖區中的數據,而是根據當前Actor網絡的策略對可能采取的動作進行采樣,訓練參數β使Qβ(st,at)的平方差最?。?/p>
(14)
其中,策略π是基于最大熵的隨機策略,使用隨機梯度下降法對JQ(β)進行更新:

(15)
其中Q′(st,at)可表示為:

(16)
該Q′(st,at)是由兩個評論家網絡共同計算得出的狀態動作值函數,并包括了當前狀態的獎勵值以及累積的狀態值函數的期望.
同理訓練參數α使Vα(st)的平方差最?。?/p>

(17)
其中D是從經驗重放緩沖區采集的狀態和動作的樣本,同理使用隨機梯度下降法對JV(α)進行更新:

(18)
最大熵優勢模型保證了智能體可以對環境進行更廣泛的探索,在已知的狀態下,對未知的狀態和動作進行等概率處理,有效地縮小了計算方差,采用兩個評論家網絡,計算動作的相對優勢值來評估并改進演員網絡的當前策略.通過在高維復雜的環境實驗中,證明該模型框架可以使智能體獲得更高的獎勵回報值和更穩定的交互訓練過程.
在傳統的強化學習問題中,智能體通過當前時刻的回報和下一時刻的價值估計進行更新,由于從經驗回放緩沖區采樣的數據之間存在差異,導致更新存在較大波動性,并且會使值函數的估計迅速發散.因此為了解決波動性和發散的問題,學者們提出采用目標網絡更新,這也被應用在了大多數經典的強化學習算法中.
目標網絡是實現深度強化學習穩定性的重要工具,它設置一個不會大幅更新的模型,將智能體計算的目標值函數在一段時間內固定,這在一定程度上可以減少波動,并降低了發散的可能性,令計算過程更穩定.
傳統的演員評論家算法是一種異策略(off-policy)的強化學習算法,使用貪婪策略π=arg maxaQ(st,at),并以θ為參數建立貝爾曼均方差的損失函數如式(19):
L(θ)=Eπ(st,at)[(Q(st,at|θ)-Yt)2]
(19)
其中目標值函數Yt表示為式(20):
Yt=R(st+at)+γQ(st+1,at+1|θ)
(20)
由于狀態動作值函數Q(st,at|θ)和目標值函數Yt使用相同的更新參數θ,最小化該貝爾曼均方差損失函數會變得不穩定,函數逼近誤差會不斷積累.
本文提出延遲評論家網絡的策略更新,通過延緩評論家網絡的更新速率,設置一個固定的閾值系數τ,該系數緩慢跟蹤智能體正在學習的策略,并調節目標網絡在更新中的比重,以此來更新目標網絡:
θtarget=τθ+(1-τ)θtarget
(21)
該方法限制了目標值的變化速率,降低了值函數估計與策略之間的耦合性,也降低了最小化貝爾曼均方差損失函數的不穩定性,把函數逼近的累積誤差對策略的影響降到最低,通過實驗證明該方法有效提高了算法的穩定性和收斂性.
在3.2節中的最大熵演員評論家算法框架中,根據式(14),狀態動作值函數Qβ(st,at)的訓練參數β使用到演員網絡的當前策略π,同理根據式(17),狀態值函數Vα(st)的訓練參數α也使用到策略π,因此使用閾值系數τ分別延遲更新基于參數α的狀態值函數Vα(st)和基于參數β的狀態動作值函數Qβ(st,at):
αtarget=τα+(1-τ)αtarget
(22)
βtarget=τβ+(1-τ)βtarget
(23)
其中,αtarget,βtarget表示使用延遲更新之后的參數.評論家網絡使用該參數進行后續的隨機梯度下降更新值函數估計.
3.4.1 算法描述
本文提出的基于延遲策略的最大熵優勢演員評論家強化學習算法(DAAC)的算法流程描述如算法1所示:
算法 1.基于延遲策略的最大熵優勢演員評論家強化學習算法(DAAC)
1.初始化:演員網絡策略函數的參數θ,評論家網絡狀態值函數的參數α,評論家網絡狀態動作值函數的參數β
2.清空經驗重放緩沖區D
3.Repeat:(對每一個實驗回合):
4.根據智能體所處的當前狀態s和演員網絡的策略π選擇動作a~πθ(st,at);
5.智能體執行動作a與環境進行交互;
6.智能體獲得下一狀態s′,環境獎勵回報值r,并設置變量d指示智能體狀態s是否是探索環境的終止點;
7.將(s,a,r,s′,d)作為一次交互探索產生的樣本存入經驗重放緩沖區D中;
8.If演員網絡的策略需要優化更新then:
Forj在每一個時間步驟中do:
9.隨機從經驗重放緩沖區中采集一個小
批量的樣本X,X=(s,a,r,s′,d)
10.在評論家1網絡中計算動作優勢值函數
11.訓練基于最大熵的隨機策略π
12.根據策略π訓練狀態值函數的參數α
13.根據π訓練狀態動作值函數的參數β
14.使用隨機梯度下降法更新參數α

15.使用隨機梯度下降法更新參數β

16.設置閾值變量τ延遲更新參數α
αtarget=τα+(1-τ)αtarget
17.設置閾值變量τ延遲更新參數β
βtarget=τβ+(1-τ)βtarget
18. End for
19. End if
20.Until智能體到達訓練的終止點
3.4.2 算法分析
DAAC是一種基于異策略(off-policy)的演員評論家算法,并在最大熵優勢框架中迭代,交替進行策略評估和策略改進.為證明該算法的收斂性和穩定性,需要構建策略π的值函數,因此引入一個Bellman運算符Γ,并將其擴展到狀態值函數V(st)和狀態動作值函數Q(st,at)的估計中,當需要精確表示狀態動作值函數Q時,該運算符可以增大值函數估計與策略之間的不相關性.對于所有的狀態動作值函數Q(st,at),狀態值st∈S,動作值at∈A,并設Γπ為最優Bellman運算符,且滿足不等式(24),式(25):
ΓπQ(st,at)≤ΓQ(st,at)
(24)
ΓπQ(st,at)≥ΓQ(st,at)-λ[V(st)-Q(st,at)]
(25)
其中λ∈[0,1),當不等式(24)、式(25)同時成立,Γπ最終會產生最優策略.在算法策略迭代過程中,根據式(11)中的最大熵目標來計算策略π的值函數,并重復應用Bellman最優運算符Γπ:
ΓπQ(st,at)=R(st,at)+γE(st+1)~ρ[V(st+1)]
(26)
其中ρ為狀態轉移概率,對于確定的策略π,從ρ:S×A→R開始,狀態動作值函數Q按照式(26)進行迭代計算.
在策略改進計算中,定義分區函數Zπold(st)對策略分布進行歸一化,并根據Kullback-Leibler散度的定義將改進的策略π?投影到策略集合Π中,從而計算更新后的策略如式(27):
(27)
將更新后的策略πnew作為狀態動作值函數Q的指數.
定理.對于所有的智能體探索環境的狀態動作值集(st,at),令(st,at)∈S×A,|A|<,S×A→R,不等式Qπnew(st,at)≥Qπold(st,at)成立,并且定義狀態動作值函數序列Qk,滿足Qk+1=ΓπQk,序列Qk將收斂到π.
證明:根據式(11),定義最大熵獎勵值函數為:
Rπ(st,at)=R(st,at)+Ε(st+1)~ρ[Η(π(at+1|st+1))]
(28)
其中最大熵獎勵值函數Rπ(st,at)是有界的,將該值函數應用于狀態動作值函數Q(st,at)的更新中:
Q(st,at)=Rπ(st,at)+γE(st+1)~ρ,(at+1)~π[Q(st+1,at+1)]
(29)
在策略集合Π中,定義πold∈Π,則根據式(27),更新后的策略πnew重新定義為:

(30)
因為無論是更新之前的策略πold還是更新之后的策略πnew,它們都包含于策略集合Π,所以不等式(31)成立:
Jπold(πnew(at|st))≤Jπold(πold(at|st))
(31)
接著分別求出新策略和舊策略的期望:
Eat~πnew[logπnew(at|st)-Qπold(st,at)+logZπold(st)]
Eat~πold[logπold(at|st)-Qπold(st,at)+logZπold(st)](32)
根據式(31)、式(32)可得出:Eat~πnew≤Eat~πold,因為分區函數Zπold(st)只和當前智能體所處環境狀態相關,所以不等關系為:
Eat~πnew[Qπold(st,at)-logπnew(at|st)]≥Vπold(st)
(33)
根據式(26)和定義條件Qk+1=ΓπQk將狀態動作值函數Q寫成Bellman方程的展開形式:
Qπold(st,at)=R(st,at)+γE(st+1)~ρ[Vπold(st+1)]≤R(st,at)+γE(st+1)~ρ[E(at+1)~πnew[Qπold(st+1,at+1)-logπnew(at+1|st+1)]]≤Qπnew(st,at)
(34)
由不等式(33)、式(34)可得出更新后的狀態動作值函數滿足Qπnew(st,at)≥Qπold(st,at)成立,因此值函數可以穩定地收斂到策略π.證畢.
綜上所述,DAAC算法具有較好的穩定性和收斂性.
本節中,首先介紹實驗所用的平臺模擬器以及實驗算法的參數設置.
本文實驗所使用的是基于Linux Ubuntu 16.04操作系統的MuJoCo Pro 150物理模擬器.MuJoCo是一個通用的物理仿真模擬器,其主要功能有以下幾方面:分析可逆的摩擦接觸動力學、模擬仿真機器人三維幾何的關節運動、驅動一般的物理模擬器并重新配置其計算流水線、分離模型和數據并提供交互式的模擬和用戶可視化、提供強大而直觀的建模語言并可自動生成復合柔性對象.
本文采用了4個經典的基于MuJoCo的高維復雜物理模擬器環境如圖3所示,分別是Ant-v2,HalfCheetah-v2,Walker-v2,Swimmer-v2.使用的計算機為Intel i7-4712MQ,主頻為2.30GHz,內存為8GB,和NVIDIA GTX-1080 Ti圖形處理器輔助運算.

圖3 本文實驗所用模擬機器人結構圖
本文提出的基于延遲策略的最大熵優勢演員評論家強化學習算法(DAAC)與深層Q-learning算法(DQN),置信區域策略優化算法(TRPO),深層確定性策略梯度算法(DDPG)進行了對比實驗.實驗參數設置如表1所示,其中通用的超參數設置包括了每個實驗使用了0,10,20,30,40這5個種子作為隨機數的生成器,神經網絡設置2個隱藏層,當每個隱藏層分別有64,128個節點時,實驗效果較為穩定且訓練速度在可接受范圍內.演員評論家框架結構采用卷積神經網絡,并使用ReLU作為其激活函數,在對策略更新使用隨機梯度下降法時,該激活函數不會出現明顯的梯度消失,并且相較于其它激活函數有較小的計算時間代價.在最大熵框架中,如3.2節所述,平衡系數ω表示獎勵值與熵的相對重要性,在實驗中使用其倒數ω-1來表示,不同環境的的ω-1值不相同,其中Ant-v2和Swimmer-v2的為ω-10.2,HalfCheetah-v2和Walker-v2為0.1.這是由于上述環境所模擬的三維動態機器人的坐標控制機制和復雜度不同,所以需要調整該平衡系數以獲得更優的結果.所有實驗設置智能體與環境交互回合數epochs為200,每一回合的步數為5000,即實驗總的交互時間步數Time Steps為100萬個.經驗重放緩沖區的容量replay_size設置為最多存儲105個交互樣本.延遲參數更新閾值τ設置為0.015,獎勵折扣系數γ設置為0.99,因為距離當前狀態越近,其影響因素也就越大.學習率lrate設為10-3,每一次計算策略時從經驗重放緩沖區采集的批量大小batch_size為100個樣本進行訓練.

表1 參數設置實驗數據表
4.3.1 DAAC算法對比實驗
本文選擇3個基線算法作對比,分別為DQN,TRPO,DDPG.其中DQN利用卷積神經網絡逼近值函數,使用了經驗回放緩沖區訓練強化學習的智能體學習過程[2,16],并獨立設置了目標網絡來單獨處理時間差分算法中的 TD 偏差.TRPO利用重要性采樣處理動作分布,并優化目標函數,保證了新的策略可以使環境獎勵回報值單調不減[14].DDPG利用深度神經網絡逼近值函數和確定性策略,建立目標函數使其不依賴于任何策略,采用異策略的學習方法并使用了經典的演員評論家算法框架[12,13].在解決高維復雜的強化學習環境中,本文提出的DAAC算法性能優于上述三個算法.
圖4是基于MuJoCo的Ant-v2環境,該環境模擬一個四足爬行機器人,其具有29個狀態維度和8個制動控制器.該機器人通過與環境交互,訓練其四足上的8個控制器學習如何能夠平穩行走,完成平穩行走后,訓練該機器人如何快速行走甚至奔跑,實驗中設置機器人平穩行走的獎勵值為1000,當訓練行走和奔跑的速度越快,環境給予智能體的獎勵值也就越大.從圖中可以得出,TRPO和DQN的訓練效果很差,因為該機器人智能體是多維的,與環境交互產生的樣本復雜度很高,這兩個算法在處理復雜的樣本和動作分布時,無法學習到優良的策略,因此獎勵值很低.DDPG獲得了較好的訓練過程,在大約0.2*106時間步處,獎勵值達到了1000,四足機器人學會了平穩行走,并開始加速移動,最終得到來自環境的獎勵回報值約為3000.而在DAAC算法訓練中,四足機器人大約在0.18*106時間步處學會了平穩行走,與DDPG相比沒有明顯的改觀,但在之后的時間步中,DAAC訓練的機器人擁有更快的奔跑速度,因此獲得更高的獎勵值,最高獎勵值達到了約5300,雖然在0.8*106處出現了下降,原因是機器人在奔跑過程中由于速度過快而出現不平衡現象.

圖4 Ant-v2環境下算法對比實驗圖
圖5是基于MuJoCo的HalfCheetah-v2環境,該環境模擬一個雙腿爬行運動類似獵豹的機器人,其具有27個狀態維度和7個制動控制器.實驗設置該獵豹機器人在初始狀態就可以進行奔跑,不需要先學習行走,但是由于該機器人的前足有2個關節控制器,而后足有3個關節控制器,因此需要保持其頭部偏移度不能過大,否則環境會減少獎勵值,當獵豹機器人奔跑速度越快所獲得的獎勵值越高.從圖中可以得出,TRPO和DQN算法的訓練效果依然不理想,DDPG算法獲得了最終獎勵值約為4300,在大約0.2*106時間步處,機器人獲得最高獎勵值,并在之后的很長時間的探索過程中獎勵值沒有獲得大幅度的增長,并且在0.4*106時間步處出現了獎勵值銳減的情況,說明機器人當前所學習的策略還不夠穩定.在DAAC算法訓練曲線中,在大約0.5*105時間步處獎勵值就達到了4000,接近于DDPG的最終結果,在之后的訓練時間中,獎勵值不斷增長達到了11000,并且訓練過程中沒有出現大幅度的獎勵值銳減情況,說明智能體不僅可以快速學習到更好的策略,并且該策略可以在保證訓練穩定的同時不斷提升機器人獲得的獎勵回報值,這得益于最大熵優勢框架,雖然DDPG算法同樣使用了演員評論家框架,但無法訓練智能體進行穩定和更廣泛的探索,無法獲得更好的策略.

圖5 HalfCheetah-v2環境下算法對比實驗圖
圖6是基于MuJoCo的Swimmer-v2環境,該環境模擬一個在粘性流體中的三關節游動機器人,其具有19個狀態維度和3個控制制動器.機器人的目標是通過調節前端關節和后端關節向前游動,游動的距離越遠其獎勵回報值越高.從圖中可以得出DQN的訓練效果較差,TRPO的訓練效果稍強于DQN.DDPG最終獲得了約90的獎勵回報值,但訓練過程的波動性較大.而DAAC在大約0.4*106時間步處獎勵值就達到了100,并且由于其學習到的策略更優,所以機器人在有限的時間步數內可以繼續向更遠的地方游動,并最終獲得了接近于140的獎勵值.該實驗的粘性流體等價于給智能體探索環境的過程施加較大的噪聲干擾,通過實驗結果表明了DAAC即使在有噪聲干擾的情況下,依然可以學習到有效的策略.

圖6 Swimmer-v2環境下算法對比實驗圖
圖7是基于MuJoCo的Walker-v2環境,該環境模擬一個三關節雙足機器人,具有23個狀態維度和5個控制制動器.機器人的目標是學會行走并跳躍跨過環境設置的障礙物,當機器人行走速度越快,成功跨越障礙物并且沒有失去平衡,獎勵回報值越高.從圖中可以得出DQN和TRPO訓練效果不佳,DDPG訓練曲線在0.3*106時間步處,獎勵值開始有提高,說明機器人學會了緩慢行走,但是整個訓練過程的起伏較大,說明該機器人學習到的策略在環境中不能很好地跨越障礙物,每當其失去平衡時,相應的獎勵值會減少,導致了實驗結果出現較大的不穩定性.為了減少不穩定性并提高算法收斂性,DAAC采用了延遲策略更新的技巧,實驗結果在0.18*106時間步處獎勵值開始提升,并在0.4*106時間步處訓練趨于穩定并表現出良好的收斂性最終的獎勵值達到約4300,通過對比,DAAC學習到的策略更優,所獲得的獎勵回報值也更高.

圖7 Walker-v2環境下算法對比實驗圖
如表2所示,具體展示了各個算法在上述4個物理模擬機器人環境中,在各個時間步數范圍內,智能體所獲得的平均獎勵回報值.(表中取值均保留到整數位)

表2 算法在不同實驗環境中各時間段平均獎勵回報值實驗數據表
4.3.2 閾值系數取值對比實驗
如圖8所示,在Ant-v2的環境下,延遲網絡策略更新的閾值系數τ取不同的值對實驗性能的影響,根據式(21)得出τ可以調節目標網絡在策略每次更新時所占的比重,τ的取值范圍為(0,1),因此當τ趨近于1時,目標網絡所占比重較小,對策略更新的影響因素很小,策略更新頻率加快會導致智能體無法學習到獎勵回報值高的策略,容易陷入局部最優解,最終導致對環境的極其有限的探索和學習到獎勵值很低的策略,圖8實驗中所示,當τ=0.9,智能體獲得的獎勵值為負數,始終無法學習到一個較好的策略.當τ=0.5的時候,智能體探索環境的獎勵值維持在0左右,依然無法學習獲得一個良好的策略,當τ分別取到0.1和0.01時,智能體探索環境獲得了較良好的策略,獎勵值最終分別達到了1780和2800,明顯優于τ取0.9和0.5.說明當τ趨近于0的時候目標網絡所占比重較大,對策略更新的影響因素變大,也因此延遲了策略更新的速度,使智能體能夠更加充分地探索環境,學習到可以獲得更高獎勵值的最優策略,但是當τ=0.005時,智能體所獲得的獎勵值反而降低了,因為控制策略更新的閾值系數過小,導致了策略更新速度過于緩慢,在有限的時間步數范圍內,智能體無法學習到獲得獎勵值更高的最優策略.

圖8 Ant-v2環境下閾值系數τ取值對比實驗圖
通過在不同的物理仿真模擬器實驗環境下,對閾值τ進行調整,如表3所示,對比τ取不同值時,智能體所獲得的平均獎勵回報值的大小,得出最終當τ取0.015時,智能體所獲得的獎勵回報值較高,能夠學習到更良好的策略.(表中取值均保留到整數位)

表3 不同實驗環境下閾值系數τ取不同值平均獎勵回報實驗數據表
本文提出的DAAC基于延遲策略的最大熵優勢演員評論家強化學習算法,在傳統的基于策略梯度的演員評論家框架上,通過使用兩個評論家網絡來計算策略的狀態動作值函數,并最大化策略的預期熵,同時還使用延遲更新評論家網絡的策略參數的技巧.在高維物理仿真模擬器環境中的實驗結果表明,該DAAC方法在算法收斂性,穩定性以及智能體最終獲得的獎勵回報值等方面都明顯優于傳統的強化學習算法.但該DAAC算法也存在一定的局限性,在更復雜的環境如Humanoid中,智能體很難在有效的時間內學習到最優策略,說明DAAC算法在更高維的環境中還有進一步需要改進完善的地方.