RL策略梯度方法之(八): Distributed Distributional DDPG (D4PG)

本专栏按照 https://lilianweng.github.io/lil-log/2018/04/08/policy-gradient-algorithms.html 顺序进行总结 。



D 4 P G \color{red}D4PG D4PG :[ paper | code ]


原理解析

主要 trick

D4PG 主要是在 DDPG的基础上做了一系列修改以应用分布式。

即:主要从两个方面对DDPG进行扩展

  • Distributed:对Actor,将单一Actor扩展至多个,并行收集experience,如算法Actor部分所示
  • Distributional:对Critic,将Critic由一个函数扩展成一个分布

总体框架与DDPG相同,引入了一些trick

  1. 支持分布式,由于是off-policy的算法,因此可以使用多个actor去分布式地采样,然后存储在同一个replay buffer中,learner从buffer中采样,更新之后再将权重同步到各个actor上。
  2. critic使用价值函数分布,分布式评论家不再只估计Q值的期望值,而是去估计期望Q值的分布,即将期望Q值作为一个随机变量来进行估计;学习该分布的参数所对应的损失函数是去最小化两个分布之间的某种距离度量,损失函数变为(d是距离度量): L ( w ) = E ρ [ d ( T π θ ′ Z ω ′ ( x , a ) , Z ω ( x , a ) ) ] L(w)=\mathbb{E}_ρ[d(\Tau_{\pi_{\theta'}}Z_{\omega'}(x,a),Z_\omega(x,a))] L(w)=Eρ[d(TπθZω(x,a),Zω(x,a))];;其中, ( T π Z ) ( x , a ) = r ( x , a ) + γ E [ Z ( x ’ , π ( x ’ ) ) ∣ x , a ] (T_\pi Z)(x, a)=r(x,a)+\gamma\mathbb{E}[Z(x’,\pi(x’))|x,a] (TπZ)(x,a)=r(x,a)+γE[Z(x,π(x))x,a] 为 distributional Bellman operator, Z 是用来估计 Q 的, Q π ( x , a ) = E Z π ( x , a ) Q_\pi(x,a) = \mathbb{E}Z_\pi(x,a) Qπ(x,a)=EZπ(x,a)
  3. 引入n-step TD error:当计算TD误差时,D4PG计算的是N步的TD目标值而不仅仅只有一步,这样就可以考虑未来更多步骤的回报。这样可以减少更新的variance: r ( s 0 , a 0 ) + E [ ∑ n = 1 N − 1 r ( s n , a n ) + γ N Q ( s N , μ θ ( s N ) ) ∣ s 0 , a 0 ] r\left(s_{0}, a_{0}\right)+\mathbb{E}\left[\sum_{n=1}^{N-1} r\left(s_{n}, a_{n}\right)+\gamma^{N} Q\left(s_{N}, \mu_{\theta}\left(s_{N}\right)\right) | s_{0}, a_{0}\right] r(s0,a0)+E[n=1N1r(sn,an)+γNQ(sN,μθ(sN))s0,a0]
  4. 使用prioritized experience replay:可以加速学习;使用一个非均匀的概率 p i p_i pi 从一个大小为 R R R 的回放缓冲中进行采样。在这种采样方式下,一个样本 i i i 将以概率 ( R p i ) − 1 (Rpi)^{−1} (Rpi)1 被采样到因而重要性权重为 ( R p i ) − 1 (Rpi)^{−1} (Rpi)1

与 DDPG的异同

DDPG 与 D4PG

在这里插入图片描述

算法实现

总体流程

在这里插入图片描述

代码实现

见github

  • 4
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值