劉全,姜玉斌,胡智慧
(1. 蘇州大學(xué)計算機科學(xué)與技術(shù)學(xué)院,江蘇 蘇州 215006;2. 蘇州大學(xué)江蘇省計算機信息處理技術(shù)重點實驗室,江蘇 蘇州 215006;3. 吉林大學(xué)符號計算與知識工程教育部重點實驗室,吉林 長春 130012;4. 軟件新技術(shù)與產(chǎn)業(yè)化協(xié)同創(chuàng)新中心,江蘇 南京 210093)
強化學(xué)習(xí)(RL, reinforcement learning)[1]利用智能體(agent)與環(huán)境交互獲得的反饋信息進行自學(xué)習(xí)以獲得最優(yōu)策略。根據(jù)狀態(tài)特征的表示方式,可以將強化學(xué)習(xí)分為3種:1)表格形式,將所有狀態(tài)特征存儲在表格中,每個狀態(tài)都可以被準(zhǔn)確地表達(dá)出來,這種形式有利于理論分析,但是無法應(yīng)用到大規(guī)模狀態(tài)空間和連續(xù)狀態(tài)空間任務(wù)中;2)線性函數(shù)近似,通過人工標(biāo)注或構(gòu)造編碼函數(shù)[2]等人為的方式產(chǎn)生每個狀態(tài)的特征,狀態(tài)的特征值在學(xué)習(xí)中不會改變,使用線性函數(shù)近似將強化學(xué)習(xí)的應(yīng)用范圍擴大,但是無法處理非線性任務(wù);3)非線性函數(shù)近似,利用多層神經(jīng)網(wǎng)(MLP, multilayer perceptron)[3]、卷積神經(jīng)網(wǎng)絡(luò)(CNN, convolutional neural network)[4]等深度網(wǎng)絡(luò)對狀態(tài)進行特征提取,狀態(tài)的特征值在學(xué)習(xí)中不固定。深度網(wǎng)絡(luò)將強化學(xué)習(xí)從線性任務(wù)推廣到非線性任務(wù),但是深度網(wǎng)絡(luò)生成特征的不確定性會導(dǎo)致算法的穩(wěn)定性不足[5]。
深度強化學(xué)習(xí)(DRL, deep reinforcement learning)將強化學(xué)習(xí)與深度學(xué)習(xí)(DL, deep learning)[6]結(jié)合,在游戲、機器人控制、機器人運動等眾多領(lǐng)域中取得了引人矚目的成功。DeepMind公司的Mnih等[7]將強化學(xué)習(xí)中的Q學(xué)習(xí)算法與深度網(wǎng)絡(luò)結(jié)合,提出了深度 Q網(wǎng)絡(luò)(DQN, deep Q-network)模型。DQN將Atari 2600游戲的原始圖像作為輸入,通過卷積神經(jīng)網(wǎng)提取狀態(tài)特征并通過全連接構(gòu)造 Q值網(wǎng)絡(luò)。為了保證樣本的獨立同分布,DQN使用經(jīng)驗重放機制打破樣本間的關(guān)聯(lián),提高了模型的穩(wěn)定性。DQN在許多游戲中都達(dá)到了人類水平,但是經(jīng)驗重放機制會導(dǎo)致模型樣本利用率低、收斂速度慢。Mnih等[8]提出了優(yōu)先級經(jīng)驗重放機制,對樣本優(yōu)先級進行排序,高優(yōu)先級的樣本更容易被采用,提高了樣本利用率。Van等[9]將雙 Q學(xué)習(xí)算法擴展到 DQN,提出了雙層深度 Q網(wǎng)絡(luò)(DDQN, double deep Q-network)模型,解決了DQN最大化偏差問題。Wang等[10]將Q值拆分成狀態(tài)值與動作優(yōu)勢值,提出了競爭深度 Q網(wǎng)絡(luò)(dueling deep Q-network),能夠大幅提升學(xué)習(xí)效果,加快算法的收斂。
但是上述深度強化學(xué)習(xí)算法并未解決信用分配的問題[11]。信用分配是強化學(xué)習(xí)中的眾多挑戰(zhàn)之一,用于解決動作與長期回報延遲的問題。在強化學(xué)習(xí)中,解決信用分配問題最常用的方法就是資格跡(eligibility trace)[12]。資格跡的向前觀點λ回報最早由Watkins等[13]提出并給出性質(zhì),Sutton等[14]提出了向后觀點TD(λ)算法,從實踐角度簡化了資格跡并使其可以進行在線學(xué)習(xí),提高了計算效率。Van等[15]通過構(gòu)造截斷式λ回報,將資格跡的向前觀點與向后觀點統(tǒng)一,提出了真實在線 TD(λ)算法。在深度學(xué)習(xí)中,為了保證網(wǎng)絡(luò)參數(shù)的穩(wěn)定性,通常使用批量數(shù)據(jù)進行訓(xùn)練。使用批量數(shù)據(jù)意味著無法進行完全在線的訓(xùn)練,并且深度學(xué)習(xí)提取的特征會隨著訓(xùn)練而改變,這使資格跡無法應(yīng)用到深度強化學(xué)習(xí)中。為了解決深度強化學(xué)習(xí)的信用分配問題,Ho等[16]利用λ回報的思想,構(gòu)造了通用優(yōu)勢估計器(GAE, generalized advantage estimator),提高了樣本利用率。Mnih等[17]提出了異步優(yōu)勢行動者評論家(A3C, asynchronous advantage actor-critic)算法,將異步方法與 GAE結(jié)合,替代了經(jīng)驗重放機制。在大量減少內(nèi)存使用與訓(xùn)練時間的情況下,A3C算法在Atari 2600游戲中的表現(xiàn)超越了DQN。Schulman等[18]提出了置信域策略優(yōu)化(TRPO, trust region policy optimization)算法,使用GAE作為策略函數(shù)的估計器,將GAE應(yīng)用到高維連續(xù)動作中,并證明了該算法在隨機梯度更新下對策略的改進是單調(diào)遞增的。TRPO為了保證單調(diào)性,每次更新都要計算新舊策略的交叉熵,計算量較大。為此,Schulman等[19]了改進TRPO,提出了近端策略優(yōu)化(PPO, proximal policy optimization)算法,使用截斷的更新步長保證策略改進的單調(diào)性。PPO算法在MuJoCo環(huán)境中表現(xiàn)優(yōu)異,但是使用高斯策略進行動作選擇會導(dǎo)致邊界動作被選擇的概率陡然升高,影響值函數(shù)的準(zhǔn)確性,降低了訓(xùn)練的收斂速度。Fujita等[20]提出了截斷動作策略梯度(CAPG,clipped action policy gradient)算法,通過改變邊界動作的策略梯度減少了目標(biāo)函數(shù)的方差,提高了算法的穩(wěn)定性。
本文在 GAE的基礎(chǔ)上提出了重要性采樣優(yōu)勢估計器(ISAE, importance sampling advantage estimator)。針對高斯策略下截斷動作引起的邊界動作出現(xiàn)概率陡然升高的問題,ISAE通過引入重要性采樣來解決邊界動作行動策略與目標(biāo)策略不一致的問題,同時引入了L參數(shù)用于保證數(shù)據(jù)的上下界不會相差過大。將 ISAE運用到 PPO中,并在MuJoCo平臺進行對比實驗。實驗結(jié)果表明,與GAE相比,ISAE能夠提高值函數(shù)的準(zhǔn)確性,且具有更快的收斂速度。
強化學(xué)習(xí)通常將問題建模成一個馬爾可夫決策過程(MDP, Markov decision process)[21]。本文使用一個無限有折扣的MDP,該MDP可以表示為一個五元組M=<S,A,T,R,γ>,其中,S表示所有狀態(tài)的集合;A表示所有動作的集合;T:S×A×S表示狀態(tài)轉(zhuǎn)移概率,表示在狀態(tài)做出動作到達(dá)下一狀態(tài)的轉(zhuǎn)移概率;R表示獎賞函數(shù),R(st)表示在狀態(tài)st獲得的立即獎賞;γ∈(0,1)表示折扣因子,表示對未來獎賞的重視程度,γ越大,說明當(dāng)前的MDP越重視長期回報。
在強化學(xué)習(xí)中,agent的當(dāng)前狀態(tài)根據(jù)策略π在狀態(tài)st選擇動作at,與環(huán)境交互獲得獎賞R(st)∈R并到達(dá)下一狀態(tài)st+1。agent到達(dá)st+1后重復(fù)上述步驟,則可獲得當(dāng)前軌跡的累計折扣獎賞通過定義狀態(tài)動作值函數(shù)來確定動作的好壞,以更好地進行策略改進。

