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
  • 方法
  • Off-PAC
  • Convergence Proofs
  • 伪代码

Was this helpful?

  1. 附录
  2. Policy Gradient

Off-Policy Actor-Critic

PreviousPolicy GradientNextGeneralized Advantage Estimation

Last updated 5 years ago

Was this helpful?

本文提出了第一个off-policy强化学习的actor-critic算法。我们的算法是在线的和增量的,并且每个时间步长的复杂度与学习的权重数量成线性比例。前期的actor-critic算法的局限于on-policy环境,没有利用off-policy的时间差分梯度的优势。off-policy技术,如Greedy-GQ,能够在跟踪和从另一个(行为)策略获取数据的同时学习目标策略。对于许多问题,无论如何,actor-critic方法更实用,因为它们清晰的代表了策略;因此,该策略可以是是随机的,并且可利用大的动作空间。本文阐述了如何将off-policy学习的通用性和学习潜力与actor-critic方法在行动选择中的灵活性相结合,这种灵活性是由actor-critic的方法决定的。我们导出了一个包含资格迹的线性时间和空间复杂度的算法,证明了在类似于以前的off-policy算法的假设下的收敛性,并且在标准强化学习基准问题上,实验显示了比现有算法更好或的性能。

最着名的off-policy方法是Q-learning。 然而,虽然Q-Learnings保证收敛到最优的非线性(非近似)情况,但在使用线性函数逼近时可能会有所不同(Baird,1995)。最小二乘法,如LSTD和LSPI 可以使用off-policy和线性函数,但是计算成本昂贵;它们的复杂度与特征和权重的数量成比例。 最近,这些问题已经被新的梯度-TD(时间差)方法所解决,例如Greedy-GQ,它们具有线性复杂性和收敛性, 具有函数逼近的off-policy学习下。

所有的动作值方法,包括梯度TD方法,如Greedy-GQ,都有三个重要的局限性。首先,他们的目标政策是确定性的,而许多问题都有随机的最优政策,其次,对于较大的动作空间来说,找到关于动作值函数的贪婪动作变得有问题。最后,动作值函数的小变化会导致策略的大变化,这给收敛性证明和一些实时应用带来困难。避免行动价值方法局限性的标准方法是使用策略梯度算法,例如actor-critic。

方法

Off-PAC

价值函数定义

Vπ,γ(s)=E[rt+1+…+rt+T∣st=s]∀s∈SV^{\pi, \gamma}(s)=\mathrm{E}\left[r_{t+1}+\ldots+r_{t+T} | s_{t}=s\right] \forall s \in \mathcal{S}Vπ,γ(s)=E[rt+1​+…+rt+T​∣st​=s]∀s∈S

动作值函数定义

Qπ,γ(s,a)=∑s′∈SP(s′∣s,a)[R(s,a,s′)+γ(s′)Vπ,γ(s′)]\begin{array}{l}{Q^{\pi, \gamma}(s, a)=} \\ {\sum_{s^{\prime} \in S} P\left(s^{\prime} | s, a\right)\left[\mathcal{R}\left(s, a, s^{\prime}\right)+\gamma\left(s^{\prime}\right) V^{\pi, \gamma}\left(s^{\prime}\right)\right]}\end{array}Qπ,γ(s,a)=∑s′∈S​P(s′∣s,a)[R(s,a,s′)+γ(s′)Vπ,γ(s′)]​

我们的学习目标是找出一个能最大化下面函数的策略 uuu

Jγ(u)=∑s∈Sdb(s)Vπu,γ(s)J_{\gamma}(\mathbf{u})=\sum_{s \in \mathcal{S}} d^{b}(s) V^{\pi_{\mathbf{u}}, \gamma}(s)Jγ​(u)=∑s∈S​db(s)Vπu​,γ(s)

其中 db(s)=lim⁡t→∞P(st=s∣s0,b)d^{b}(s)=\lim _{t \rightarrow \infty} P\left(s_{t}=s | s_{0}, b\right)db(s)=limt→∞​P(st​=s∣s0​,b) ,即在动作 bbb 和初始状态 s0s_0s0​ 下的极限概率分布。用 dbd^{b}db加权的原因是,在off-policy中,数据是从行为策略的分布获得。

The Critic: Policy Evaluation

用线性函数近似价值函数: V^(s)=vTxs\hat{V}(s)=\mathbf{v}^{\mathbf{T}} \mathbf{x}_{s}V^(s)=vTxs​

λ-weighted mean-squared projected Bellman error

MSPBE⁡(v)=∥V^−ΠTπλ,γV^∥D2\operatorname{MSPBE}(\mathbf{v})=\left\|\hat{V}-\Pi T_{\pi}^{\lambda, \gamma} \hat{V}\right\|_{D}^{2}MSPBE(v)=​V^−ΠTπλ,γ​V^​D2​

