deep-reinforcement-learning
  • 介绍
  • 前言
    • 神经网络
    • 研究平台
      • 街机游戏
      • 竞速游戏
      • 第一人称射击游戏
      • 开放世界游戏
      • 即时战略游戏
      • 团队体育游戏
      • 文字冒险游戏
      • OpenAI Gym & Universe
  • 方法
    • 街机游戏
      • DQN
      • DRQN
      • Gorila
      • Double DQN
      • Prioritized Experience Replay
      • Dueling DQN
      • Bootstrapped DQN
      • Multiagent DQN
      • Progressive Neural Networks
      • A3C
      • Retrace(λ)
      • ACER
      • ACKTR
      • TRPO
      • PPO
      • UNREAL
      • IMPALA
      • Distributional DQN
      • Noisy-Net
      • Rainbow
      • ES
      • NS-ES
      • Deep GA
      • Playing Atari with Six Neurons
      • UCTtoClassification
      • Policy Distillation
      • Actor-Mimic
      • Action-Conditional Video Prediction
      • Self-Supervision
      • HRA
    • 蒙特祖玛的复仇
      • Hierarchical-DQN
      • DQN-CTS
      • Pixel Recurrent Neural Networks
      • DQN-PixelCNN
      • Ape-X
      • DQfD
      • Ape-X DQfD
      • Natural Language Guided Reinforcement Learning
    • 竞速游戏
      • Direct Perception
      • DDPG
      • TD3
    • 第一人称射击游戏
      • SLAM-Augmented DQN
      • Direct Future Prediction
      • For The Win
    • 开放世界游戏
      • H-DRLN
      • Feedback Recurrent Memory Q-Network
      • Teacher-Student Curriculum Learning
    • 即时战略游戏
      • Puppet Search
      • Combined Strategic and Tacticals
      • Zero Order
      • IQL
      • COMA
      • BiC-Net
      • Macro-action SL
      • Macro-action PPO
      • On Reinforcement Learning for Full-length Game of StarCraft
      • AlphaStar
    • 团队体育游戏
      • DDPG + Inverting Gradients
      • DDPG + Mixing policy targets
      • Object-centric prediction
    • 文字冒险游戏
      • LSTM-DQN
      • DRRN
      • Affordance Based Action Selection
      • Golovin
      • AE-DQN
    • 开放的挑战
      • 游戏通用性
      • 稀疏、延迟、欺骗性的回报
      • 多智能体
      • 终身适应
      • 像人类一样玩游戏
      • 可调节的性能等级
      • 处理巨大的状态空间
      • 工业界应用
      • 游戏开发的交互式工具
      • 创造新的游戏
      • 学习游戏的模型
      • 计算资源
  • 附录
    • Distributional RL
      • QR-DQN
    • Policy Gradient
      • Off-Policy Actor-Critic
      • Generalized Advantage Estimation
      • Soft Actor-Critic
      • PPO-Penalty
    • Model-Based RL
      • I2A
      • MBMF
      • MBVE
      • World Models
    • Imitation Learning and Inverse Reinforcement Learning
      • GAIL
    • Transfer and Multitask RL
      • HER
Powered by GitBook
On this page
  • 方法
  • DISCRETE ACTOR-CRITIC WITH EXPERIENCE REPLAY
  • CONTINUOUS ACTOR CRITIC WITH EXPERIENCE REPLAY
  • 伪代码
  • 实验

Was this helpful?

  1. 方法
  2. 街机游戏

ACER

PreviousRetrace(λ)NextACKTR

Last updated 5 years ago

Was this helpful?

本文提出了一个Actor-Critic深度强化学习代理,具有经验重放,稳定,样本效率高的特点,并且在具有挑战性的环境中表现非常好,包括57个离散的Atari游戏和几个连续的控制问题。 为此,本文介绍了几种创新,包括具有偏差校正的截断重要性采样,随机推导网络架构和新的信任域策略优化方法。

方法

DISCRETE ACTOR-CRITIC WITH EXPERIENCE REPLAY