為了解決深度強化學(xué)習(xí)中的信用分配問題,Ho等[16]提出了通用優(yōu)勢估計器,將TD(λ)的思想運用到優(yōu)勢函數(shù)估計器中,優(yōu)勢函數(shù)定義為

優(yōu)勢函數(shù)能夠直觀地表示動作的好壞,使用式(4)作為目標(biāo)函數(shù)能夠大幅提高算法的收斂速度。為了構(gòu)造GAE,定義n步優(yōu)勢目標(biāo)函數(shù)為

GAE通過加權(quán)平均的方式將一步優(yōu)勢目標(biāo)函數(shù)到n步優(yōu)勢目標(biāo)函數(shù)進行融合,即

GAE解決了信用分配問題,在實際使用中可以根據(jù)需求調(diào)整λ的大小,當(dāng)λ=0時,相當(dāng)于把一步優(yōu)勢作為估計器,此時方差小但引入了誤差;當(dāng)λ= 1時,意味著將累計優(yōu)勢作為估計器,此時沒有引入誤差但方差大[22]。人們可以通過調(diào)整GAE的λ參數(shù)使算法在方差與誤差之間進行權(quán)衡,從而達(dá)到更好的效果。
近端策略優(yōu)化在置信域策略優(yōu)化的基礎(chǔ)上進行了簡化,并提出了新的損失函數(shù),如式(5)所示。

