Fast deep reinforcement learning using online adjustments from the past

Fast deep reinforcement learning using online adjustments from the past

文章出自 DeepMind,其提出了一种能够更加充分利用 Replay buffer 历史经验数据的RL改进算法 ---- Ephemeral Value Adjusments (EVA)。

Contribution:

  1. 提出了一种新的算法 — Ephemeral Value Adjusments (EVA);
  2. 对EVA算法的核心模块即 trace computation algorithm 的三种预选方案,进行了实验探讨和比较。

算法理解

智能体包含三个部分:

  • a standard parametric reinforcement learner 用来做正常的RL算法运算;
  • a trace computation algorithm 用来规划和估计非参数值函数;
  • a small value buffer 用来存储估计的值函数。

文中的方法适用于任何基于值函数的off-policy算法,作为例子,作者使用的是DQN算法。

对DQN的其中一个修改是replay buffer,除了储存 ( s t , a t , r t , s t + 1 ) (s_t, a_t, r_t,s_{t+1}) (st,at,rt,st+1)之外,还要加上轨迹信息(指向后续元组的指针)和当前一层隐层激活信息(这个真没搞明白)。

接下来的关键修改是下面这道公式:

其中, Q θ ( s , a ) Q_\theta(s,a) Qθ(s,a)是来自DQN的参数化Q网络, Q N P ( s , a ) Q_{NP}(s,a) QNP(s,a)则是来自trace computation algorithm的参数化Q值( N P _{NP} NP即non-parametric), λ \lambda λ是超参数。

因此,重点就是如何计算 Q N P ( s , a ) Q_{NP}(s,a) QNP(s,a)。作者对比了三种 trace computation algorithm 方案:

  • n-step
  • trajectory-centric planning(TCP)
  • kernel-based RL(KBRL)

其中TCP效果最好,因此下面只介绍这个方案。
TCP主要是使用以下两个公式进行相互迭代:

其中 a t a_t at 是在状态 s t s_t st时执行的动作,它们都是存储在reply buffer中的。而 a a a 是指使得 Q θ ( s t , a ) Q_\theta(s_t,a) Qθ(st,a) 或者 Q N P ( s t , a ) Q_{NP}(s_t,a) QNP(st,a)值取最大时对应的那个 a a a

论文原图如下:
在这里插入图片描述
其中,Figure 1 Right 中的 Q P ( s t , a ) Q_P(s_t,a) QP(st,a) 就是 Q θ ( s t , a ) Q_\theta(s_t,a) Qθ(st,a),而 k k k Q i ( s t , a ) Q_i(s_t,a) Qi(st,a)则是由TCP得到的, Q N P ( s t , a ) Q_{NP}(s_t,a) QNP(st,a) k k k Q i ( s t , a ) Q_i(s_t,a) Qi(st,a)的平均。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值