经验回放的off-policy学习似乎是提高actor-critic样本效率的一个显然的策略。然而,众所周知,控制off-policy估计的方差和稳定性是非常困难的。重要性采样是最流行的off-policy学习方法之一。假设有用行为策略 μμμ 采集的样本 {x0,a0,r0,μ(⋅∣x0),⋯ ,xk,ak,τk,μ(⋅∣xk)}\left\{x_{0}, a_{0}, r_{0}, \mu(\cdot | x_{0}), \cdots, x_{k}, a_{k}, \tau_{k}, \mu(\cdot | x_{k})\right\}{x0​,a0​,r0​,μ(⋅∣x0​),⋯,xk​,ak​,τk​,μ(⋅∣xk​)} ,重要性加权策略梯度由下式给出:

g^imp=(∏t=0kρt)∑t=0k(∑i=0kγirt+i)∇θlog⁡πθ(at∣xt)\widehat{g}^{\mathrm{imp}}=\left(\prod_{t=0}^{k} \rho_{t}\right) \sum_{t=0}^{k}\left(\sum_{i=0}^{k} \gamma^{i} r_{t+i}\right) \nabla_{\theta} \log \pi_{\theta}\left(a_{t} | x_{t}\right)g​imp=(t=0∏k​ρt​)t=0∑k​(i=0∑k​γirt+i​)∇θ​logπθ​(at​∣xt​)

其中 ρt=π(at∣xt)μ(at∣xt)\rho_{t}=\frac{\pi\left(a_{t} | x_{t}\right)}{\mu\left(a_{t} | x_{t}\right)}ρt​=μ(at​∣xt​)π(at​∣xt​)​ 即重要性权重。这个估计量是无偏的,但是它有很高的方差,因为它涉及许多潜在的无限的重要性权重的乘积。为了防止重要性权重的累成的结果爆炸,可截断此权重,整个轨迹上的截断重要性采样,尽管在方差上是有界的,但可能会有明显的偏差。

最近利用极限分布上的边际值函数对该问题进行了研究,得到了以下近似梯度:

gmarg=Ext∼β,at∼μ[ρt∇θlog⁡πθ(at∣xt)Qπ(xt,at)]g^{\mathrm{marg}}=\mathbb{E}_{x_{t} \sim \beta, a_{t} \sim \mu}\left[\rho_{t} \nabla_{\theta} \log \pi_{\theta}\left(a_{t} | x_{t}\right) Q^{\pi}\left(x_{t}, a_{t}\right)\right]gmarg=Ext​∼β,at​∼μ​[ρt​∇θ​logπθ​(at​∣xt​)Qπ(xt​,at​)]

其中 Ext∼β,at∼μ[⋅]\mathbb{E}_{\boldsymbol{x}_{\boldsymbol{t}}} \sim \beta, a_{t} \sim \mu[\cdot]Ext​​∼β,at​∼μ[⋅] 是关于极限分布 β(x)=lim⁡t→∞P(xt=x∣x0,μ)\beta(x)=\lim _{t \rightarrow \infty} P\left(x_{t}=x | x_{0}, \mu\right)β(x)=limt→∞​P(xt​=x∣x0​,μ) 和行为策略 μμμ 的期望。为了保持符号简洁,我们用 Extat[⋅]\mathbb{E}_{x_{t} a_{t}}[\cdot]Ext​at​​[⋅] 替换。

关于等式( 4 ),必须强调两个重要事实:首先,请注意,它依赖于 QπQ^πQπ ,而不是 QμQ^μQμ ,因此我们必须能够估计QπQ^πQπ 。第二,我们不再有重要权重的乘积,而是只需要估计边缘重要性权重 ρtρ_tρt​ 。重要性采样在这个较低维度空间中(相对于轨迹而言,在边缘上)预计会显示出较低的方差。

MULTI-STEP ESTIMATION OF THE STATE-ACTION VALUE FUNCTION

给定在行为策略 μμμ 下生成的轨迹,可以如下递归地表示 RetraceRetraceRetrace 估计(为了便于演示,我们只考虑 λ=1λ= 1λ=1 ) :