其中,T表示目標(biāo)損失函數(shù);θ表示深度網(wǎng)絡(luò)參數(shù);表示新舊策略動作概率的比值;表示目標(biāo)優(yōu)勢函數(shù),在PPO中使用GAE作為;?表示超參數(shù),用于限制策略的更新幅度,一般取值為0.1或0.2;clip函數(shù)的作用是將rt限制在[1-? ,1+?]區(qū)間內(nèi)。PPO利用clip函數(shù)限制策略改進,實現(xiàn)了一種近似置信區(qū)間的方法,同時簡化了算法,提高了算法的靈活性和計算效率。
PPO在連續(xù)動作任務(wù)中的表現(xiàn)超過了TRPO,說明簡化后的算法不僅降低了計算復(fù)雜度,同時還提高了收斂速度。圖1展示了PPO在連續(xù)動作任務(wù)中所使用的網(wǎng)絡(luò)結(jié)構(gòu)。

圖1 PPO網(wǎng)絡(luò)結(jié)構(gòu)
圖1的輸入為84×84×3的RGB三通道圖片,PPO網(wǎng)絡(luò)結(jié)構(gòu)分為兩部分:1) 值函數(shù),輸入與包含64個神經(jīng)元的隱藏層全連接,經(jīng)過 tanh激活函數(shù)后再與 64個神經(jīng)元的隱藏層全連接,最后再經(jīng)過tanh激活函數(shù)后與單個神經(jīng)元全連接;2) 策略函數(shù),輸入與包含64個神經(jīng)元的隱藏層全連接,經(jīng)過tanh激活函數(shù)后再與64個神經(jīng)元的隱藏層全連接,最后再經(jīng)過 tanh激活函數(shù)后與對應(yīng)可控制動作數(shù)量的神經(jīng)元全連接。策略函數(shù)輸出值作為高斯策略的均值,高斯分布的標(biāo)準(zhǔn)差初始值為 1,作為單獨的參數(shù),不隨輸入的變化而變化,只與訓(xùn)練階段有關(guān)。
在連續(xù)動作任務(wù)中,通常采用高斯分布作為動作選擇的策略函數(shù),即

其中,A表示策略選擇動作的分布,N表示高斯分布,μ表示高斯分布的均值,σ表示高斯分布的標(biāo)準(zhǔn)差。使用高斯策略的原因主要有兩點:1)確定性策略函數(shù)由于沒有隨機的探索動作,容易導(dǎo)致策略進入局部最優(yōu),無法學(xué)習(xí)到最優(yōu)策略,使用隨機的高斯分布作為策略函數(shù)能夠保證動作空間得到充分的探索;2)連續(xù)動作任務(wù)無法像離散動作任務(wù)那樣將所有動作枚舉出來,因此采用高斯分布的方式表示策略函數(shù)。圖2展示了均值為0、標(biāo)準(zhǔn)差為1的高斯策略函數(shù)的概率密度。

