文章目录

  • 所解决的问题?
  • 背景
  • 所采用的方法?
  • 取得的效果?
  • 所出版信息?作者信息?
  • 参考链接
  • 扩展阅读
  • 论文题目:Deterministic Policy Gradient Algorithms

所解决的问题?

  stochastic policy的方法由于含有部分随机,所以效率不高,方差大,采用deterministic policy方法比stochastic policy的采样效率高,但是没有办法探索环境,因此只能采用off-policy的方法来进行了。

背景

  以往的action是一个动作分布πθ(a∣s)\pi_{\theta}(a|s)πθ​(a∣s),作者所提出的是输出一个确定性的策略(deterministic policy) a=μθ(s)a =\mu_{\theta}(s)a=μθ​(s)。

   In the stochastic case,the policy gradient integrates over both state and action spaces, whereas in the deterministic case it only integrates over the state space.

  • Stochastic Policy Gradient

   前人采用off-policy的随机策略方法, behaviour policy β(a∣s)≠πθ(a∣s)\beta(a|s) \neq \pi_{\theta}(a|s)β(a∣s)​=πθ​(a∣s):

Jβ(πθ)=∫Sρβ(s)Vπ(s)ds=∫S∫Aρβ(s)πθ(a∣s)Qπ(s,a)dads\begin{aligned} J_{\beta}\left(\pi_{\theta}\right) &=\int_{\mathcal{S}} \rho^{\beta}(s) V^{\pi}(s) \mathrm{d} s \\ &=\int_{\mathcal{S}} \int_{\mathcal{A}} \rho^{\beta}(s) \pi_{\theta}(a | s) Q^{\pi}(s, a) \mathrm{d} a \mathrm{d} s \end{aligned} Jβ​(πθ​)​=∫S​ρβ(s)Vπ(s)ds=∫S​∫A​ρβ(s)πθ​(a∣s)Qπ(s,a)dads​

   Differentiating the performance objective and applying an approximation gives the off-policy policy-gradient (Degris et al., 2012b)

∇θJβ(πθ)≈∫S∫Aρβ(s)∇θπθ(a∣s)Qπ(s,a)dads=Es∼ρβ,a∼β[πθ(a∣s)βθ(a∣s)∇θlog⁡πθ(a∣s)Qπ(s,a)]\begin{aligned} \nabla_{\theta} J_{\beta}\left(\pi_{\theta}\right) & \approx \int_{\mathcal{S}} \int_{\mathcal{A}} \rho^{\beta}(s) \nabla_{\theta} \pi_{\theta}(a | s) Q^{\pi}(s, a) \mathrm{d} a \mathrm{d} s \\ &=\mathbb{E}_{s \sim \rho^{\beta}, a \sim \beta}\left[\frac{\pi_{\theta}(a | s)}{\beta_{\theta}(a | s)} \nabla_{\theta} \log \pi_{\theta}(a | s) Q^{\pi}(s, a)\right] \end{aligned} ∇θ​Jβ​(πθ​)​≈∫S​∫A​ρβ(s)∇θ​πθ​(a∣s)Qπ(s,a)dads=Es∼ρβ,a∼β​[βθ​(a∣s)πθ​(a∣s)​∇θ​logπθ​(a∣s)Qπ(s,a)]​

  This approximation drops a term that depends on the action-value gradient ∇θQπ(s,a)\nabla_{\theta}Q^{\pi}(s,a)∇θ​Qπ(s,a); (Degris et al., 2012b)

   μθ(s)\mu_{\theta}(s)μθ​(s) 更新公式:

θk+1=θk+αEs∼ρμk[∇θQμk(s,μθ(s))]\theta^{k+1}=\theta^{k}+\alpha \mathbb{E}_{s \sim \rho^{\mu^{k}}} \left[\nabla_{\theta} Q^{\mu^{k}}\left(s, \mu_{\theta}(s)\right)\right] θk+1=θk+αEs∼ρμk​[∇θ​Qμk(s,μθ​(s))]

  引入链导法则:

