学习笔记:DDPG
學習內容:DDPG
關鍵詞:記憶庫,估計網絡,現實網絡,Policy Gradient,Value Based,Actor-Critic
簡述:
????? ? DDPG(Deep Deterministic Policy Gradient)可以概括為兩個部分Deep和Deterministic Policy Gradient,其中Deep和DQN類似擁有兩套結構相同但是更新頻率不同的神經網絡,Deterministic Policy Gradient指的是確定性策略梯度.在連續動作上輸出一個動作值.
????????? ? 動作估計網絡輸出實時動作,為actor在現實中實行,動作現實網絡用于更新價值網絡系統.狀態估計網絡將actor的動作當做輸入,狀態現實網絡將動作現實網絡輸出動作與狀態值加以分析.
????????? ?DDPG是基于actor-critic的無模型確定性策略梯度算法,人工智能就是解決無數據預處理,多維度,敏感輸入的多目標任務。DQN只能解決低維度的離散輸出動作的任務,不能直接解決連續動作任務,DQN及其衍生算法直接扔掉了動作空間中一些可能有用的信息。
????????? ? DDPG吸收練DQN算法的優點,使用異策略(離線學習)方法,在樣本存儲緩存區(replay buffer)中采樣最小化樣本間的相關性,使用Q-network訓練,并定時返回參數。
Policy Gradient:
????????? ? 能夠在連續區間內挑選動作,并且不通過分析反向誤差,而是直接輸出行為.是基于整條回合數據的更新和基于策略梯度的更新
? ??????? ??
DDPG偽代碼:
偽代碼注釋:
?隨機初始化critic網絡和actor網絡,并初始化各自參數
初始化上述兩個網絡對應目標網絡
初始化repaly buffer
在M個回合內:
????????? ? 隨機初始化分布N用作動作探索
????????? ? 初始化初始狀態
????????? ? 在次數T內:
????????????????????? ? 根據當前策略和噪聲選擇動作
????????????????????? ? 執行動作和得到獎勵與下一個狀態
????????????????????? ? 將當前狀態,當前動作,當前獎勵和下一個狀態存儲在R中
????????????????????? ? 隨機采樣
????????????????????????
????????????????????? ? 根據critic的損失函數更新critic網絡
????????????????????? ? 根據actor的梯度更新actor網絡
????????? ? 結束循環
結束循環
????????????????????????
公式的前半部分表示根據梯度選擇獎賞值最大的動作,后半部分表示根據梯度選擇選該最大獎賞值動作的策略
Tensorboard 數據圖:
接下來展開C-train,C代表critic,在訓練價值系統時,需要當前狀態s,下一個狀態s_,環境獎勵R,和策略梯度,其中用到Actor的是eval網絡即動作估計網絡,來更新價值系統.
再展開TD_error,采用時序差分算法計算現實網絡和估計網絡的差值,論文采用均方差求解,然后傳遞給C-train
展開target_q,Q現實現實更新與下一個狀態和動作獎勵有關
展開Policy Gradient,策略梯度算法與當前狀態有關
?
總結
- 上一篇: 浙大工商管理硕士(MBA)项目报考必须了
- 下一篇: OGG mgr定期清理tail 文件