圖2 均值為0、標(biāo)準(zhǔn)差為1的高斯策略函數(shù)的概率密度
高斯策略函數(shù)能夠解決連續(xù)動作任務(wù)中的動作選擇問題,但是在 MuJoCo環(huán)境中可能會因為截斷動作導(dǎo)致性能下降,例如,在HalfCheetah任務(wù)中,動作空間為[-1.0,1.0]6,這表示agent需要控制6個范圍在[-1.0,1.0]的連續(xù)動作。為了保證算法的頑健性,當(dāng)策略函數(shù)給出超出邊界的動作時,這些動作都會被約束到范圍的邊界,即大于1的動作視為1,小于-1的動作視為-1,這會導(dǎo)致邊界動作選擇的概率大大增加。這種現(xiàn)象會引起2個問題:1)值函數(shù)因為邊界動作出現(xiàn)概率的升高無法得到準(zhǔn)確的評估,使網(wǎng)絡(luò)的穩(wěn)定性受到影響,從而導(dǎo)致算法收斂速度變慢;2)策略函數(shù)網(wǎng)絡(luò)通常輸出高斯分布的均值,高斯分布的標(biāo)準(zhǔn)差會隨著訓(xùn)練的推進逐漸減小,邊界動作選擇概率的異常升高會導(dǎo)致均值的偏離,從而影響策略函數(shù)的改進,導(dǎo)致算法的性能下降。
為了解決截斷動作帶來的問題,本文引入了重要性采樣[23],重要性采樣率ρ為

其中,π(s,a)為目標(biāo)策略,b(s,a)為行動策略。目標(biāo)策略是算法要評估并計算值函數(shù)的策略,行動策略是實際進行動作選擇的策略。高斯策略的重要性采樣定義為

其中,PDF是概率密度函數(shù)(probability density function),PDF(st,at)表示狀態(tài)st選擇動作at的概率;CDF是累計分布函數(shù)(cumulative distribution function),CDF(st,at)表示狀態(tài)st選擇動作小于或等于at的累計概率;[a,b]表示動作空間的范圍,當(dāng)動作在區(qū)間或者區(qū)間邊界外時,目標(biāo)策略與行動策略不一致,需要計算相應(yīng)的重要性采樣率,例如當(dāng)動作在(a,b)中時,目標(biāo)策略與行動策略一致,則重要性采樣率為1。

