王濤 張衛華 蒲亦非



本文將DDPG算法中使用的Ornstein-Uhlenbeck (OU) 噪聲整數階微分模型推廣為分數階OU噪聲模型,使得噪聲的產生不僅和前一步的噪聲有關而且和前K步產生的噪聲都有關聯.通過在gym慣性環境下對比基于分數階OU噪聲的DDPG和TD3算法和原始的DDPG和TD3算法,我們發現基于分數階微積分的OU噪聲相比于原始的OU噪聲能在更大范圍內震蕩,使用分數階OU噪聲的算法在慣性環境下具有更好的探索能力,收斂得更快.
DDPG算法; TD3算法; 分數階微積分; OU噪聲; 強化學習
TP39A2023.022001
收稿日期: 2022-03-26
基金項目: 四川省科技計劃(2022YFQ0047)
作者簡介: 王濤(1997-), 男,? 碩士研究生, 四川資陽人, 研究方向為分數階微積分與強化學習. E-mail: 2647877536@qq.com
通訊作者: 張衛華. E-mail: zhangweihua@scu.edu.cn
An improved Ornstein-Uhlenbeck exploration noise based on fractional order calculus for reinforcement learning environments with momentum
WANG Tao, ZHANG Wei-Hua, PU Yi-Fei
(College of Computer Science, Sichuan University, Chengdu 610065, China)
In this paper, the integer-order Ornstein-Uhlenbeck (OU) noise model used in the deep deterministic policy gradient (DDPG) algorithm is extended to the fractional-order OU noise model, and the generated noise is not only related to the noise of the previous step but also related to the noise generated in the previous K steps in the proposed model.The DDPG algorithm and twin delayed deep deterministic(TD3) algorithm using the fractional-order OU noise model were compared with the original DDPG algorithm and TD3 algorithm in the gym inertial environment. We found that, compared with the original OU noise, the fractional-order OU noise can oscillate in a wider range, and the algorithm using the fractional-order OU noise had better exploration ability and faster convergence in inertial environment.
Deep deterministic policy gradient; Twin delayed deep deterministic; Fractional calculus; Ornstein-Uhlenbeck process; Reinforcement learning
1 引 言
深度Q網絡(DQN)[1]的提出開創了深度學習和強化學習結合的先例,DQN算法直接使用了深度神經網絡來擬合強化學習中的Q(s,a) 函數,并根據貪心策略選擇下一步需要執行的動作,這一工作使得算法在Atari游戲上達到了近似人類玩家的水平.
基于DQN的工作,后續還有人還提出了DDQN[2],Dueling DQN[3],Rainbow DQN[4]等工作,這些工作極大地改進了基于值函數估計類算法的效果.不過,這些工作的動作空間都是離散的,智能體每次只能選擇有限的幾個動作.然而,在實際的應用場景下,更多的是需要強化學習算法處理連續控制任務.比如無人機追逃控制[5],飛行器高度控制[6],機械臂軌跡規劃[7,8],無人機航跡規劃[9]等.
對于連續控制任務則無法直接使用DQN系列的算法,研究人員參考DQN系列算法值函數估計的思想,提出了DDPG算法[10],在DDPG算法的基礎上又提出了改進的TD3算法[11]、SAC算法[12]和D4PG算法[13].這些算法的提出彌補了基于值函數估計算法在連續空間任務的空白,但是卻有著探索能力差的問題,尤其是DDPG算法,由于算法每次輸出一個確定性的動作而不是像PPO[14]這樣的基于策略梯度的算法一樣輸出一個正態分布,探索能力會很差.
DDPG系列算法在實際連續控制任務中的使用往往會受到算法探索能力不足的影響,對于一些需要探索的任務,直接使用DDPG系列算法效果并不好.本文結合分數階微積分理論,對整數階OU過程進行分數階推廣,使得噪聲的產生能夠和前K步相關聯.實驗表明,本文提出的分數階推廣OU噪聲模型產生的噪聲能夠在慣性控制環境下促進DDPG和TD3算法的探索,加快算法收斂,有利于算法在實際控制環境中的應用.
2 相關工作
2.1 DDPG算法
DQN及其衍生算法很好地解決了離散動作空間的強化學習任務,但是卻無法處理連續動作空間的任務,如果強行使用這一系列的算法需要對動作空間進行離散化,而離散化又會面臨離散動作過多的問題.DDPG算法的作者認為DQN很好地解決了過去一直不看好的使用神經網絡擬合Q(s,a)函數的問題,于是在DDPG中借鑒了DQN的離線訓練和目標Q網絡的思想.
對于離散動作空間的控制,獲得了Q(s,a)函數后可以使用ε-greedy策略選取動作,但是在連續空間使用這樣的策略卻是幾乎不可能的事情,為了進行動作選取,DDPG算法借鑒了DPG算法的actor-critic思想,使用策略梯度更新actor,使用貝爾曼等式來更新critic.
由于DDPG的動作選取是一個確定性策略,而不是輸出一個策略分布,在連續控制問題上會面臨探索不足的問題,文章作者提出了使用Uhlenbeck-Ornstein過程產生的噪聲來輔助探索.
OU噪聲在慣性環境下的探索能力要強于正態噪聲,但是,我們發現通過對OU過程進行分數階推廣產生的分數階OU噪聲在慣性環境下甚至具有更好的探索能力,能夠使得離線更新的算法更快地收斂.
2.2 TD3算法
DDPG算法已經能夠解決很多連續控制問題,但是除了探索能力不足之外還有錯誤估計的問題,也就是critic會高估某個狀態的Q值,這種估計誤差又會進一步地放大,最終影響算法的表現.
TD3算法參考了double-Qlearning[15]的雙critic的思想,使用裁剪雙Q學習的技巧,也就是通過對兩個critic的值取最小值來解決算法高估狀態帶來的偏差,雖然這樣可能會帶來低估的問題,但是相比于高估狀態帶來的后果,低估的問題是可以接受的.
TD3的作者認為,如果算法對狀態價值的估計不準確會導致策略網絡表現不佳,而較差的策略網絡又會進一步導致價值估計不準從而導致算法性能不佳.為了解決這個問題,TD3提出了延遲策略更新(Delayed Policy Update)的技巧,也就是讓critic的更新頻率高于策略網絡的更新頻率,通過首先減少critic的估計誤差然后再訓練策略網絡的思想提高算法的性能.
DDPG這樣的確定性策略算法每次只輸出一個確定性的動作而不是動作分布,這樣的算法很容易受到critic估計的誤差的影響而導致算法性能下降,為了解決這個問題,TD3借鑒了SARSA算法[16]的思想,首先對動作增加噪聲,然后再進行裁剪,使得算法不容易受到critic的誤差影響.
TD3算法很好地解決了DDPG算法值函數估計的問題,但是并沒有根本上解決DDPG探索不足的問題,文章使用的獨立正態噪聲能夠一定程度上解決探索問題,但是在慣性環境下,獨立的正態噪聲的探索能力仍然不足,本文提出的分數階OU噪聲能夠促進算法在慣性環境下更好地探索收斂得更快.
2.3 分數階微積分
分數階微積分是傳統的整數階微積分的推廣,和整數階微積分相比,分數階微積分更加具有一般性.分數階微積分有多種定義形式,研究中一般使用Grnwald-Letnikov[17],Riemann-Liouville[18]和Caputo[19]定義式.分數階微積分具有非局部特性和長時記憶性,使用分數階微積分推廣的模型相比于整數階的數學模型在圖像處理和信號處理[20-22]中往往具有更好的效果.
由于Riemann-Liouville和Caputo定義式是積分形式不易離散化,文章使用G-L定義式來推廣OU噪聲.離散形式的函數f(x)的v階導數的G-L定義式如式(1).
算法1首先初始化全局的長度為K 的數組x用于存放生成的噪聲,由于初始時刻x中并沒有保存歷史數據,初始化設定為從標準正態分布中采樣.長度為K 的數組mask用于存放分數階權重模板,初始化為0.計算出權重模板后根據式(9)計算下一個噪聲并存入當前index指向的位置.其中,maskx表示權重模板和歷史噪聲進行卷積,N表示對標準正態分布進行采樣x[t]表示上一次的噪聲數據.最后對index進行更新重復利用數組x.
4 實驗與分析
分數階OU噪聲是一種探索策略,為了測試這種噪聲的探索能力,本文選擇了離線策略(off-policy)連續控制的經典算法DDPG以及基于DDPG的改進算法TD3進行實驗.需要注意的是,我們不選擇PPO這樣的在線(on-policy)算法是因為探索策略和訓練策略差異很大的時候在線算法根本不能訓練.
為了證明分數階OU噪聲在具有慣性的環境下能夠使得算法更好地探索,本文選擇了gym強化學習環境中的經典控制游戲Pendulum-v0和Mountain Car Continuous-v0以及box2d的Lunar Lander Continuous-v2.Pendulum-v0任務要求將一根自然垂下的鐘擺立起來,環境的輸入狀態是鐘擺的角度和角速度,環境的動作是驅動鐘擺旋轉的力矩大小.Lunar Lander Continious-v2的任務是控制著陸器的火箭噴口的方向和力道使得著陸器著陸,消耗的能量越少越好.Mountan Car Continuous-v0則是控制一輛動力不足的小車利用慣性沖上山坡.這個環境是三個環境中最需要探索的一個環境.如果探索得不好,算法將學不到任何關于環境的有用知識,算法控制的小車將會在原點不斷地徘徊.
由于DDPG算法性能一般,選擇Pendulum-v0環境進行對比實驗即可.圖1是選取k=3,v=0.75,sigma=0.2的分數階OU噪聲和sigma=0.2的原始OU噪聲隨機選取5個種子運行10萬次的結果.曲線比較平滑是因為圖1中是對模型進行無噪聲評估的數據,不是原始的訓練數據,下同.
圖1展示了在Pendulumn-v0 環境下的對比實驗,由于環境本身比較簡單,使用分數階OU噪聲的DDPG智能體和使用原始OU噪聲的智能體表現沒有明顯的差異.
TD3算法選擇在LunarLanderContinuous-v2和MountainCarContinuous-v2作為對比環境.TD3算法在LularLanderContinuous-v2上隨機選取5個種子運行50萬次的數據如圖2.實驗選取sigma=1.2,theta=0.15,k=3,v=0.75的分數階OU噪聲,sigma=0.2的OU噪聲和sigma=0.2的原始正態噪聲進行對比實驗.
圖2展示了在LunarLanderContinuous-v2環境下的結果,相比于Pendulum-v0,該環境要復雜許多,智能體需要更多的探索.從結果可以看出,使用分數階OU噪聲的TD3智能體表現超過了使用OU噪聲和原始正態噪聲的智能體,算法收斂得更快.
TD3算法在MountainCarContinuous-v2上隨機選取5個種子運行30萬次的結果如圖3所示.實驗選取k=3,v=0.75,sigma=0.6的分數階OU噪聲和sigma=0.6的原始OU噪聲以及sigma=0.6的原始正態噪聲進行對比實驗.
圖3展示了在MountainCarContinuous-v0環境下的對比結果.該環境是三個環境中最難的一個,需要最多的探索.從圖3中我們可以看到,使用正態噪聲的TD3智能體在很長時間內幾乎學不到任何知識,獲得的獎勵一直接近0.而使用分數階OU噪聲和原始OU噪聲的智能體則表現得更好更多.可以看出,基于分數階微積分的OU噪聲能夠在具有慣性的環境中更好地鼓勵強化學習智能體進行探索并更快地學習.
為了探究分數階OU噪聲、OU噪聲和正態噪聲在慣性環境下的探索能力區別的原因,本文生成了sigma=0.6的三種噪聲如圖4a~4c.
分析三種噪聲可以發現:正態噪聲圍繞原點在正負兩個方向上分布,且靠近原點的噪聲點要多于遠離原點的噪聲點.這表明,如果將正態噪聲應用在動作空間上,算法會大量地探索輸出動作附近正負兩個方向的動作空間,但是對于偏遠處動作則很少探索到.
由微分方程可見,OU噪聲是一種前后相關的帶有回歸性質的噪聲,也就是說噪聲偏離原點越多,下一個噪聲就越有可能回歸到原點.同時也要注意到,OU噪聲雖然會回歸到原點,但是在較長的時間段內都是在同一個方向探索.這就決定了使用OU噪聲的算法能夠在預測動作的某一個方向進行很好地探索,但是對于另一個方向卻容易出現欠缺探索的問題.
對于分數階OU噪聲,綜合上述圖的分析可以發現,分數階OU噪聲不僅具有類似于OU噪聲的前后相關和回歸性質,還克服了OU噪聲容易只探索一個方向的問題.分數階OU噪聲圍繞原點進行大范圍的且前后相關的探索的性質就決定了使用分數階OU噪聲的算法能夠在預測動作的兩側進行足夠的探索,在具有慣性的環境下表現得更好.
5 結 論
本文將DDPG算法中使用的基于Ornstein-Uhlenbeck過程的OU噪聲進行分數階推廣得到探索能力更強的分數階OU噪聲.通過在Pendulum-v0、LunarLanderContinuous-v2以及MountainCarContinuous-v0環境下進行對比實驗,我們發現基于Ornstein-Uhlenbeck過程的OU噪聲使得DDPG和TD3算法在慣性環境下比正態噪聲具有更好探索能力.而基于分數階微積分的推廣Ornstein-Uhlenbeck過程的分數階OU噪聲,在使得DDPG和TD3算法在慣性環境下更好地探索.這一點上做得比原始OU噪聲更好,且使用分數階OU噪聲的TD3算法在慣性環境下能夠更好地探索從而更快地學習.
本文還通過分析分數階OU噪聲、原始OU噪聲和正態噪聲的采樣點構成的曲線得出了分數階OU噪聲在慣性環境下探索的更好的原因是分數階OU噪聲能夠圍繞原點進行自相關的、大范圍的探索.
參考文獻:
[1] Volodymyr M, Koray K, David S, et al. Human-level control through deep reinforcement learning [J].Nature, 2015, 518: 529.
[2] Hasselt H V, Guez A, Silver D. Deep reinforcement learning with double Q-learning [C]//Proceedings of the AAAI Conference on Artificial Intelligence. Palo Alto, CA: AAAI Press, 2018: 2094.
[3] Wang Z, Schaul T, Hessel M, et al. Dueling network architectures for deep reinforcement learning[C]//International Conference on Machine Learning. SAN DIEGO, CA: JMLR, 2016: 2939.
[4] Hessel M, Modayil J, Van Hasselt H, et al. Rainbow: combining improvements in deep reinforcement learning [C]//Thirty-second AAAI Conference on Artificial Intelligence. Palo Alto, CA: AAAI Press, 2018: 3215.
[5] 符小衛, 徐哲, 王輝. 基于DDPG的無人機追捕任務泛化策略設計[J]. 西北工業大學學報, 2022, 40: 9.
[6] 劉安林, 時正華. 基于DDPG策略的四旋翼飛行器目標高度控制[J]. 陜西科技大學學報, 2021, 39: 7.
[7] 張浩博, 仲志丹, 喬棟豪, 等. DDPG優化算法的機械臂軌跡規劃[J]. 組合機床與自動化加工技術, 2021, 12: 37.
[8] 張良安, 唐鍇, 李鵬飛, 等. 基于復合擺線軌跡的四足機器人穩定性分析[J]. 江蘇大學學報: 自然科學版,? 2022, 43: 62.
[9] 高敬鵬, 胡欣瑜, 江志燁. 改進DDPG無人機航跡規劃算法[J]. 計算機工程與應用, 2022, 58: 264.
[10] Lillicrap T P, Hunt J J, Pritzel A, et al. Continuous control with deep reinforcement learning[J/OL]. [2022-01-28].https://arxiv.org/abs/1509.02971.
[11] Fujimoto S, Hoof H, Meger D. Addressing function approximation error in actor-critic methods[C]//International Conference on Machine Learning. San Diego, CA: JMLR, 2018: 2587.
[12] Haarnoja T, Zhou A, Abbeel P, et al. Soft actor-critic: Off-policy maximum entropy deep reinforcement learning with a stochastic actor [C]//International Conference on Machine Learning. San Diego, CA: JMLR, 2018: 2976.
[13] Barth-Maron G, Hoffman M W, Budden D, et al. Distributed distributional deterministic policy gradients[C]//Proceedings of the 6th International Conference on Learning Representations.La Jolla, CA: OpenReview.net, 2018.
[14] Schulman J, Wolski F, Dhariwal P, et al. Proximal policy optimization algorithms [EB/OL]. https://arxiv.org/abs/1707.06347.
[15] Hasselt H. Double Q-learning [C]//Proceedings of the 23rd International Conference on Neural Information Processing Systems. La Jolla, CA: NIPS, 2010.
[16] Sutton R S, Barto A G. Introduction to reinforcement learning [M]. Cambridge: MIT Press, 1998.
[17] Oldham K B, Spanier J. The fractional calculus: integrations and differentiations of arbitrary order[M]. New York: Academic press, 1974: 47.
[18] Samko S G, Kilbas A A, Marichev O I. Fractional integrals and derivatives: theory and applications[M]. Yverdon-les-Bains, Switzerland: Gordon and Breach Science Publishers, 1993: 28.
[19] Podlubny I. Fractional differential equations: an introduction to fractional derivatives, fractional differential equations, to methods of their solution and some of their applications [M]. San Diego: Elsevier Science & Technology, 1998: 41.
[20] 蒲亦非. 將分數階微分演算引入數字圖像處理[J]. 四川大學學報: 工程科學版, 2007, 39: 9.
[21] 彭朝霞, 蒲亦非. 基于分數階微分的卷積神經網絡人臉識別[J]. 四川大學學報:自然科學版, 2022, 59: 35.
[22] 蒲亦非, 余波, 袁曉. 類腦計算的基礎元件:從憶阻元到分憶抗元[J]. 四川大學學報:自然科學版, 2020, 57: 8.
[23] Uhlenbeck G E, Ornstein L S. On the theory of the brownian motion[J]. Phys Rev, 1930, 5: 823.