Qret(xt,at)=rt+γρ‾t+1[Qret(xt+1,at+1)−Q(xt+1,at+1)]+γV(xt+1)Q^{\mathrm{ret}}\left(x_{t}, a_{t}\right)=r_{t}+\gamma \overline{\rho}_{t+1}\left[Q^{\mathrm{ret}}\left(x_{t+1}, a_{t+1}\right)-Q\left(x_{t+1}, a_{t+1}\right)\right]+\gamma V\left(x_{t+1}\right)Qret(xt​,at​)=rt​+γρ​t+1​[Qret(xt+1​,at+1​)−Q(xt+1​,at+1​)]+γV(xt+1​)

ρ‾t\overline{\rho}_{t}ρ​t​ 是截断的重要性采样系数,即 ρ‾t=min⁡{c,ρt} with ρt=π(at∣xt)μ(at∣xt)\overline{\rho}_{t}=\min \left\{c, \rho_{t}\right\} \text { with } \rho_{t}=\frac{\pi\left(a_{t} | x_{t}\right)}{\mu\left(a_{t} | x_{t}\right)}ρ​t​=min{c,ρt​} with ρt​=μ(at​∣xt​)π(at​∣xt​)​ , QQQ 是 QπQ_πQπ​ 的当前值估计,并且 V(x)=Ea∼πQ(x,a)V(x)=\mathbb{E}_{a \sim \pi} Q(x, a)V(x)=Ea∼π​Q(x,a)

递归 RetraceRetraceRetrace 方程需要估计 QQQ。为了计算它,在离散动作空间中,我们采用具有“双头”的卷积神经网络,其输出估计 Qθv(xt,at)Q_{θv}(x_t, a_t)Qθv​(xt​,at​) ,以及策略 πθ(at∣xt)\pi_θ(a_t | x_t)πθ​(at​∣xt​) 。

为了近似策略梯度 gmargg^{\mathrm{marg}}gmarg , ACERACERACER 使用 QretQ^{\mathrm{ret}}Qret 估计 QπQ^{\pi}Qπ 。由于Retrace使用多步回报,它可以显著减少策略梯度估计中的偏差。

为了学习Critic Qθv(xt,at)Q_{\theta_{v}}\left(x_{t}, a_{t}\right)Qθv​​(xt​,at​) ,我们再次使用 Qret(xt,at)Q^{\mathrm{ret}}\left(x_{t}, a_{t}\right)Qret(xt​,at​) 作为均方误差损失的目标函数,并使用以下标准梯度更新其参数 θvθ_vθv​

(Qret(xt,at)−Qθv(xt,at))∇θvQθv(xt,at))\left(Q^{\mathrm{ret}}\left(x_{t}, a_{t}\right)-Q_{\theta_{v}}\left(x_{t}, a_{t}\right)\right) \nabla_{\theta_{v}} Q_{\theta_{v}}\left(x_{t}, a_{t}\right) )(Qret(xt​,at​)−Qθv​​(xt​,at​))∇θv​​Qθv​​(xt​,at​))

因为Retrace是基于回报的,它还可以更快地学习critic。 因此,我们设定的多步估计 QretQ^{\mathrm{ret}}Qret 的目的是双重的:减少策略梯度的偏差,并使critic能够更快地学习,从而进一步减少偏差。

IMPORTANCE WEIGHT TRUNCATION WITH BIAS CORRECTION

为了防止高方差,我们建议通过以下对 **g marg g^{\text { marg }}g marg  的分解来截断重要性权重并引入校正项:

gmarg⁡=Extat[ρt∇θlog⁡πθ(at∣xt)Qπ(xt,at)]=Ext[Eat[ρ‾t∇θlog⁡πθ(at∣xt)Qπ(xt,at)]+Ea∼π([ρt(a)−cρt(a)]+∇θlog⁡πθ(a∣xt)Qπ(xt,a))]g^{\operatorname{marg}}=\mathbb{E}_{x_{t} a_{t}}\left[\rho_{t} \nabla_{\theta} \log \pi_{\theta}\left(a_{t} | x_{t}\right) Q^{\pi}\left(x_{t}, a_{t}\right)\right] \\ =\mathbb{E}_{x_{t}}\left[\mathbb{E}_{a_{t}}\left[\overline{\rho}_{t} \nabla_{\theta} \log \pi_{\theta}\left(a_{t} | x_{t}\right) Q^{\pi}\left(x_{t}, a_{t}\right)\right]+\mathbb{E}_{a \sim \pi}\left(\left[\frac{\rho_{t}(a)-c}{\rho_{t}(a)}\right]_{+} \nabla_{\theta} \log \pi_{\theta}(a | x_{t}) Q^{\pi}\left(x_{t}, a\right)\right)\right]gmarg=Ext​at​​[ρt​∇θ​logπθ​(at​∣xt​)Qπ(xt​,at​)]=Ext​​[Eat​​[ρ​t​∇θ​logπθ​(at​∣xt​)Qπ(xt​,at​)]+Ea∼π​([ρt​(a)ρt​(a)−c​]+​∇θ​logπθ​(a∣xt​)Qπ(xt​,a))]

其中 ρ‾t=min⁡{c,ρt} with ρt=π(at∣xt)μ(at∣xt)\overline{\rho}_{t}=\min \left\{c, \rho_{t}\right\} \text { with } \rho_{t}=\frac{\pi\left(a_{t} | x_{t}\right)}{\mu\left(a_{t} | x_{t}\right)}ρ​t​=min{c,ρt​} with ρt​=μ(at​∣xt​)π(at​∣xt​)​ ,并且 [x]+=x if x>0[x]_{+}=x \text { if } x>0[x]+​=x if x>0 其他情况取0。左起第一项为截断权重,第二项为校正项。我们提醒读者,上述期望是关于行为策略下的极限状态分布: xt∼βx_{t} \sim \betaxt​∼β 和 at∼μa_{t} \sim \muat​∼μ 。

我们用神经网络 Qθv(xt,at)Q_{θ_v}(x_t,a_t)Qθv​​(xt​,at​) 拟合逼近校正项中的 Qπ(xt,a)Q^π(x_t,a)Qπ(xt​,a) ,这种修改我们称之为truncation with bias correction trick,在这种情况下应用于函数 ∇θlog⁡πθ(at∣xt)Qπ(xt,at)\nabla_{\theta} \log \pi_{\theta}\left(a_{t} | x_{t}\right) Q^{\pi}\left(x_{t}, a_{t}\right)∇θ​logπθ​(at​∣xt​)Qπ(xt​,at​) :

g^marg⁡=Ext[Eat[ρ‾t∇θlog⁡πθ(at∣xt)Qret(xt,at)]+Ea∼π([ρt(a)−cρt(a)]+∇θlog⁡πθ(a∣xt)Qθv(xt,a))]\widehat{g}^{\operatorname{marg}}= \mathbb{E}_{x_{t}}\left[\mathbb{E}_{a_{t}}\left[\overline{\rho}_{t} \nabla_{\theta} \log \pi_{\theta}\left(a_{t} | x_{t}\right) Q^{r e t}\left(x_{t}, a_{t}\right)\right]+\mathbb{E}_{a \sim \pi}\left(\left[\frac{\rho_{t}(a)-c}{\rho_{t}(a)}\right]_{+}^{ } \nabla_{\theta} \log \pi_{\theta}(a | x_{t}) Q_{\theta_{v}}\left(x_{t}, a\right)\right)\right]g​marg=Ext​​[Eat​​[ρ​t​∇θ​logπθ​(at​∣xt​)Qret(xt​,at​)]+Ea∼π​([ρt​(a)ρt​(a)−c​]+​∇θ​logπθ​(a∣xt​)Qθv​​(xt​,a))]

利用行为策略 μ\muμ 采样的样本轨迹 {x0,a0,r0,μ(⋅∣x0),⋯ ,xk,ak,rk,μ(⋅∣xk)}\left\{x_{0}, a_{0}, r_{0}, \mu(\cdot | x_{0}), \cdots, x_{k}, a_{k}, r_{k}, \mu(\cdot | x_{k})\right\}{x0​,a0​,r0​,μ(⋅∣x0​),⋯,xk​,ak​,rk​,μ(⋅∣xk​)} ,可以近似得到 off-policy ACER梯度:

g^tacer⁡=ρ‾t∇θlog⁡πθ(at∣xt)[Qret(xt,at)−Vθv(xt)]+Ea∼π([ρt(a)−cρt(a)]+∇θlog⁡πθ(a∣xt)[Qθv(xt,a)−Vθv(xt)])\widehat{g}_{t}^{\operatorname{acer}}=\overline{\rho}_{t} \nabla_{\theta} \log \pi_{\theta}\left(a_{t} | x_{t}\right)\left[Q^{\mathrm{ret}}\left(x_{t}, a_{t}\right)-V_{\theta_{v}}\left(x_{t}\right)\right] \\ +\underset{a \sim \pi}{\mathbb{E}}\left(\left[\frac{\rho_{t}(a)-c}{\rho_{t}(a)}\right]_{+} \nabla_{\theta} \log \pi_{\theta}(a | x_{t})\left[Q_{\theta_{v}}\left(x_{t}, a\right)-V_{\theta_{v}}\left(x_{t}\right)\right]\right)g​tacer​=ρ​t​∇θ​logπθ​(at​∣xt​)[Qret(xt​,at​)−Vθv​​(xt​)]+a∼πE​([ρt​(a)ρt​(a)−c​]+​∇θ​logπθ​(a∣xt​)[Qθv​​(xt​,a)−Vθv​​(xt​)])

在上述表达式中,我们减去了经典的基线 Vθv(xt)V_{θ_v}(x_t )Vθv​​(xt​) 以减少方差。

EFFICIENT TRUST REGION POLICY OPTIMIZATION

Actor-Critic的策略更新经常表现出很大的方差。因此,为了确保稳定,我们必须限制策略的每一步变化。仅仅使用较小的学习速率是不够的,因为他们不能在保持期望的学习速度的同时防止偶尔的大规模更新。信任区域政策优化( TRPO ) 提供了更完善的解决方案。

尽管TRPO方法有效,但每次更新都需要重复计算Fisher向量乘积。这在大规模问题下被证明是非常费时的。

在本节中,我们将介绍一种新的信任域策略优化方法,该方法可以很好地扩展到大规模问题。 我们建议维护一个average policy network代表过去策略的运行平均值,并强制更新的策略不偏离这一平均水平,而不是将更新后的策略限制在接近当前策略(如TRPO)。

我们将策略网络分解为两部分:一个概率分布fff,一个深度神经网络,产生这个分布的统计参数 φθ(x)φ_θ(x )φθ​(x) 。也就是说,给定 fff ,策略完全由网络 ϕθ:π(⋅∣x)=f(⋅∣ϕθ(x))\phi_{\theta} : \pi(\cdot | x)=f(\cdot | \phi_{\theta}(x))ϕθ​:π(⋅∣x)=f(⋅∣ϕθ​(x)) 表示。

我们将average policy network表示为 φθaφ_{θ_a}φθa​​ ,并在每次更新策略参数 θθθ 后“柔和地”更新其参数 θa←αθa+(1−α)θ\theta_{a} \leftarrow \alpha \theta_{a}+(1-\alpha) \thetaθa​←αθa​+(1−α)θ

例如,考虑前面定义的ACER策略梯度,但是关于 ϕ\phiϕ的

g^tacer⁡=ρ‾t∇ϕθ(xt)log⁡f(at∣ϕθ(x))[Qret(xt,at)−Vθv(xt)]+Ea∼π([ρt(a)−cρt(a)]+∇ϕθ(xt)log⁡f(at∣ϕθ(x))[Qθv(xt,a)−Vθv(xt)])\begin{aligned} \widehat{g}_{t}^{\operatorname{acer}}=& \overline{\rho}_{t} \nabla_{\phi_{\theta}\left(x_{t}\right)} \log f\left(a_{t} | \phi_{\theta}(x)\right)\left[Q^{\mathrm{ret}}\left(x_{t}, a_{t}\right)-V_{\theta_{v}}\left(x_{t}\right)\right] \\ &+\underset{a \sim \pi}{\mathbb{E}}\left(\left[\frac{\rho_{t}(a)-c}{\rho_{t}(a)}\right]_{+} \nabla_{\phi_{\theta}\left(x_{t}\right)} \log f\left(a_{t} | \phi_{\theta}(x)\right)\left[Q_{\theta_{v}}\left(x_{t}, a\right)-V_{\theta_{v}}\left(x_{t}\right)\right]\right) \end{aligned}g​tacer​=​ρ​t​∇ϕθ​(xt​)​logf(at​∣ϕθ​(x))[Qret(xt​,at​)−Vθv​​(xt​)]+a∼πE​([ρt​(a)ρt​(a)−c​]+​∇ϕθ​(xt​)​logf(at​∣ϕθ​(x))[Qθv​​(xt​,a)−Vθv​​(xt​)])​