本文將式(8)運用到GAE中,提出了重要性采樣優(yōu)勢估計器,并推導(dǎo)出簡化后目標(biāo)函數(shù)的計算式為
相較于式(4),式(9)增加了重要性采樣的部分,可以計算目標(biāo)函數(shù)。在計算復(fù)雜度上,tρ的復(fù)雜為O(1)。由于使用批量更新,計算目標(biāo)函數(shù)時可以從后向前計算,這意味每個時間步不需要重復(fù)計算后續(xù)時間步的重要性采樣,每個時間步可以利用后一時間步計算好的數(shù)據(jù),因此每個時間步的計算復(fù)雜度與 GAE相同,為O(1)。在空間復(fù)雜度上,由于需要記錄每個時間步的重要性采樣率,因此需要增加O(N)的空間。
ISAE主要對目標(biāo)函數(shù)進行改進,接下來分情況討論ISAE的作用。
1) 當(dāng)策略生成的動作在動作區(qū)間內(nèi)時,目標(biāo)策略與行動策略相同,ISAE中的重要性采樣為1,此時通過ISAE計算得到的目標(biāo)值與GAE相同。
2) 當(dāng)策略生成的動作超出了動作區(qū)間時,將會被視為邊界動作,若左邊界動作a在目標(biāo)策略下的生成概率為PDF(s,a),那么邊界動作的實際生成概率為CDF(s,a),即小于或等于左邊界a所有動作生成概率之和,右邊界動作同理。這會造成采樣生成的樣本中邊界動作出現(xiàn)的概率異常升高,值函數(shù)將會因為邊界動作得到大量更新而產(chǎn)生偏移,而在策略梯度中,動作截斷則不會體現(xiàn)出來,導(dǎo)致訓(xùn)練過程的值函數(shù)與策略不統(tǒng)一。并且值函數(shù)的偏移會導(dǎo)致對于動作評估的不準(zhǔn)確,從而影響策略改進,使算法收斂變慢。此時,ISAE使用重要性采樣,通過降低更新幅度的方式,解決邊界動作值函數(shù)由于過度采樣導(dǎo)致的高估或低估問題,緩解了值函數(shù)的偏移。通過這一改進,可以提高值函數(shù)的準(zhǔn)確性,降低評估誤差,使策略能夠正確改進。
在實際任務(wù)中,通常會有多維的連續(xù)動作空間,這意味著策略進行動作選擇時超出邊界的可能性大大提高,因此在動作空間維數(shù)更多的任務(wù)中,ISAE的重要性采樣機制將會更頻繁地使用,算法收斂速度的提升將更加明顯。但是由于ISAE限制了邊界動作的更新,導(dǎo)致策略向邊界動作收斂更慢,因此在最優(yōu)策略在邊界動作的任務(wù)中時,算法的收斂速度會有所下降。
綜上所述,ISAE在GAE的基礎(chǔ)上,限制了對于邊界動作的更新,解決了算法因為動作超出邊界導(dǎo)致的值函數(shù)與策略不統(tǒng)一的問題,提高了算法的收斂速度和收斂精度。
引入重要性采樣在一定程度上解決了截斷動作帶來的不穩(wěn)定問題,但是過高或過低的重要性采樣率同樣會影響算法的穩(wěn)定性。一方面,由于使用批量更新可能產(chǎn)生過高的重要性采樣率(ρt>1),經(jīng)過多輪的累乘會使誤差變得十分巨大,這會導(dǎo)致值函數(shù)不穩(wěn)定,且過高的誤差會導(dǎo)致訓(xùn)練無法繼續(xù)進行。另一方面,由于動作選擇的隨機性以及計算誤差,重要性采樣率可能過低,影響后續(xù)時間步數(shù)據(jù)的計算,導(dǎo)致信用分配機制失效。
采用式(9)這種累積的方式計算目標(biāo)函數(shù),過高與過低的重要性采樣率同時出現(xiàn)會使批量更新中的數(shù)據(jù)上下限差距較大,從而導(dǎo)致網(wǎng)絡(luò)參數(shù)波動較大,收斂速度變慢。因此在實際運用中,設(shè)定重要性采樣上界為 1,下界則引入?yún)?shù)L,L根據(jù)具體任務(wù)決定。通過將重要性采樣率控制在[L,1]中來限制邊界動作的更新幅度。
為了比較ISAE在具體任務(wù)中相較于GAE的差異,本文選取PPO算法作為策略梯度優(yōu)化算法。
本文使用MuJoCo平臺作為實驗環(huán)境。MuJoCo是一個物理模擬器,可以用于機器人控制優(yōu)化等研究。本文選取MuJoCo平臺的8個任務(wù),即Ant、Hopper、HalfCheetah、InvertedDoublePendulum、InvertedPendulum、Reacher、Swimmer和Walker2d進行對比實驗。表1展示了不同任務(wù)輸入的狀態(tài)空間和輸出的動作空間,其中,?表示實數(shù)。

表1 MuJoCo平臺8個任務(wù)的狀態(tài)空間和動作空間
為了更好地對比ISAE與GAE的性能差異,本文的所有算法均使用相同的參數(shù)和Adam梯度下降方法。具體參數(shù)設(shè)置為梯度下降步長PPO超參數(shù)?=0.2,MDP折扣因子γ=0.99,GAE與ISAE信用分配參數(shù)λ=0.95。網(wǎng)絡(luò)更新方式為每輪更新使用2 048個時間步的數(shù)據(jù),更新分為10個循環(huán),每個循環(huán)將2 048個時間步的數(shù)據(jù)隨機打散分成32個Mini-Batch,每個Mini-Batch用64個時間步的數(shù)據(jù)對網(wǎng)絡(luò)進行更新。實驗一共訓(xùn)練1 000 000個時間步。
在深度強化學(xué)習(xí)中,使用不同的隨機種子進行訓(xùn)練會影響算法的收斂速度和收斂結(jié)果,不同環(huán)境下的表現(xiàn)體現(xiàn)了算法的穩(wěn)定性。為了體現(xiàn)不同估計器之間真實的性能差異,本文所有實驗均在相同參數(shù)下使用20組隨機種子進行訓(xùn)練,得到20組不同的數(shù)據(jù)。訓(xùn)練階段中將最近100個情節(jié)得到的獎賞的平均值作為實驗結(jié)果。
為了探究ISAE中L參數(shù)對估計器性能的影響,使用不同的L在Swimmer環(huán)境中進行對比實驗,實驗結(jié)果如圖3所示。從圖3中可以看出,當(dāng)L=0.90和L=0.95時算法的收斂速度最快,當(dāng)L=0.80和L=0.99時性能下降。當(dāng)L=0時,ISAE中的重要性采樣不會受到L參數(shù)的影響,最終的結(jié)果和3.3節(jié)中分析的一致,當(dāng)不限制重要性采樣的作用范圍時,會使批量更新中的數(shù)據(jù)上下界懸殊過大,導(dǎo)致網(wǎng)絡(luò)參數(shù)產(chǎn)生較大波動,從而引起收斂速度的降低。由于L=0.90和L=0.95時兩者的性能與收斂速度相近,因此在4.3節(jié)的對比實驗中使用這2個參數(shù)。

