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
  • 方法
  • Evolution Strategies(ES)
  • Novelty Search(NS)
  • NS-ES
  • QD-ES(NSR-ES and NSRA-ES)
  • 实验

Was this helpful?

  1. 方法
  2. 街机游戏

NS-ES

PreviousESNextDeep GA

Last updated 6 years ago

Was this helpful?

进化策略(ES)是一组黑盒优化算法,能够粗略地训练深度神经网络,就像Q-learning和策略梯度方法来挑战深度强化学习(RL)问题,但速度要快得多(比如小时vs天),因为它们的并行性更好。然而,许多RL问题需要定向探索,因为它们具有稀疏的或欺骗性的奖励(即包含局部最优),而且还不知道如何用ES来鼓励更多的探索。在这里,我们展示了一些已经被发明出来的算法,这些算法通过探索代理的大量出现来促进在小规模进化的神经网络中的定向探索,特别是新颖搜索(NS)和质量多样性(QD)算法,可以与ES杂交,以提高其在稀疏或欺骗性的深层RL任务中的性能,同时保持可扩展性。我们的实验证实了新算法——神经网络进化算法和两种量子进化算法,NSR-ES和NSRA-ES,避免了神经网络进化算法遇到的局部最优,从而在雅达利和学习绕过欺骗陷阱的模拟机器人上获得了更高的性能。因此,本文介绍了一系列快速、可扩展的强化学习算法,这些算法能够进行定向探索。它还将这一新的探索算法族添加到了推理工具箱中,并提出了一种有趣的可能性,即具有多条同时探索路径的相似算法也可能与专家系统之外的现有推理算法相结合。

方法

Evolution Strategies(ES)

NES将群体表示为由参数 ϕ:pϕ(θ)\phi : p_{\phi}(\theta)ϕ:pϕ​(θ) 表征的参数向量 θθθ 的分布,对于适应函数 f(θ)f(\theta)f(θ) ,NES旨在最大限度地提高群体的平均适应度 Eθ∼pϕ[f(θ)]\mathbb{E}_{\theta \sim p_{\phi}}[f(\theta)]Eθ∼pϕ​​[f(θ)] ,通过梯度下降优化ϕ:pϕ(θ)\phi : p_{\phi}(\theta)ϕ:pϕ​(θ) 。

最近OpenAI的工作把NES应用于RL(见上一篇ES),设群体分布为 θti∼N(θt,σ2I)\theta_{t}^{i} \sim \mathcal{N}\left(\theta_{t}, \sigma^{2} I\right)θti​∼N(θt​,σ2I) ,类似于REINFORCE,梯度为

∇ϕEθ∼ϕ[f(θ)]≈1n∑i=1nf(θti)∇ϕlog⁡pϕ(θti)\nabla_{\phi} \mathbb{E}_{\theta \sim \phi}[f(\theta)] \approx \frac{1}{n} \sum_{i=1}^{n} f\left(\theta_{t}^{i}\right) \nabla_{\phi} \log p_{\phi}\left(\theta_{t}^{i}\right)∇ϕ​Eθ∼ϕ​[f(θ)]≈n1​i=1∑n​f(θti​)∇ϕ​logpϕ​(θti​)

设 θti=θt+σϵi where ϵi∼N(0,I)\theta_{t}^{i}=\theta_{t}+\sigma \epsilon_{i} \text { where } \epsilon_{i} \sim \mathcal{N}(0, I)θti​=θt​+σϵi​ where ϵi​∼N(0,I) ,通过对样本参数扰动的总和进行加权来估计梯度

∇θtEϵ∼N(0,I)[f(θt+σϵ)]≈1nσ∑i=1nf(θti)ϵi\nabla_{\theta_{t}} \mathbb{E}_{\epsilon \sim \mathcal{N}(0, I)}\left[f\left(\theta_{t}+\sigma \epsilon\right)\right] \approx \frac{1}{n \sigma} \sum_{i=1}^{n} f\left(\theta_{t}^{i}\right) \epsilon_{i}∇θt​​Eϵ∼N(0,I)​[f(θt​+σϵ)]≈nσ1​i=1∑n​f(θti​)ϵi​

Novelty Search(NS)

NS鼓励政策参与明显不同于前面所见的行为。 该算法通过计算当前策略与先前生成的策略的相关性来鼓励不同的行为,然后鼓励人口分布向参数空间区域移动,具有高新颖性。在NS中,策略 πππ 被赋予描述其行为的域相关行为特征 b(π)b(π)b(π) 。例如,在人形运动问题的情况下, b(π)b(π)b(π) 可以简单到包含人形的最终位置 x,y{x,y }x,y 的二维向量。在整个训练过程中,每个被评估的 πθπ_θπθ​ 都会以一定的概率将 b(πθ)b\left(\pi_{\theta}\right)b(πθ​) 加到档案集 AAA 中。然后,通过从一个特定策略中选择 b(πθ)b\left(\pi_{\theta}\right)b(πθ​) 的k -最近邻居并计算它们之间的平均距离,来计算该策略的新奇值 N(b(πθ),A)N\left(b\left(\pi_{\theta}\right), A\right)N(b(πθ​),A) 。