其中V^=Xv\hat{V}=X \mathbf{v}V^=Xv , XXX 的每一行都是一个样本, λλλ 是资格迹权重参数, DDD 是一个矩阵(对角元素为dbd^{b}db), ΠΠΠ 是一个投影操作, Tπλ,γT_{\pi}^{\lambda, \gamma}Tπλ,γ​ 是λ-weighted Bellman operator(对于终止概率为 γγγ 的策略 πππ )。在线性情况下, Π=X(X⊤DX)−1X⊤D\Pi=X\left(X^{\top} D X\right)^{-1} X^{\top} DΠ=X(X⊤DX)−1X⊤D 。

请参考 GTD(λ)GTD(λ)GTD(λ) 算法

Off-policy Policy-gradient Theorem

策略梯度为

ut+1−ut≈αu,t∇uJγ(ut)\mathbf{u}_{t+1}-\mathbf{u}_{t} \approx \alpha_{u, t} \nabla_{\mathbf{u}} J_{\gamma}\left(\mathbf{u}_{t}\right)ut+1​−ut​≈αu,t​∇u​Jγ​(ut​)

展开得到

∇uJγ(u)=∇u[∑s∈Sdb(s)∑a∈Aπ(a∣s)Qπ,γ(s,a)]=∑s∈Sdb(s)∑a∈A[∇uπ(a∣s)Qπ,γ(s,a)+π(a∣s)∇uQπ,γ(s,a)]\begin{aligned} \nabla_{\mathbf{u}} J_{\gamma}(\mathbf{u})=& \nabla_{\mathbf{u}}\left[\sum_{s \in \mathcal{S}} d^{b}(s) \sum_{a \in \mathcal{A}} \pi(a | s) Q^{\pi, \gamma}(s, a)\right] \\=& \sum_{s \in \mathcal{S}} d^{b}(s) \sum_{a \in \mathcal{A}}\left[\nabla_{\mathbf{u}} \pi(a | s) Q^{\pi, \gamma}(s, a)\right.\\ &+\pi(a | s) \nabla_{\mathbf{u}} Q^{\pi, \gamma}(s, a) ] \end{aligned}∇u​Jγ​(u)==​∇u​[s∈S∑​db(s)a∈A∑​π(a∣s)Qπ,γ(s,a)]s∈S∑​db(s)a∈A∑​[∇u​π(a∣s)Qπ,γ(s,a)+π(a∣s)∇u​Qπ,γ(s,a)]​

∇uQπ,γ(s,a)\nabla_{\mathbf{u}} Q^{\pi, \gamma}(s, a)∇u​Qπ,γ(s,a) 很难估计,所以忽略掉,得到近似梯度

∇uJγ(u)≈g(u)=∑s∈Sdb(s)∑a∈A∇uπ(a∣s)Qπ,γ(s,a)\nabla_{\mathbf{u}} J_{\gamma}(\mathbf{u}) \approx \mathbf{g}(\mathbf{u})=\sum_{s \in \mathcal{S}} d^{b}(s) \sum_{a \in \mathcal{A}} \nabla_{\mathbf{u}} \pi(a | s) Q^{\pi, \gamma}(s, a)∇u​Jγ​(u)≈g(u)=∑s∈S​db(s)∑a∈A​∇u​π(a∣s)Qπ,γ(s,a)

下面的定理证明了这个近似(证明见原文附录)

The Actor: Incremental Update Algorithm with Eligibility Traces

我们现在使用行为策略中的观察样本推导出增量更新算法,首先写出近似策略梯度的期望形式

g(u)=E[∑a∈A∇uπ(a∣s)Qπ,γ(s,a)∣s∼db]=E[∑a∈Ab(a∣s)π(a∣s)b(a∣s)∇uπ(a∣s)π(a∣s)Qπ,γ(s,a)∣s∼db]=E[ρ(s,a)ψ(s,a)Qπ,γ(s,a)∣s∼db,a∼b(⋅∣s)]=Eb[ρ(st,at)ψ(st,at)Qπ,γ(st,at)]\begin{aligned} \mathbf{g}(\mathbf{u}) &=\mathrm{E}\left[\sum_{a \in \mathcal{A}} \nabla_{\mathbf{u}} \pi(a | s) Q^{\pi, \gamma}(s, a) | s \sim d^{b}\right] \\ &=\mathrm{E}\left[\sum_{a \in \mathcal{A}} b(a | s) \frac{\pi(a | s)}{b(a | s)} \frac{\nabla_{\mathbf{u}} \pi(a | s)}{\pi(a | s)} Q^{\pi, \gamma}(s, a) | s \sim d^{b}\right] \\ &=\mathrm{E}\left[\rho(s, a) \psi(s, a) Q^{\pi, \gamma}(s, a) | s \sim d^{b}, a \sim b(\cdot | s)\right] \\ &=\mathrm{E}_{b}\left[\rho\left(s_{t}, a_{t}\right) \psi\left(s_{t}, a_{t}\right) Q^{\pi, \gamma}\left(s_{t}, a_{t}\right)\right] \end{aligned}g(u)​=E[a∈A∑​∇u​π(a∣s)Qπ,γ(s,a)∣s∼db]=E[a∈A∑​b(a∣s)b(a∣s)π(a∣s)​π(a∣s)∇u​π(a∣s)​Qπ,γ(s,a)∣s∼db]=E[ρ(s,a)ψ(s,a)Qπ,γ(s,a)∣s∼db,a∼b(⋅∣s)]=Eb​[ρ(st​,at​)ψ(st​,at​)Qπ,γ(st​,at​)]​