给定average policy network,我们建议的信任区域更新包括两个阶段。在第一阶段,我们用线性化KL散度约束来解决以下优化问题

minimize⁡z12∥g^t acer −z∥22 subject to ∇ϕθ(xt)DKL[f(⋅∣ϕθa(xt))∥f(⋅∣ϕθ(xt))]Tz≤δ\begin{array}{ll}{\underset{z}{\operatorname{minimize}}} & {\frac{1}{2}\left\|\hat{g}_{t}^{\text { acer }}-z\right\|_{2}^{2}} \\ {\text { subject to }} & {\nabla_{\phi_{\theta}\left(x_{t}\right)} D_{K L}[f(\cdot | \phi_{\theta_{a}}\left(x_{t}\right)) \| f(\cdot | \phi_{\theta}\left(x_{t}\right))]^{T} z \leq \delta}\end{array}zminimize​ subject to ​21​∥g^​t acer ​−z∥22​∇ϕθ​(xt​)​DKL​[f(⋅∣ϕθa​​(xt​))∥f(⋅∣ϕθ​(xt​))]Tz≤δ​

由于约束是线性的,整个优化问题简化为简单的二次规划问题,利用KKT条件可以很容易地以封闭形式导出其解,令 k=∇ϕθ(xt)DKL[f(⋅∣ϕθa(xt)∥f(⋅∣ϕθ(xt)]k=\nabla_{\phi_{\theta}\left(x_{t}\right)} D_{K L}\left[f\left(\cdot\left|\phi_{\theta_{a}}\left(x_{t}\right)\|f(\cdot | \phi_{\theta}\left(x_{t}\right)]\right.\right.\right.k=∇ϕθ​(xt​)​DKL​[f(⋅∣ϕθa​​(xt​)∥f(⋅∣ϕθ​(xt​)]

z∗=g^tacer−max⁡{0,kTg^tacer−δ∥k∥22}kz^{*}=\hat{g}_{t}^{\mathrm{acer}}-\max \left\{0, \frac{k^{T} \hat{g}_{t}^{\mathrm{acer}}-\delta}{\|k\|_{2}^{2}}\right\} kz∗=g^​tacer​−max{0,∥k∥22​kTg^​tacer​−δ​}k

在第二阶段,我们利用反向传播。具体地,关于 φθφ_θφθ​ 的更新的梯度,即 z∗z^*z∗ ,通过网络反向传播,以计算与参数相关的导数。 策略网络的参数更新遵循链规则: ∂ϕθ(x)∂θz∗\frac{\partial \phi_{\theta}(x)}{\partial \theta} z^{*}∂θ∂ϕθ​(x)​z∗

信任区域步骤在分布的统计空间中执行,而不是在策略参数的空间中执行。这样做是故意的,以避免通过策略网络进行额外的反向传播。

ACER算法源于上述想法的组合,所以想要深入理解原理,需参阅上面引用的论文。

CONTINUOUS ACTOR CRITIC WITH EXPERIENCE REPLAY

Retrace需要估计Q和V,但是我们不能轻易连续的动作空间中利用积分求解Q和V。 在本节中,我们以RL的新颖表示形式提出了这个问题的解决方案,以及信任区域更新所需的修改。

POLICY EVALUATION

我们提出了一个SDN网络(借鉴Dueling Deep-Q Network)解决这个问题,在每个时间步,SDN输出 QπQ_πQπ​ 的随机估计 Q~θv\widetilde{Q}_{\theta_{v}}Q​θv​​ 和 VπV_πVπ​ 的确定性估计 VθV_θVθ​ ,使得

Q~θv(xt,at)∼Vθv(xt)+Aθv(xt,at)−1n∑i=1nAθv(xt,ui), and ui∼πθ(⋅∣xt)\widetilde{Q}_{\theta_{v}}\left(x_{t}, a_{t}\right) \sim V_{\theta_{v}}\left(x_{t}\right)+A_{\theta_{v}}\left(x_{t}, a_{t}\right)-\frac{1}{n} \sum_{i=1}^{n} A_{\theta_{v}}\left(x_{t}, u_{i}\right), \text { and } u_{i} \sim \pi_{\theta}(\cdot | x_{t})Q​θv​​(xt​,at​)∼Vθv​​(xt​)+Aθv​​(xt​,at​)−n1​i=1∑n​Aθv​​(xt​,ui​), and ui​∼πθ​(⋅∣xt​)

然而,除了SDN之外,我们还构建了以下用于估计的新目标

Vtarget(xt)=min⁡{1,π(at∣xt)μ(at∣xt)}(Qret(xt,at)−Qθv(xt,at))+Vθv(xt)V^{\text {target}}\left(x_{t}\right)=\min \left\{1, \frac{\pi\left(a_{t} | x_{t}\right)}{\mu\left(a_{t} | x_{t}\right)}\right\}\left(Q^{\mathrm{ret}}\left(x_{t}, a_{t}\right)-Q_{\theta_{v}}\left(x_{t}, a_{t}\right)\right)+V_{\theta_{v}}\left(x_{t}\right)Vtarget(xt​)=min{1,μ(at​∣xt​)π(at​∣xt​)​}(Qret(xt​,at​)−Qθv​​(xt​,at​))+Vθv​​(xt​)

最后,当估计在连续域估计 QretQ^{\mathrm{ret}}Qret时,我们实现了一个稍微不同的截断重要性权重公式, ρ‾t=min⁡{1,(π(at∣xt)μ(at∣xt))1d}\overline{\rho}_{t}=\min \left\{1,\left(\frac{\pi\left(a_{t} | x_{t}\right)}{\mu\left(a_{t} | x_{t}\right)}\right)^{\frac{1}{d}}\right\}ρ​t​=min{1,(μ(at​∣xt​)π(at​∣xt​)​)d1​} ,d是动作空间的维度。虽然不是必需的,但我们发现这种配方可以加快学习速度。

TRUST REGION UPDATING

对于分布 fff ,我们选择具有固定对角协方差和均值的高斯分布 ϕθ(x)\phi_{\theta}(x)ϕθ​(x)

考虑关于随机Deuling Network的ACER策略梯度

gt acer =Ext[Eat[ρ‾t∇ϕθ(xt)log⁡f(at∣ϕθ(xt))(Qopc(xt,at)−Vθv(xt))]+Ea∼π([ρt(a)−cρt(a)]+(Q~θv(xt,a)−Vθv(xt))∇ϕθ(xt)log⁡f(a∣ϕθ(xt)))]\begin{aligned} g_{t}^{\text { acer }}=& \mathbb{E}_{x_{t}}\left[\mathbb{E}_{a_{t}}\left[\overline{\rho}_{t} \nabla_{\phi_{\theta}\left(x_{t}\right)} \log f\left(a_{t} | \phi_{\theta}\left(x_{t}\right)\right)\left(Q^{\mathrm{opc}}\left(x_{t}, a_{t}\right)-V_{\theta_{v}}\left(x_{t}\right)\right)\right]\right.\\ &+\underset{a \sim \pi}{\mathbb{E}}\left(\left[\frac{\rho_{t}(a)-c}{\rho_{t}(a)}\right]_{+}\left(\widetilde{Q}_{\theta_{v}}\left(x_{t}, a\right)-V_{\theta_{v}}\left(x_{t}\right)\right) \nabla_{\phi_{\theta}\left(x_{t}\right)} \log f(a | \phi_{\theta}\left(x_{t}\right))\right) ] \end{aligned}gt acer ​=​Ext​​[Eat​​[ρ​t​∇ϕθ​(xt​)​logf(at​∣ϕθ​(xt​))(Qopc(xt​,at​)−Vθv​​(xt​))]+a∼πE​([ρt​(a)ρt​(a)−c​]+​(Q​θv​​(xt​,a)−Vθv​​(xt​))∇ϕθ​(xt​)​logf(a∣ϕθ​(xt​)))]​

这里,我们使用 QopcQ^{\mathrm{opc}}Qopc 代替 QretQ^{\mathrm{ret}}Qret , Qopc(xt,at)Q^{\mathrm{opc}}\left(x_{t}, a_{t}\right)Qopc(xt​,at​) 与Retrace相同,但截断的重要性比率替换为1。给定状态 xtx_txt​ ,可以从 at′∼πθ(⋅∣xt)a_{t}^{\prime} \sim \pi_{\theta}(\cdot | x_{t})at′​∼πθ​(⋅∣xt​) 采样通过蒙特卡洛近似得到:

g^t acer =ρ‾t∇ϕθ(xt)log⁡f(at∣ϕθ(xt))(Qopc(xt,at)−Vθv(xt))+[ρt(at′)−cρt(at′)](Q~θv(xt,at′)−Vθv(xt))∇ϕθ(xt)log⁡f(at′∣ϕθ(xt))\begin{aligned} \hat{g}_{t}^{\text { acer }}=& \overline{\rho}_{t} \nabla_{\phi_{\theta}\left(x_{t}\right)} \log f\left(a_{t} | \phi_{\theta}\left(x_{t}\right)\right)\left(Q^{\mathrm{opc}}\left(x_{t}, a_{t}\right)-V_{\theta_{v}}\left(x_{t}\right)\right) \\ &+\left[\frac{\rho_{t}\left(a_{t}^{\prime}\right)-c}{\rho_{t}\left(a_{t}^{\prime}\right)}\right]\left(\widetilde{Q}_{\theta_{v}}\left(x_{t}, a_{t}^{\prime}\right)-V_{\theta_{v}}\left(x_{t}\right)\right) \nabla_{\phi_{\theta}\left(x_{t}\right)} \log f\left(a_{t}^{\prime} | \phi_{\theta}\left(x_{t}\right)\right) \end{aligned}g^​t acer ​=​ρ​t​∇ϕθ​(xt​)​logf(at​∣ϕθ​(xt​))(Qopc(xt​,at​)−Vθv​​(xt​))+[ρt​(at′​)ρt​(at′​)−c​](Q​θv​​(xt​,at′​)−Vθv​​(xt​))∇ϕθ​(xt​)​logf(at′​∣ϕθ​(xt​))​

接下来就和离散的情况一样了。

伪代码

实验

雅达利游戏机

MuJoCo

使用 λ−return:Rtλ=rt+(1−λ)γV(xt+1)+λγρt+1Rt+1λλ-return: R_{t}^{\lambda}=r_{t}+(1-\lambda) \gamma V\left(x_{t+1}\right)+\lambda \gamma \rho_{t+1} R_{t+1}^{\lambda}λ−return:Rtλ​=rt​+(1−λ)γV(xt+1​)+λγρt+1​Rt+1λ​ (即资格迹方法)估计 QπQ^πQπ。这个估计要求我们知道如何提前选择 λλλ 来权衡偏差和方差。此外,当使用小值 λλλ的来减少方差时,偶尔的大重要性权重仍然会导致不稳定性。

在下面的小节中,我们采用了Munos等人的 RetraceRetraceRetrace 估计QπQ^πQπ。随后,我们提出了一种重要性权重截断技术,以提高的off-policy actor critic的稳定性。并为策略优化引入计算有效的信任区域方案。

RetraceRetraceRetrace 是一种off-policy、基于回报的,并具有低方差,被证明(在表格中)收敛于任何行为策略的目标策略的值函数。

SAMPLE EFFICIENT ACTOR-CRITIC WITH EXPERIENCE REPLAY
Degris等人
Degris等人
算法
Degris等人
算法