N(θ,A)=N(b(πθ),A)=1∣S∣∑j∈S∥b(πθ)−b(πj)∥2S=kNN(b(πθ),A)={b(π1),b(π2),…,b(πk)}\begin{array}{c}{N(\theta, A)=N\left(b\left(\pi_{\theta}\right), A\right)=\frac{1}{|S|} \sum_{j \in S}\left\|b\left(\pi_{\theta}\right)-b\left(\pi_{j}\right)\right\|_{2}} \\ {S=k N N\left(b\left(\pi_{\theta}\right), A\right)} \\ {=\left\{b\left(\pi_{1}\right), b\left(\pi_{2}\right), \ldots, b\left(\pi_{k}\right)\right\}}\end{array}N(θ,A)=N(b(πθ​),A)=∣S∣1​∑j∈S​∥b(πθ​)−b(πj​)∥2​S=kNN(b(πθ​),A)={b(π1​),b(π2​),…,b(πk​)}​

NS-ES

我们使用上面中描述的ES优化框架来计算期望新颖性的梯度

∇θtEϵ∼N(0,I)[N(θt+σϵ,A)∣A]≈1nσ∑i=1nN(θti,A)ϵi\nabla_{\theta_{t}} \mathbb{E}_{\epsilon \sim \mathcal{N}(0, I)}\left[N\left(\theta_{t}+\sigma \epsilon, A\right) | A\right] \approx \frac{1}{n \sigma} \sum_{i=1}^{n} N\left(\theta_{t}^{i}, A\right) \epsilon_{i}∇θt​​Eϵ∼N(0,I)​[N(θt​+σϵ,A)∣A]≈nσ1​i=1∑n​N(θti​,A)ϵi​

获得的梯度估计告诉我们如何改变当前策略的参数θ以增加我们的参数分布的平均新颖性。

我们初始化 MMM 个随机参数向量作为元群体,并在每次迭代时选择一个进行更新。实验中,我们根据 **θm\theta^{m}θm 的新颖性计算概率,从离散概率分布中选择更新的向量。

P(θm)=N(θm,A)∑j=1MN(θj,A)P\left(\theta^{m}\right)=\frac{N\left(\theta^{m}, A\right)}{\sum_{j=1}^{M} N\left(\theta^{j}, A\right)}P(θm)=∑j=1M​N(θj,A)N(θm,A)​

在从元群体中选择一个个体后,我们计算当前参数向量 θtmθ^m_tθtm​ 的期望新颖性梯度,并相应地执行更新步骤:

θt+1m←θtm+α1nσ∑i=1nN(θti,m,A)ϵi\theta_{t+1}^{m} \leftarrow \theta_{t}^{m}+\alpha \frac{1}{n \sigma} \sum_{i=1}^{n} N\left(\theta_{t}^{i, m}, A\right) \epsilon_{i}θt+1m​←θtm​+αnσ1​i=1∑n​N(θti,m​,A)ϵi​

更新当前参数向量后,将计算 b(πθt+1m)b\left(\pi_{\theta_{t+1}^{m}}\right)b(πθt+1m​​) 并将其添加到共享归档 AAA 中。整个过程重复预定的迭代次数,因为NS没有真正的收敛点。 在训练期间,算法会保留具有最高平均奖励的策略,并在训练完成后返回此策略。

QD-ES(NSR-ES and NSRA-ES)

单独的NS-ES可以使代理人避免在奖励功能中欺骗性的局部最优。 然而,回报信号仍然提供非常丰富的信息,完全丢弃它们可能会导致性能下降。因此,我们训练NS-ES的变体,我们称之为NSR-ES,它结合了(“适应性”)和针对给定的一组策略参数 θ\thetaθ 计算的新颖性。

θt+1m←θtm+α1nσ∑i=1nf(θti,m)+N(θti,m,A)2ϵi\theta_{t+1}^{m} \leftarrow \theta_{t}^{m}+\alpha \frac{1}{n \sigma} \sum_{i=1}^{n} \frac{f\left(\theta_{t}^{i, m}\right)+N\left(\theta_{t}^{i, m}, A\right)}{2} \epsilon_{i}θt+1m​←θtm​+αnσ1​i=1∑n​2f(θti,m​)+N(θti,m​,A)​ϵi​

直观地说,该梯度朝向既表现出新颖行为又获得高回报的策略。然而,通常, f(θti,m)f\left(\theta_{t}^{i, m}\right)f(θti,m​) 和 N(θti,m,A)N\left(\theta_{t}^{i, m}, A\right)N(θti,m​,A) 的尺度不同。 为了有效地组合这两个信号,我们在计算平均值之前独立地对它们进行rank-normalize。

NSR-ES具有相同的回报和新颖度梯度权重,在训练中是静态的。我们探索NSR-ES的进一步扩展,称为NSRAdapt-ES(NSRA-ES),它通过在训练期间智能地调整加权参数 www ,以此动态调节 f(θti,m)f\left(\theta_{t}^{i, m}\right)f(θti,m​)与N(θti,m,A)N\left(\theta_{t}^{i, m}, A\right)N(θti,m​,A)的优先级。

θt+1m←θtm+αn‾σn∑i=1nwf(θti,m)ϵi+(1−w)N(θti,m,A)ϵi\theta_{t+1}^{m} \leftarrow \theta_{t}^{m}+\alpha_{\overline{n} \sigma}^{n} \sum_{i=1}^{n} w f\left(\theta_{t}^{i, m}\right) \epsilon_{i}+(1-w) N\left(\theta_{t}^{i, m}, A\right) \epsilon_{i}θt+1m​←θtm​+αnσn​i=1∑n​wf(θti,m​)ϵi​+(1−w)N(θti,m​,A)ϵi​

我们最初设置 w=1.0w = 1.0w=1.0 ,如果性能在固定数量的代间停滞不前,我们会降低它。我们继续下降,直到性能提高,这时我们增加。

实验

Improving Exploration in Evolution Strategies for Deep Reinforcement Learning via a Population of Novelty-Seeking Agents