[DDPG] Continuous Control with Deep Reinforcement Learning

Posted 超级超级小天才

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[DDPG] Continuous Control with Deep Reinforcement Learning相关的知识,希望对你有一定的参考价值。

论文链接:https://arxiv.org/abs/1509.02971
引用:Lillicrap T P, Hunt J J, Pritzel A, et al. Continuous control with deep reinforcement learning[J]. arXiv preprint arXiv:1509.02971, 2015.

概述

Deep Deterministic Policy Gradient (DDPG) 是DPG算法加上深度学习的版本,是一个 model-free、off-policy 的 actor-critic 系算法,使用深度神经网络作为函数近似方程,主要的特点是支持高维度的连续的动作空间,这是在DQN算法上的一个主要突破,其实也就是因为是 actor-critic 系的算法,所以支持连续动作空间。

算法

DDPG 算法

主要创新点

  • 也使用了DQN算法中的 replay buffer / experience replay 的技术
  • 创新地使用了Soft Target Update的技术,与DQN中设立了target network,然后阶段性地将policy network的参数直接拷贝给target network的放法不同的是,这里虽然也是为actor和critic都分别设立了一个target版本,但是并不是直接将进行更新的policy版的参数全部直接拷贝给它们,而是使用了一个系数 τ \\tau τ来更新参数: θ ′ ← τ θ + ( 1 − τ ) θ ′ \\theta' \\leftarrow \\tau \\theta + (1-\\tau)\\theta' θτθ+(1τ)θ,且其中 τ ≪ 1 \\tau \\ll 1 τ1,这样就会将学习到的参数更加soft地拷贝给目标网络,从而极大地提升了训练中的稳定性。
  • 不同于DQN中使用的 ϵ \\epsilon ϵ-greedy的方式平衡exploration和exploitation,DDPG使用的方法是,在选择一个新的动作的时候,给policy函数返回的动作值增加一个噪音 μ ′ ( s t ) = μ ( s t ∣ θ t μ ) + N \\mu'(s_t)=\\mu(s_t|\\theta_t^{\\mu})+N μ(st)=μ(stθtμ)+N,这里的 N N N就是一个简单的概率分布,比如高斯分布,而且它的选择是根据不同的环境而设计的。
  • 为了是一套网络结构、算法与超参数适应于不同的实验环境,使用了 batch normalization 的技术,对于每一个batch中的样本进行了normalization,降低了方差。
  • 在论文中所提到的所有实验中,也是使用了同一套网络结构和超参数,从而验证了其稳定性、普适性和一般性

其他的点

  • 作者最后提到,也将这个算法应用于了DQN所涉及的多个Atari游戏中,并表示DDPG算法在达到相近效果时很大程度上地使用了更少的训练轮次

以上是关于[DDPG] Continuous Control with Deep Reinforcement Learning的主要内容,如果未能解决你的问题,请参考以下文章

[DDPG] Continuous Control with Deep Reinforcement Learning

[DDPG] Continuous Control with Deep Reinforcement Learning

Discrete VS Continuous Control

Discrete VS Continuous Control

Paper Reading 3:Continuous control with Deep Reinforcement Learning

DRL前沿之:Benchmarking Deep Reinforcement Learning for Continuous Control