其中 ρ(s,a)=π(a∣s)b(a∣s),ψ(s,a)=∇uπ(a∣s)π(a∣s)\rho(s, a)=\frac{\pi(a | s)}{b(a | s)}, \psi(s, a)=\frac{\nabla_{\mathbf{u}} \pi(a | s)}{\pi(a | s)}ρ(s,a)=b(a∣s)π(a∣s)​,ψ(s,a)=π(a∣s)∇u​π(a∣s)​ ,这里引入了新的符号 Eb[⋅]\mathrm{E}_{b}[\cdot]Eb​[⋅]期望 来隐含地表示条件,所有随机变量(按时间步长索引)都是从行为策略下它们的极限平稳分布中提取出来的。然后减去一个baseline减小方差:

g(u)=Eb[ρ(st,at)ψ(st,at)(Qπ,γ(st,at)−V^(st))]\mathbf{g}(\mathbf{u})=\mathrm{E}_{b}\left[\rho\left(s_{t}, a_{t}\right) \psi\left(s_{t}, a_{t}\right)\left(Q^{\pi, \gamma}\left(s_{t}, a_{t}\right)-\hat{V}\left(s_{t}\right)\right)\right]g(u)=Eb​[ρ(st​,at​)ψ(st​,at​)(Qπ,γ(st​,at​)−V^(st​))]

下一步是替换动作值

g(u)≈g(u)^=Eb[ρ(st,at)ψ(st,at)(Rtλ−V^(st))]\mathbf{g}(\mathbf{u}) \approx \widehat{\mathbf{g}(\mathbf{u})}=\mathrm{E}_{b}\left[\rho\left(s_{t}, a_{t}\right) \psi\left(s_{t}, a_{t}\right)\left(R_{t}^{\lambda}-\hat{V}\left(s_{t}\right)\right)\right]g(u)≈g(u)​=Eb​[ρ(st​,at​)ψ(st​,at​)(Rtλ​−V^(st​))]

其中off-policy λ-return定义的 RtλR_{t}^{\lambda}Rtλ​ 为:

Rtλ=rt+1+(1−λ)γ(st+1)V^(st+1)+λγ(st+1)ρ(st+1,at+1)Rt+1λ\begin{aligned} R_{t}^{\lambda}=& r_{t+1}+(1-\lambda) \gamma\left(s_{t+1}\right) \hat{V}\left(s_{t+1}\right) \\ &+\lambda \gamma\left(s_{t+1}\right) \rho\left(s_{t+1}, a_{t+1}\right) R_{t+1}^{\lambda} \end{aligned}Rtλ​=​rt+1​+(1−λ)γ(st+1​)V^(st+1​)+λγ(st+1​)ρ(st+1​,at+1​)Rt+1λ​​

这就是前向视角的Off-PAC

Convergence Proofs

请参考原文附录

伪代码

为了实现前面描述的算法,这里转换为后向视角,关键的一步是

Eb[ρ(st,at)ψ(st,at)(Rtλ−V^(st))]=Eb[δtet]\mathrm{E}_{b}\left[\rho\left(s_{t}, a_{t}\right) \psi\left(s_{t}, a_{t}\right)\left(R_{t}^{\lambda}-\hat{V}\left(s_{t}\right)\right)\right]=\mathrm{E}_{b}\left[\delta_{t} \mathrm{e}_{t}\right]Eb​[ρ(st​,at​)ψ(st​,at​)(Rtλ​−V^(st​))]=Eb​[δt​et​]

其中 δt=rt+1+γ(st+1)V^(st+1)−V^(st)\delta_{t}=r_{t+1}+\gamma\left(s_{t+1}\right) \hat{V}\left(s_{t+1}\right)-\hat{V}\left(s_{t}\right)δt​=rt+1​+γ(st+1​)V^(st+1​)−V^(st​) 是时间差分误差, et∈RNu\mathbf{e}_{t} \in \mathbb{R}^{N_{\mathbf{u}}}et​∈RNu​ 是资格迹,由下式更新

et=ρ(st,at)(ψ(st,at)+λet−1)\mathbf{e}_{t}=\rho\left(s_{t}, a_{t}\right)\left(\psi\left(s_{t}, a_{t}\right)+\lambda \mathbf{e}_{t-1}\right)et​=ρ(st​,at​)(ψ(st​,at​)+λet−1​)

然后我们可以得到: ut+1−ut=αu,tδtet\mathbf{u}_{t+1}-\mathbf{u}_{t}=\alpha_{u, t} \delta_{t} \mathbf{e}_{t}ut+1​−ut​=αu,t​δt​et​

证明见原文附录或者参考资格迹的相关教程

Off-Policy Actor-Critic