论文题目:observe and look further:achieving consistent performance on Atari

阅读这篇文章的原因是openai-five 提到了$\gamma$的调整时提到了这篇文章

RL算法难达到人类水平的难点:

1.处理多样的rewards分布

2.长期推理

3.高效探索

作者贡献:

改进的贝尔曼公式解决rewards密度和尺度多样化(问题1)

加入时序一致性损失,防止过早泛化(问题2)

人类示范辅助agent(问题3)

1.transformed bellman operator

DQN的贝尔曼公式定义为

$(\Tau Q)(x; a) := E_{x’∼P (·|x;a)} [R(x; a) + γ\max_aQ(x’; a’) \ \ \ \ \ $

参数更新方法:

$\theta^k:=\arg\min{\theta}E{x,a}[L(f\theta(x,a)-f{\theta^{k-1}}(x,a))]$

当$f_\theta^{k-1}(x,a)$方差过高,会导致算法发散。而常用的方法将rewards clip到[-1,1]范围内,可能会改变得到的最优策略。

作者从value-action function考虑,使用一个线性函数h来实现减小rewards的尺度,

$(\TauhQ)(x; a) := E{x0∼P{(·|x;a)}} [hR(x; a) + γ max_ah^{-1}(Q(x’; a’)]$

$h(z)=sign(z)(\sqrt{|z|+1}-1)+\varepsilon z$

并用公式推理证明当h为线性函数,或者MDP是确定的,$\Tau_h$收敛到$h\circ Q^*$(实现了scaling)

此时,贝尔曼公式带来的loss为:

$E{x;a} [L(fθ(x; a) - (\Tauhf{θ^{(k-1)}}(x; a))] ≈\sum^N{i-1}
p_iL(f
θ(xi; a_i) - h(r’_i + γh^{(-1)}(fθ^{(k-1)}(x’i; a’_i)))
=: L
{TD}(θ; (ti)^N{i=1}; (pi)^N{i=1}; θ^{(k-1)}) $

(PS 更新replay buffer中的优先级时,使用的是$L_{TD}$)

2.Temporal consistency (TC) loss

尽管改进了公式,但增加折扣因子$\gamma$会 降低了无奖励状态的state之间value的差分,因此当折扣因子$\gamma$非常接近1的时候,也会不稳定。为解决这个问题,作者增加了时间一致性loss

$L{TC}(θ; (ti)^N{i=1}, (pi)^N{i=1}; θ^{(k-1)}) :=
\sum^{N}{i=1}
p_iL (f
θ(x’_i; a’_i) - fθ^{(k-1)}(x’_i; a’_i)) $

TC-loss惩罚了更新权值带来的下一个action-value $f_\theta(x’,a’)$估计的改变

3.Ape-X DQfD

模型有三方面组成:

(1)replay buffer

(2)actor process

(3) learner process

observe & look further-achieving consistent performance的結構

replay buffer:算法包含两个replay buffer,一个是actor replay buffer(来自于actor process),另一个expert replay buffer(离线存储的专家行为transition)每次采样时,25%来自专家,75%来自actor

actor process:作者采用了类似Distributed prioritized experience replay中的方法。其中actor processes有m个 ,每个actor 基于当前action-value function采用$\varepsilon_i$-greedy 策略。其中:

$\epsilon_i=0.1 ^{\alpha_i +3(1-\alpha_i)}$

$\alpha_i=\frac{i-1}{m-1}$

Learner process. learner process 从两个buffer中采样,最小化loss来近似最优action-value function.作者联合了模仿学习的loss——

设$t_1… t_N $表示transition $t_i = (x_i; a_i; r’_i; x’_i; e_i) $,其中$e_i$表示这个transition是否属于专家行为,$p_i$表示标准化的优先级,那么模仿学习的损失为:

$L{IM}(θ; (ti)^N{i=1}, (pi)^N{i=1}, θ^(k-1)) :=\sum^N{i=1}p_ie_i (\max{a\in A}[fθ(x_i; a) + λδ{a\neq ai}] - fθ(x_i; a_i))$

然后算法的总loss function 就是三者之和:

$L(θ; (ti)^N{i=1}; (pi)^N{i=1}; θ^(k-1)) := (L{TD} + L{TC} + L{IM})(θ; (t_i)^N {i=1}; (pi)^N{i=1}; θ^(k-1)): $

总体算法如下:observe & look further-achieving consistent performance algorithm

总体网络结构(基于标准的dueling DQN)如下:observe & look further-achieving consistent performance的架構