圖3 L參數(shù)對比實驗

圖4 3種算法在Hopper、Walker2d、HalfCheetah、Ant任務(wù)中的對比實驗結(jié)果
為了驗證ISAE的有效性,本文使用PPO算法作為基礎(chǔ)的梯度優(yōu)化算法,并在8個基準(zhǔn)任務(wù)中對比ISAE、GAE和CAPG的性能。每個算法在每個基準(zhǔn)實驗中都進行 20次不同隨機的訓(xùn)練,最終結(jié)果由 20次的結(jié)果取平均得到。首先,在動作空間維度較高的任務(wù)中進行對比實驗,圖4展示了3種算法在Hopper、Walker2d、HalfCheetah、Ant任務(wù)中的訓(xùn)練曲線,橫坐標(biāo)為訓(xùn)練步長,縱坐標(biāo)為最近100個情節(jié)的平均獎賞。
將圖 4中的動作空間維數(shù)的數(shù)量從小到大排布,可以看出,2組 ISAE算法的收斂速度與平均獎賞均優(yōu)于 GAE與 CAPG,并且當(dāng)動作空間維度大于 2時,ISAE對于算法性能的提升隨著動作空間維度的增加而越發(fā)明顯。例如,在 Hopper任務(wù)中,動作空間的維度為3,ISAE在200 000步之前與GAE和CAPG這2種算法并未有較大差距,直到400 000步之后才逐漸拉開差距。但在動作空間維度為6的Walker2d任務(wù)中,ISAE在訓(xùn)練截斷的最開始便與GAE和CAPG拉開差距,而在動作空間維數(shù)更多的Ant任務(wù)中,這種情況更加突出。產(chǎn)生這一現(xiàn)象的原因是動作空間的維度越高,策略生成的動作則越多,動作超出邊界的可能性就越大。當(dāng)動作超出邊界時,ISAE會利用重要性采樣來限制值函數(shù)的更新,保證值函數(shù)不會偏離策略太遠(yuǎn),提高了策略評估的準(zhǔn)確性,并從側(cè)面驗證了 ISAE的有效性。
接下來,將3種算法在其他4個MuJoCo控制任務(wù)中進行對比實驗,結(jié)果如圖5所示,橫坐標(biāo)為訓(xùn)練步長,縱坐標(biāo)為最近100個情節(jié)的平均獎賞。

