康朝海, 孫 超, 榮垂霆, 劉鵬云
(東北石油大學(xué) 電氣信息工程學(xué)院, 黑龍江 大慶 163318)
強(qiáng)化學(xué)習(xí)(RL: Reinforcement Learning)通過最大化智能體(Agent)與環(huán)境(Environment)交互獲得的獎(jiǎng)勵(lì)值(Reward)學(xué)習(xí)最優(yōu)控制策略(Policy)[1-2]。深度神經(jīng)網(wǎng)絡(luò)(DNN: Deep Neural Network)利用其強(qiáng)大的非線性擬合能力可對(duì)復(fù)雜信號(hào)進(jìn)行特征提取[3]。將強(qiáng)化學(xué)習(xí)的控制決策功能與深度神經(jīng)網(wǎng)絡(luò)的感知功能相結(jié)合產(chǎn)生的深度強(qiáng)化學(xué)習(xí)算法(DRL: Deep Reinforcement Learning)能在不事先了解被控制系統(tǒng)的情況下學(xué)習(xí)復(fù)雜的非線性控制策略, 其已經(jīng)成功應(yīng)用到競(jìng)技游戲[4]、 自動(dòng)駕駛[5-6]和機(jī)器人控制[7]等人工智能領(lǐng)域。
深度強(qiáng)化學(xué)習(xí)不僅應(yīng)用深度神經(jīng)網(wǎng)絡(luò)做復(fù)雜環(huán)境的特征提取工作, 而且由于神經(jīng)網(wǎng)絡(luò)可解決強(qiáng)化學(xué)習(xí)狀態(tài)維度和動(dòng)作維度過高的問題, 所以在實(shí)際任務(wù)中, 也將其應(yīng)用到強(qiáng)化學(xué)習(xí)的值函數(shù)及策略函數(shù)的擬合任務(wù)中[8]。深度強(qiáng)化學(xué)習(xí)中的經(jīng)典算法----深度Q學(xué)習(xí)算法(DQN: Deep Q-Network)[9-10]及行動(dòng)者-評(píng)論家算法(AC: Actor-Critic)[11-12]即是應(yīng)用神經(jīng)網(wǎng)絡(luò)擬合值函數(shù)及策略函數(shù)的典型例子。但是, 由于Q-learning的值估計(jì)中存在不可避免的噪聲, 因此神經(jīng)網(wǎng)絡(luò)在擬合值函數(shù)的過程中, 會(huì)出現(xiàn)價(jià)值過高估計(jì)的現(xiàn)象, 從而導(dǎo)致算法獲得較差的策略[13]。針對(duì)這一現(xiàn)象, Fox等[14]通過減小早期高方差估計(jì)的過度擬合降低Q值過估計(jì)。Hasselt等[15]提出Double Q-learning方法, 通過對(duì)動(dòng)作的選擇和評(píng)價(jià)進(jìn)行解耦以達(dá)到降低過估計(jì)的效果。但上述解決過估計(jì)的方法都是針對(duì)離散動(dòng)作空間任務(wù)的。針對(duì)連續(xù)動(dòng)作空間任務(wù)中的價(jià)值過估計(jì)現(xiàn)象, Fujimoto等[16]提出的TD3算法通過雙Q值網(wǎng)絡(luò)機(jī)構(gòu)及延遲更新Actor目標(biāo)網(wǎng)絡(luò)減小由于價(jià)值過估計(jì)而導(dǎo)致的策略惡化, 并且在TD3中其采用固定延遲步長(zhǎng)的更新機(jī)制, 沒有考慮價(jià)值估計(jì)的動(dòng)態(tài)性, 從而導(dǎo)致策略學(xué)習(xí)效率降低。
針對(duì)連續(xù)動(dòng)作空間中出現(xiàn)的價(jià)值過估計(jì)而導(dǎo)致策略惡化的問題, 結(jié)合TD3中的延遲更新方法, 筆者提出一種動(dòng)態(tài)步長(zhǎng)的延遲更新機(jī)制, 通過累計(jì)價(jià)值網(wǎng)絡(luò)Loss的指數(shù)加權(quán)移動(dòng)平均值(EWMA: Exponentially Weighted Moving Average), 并將其設(shè)置為動(dòng)態(tài)延遲步長(zhǎng)的更新標(biāo)準(zhǔn), 指導(dǎo)Actor網(wǎng)絡(luò)延遲更新。經(jīng)實(shí)驗(yàn)驗(yàn)證, 筆者提出的基于動(dòng)態(tài)步長(zhǎng)延遲更新的TD3算法具有更好的學(xué)習(xí)性能。
狀態(tài)-動(dòng)作值函數(shù)Qπ是智能體在狀態(tài)s下采取由策略π生成動(dòng)作a后獲得的獎(jiǎng)勵(lì)值的期望
Qπ(s,a)=Eπ[Rt|s,a]
(1)
將式(1)表示成遞歸的貝爾曼方程形式
Qπ(s,a)=Eπ[Rt+γQπ(s′,a′)|s,a]
(2)
針對(duì)規(guī)模比較小的任務(wù), 傳統(tǒng)的強(qiáng)化學(xué)習(xí)算法如Q-learning[17], Sarsa[18], 可通過迭代貝爾曼方程最大化值函數(shù)以獲取最優(yōu)策略
(3)
為解決狀態(tài)數(shù)量多或連續(xù)狀態(tài)的強(qiáng)化學(xué)習(xí)問題, 需采用比較復(fù)雜的函數(shù)逼近器擬合值函數(shù)。深度Q學(xué)習(xí)算法(DQN)是深度強(qiáng)化學(xué)習(xí)中的經(jīng)典算法, 它采用神經(jīng)網(wǎng)絡(luò)擬合狀態(tài)-動(dòng)作值函數(shù), 并通過梯度下降法尋找最優(yōu)價(jià)值函數(shù)網(wǎng)絡(luò)。基于求解值函數(shù)的強(qiáng)化學(xué)習(xí)算法不能有效解決連續(xù)高維動(dòng)作空間的強(qiáng)化學(xué)習(xí)任務(wù), 而策略梯度算法提供了解決方法。
策略梯度方法重新定義了期望收益最大化的目標(biāo), 通過直接最小化策略目標(biāo)函數(shù)獲取最優(yōu)策略
(4)
其中pπ為依據(jù)策略π(a|s), 智能體在狀態(tài)S時(shí)輸出動(dòng)作a的概率,θ為利用逼近器(如神經(jīng)網(wǎng)絡(luò))擬合策略π時(shí)的參數(shù)。
深度確定性策略梯度算法(DDPG: Deep Deterministic Policy Gradient)[19]利用確定性策略大幅減少了算法訓(xùn)練所需的采樣數(shù)據(jù), 顯著提高了算法的收斂效率。確定性策略表示為
a=μθ(s)
(5)
其中μθ(s)表示參數(shù)為θ的神經(jīng)網(wǎng)絡(luò), 輸入為狀態(tài)信息s, 輸出為確定動(dòng)作a, 相當(dāng)于策略更新網(wǎng)絡(luò)(Actor網(wǎng)絡(luò))。對(duì)應(yīng)的策略梯度為
J(μθ)=Es~pπ[θμθ(s)·aQμθ(s,a)|a=μθ(s)]
(6)
其中Qμθ(s,a)表示依據(jù)確定性策略μθ(s), 在狀態(tài)s下采取動(dòng)作a的狀態(tài)-動(dòng)作值函數(shù)。它評(píng)價(jià)了在該狀態(tài)下做出動(dòng)作的價(jià)值, 用參數(shù)為θ的神經(jīng)網(wǎng)絡(luò)擬合。由于它控制了策略梯度更新的方向和幅度, 相當(dāng)于價(jià)值估計(jì)網(wǎng)絡(luò)(Critic網(wǎng)絡(luò))。
雙延遲深度確定新策略梯度算法(TD3: Twin Delayed Deep Deterministic Policy Gradients)是DDPG算法的升級(jí)版本。為降低Critic網(wǎng)絡(luò)的過估計(jì), TD3由兩個(gè)獨(dú)立的評(píng)論家網(wǎng)絡(luò)(Critic-1和Critic-2)擬合智能體的行為價(jià)值函數(shù)Q:S×A→i, 并選擇值最小的Critic網(wǎng)絡(luò)。
智能體在訓(xùn)練過程中, 每行動(dòng)一步就會(huì)產(chǎn)生經(jīng)驗(yàn)信息(st,at,rt,st+1), 即當(dāng)前狀態(tài)、 動(dòng)作、 獎(jiǎng)勵(lì)值和下一步狀態(tài)。并且以元組形式保存到經(jīng)驗(yàn)回放體Replay Buffer中。Actor網(wǎng)絡(luò)和Critic網(wǎng)絡(luò)通過從Buffer中隨機(jī)抽取的Mini-Batch的數(shù)據(jù)進(jìn)行參數(shù)更新。Critic網(wǎng)絡(luò)通過最小化損失函數(shù)Li訓(xùn)練網(wǎng)絡(luò)
(7)
在Actor網(wǎng)絡(luò)的Bellman更新中, 使用目標(biāo)策略平滑化的正則化技術(shù)減小確定性策略方法在更新Actor時(shí)產(chǎn)生高方差目標(biāo)值的現(xiàn)象。Actor網(wǎng)絡(luò)更新梯度
(8)
在AC架構(gòu)的TD3算法中, 目標(biāo)網(wǎng)絡(luò)機(jī)制存在不可避免的問題, 即Actor網(wǎng)絡(luò)和Critic網(wǎng)絡(luò)的相互作用會(huì)導(dǎo)致算法不收斂。針對(duì)該問題, 在網(wǎng)絡(luò)更新過程中, 為降低算法中Critic網(wǎng)絡(luò)的過估計(jì)而導(dǎo)致的策略惡化問題, 設(shè)置Actor網(wǎng)絡(luò)采用延遲更新機(jī)制: 其中Critic網(wǎng)絡(luò)是在每個(gè)時(shí)間步之后更新一次, Actor網(wǎng)絡(luò)每?jī)蓚€(gè)時(shí)間步更新一次。圖1為Actor網(wǎng)絡(luò)和Critic網(wǎng)絡(luò)從環(huán)境中獲取狀態(tài)信息, 并且相互之間網(wǎng)絡(luò)更新存在延遲的示意圖。
圖1 延遲更新Fig.1 Delayed policy update
雖然在TD3算法中利用延遲更新Actor網(wǎng)絡(luò)改善策略更新效果, 但延遲步長(zhǎng)是固定的, 這并不能根據(jù)Critic網(wǎng)絡(luò)估計(jì)效果的動(dòng)態(tài)情況合理設(shè)置延遲。筆者提出的動(dòng)態(tài)延遲更新將累計(jì)的價(jià)值網(wǎng)絡(luò)Loss的指數(shù)加權(quán)移動(dòng)平均值(EWMA)作為動(dòng)態(tài)延遲步長(zhǎng)的更新標(biāo)準(zhǔn), 從而指導(dǎo)Actor網(wǎng)絡(luò)延遲更新的機(jī)制。
指數(shù)加權(quán)移動(dòng)平均法(EWMA)[22]是當(dāng)前眾多領(lǐng)域, 如金融時(shí)間序列、 信號(hào)處理及神經(jīng)網(wǎng)絡(luò)等采用的重要算法之一。實(shí)際上, 深度學(xué)習(xí)中的Adam優(yōu)化算法就應(yīng)用了EWMA。此算法的主要作用是減少嘈雜數(shù)據(jù)中的噪聲, 平滑數(shù)據(jù)。EWMA相對(duì)于傳統(tǒng)的平均值, 不需保存過去所有的數(shù)值, 計(jì)算量顯著減小。EWMA的表達(dá)式為
vt=βvt-1+(1-β)ρt
(9)
其中ρt為時(shí)刻t的實(shí)際值; 系數(shù)β為加權(quán)下降速率, 其值越小則下降越快;vt為t時(shí)刻的EWMA值。
在TD3中, 由于時(shí)間差異更新機(jī)制, 值函數(shù)的估計(jì)是根據(jù)后續(xù)狀態(tài)的估計(jì)建立的, 并且Bellman方程決定了TD誤差會(huì)逐步累加, 從而導(dǎo)致可能存在大量高估偏差和次優(yōu)策略更新[16]。在利用函數(shù)逼近器表示值函數(shù)時(shí)會(huì)加劇這種現(xiàn)象, 并且每次函數(shù)更新都會(huì)留下一定量的殘余TD錯(cuò)誤δ(s,a)
Qθ(s,a)=r+γE[Qθ(s′,a′)]-δ(s,a)
(10)
則通過
Fujimoto等[16]深入研究了目標(biāo)網(wǎng)絡(luò)機(jī)制與函數(shù)逼近誤差之間的關(guān)系, 并驗(yàn)證了使用穩(wěn)定目標(biāo)可減少誤差的增長(zhǎng)。如果沒有固定目標(biāo), 每次價(jià)值估計(jì)更新都可能留下殘余誤差, 并逐步累積。設(shè)定類似目標(biāo)網(wǎng)絡(luò)機(jī)制的延遲更新機(jī)制, 減小價(jià)值網(wǎng)絡(luò)更新的方差, 通過減緩Critic網(wǎng)絡(luò)的更新頻率, 以獲得準(zhǔn)確的價(jià)值估計(jì), 從而提高優(yōu)質(zhì)策略的更新次數(shù), 提升策略收斂速度。
在DD-TD3中, 采用網(wǎng)絡(luò)Loss的移動(dòng)平均值與網(wǎng)絡(luò)當(dāng)前Loss值的差異評(píng)價(jià)Critic網(wǎng)絡(luò)的預(yù)計(jì)更新幅度, 一旦Critic網(wǎng)絡(luò)下次大幅度更新, 則說明這時(shí)的網(wǎng)絡(luò)價(jià)值估計(jì)是次優(yōu)的, 則設(shè)置Actor網(wǎng)絡(luò)更多步數(shù)的策略延遲更新以等待更優(yōu)的價(jià)值估計(jì)。但如果過多延遲更新Actor網(wǎng)絡(luò), 則會(huì)有更高概率錯(cuò)過優(yōu)質(zhì)的價(jià)值估計(jì), 無法及時(shí)更新網(wǎng)絡(luò)參數(shù)。
根據(jù)式(7)中Li與式(9)計(jì)算得到在T時(shí)刻Critic網(wǎng)絡(luò)Loss的移動(dòng)平均值(EWMA-Loss,ET)
(12)
并通過
(13)
估算Critic網(wǎng)絡(luò)的計(jì)劃更新幅度。
延遲更新公式表示為
(14)
其中ω為線性系數(shù), 調(diào)整f主要分布在區(qū)間(1,5)。實(shí)驗(yàn)證明ω=30時(shí)算法效果達(dá)到最佳。
算法結(jié)構(gòu)如圖2所示。
圖2 DD-TD3算法Fig.2 DD-TD3algorithm
由圖2可見, DD-TD3共有5個(gè)神經(jīng)網(wǎng)絡(luò), 分為兩類: 策略更新網(wǎng)絡(luò)(Actor)和價(jià)值評(píng)價(jià)網(wǎng)絡(luò)(Critic), 并且這兩類網(wǎng)絡(luò)皆適用目標(biāo)網(wǎng)絡(luò)機(jī)制穩(wěn)定其更新。其中在計(jì)算目標(biāo)價(jià)值網(wǎng)絡(luò)(Target-Critic)時(shí), 使用兩個(gè)獨(dú)立的神經(jīng)網(wǎng)絡(luò)計(jì)算并取最小值。Actor網(wǎng)絡(luò)在與環(huán)境交互時(shí)通過加入噪聲提高其探索性能。網(wǎng)絡(luò)更新所需數(shù)據(jù)是在經(jīng)驗(yàn)回放體中用隨機(jī)小批量采樣得到的。
DD-TD3算法步驟如下。
fort=1 toTdo
選擇動(dòng)作a~πφ(s)+, 其中~N(0,σ);
執(zhí)行動(dòng)作a, 獲得立即獎(jiǎng)勵(lì)r和下一狀態(tài)s′;
將經(jīng)驗(yàn)樣本(s,a,r,s′)存入經(jīng)驗(yàn)緩沖體B中;
在經(jīng)驗(yàn)緩沖體B中隨機(jī)小批量采樣經(jīng)驗(yàn)樣本;
iftmodd==0 then
通過確定性策略梯度更新Actor網(wǎng)絡(luò)參數(shù)
φJ(rèn)(φ)=N-1∑aQθ1(s,a)|a=πφ(s)φπφ(s)
更新目標(biāo)網(wǎng)絡(luò)
end if
end for
此算法中, 第1步為初始化各參數(shù)的過程, 第2~第5步為產(chǎn)生經(jīng)驗(yàn)樣本的過程, 第6~第9步為更新Critic網(wǎng)絡(luò)的過程, 第10~第11步為延遲更新Actor網(wǎng)絡(luò)的過程, 第12步為更新目標(biāo)網(wǎng)絡(luò)的過程。
筆者采用OpenAI開發(fā)的Gym作為實(shí)踐環(huán)境, Gym是一個(gè)用于研究和比較強(qiáng)化學(xué)習(xí)算法的開源工具包, 包含了各種訓(xùn)練和研究新的強(qiáng)化學(xué)習(xí)算法的模擬環(huán)境。筆者在Windows10系統(tǒng)下, 使用Pycharm2019 IDE搭載Anaconda3的Python 3.7編譯環(huán)境, 并且使用效果優(yōu)異的Pytorch 1.3.0深度學(xué)習(xí)框架搭建神經(jīng)網(wǎng)絡(luò)。
為驗(yàn)證DD-TD3的有效性, 在OpenAI Gym工具包中的Pendulum-v0(鐘擺)環(huán)境下進(jìn)行實(shí)驗(yàn)測(cè)試。Pendulum-v0是經(jīng)典的連續(xù)動(dòng)作域的強(qiáng)化學(xué)習(xí)任務(wù), 鐘擺以隨機(jī)位置開始, 然后利用電機(jī)的控制力矩將其向上擺動(dòng), 通過旋轉(zhuǎn)擺動(dòng)使其保持垂直并指向上方。觀測(cè)值分別為擺鐘角度的正弦及余弦值和鐘擺的角速度; 動(dòng)作值為(-2,2)的連續(xù)值, 表示對(duì)鐘擺施加的左右力的大小。
圖3為Pendulum-v0任務(wù)的示意圖。
圖3 鐘擺示意圖Fig.3 Pendulum-v0 diagrammatic sketch
觀測(cè)結(jié)果如表1和表2所示。由表1可見, 智能體的觀測(cè)值(Observation), 即環(huán)境的狀態(tài)空間(State)為3維連續(xù)值, 動(dòng)作空間(Action)為1維的連續(xù)值。
表2 動(dòng)作值
表1 觀測(cè)值和狀態(tài)值
任務(wù)獎(jiǎng)勵(lì)函數(shù)(Reward)的精確等式為
(15)
其中α為鐘擺與豎直方向的角度,αdt為鐘擺的角速度,a為輸入力矩。由式(15)可見, 獎(jiǎng)勵(lì)的最高值為0。任務(wù)目標(biāo)是保持鐘擺零角度(垂直), 并且旋轉(zhuǎn)速度最小, 同時(shí)電機(jī)的控制力度最小。
為保證實(shí)驗(yàn)對(duì)比的公平性, 實(shí)驗(yàn)中DD-TD3算法、 TD3算法及DDPG算法參數(shù)相同。對(duì)Actor網(wǎng)絡(luò)均添加使用經(jīng)過裁剪的高斯噪聲, 裁剪范圍為(-0.5,0.5), 每批次樣本數(shù)量均相等。神經(jīng)網(wǎng)絡(luò)采用全連接層, Actor網(wǎng)絡(luò)輸入為狀態(tài), 維度為3, 隱藏層1為64, 隱藏層2為32。Critic-a網(wǎng)絡(luò)和Critic-b網(wǎng)絡(luò)的結(jié)構(gòu)相同, 輸入為狀態(tài)和動(dòng)作, 維度為4, 隱藏層1為64, 隱藏層2為32。梯度下降優(yōu)化算法為Adam優(yōu)化器。經(jīng)驗(yàn)緩沖池大小設(shè)置為10 000, 取批次選取樣本數(shù)量N=50。每情節(jié)最大時(shí)間步數(shù)設(shè)置為500, 時(shí)間步數(shù)超過500時(shí)情節(jié)重新開始。學(xué)習(xí)率α=3×10-4, 折扣因子γ=0.99, 目標(biāo)網(wǎng)絡(luò)更新時(shí)τ=0.001, EWMA計(jì)算公式的參數(shù)β=0.3。
強(qiáng)化學(xué)習(xí)屬于機(jī)器學(xué)習(xí)中的無監(jiān)督學(xué)習(xí)算法, 評(píng)判算法的性能指標(biāo)不同于其他監(jiān)督學(xué)習(xí)算法。在強(qiáng)化學(xué)習(xí)中, 通常應(yīng)用隨訓(xùn)練時(shí)間變化的獎(jiǎng)勵(lì)值評(píng)判算法的優(yōu)劣。獎(jiǎng)勵(lì)值的收斂速度體現(xiàn)了算法是否能快速尋找到固定策略, 而獎(jiǎng)勵(lì)值的大小表現(xiàn)了算法是否收斂到最優(yōu)策略。
圖4展示了在Pendulum-v0任務(wù)中DD-TD3算法與其他算法的效果對(duì)比。通過對(duì)比每個(gè)訓(xùn)練階段的平均累計(jì)獎(jiǎng)勵(lì)衡量算法的優(yōu)劣。
由圖4a可見, 由于A2C算法沒有目標(biāo)網(wǎng)絡(luò)機(jī)制和Replay-buffer機(jī)制, 而且由于Critic網(wǎng)絡(luò)存在一定程度的過估計(jì), 使A2C很難學(xué)習(xí)到優(yōu)質(zhì)的策略, 在3 000步時(shí)獎(jiǎng)勵(lì)值才有明顯的上升。
a 延遲步長(zhǎng)分布情況 b 延遲步長(zhǎng)頻率統(tǒng)計(jì)圖5 Actor網(wǎng)絡(luò)延遲步長(zhǎng)Fig.5 The delay step of Actor network
a A2C與DD-TD3 b DDPG與DD-TD3 c TD3與DD-TD3 圖4 實(shí)驗(yàn)效果對(duì)比圖 Fig.4 Comparison of experimental results
由圖4b可見, 雖然DDPG算法后期獎(jiǎng)勵(lì)值與DD-TD3基本持平, 但由于DDPG存在的價(jià)值過估計(jì)導(dǎo)致算法前期的獎(jiǎng)勵(lì)值表現(xiàn)非常差, 因此算法學(xué)習(xí)到最優(yōu)策略的效率很低。
由圖4c可見, 原始TD3算法的獎(jiǎng)勵(lì)值在2 000步后, 才逐漸趨向最高獎(jiǎng)勵(lì)值。也就是說, 前期原始TD3算法并不能高效地對(duì)狀態(tài)進(jìn)行正確的評(píng)估。DD-TD3算法在前期收斂速度明顯高于原始TD3算法, 并且在1 000步左右快速到達(dá)最高平均獎(jiǎng)勵(lì), 而且獎(jiǎng)勵(lì)值平穩(wěn)起伏, 沒有較多的震蕩現(xiàn)象。由于存在動(dòng)態(tài)延遲更新機(jī)制, DD-TD3算法在前期能根據(jù)更優(yōu)質(zhì)的價(jià)值估計(jì)有效的更新Actor網(wǎng)絡(luò), 從而依據(jù)此Actor網(wǎng)絡(luò)產(chǎn)生更有效的訓(xùn)練數(shù)據(jù)作為Critic網(wǎng)絡(luò)的輸入優(yōu)化網(wǎng)絡(luò)參數(shù)。上述實(shí)驗(yàn)結(jié)果表明, DD-TD3算法可更快地學(xué)習(xí)到最優(yōu)策略。
表3為Pendulum-v0任務(wù)中實(shí)驗(yàn)數(shù)據(jù)統(tǒng)計(jì)。從表3可見, 與A2C、TD3及DDPG算法相比, DD-TD3算法可獲得更高的平均獎(jiǎng)勵(lì)值和最高的獎(jiǎng)勵(lì)值, 說明在此任務(wù)中, DD-TD3算法可以學(xué)習(xí)到更優(yōu)策略。在算法訓(xùn)練的不同階段, 由于存在對(duì)環(huán)境的探索操作, 所以存在不同程度的獎(jiǎng)勵(lì)值差異, 因此存在一定的獎(jiǎng)勵(lì)值方差。
表3 Pendulum-v0任務(wù)中實(shí)驗(yàn)數(shù)據(jù)統(tǒng)計(jì)
圖5展示了訓(xùn)練過程中Actor網(wǎng)絡(luò)的動(dòng)態(tài)延遲次數(shù)。由圖5可見, 在訓(xùn)練前期, 由于智能體與環(huán)境的交互次數(shù)較少, 值函數(shù)的價(jià)值估計(jì)迭代尚不充分, 相應(yīng)的神經(jīng)網(wǎng)絡(luò)的參數(shù)尚不成熟, 則前期次優(yōu)的Critic網(wǎng)絡(luò)價(jià)值導(dǎo)致Actor網(wǎng)絡(luò)延遲步長(zhǎng)主要集中在5。
筆者提出的DD-TD3通過動(dòng)態(tài)調(diào)整Actor網(wǎng)絡(luò)的延遲步長(zhǎng), 能有效解決TD3算法由于Critic過估計(jì)導(dǎo)致的策略惡化問題, 提高了策略學(xué)習(xí)效率。通過Gym平臺(tái)下連續(xù)動(dòng)作任務(wù)Pendulum-v0驗(yàn)證了算法有效性。此改進(jìn)屬于對(duì)強(qiáng)化學(xué)習(xí)任務(wù)下的神經(jīng)網(wǎng)絡(luò)更新的優(yōu)化, 具有很強(qiáng)的通用性及應(yīng)用價(jià)值, 有望在以強(qiáng)化學(xué)習(xí)為模型的自動(dòng)駕駛、 工業(yè)控制等領(lǐng)域發(fā)揮作用。但該算法在Buffer中使用均勻采樣提取數(shù)據(jù)進(jìn)行訓(xùn)練, 沒有考慮Buffer中經(jīng)驗(yàn)值優(yōu)劣的問題。因此, 使用分類經(jīng)驗(yàn)的非均勻采樣訓(xùn)練將是下一步的重點(diǎn)研究方向。