θk+1=θk+αEs∼ρμk[∇θμθ(s)∇aQμk(s,a)∣a=μθ(s)]\theta^{k+1}=\theta^{k}+\alpha \mathbb{E}_{s \sim \rho^{\mu^{k}}} \left[\nabla_{\theta} \mu_{\theta}(s) \nabla_{a}Q^{\mu^{k}}\left(s, a\right) |_{a=\mu_{\theta}(s)} \right] θk+1=θk+αEs∼ρμk​[∇θ​μθ​(s)∇a​Qμk(s,a)∣a=μθ​(s)​]

所采用的方法?

  • On-Policy Deterministic Actor-Critic

  如果环境有大量噪声帮助智能体做exploration的话,这个算法还是可以的,使用sarsa更新critic,使用 Qw(s,a)Q^{w}(s,a)Qw(s,a) 近似true action-value QμQ^{\mu}Qμ:

δt=rt+γQw(st+1,at+1)−Qw(st,at)wt+1=wt+αwδt∇wQw(st,at)θt+1=θt+αθ∇θμθ(st)∇aQw(st,at)∣a=μθ(s)\begin{aligned} \delta_{t} &=r_{t}+\gamma Q^{w}\left(s_{t+1}, a_{t+1}\right)-Q^{w}\left(s_{t}, a_{t}\right) \\ w_{t+1} &=w_{t}+\alpha_{w} \delta_{t} \nabla_{w} Q^{w}\left(s_{t}, a_{t}\right) \\ \theta_{t+1} &=\theta_{t}+\left.\alpha_{\theta} \nabla_{\theta} \mu_{\theta}\left(s_{t}\right) \nabla_{a} Q^{w}\left(s_{t}, a_{t}\right)\right|_{a=\mu_{\theta}(s)} \end{aligned} δt​wt+1​θt+1​​=rt​+γQw(st+1​,at+1​)−Qw(st​,at​)=wt​+αw​δt​∇w​Qw(st​,at​)=θt​+αθ​∇θ​μθ​(st​)∇a​Qw(st​,at​)∣a=μθ​(s)​​

  • Off-Policy Deterministic Actor-Critic

  we modify the performance objective to be the value function of the target policy, averaged over the state distribution of the behaviour policy

Jβ(μθ)=∫Sρβ(s)Vμ(s)ds=∫Sρβ(s)Qμ(s,μθ(s))ds\begin{aligned} J_{\beta}\left(\mu_{\theta}\right) &=\int_{\mathcal{S}} \rho^{\beta}(s) V^{\mu}(s) \mathrm{d} s \\ &=\int_{\mathcal{S}} \rho^{\beta}(s) Q^{\mu}\left(s, \mu_{\theta}(s)\right) \mathrm{d} s \end{aligned} Jβ​(μθ​)​=∫S​ρβ(s)Vμ(s)ds=∫S​ρβ(s)Qμ(s,μθ​(s))ds​

∇θJβ(μθ)≈∫Sρβ(s)∇θμθ(a∣s)Qμ(s,a)ds=Es∼ρβ[∇θμθ(s)∇aQμ(s,a)∣a=μθ(s)]\begin{aligned} \nabla_{\theta} J_{\beta}\left(\mu_{\theta}\right) & \approx \int_{\mathcal{S}} \rho^{\beta}(s) \nabla_{\theta} \mu_{\theta}(a | s) Q^{\mu}(s, a) \mathrm{d} s \\ &=\mathbb{E}_{s \sim \rho^{\beta}} [\nabla_{\theta} \mu_{\theta}(s) \nabla_{a}Q^{\mu}(s,a)|_{a =\mu_{\theta}(s)}] \end{aligned} ∇θ​Jβ​(μθ​)​≈∫S​ρβ(s)∇θ​μθ​(a∣s)Qμ(s,a)ds=Es∼ρβ​[∇θ​μθ​(s)∇a​Qμ(s,a)∣a=μθ​(s)​]​

  得到off-policy deterministic actorcritic (OPDAC) 算法:

δt=rt+γQw(st+1,μθ(st+1))−Qw(st,at)wt+1=wt+αwδt∇wQw(st,at)θt+1=θt+αθ∇θμθ(st)∇aQw(st,at)∣a=μθ(s)\begin{aligned} \delta_{t} &=r_{t}+\gamma Q^{w}\left(s_{t+1}, \mu_{\theta}\left(s_{t+1}\right)\right)-Q^{w}\left(s_{t}, a_{t}\right) \\ w_{t+1} &=w_{t}+\alpha_{w} \delta_{t} \nabla_{w} Q^{w}\left(s_{t}, a_{t}\right) \\ \theta_{t+1} &=\theta_{t}+\left.\alpha_{\theta} \nabla_{\theta} \mu_{\theta}\left(s_{t}\right) \nabla_{a} Q^{w}\left(s_{t}, a_{t}\right)\right|_{a=\mu_{\theta}(s)} \end{aligned} δt​wt+1​θt+1​​=rt​+γQw(st+1​,μθ​(st+1​))−Qw(st​,at​)=wt​+αw​δt​∇w​Qw(st​,at​)=θt​+αθ​∇θ​μθ​(st​)∇a​Qw(st​,at​)∣a=μθ​(s)​​

  与stochastic off policy算法不同的是由于这里是deterministic policy,所以不需要用重要性采样(importance sampling)。

取得的效果?

所出版信息?作者信息?

  这篇文章是ICML2014上面的一篇文章。第一作者David SilverGoogle DeepMindresearch Scientist,本科和研究生就读于剑桥大学,博士于加拿大阿尔伯特大学就读,2013年加入DeepMind公司,AlphaGo创始人之一,项目领导者。

参考链接

  • 参考文献:Degris, T., White, M., and Sutton, R. S. (2012b). Linear off-policy actor-critic. In 29th International Conference on Machine Learning.

扩展阅读

  假定真实的action-value function为 Qπ(s,a)Q^{\pi}(s,a)Qπ(s,a),用一个function近似它 Qw(s,a)≈Qπ(s,a)Q^{w}(s,a) \approx Q^{\pi}(s,a)Qw(s,a)≈Qπ(s,a)。However, if the function approximator is compatible such that 1. Qw(s,a)=∇θlog⁡πθ(a∣s)⊤wQ^{w}(s, a)=\nabla_{\theta} \log \pi_{\theta}(a | s)^{\top} wQw(s,a)=∇θ​logπθ​(a∣s)⊤w (linear in “fearure”) 2. the parameters www are chosen to minimise the mean-squared error ε2(w)=Es∼ρπ,a∼πθ[(Qw(s,a)−Qπ(s,a))2]\varepsilon^{2}(w) = \mathbb{E}_{s \sim \rho^{\pi},a \sim \pi_{\theta}}[(Q^{w}(s,a)-Q^{\pi}(s,a))^{2}]ε2(w)=Es∼ρπ,a∼πθ​​[(Qw(s,a)−Qπ(s,a))2] (linear regression problem form these feature ),then there is no bias (Sutton et al., 1999),

∇θJ(πθ)=Es∼ρπ,a∼πθ[∇θlog⁡πθ(a∣s)Qw(s,a)]\nabla_{\theta} J\left(\pi_{\theta}\right)=\mathbb{E}_{s \sim \rho^{\pi}, a \sim \pi_{\theta}}\left[\nabla_{\theta} \log \pi_{\theta}(a | s) Q^{w}(s, a)\right] ∇θ​J(πθ​)=Es∼ρπ,a∼πθ​​[∇θ​logπθ​(a∣s)Qw(s,a)]

  最后,论文给出了DPG的采用线性函数逼近定理,以及一些理论证明基础。

  • 参考文献:Sutton, R.S., McAllester D. A., Singh, S. P., and Mansour, Y. (1999). Policy gradient methods for reinforcement learning with function approximation. In Neural Information Processing Systems 12, pages 1057–1063.

  这篇文章以后有时间再读一遍吧,里面还是有些证明需要仔细推敲一下。