圖5 3種算法在其他4個MuJoCo任務(wù)中對比實驗結(jié)果
結(jié)合圖4和圖5可以看出,在Ant、Hopper、HalfCheetah、Walker2d、InvertedDoublePendulum、InvertedPendulum這 6個任務(wù)中,ISAE無論是L=0.90還是L=0.95,收斂速度和平均獎賞都要優(yōu)于GAE和CAPG。不同參數(shù)的ISAE在不同的任務(wù)中表現(xiàn)得各不相同,這是因為在不同的任務(wù)中,最優(yōu)動作的分布各不相同。某些任務(wù)中最優(yōu)動作更傾向于邊界動作,而ISAE則會在一定程度上阻礙策略向邊界動作靠攏,這時L=0.95則會更具有優(yōu)勢。在動作空間維度較小的任務(wù)中,相較于 GAE和CAPG,ISAE在收斂速度上的優(yōu)勢不夠明顯,這是因為當(dāng)動作空間維度較小時,策略生成超出邊界的動作概率較小,所以在性能表現(xiàn)上會趨向于GAE,并且會受到任務(wù)特殊性的影響。當(dāng)在某些最優(yōu)動作傾向于非邊界動作的任務(wù)中,如InvertedPendulum,該任務(wù)由2個部分組成,一個只能水平移動的小車和一端固定在小車中部且可以自由轉(zhuǎn)動的長桿,該任務(wù)的目標(biāo)是控制小車在水平方向移動(動作空間為[-3.0,3.0]1),使長桿盡可能地保持豎立,保持平衡的時間越長,agent得到的獎賞就越大。任何幅度過大的動作(邊界動作)都會使長桿的平衡被打破,所以在大部分狀態(tài)下的最優(yōu)動作都不是邊界動作。由圖5可知,ISAE的參數(shù)L=0.90性能表現(xiàn)最好,收斂速度最快。平均獎賞在達(dá)到最高點后下降的原因是,當(dāng)策略收斂到最優(yōu)時,訓(xùn)練不會立即停止,而后續(xù)訓(xùn)練中會因為隨機動作導(dǎo)致值函數(shù)變化,從而影響到策略。這種情況通常會出現(xiàn)在需要精細(xì)控制對隨機動作敏感的任務(wù)(如InvertedDoublePendulum)中,而在對隨機動作不敏感的任務(wù)(如 Reacher)中,agent控制手臂使末端到達(dá)隨機指定位置,到達(dá)的時間越短,獎賞越高,任務(wù)簡單且沒有干擾因素,雖然算法很快收斂,但是并沒有產(chǎn)生波動,3種算法的性能沒有較大差距。但是在最優(yōu)策略靠近邊界動作的任務(wù)(如Swimmer)中,GAE與CAPG的收斂速度要稍快于 ISAE。產(chǎn)生這一現(xiàn)象的原因是在Swimmer任務(wù)中,agent通過控制2個關(guān)節(jié)讓3節(jié)機器人在平地上向前移動,規(guī)定時間內(nèi)向前移動的距離越長,得到的獎賞就越高。該任務(wù)的最優(yōu)策略可以參考蛇的行進方式,2個關(guān)節(jié)向相反的方向發(fā)力,到達(dá)極限后調(diào)轉(zhuǎn)方向,如此循環(huán)往復(fù)。這意味著最優(yōu)策略傾向于選擇邊界動作,而ISAE會阻礙策略向邊界動作收斂,L越小,阻礙的力度越大,所以在圖4中L=0.95比L=0.90時收斂速度更快。
為了驗證訓(xùn)練得到模型的有效性,將訓(xùn)練后的模型在對應(yīng)的任務(wù)中使用測試集進行比較,平均獎賞結(jié)果如表2所示。
本文實驗中所使用的測試集都由 20個隨機種子下的100個情節(jié)(共2 000個情節(jié))組成,最終的結(jié)果則由所有情節(jié)的累計獎賞取平均得到。這樣做一方面對應(yīng)之前訓(xùn)練的過程,另一方面保證了對比實驗不受隨機種子的影響。從表2中可以看出,測試集上的結(jié)果與訓(xùn)練階段的結(jié)果基本一致,ISAE在大部分任務(wù)中的表現(xiàn)明顯優(yōu)于GAE和CAPG,2個不同參數(shù)的ISAE的表現(xiàn)相差不大,從總體上看L=0.90略優(yōu)于L= 0.95。
本文針對在高斯策略下截斷動作帶來的收斂速度慢的問題,提出了 ISAE。該估計器在 GAE的基礎(chǔ)上,引入了重要性采樣。利用邊界動作的行動策略和目標(biāo)策略不一致,計算相應(yīng)的重要性采樣率,并將計算好的重要性采樣率運用到GAE中。同時,為了保證網(wǎng)絡(luò)的穩(wěn)定性,引入了L參數(shù),通過調(diào)節(jié)L使算法適應(yīng)不同的任務(wù)。將ISAE應(yīng)用于 PPO算法,通過對比不同的參數(shù)確定了L=0.90和L=0.95,并在MuJoCo平臺的8個基準(zhǔn)任務(wù)上與GAE和CAPG進行對比實驗。實驗結(jié)果表明,ISAE相較于GAE具有更快的收斂速度和更優(yōu)的收斂結(jié)果。
ISAE在大部分任務(wù)中的表現(xiàn)都優(yōu)于GAE和CAPG,但是對于最優(yōu)策略傾向于邊界動作的任務(wù),ISAE由于使用了重要性采樣會阻礙策略向邊界動作收斂,導(dǎo)致ISAE的收斂速度略慢于GAE和CAPG。未來的工作就是完善ISAE,使其能夠適用于邊界動作為最優(yōu)策略的任務(wù),使估計器具有更廣泛的通用性。