【5分钟 Paper】Deterministic Policy Gradient Algorithms相关推荐

  1. DDPG(Deep Deterministic Policy Gradient)

    Hi,这是第二篇算法简介呀 论文链接:"Continuous control with deep reinforcement learning." ,2016 文章概述   这篇文 ...

  2. 【强化学习】DDPG(Deep Deterministic Policy Gradient)算法详解

    http://www0.cs.ucl.ac.uk/staff/d.silver/web/Teaching.html 引用莫凡老师的素材 https://morvanzhou.github.io/tut ...

  3. 【强化学习】Deep Deterministic Policy Gradient(DDPG)算法详解

    1 DDPG简介 DDPG吸收了Actor-Critic让Policy Gradient 单步更新的精华,而且还吸收让计算机学会玩游戏的DQN的精华,合并成了一种新算法,叫做Deep Deterini ...

  4. 深度增强学习DDPG(Deep Deterministic Policy Gradient)算法源码走读

    原文链接:https://blog.csdn.net/jinzhuojun/article/details/82556127 本文是基于OpenAI推出deep reinforcement learn ...

  5. 强化学习笔记 DDPG (Deep Deterministic Policy Gradient)

    1 总述 总体来讲,和actor-critic 差不多,只不过这里用了target network 和experience relay 强化学习笔记 experience replay 经验回放_UQ ...

  6. Policy gradient Method of Deep Reinforcement learning (Part One)

    目录 Abstract Part one: Basic knowledge Policy Environment Dynamics Policy Policy Approximation Policy ...

  7. Policy Gradient Algorithm

    文章目录 Policy Gradient Algorithms 问题描述 Policy Gradient Algorithm Proximal Policy Optimization discrete ...

  8. 深度强化学习-Policy Gradient基本实现

    全文共2543个字,2张图,预计阅读时间15分钟. 基于值的强化学习算法的基本思想是根据当前的状态,计算采取每个动作的价值,然后根据价值贪心的选择动作.如果我们省略中间的步骤,即直接根据当前的状态来选 ...

  9. 强化学习6——policy gradient的优化( Use temporal causality,Baseline and Critic)

    policy gradient的优化 听周博雷教授的课程有感 为什么优化 因为基于MC policy gradient的优化,方差较大 方法1: Use temporal causality 使用时序 ...

  10. ADPRL - 近似动态规划和强化学习 - Note 4 - Policy Iteration Algorithms

    Note 4 - Policy Iteration Algorithms 4. Policy Iteration Algorithms 补充:范数的性质 4.1 贪婪诱导策略的特性 (Properti ...

最新文章

  1. python学不会的表情包-小学生绞尽脑汁也学不会的python(反射)
  2. Robot Framework操作mongodb数据库
  3. qmediaplayer获取流类型_Android MediaPlayer类详解
  4. 为使节构建控制平面的指南第3部分-特定于域的配置API
  5. 有时间了要研究一下Stack Exchange的开源项目
  6. 158 行 Python 代码,复现 DeepMind 递归神经网络 DRAW!
  7. c程序设计语言 azw,Go语言程序设计[azw3+epub+mobi][18.06MB]
  8. ETC风头已过,龙头林立,黔通智联此时上市还真缺点儿“想象力”
  9. CodeBlocks汉化
  10. XXXX大学课程设计说明书格式规范
  11. H5链接分享给微信好友,显示标题、描述、缩略图
  12. 计算机桌面图标的使用,电脑桌面图标不见了怎么恢复 如何规范使用电脑
  13. 【SuperMap】SuperMap.Geometry转GeoJSON
  14. ​每天十分钟| Get实用在线英语启蒙教育APP—叽里呱啦
  15. 华为p40pro,小米10pro,适合自己的才是最好的
  16. Android Studio编写一个手写字体识别程序
  17. HDR视频色调映射算法(之五:flicker reduction TMO)
  18. Unity中获取地形的法线
  19. 电销人必须 ,好用稳定的外呼系统,具备这8个共同点
  20. 电脑端(PC)按键精灵——4.控制命令(判断、循环、跳转)

热门文章

  1. 多表连接的三种方式 HASH MERGE NESTED
  2. linux中screen命令的用法
  3. android 显示文章内容,在Android中,RecyclerView在重新创建后没有显示任何内容
  4. puppet详解(九)——puppet项目实战
  5. Cobbler详解(五)——cobbler常用命令
  6. MySQL使用小技巧(一)——MySQL删除
  7. Linux磁盘管理实战
  8. hash通信(python多线程应用)采用md5加密
  9. CSS 属性篇(六):background-size属性
  10. Broadleaf概念