OpenAI研究 机器人研究的成分
我们发布了八个模拟机器人环境和 Hindsight Experience Replay 的基线实施,所有这些都是为我们过去一年的研究开发的。我们已经使用这些环境来训练在物理机器人上工作的模型。我们还发布了一组机器人研究请求。

此版本包括四个使用 Fetch 研究平台的环境和四个使用 ShadowHand 机器人的环境。这些环境中包含的操作任务比目前在 Gym 中可用的 MuJoCo 连续控制环境要困难得多,所有这些现在都可以使用最近发布的算法(如 PPO)轻松解决。此外,我们新发布的环境使用真实机器人的模型,并要求代理解决现实任务。
环境
拿来

FetchReach-v0:Fetch 必须将其末端执行器移动到所需的目标位置。

FetchReach-v0:Fetch 必须在长桌上击打一个冰球,使其滑动并停在所需的目标上。

FetchReach-v0:Fetch 必须通过推动盒子来移动它,直到它到达所需的目标位置。

FetchReach-v0:Fetch 必须使用其抓手从桌子上拿起一个盒子,并将其移动到桌子上方的所需目标。
影手

HandReach-v0:ShadowHand 必须用拇指和选定的手指伸手,直到它们在手掌上方的所需目标位置相遇。

HandReach-v0:ShadowHand 必须操纵一个块,直到它达到所需的目标位置和旋转。

HandReach-v0:ShadowHand 必须操纵一个鸡蛋,直到它达到所需的目标位置和旋转。

HandReach-v0:ShadowHand 必须操纵笔,直到达到所需的目标位置和旋转。
此版本附带八个 使用 MuJoCo物理模拟器的Gym机器人环境 。环境是:
目标
所有的新任务都有一个“目标”的概念,例如冰球在滑动任务中的期望位置或手块操作任务中块的期望方向。默认情况下,所有环境都使用稀疏奖励,如果预期目标尚未实现,则为 -1;如果已实现,则为 0(在一定公差范围内)。这与旧系列 Gym 连续控制问题中使用的形状奖励形成对比,例如 Walker2d-v2 及其 形状奖励。
我们还包括一个对每个环境都有密集奖励的变体。然而,我们相信稀疏奖励在机器人应用中更为现实,我们鼓励大家改用稀疏奖励变体。

事后经验回放
除了这些新的机器人环境,我们还 发布了Hindsight Experience Replay (或简称 HER) 的 代码,这是一种可以从失败中学习的强化学习算法。我们的结果表明,HER 可以仅从稀疏奖励中学习大多数新机器人问题的成功策略。下面,我们还展示了未来研究的一些潜在方向,可以进一步提高 HER 算法在这些任务上的性能。

了解她
要了解 HER 的作用,让我们在FetchSlide的上下文中看一下 ,在该任务中,我们需要学习将冰球滑过桌子并击中目标。我们的第一次尝试很可能不会成功。除非我们非常幸运,否则接下来的几次尝试也很可能不会成功。典型的强化学习算法不会从这种经验中学到任何东西,因为它们只会获得 -1
不包含任何学习信号的恒定奖励(在本例中:)。
HER 形式化的关键洞察是人类凭直觉所做的事情:即使我们没有在特定目标上取得成功,我们至少已经实现了一个不同的目标。那么,为什么不假装我们一开始就想实现这个目标,而不是我们最初打算实现的目标呢?通过这种替换,强化学习算法可以获得学习信号,因为它已经达到了 某个 目标;即使这不是我们最初想要实现的目标。如果我们重复这个过程,我们最终将学会如何实现任意目标,包括我们真正想要实现的目标。
这种方法让我们学会了如何将冰球滑过桌子,即使我们的奖励是完全稀疏的,即使我们可能从未真正达到过早的预期目标。我们将这种技术称为 Hindsight Experience Replay,因为它会在剧集结束后使用事后选择的目标来重放经验(一种常用于 off-policy RL 算法,如 DQN 和 DDPG的技术)。因此,HER 可以与任何 off-policy RL 算法相结合(例如,HER 可以与 DDPG 相结合,我们将其写为“DDPG + HER”)。
结果
我们发现 HER 在奖励稀少的基于目标的环境中工作得非常好。我们在新任务上比较了 DDPG + HER 和 vanilla DDPG。这种比较包括每个环境的稀疏和密集奖励版本。

HandManipulateBlockRotateXYZ-v0 上四种不同配置的中值测试成功率(线)和四分位数范围(阴影区域)。数据在训练时期绘制,并在每个配置的五个不同随机种子上进行总结。
具有稀疏奖励的 DDPG + HER 明显优于所有其他配置,并且仅从稀疏奖励中就成功地学习了这项具有挑战性的任务的策略。有趣的是,具有密集奖励的 DDPG + HER 能够学习但性能较差。在这两种情况下,Vanilla DDPG 大多无法学习。我们发现这种趋势在大多数环境中普遍适用,我们在随附的 技术报告中包含了完整的结果。
研究请求:她版
尽管 HER 是一种很有前途的学习复杂的基于目标的任务的方法,它具有稀疏的奖励,例如我们在这里提出的机器人环境,但仍有很大的改进空间。与我们最近发布的Requests for Research 2.0类似 ,我们对具体改进 HER 和强化学习的方法有一些想法。
- 自动事后目标创建。我们目前有一个硬编码策略来选择我们想要替代的事后目标。如果可以学习这种策略,那将很有趣。
- 不偏不倚的她。目标替代无原则地改变了经验的分配。这种偏见在理论上会导致不稳定,尽管我们没有发现这在实践中会发生。尽管如此,推导出 HER 的无偏版本还是不错的,例如通过使用 重要性采样。
- 她+人力资源。进一步将 HER 与分层强化学习 (HRL) 中的最新想法结合起来会很有趣 。除了将 HER 仅应用于目标,它还可以应用于由更高级别的策略生成的操作。例如,如果上级要求下级实现目标 A,但目标 B 却没有实现,我们可以假设上级最初要求我们实现目标 B。
- 更丰富的价值函数。扩展最近的 研究 并将价值函数限制在折扣因子或成功阈值等额外输入上,并且(也许?)也可以事后替代它们,这将很有趣 。
- 更快的信息传播。大多数离策略 深度 强化 学习 算法 使用目标网络来稳定训练。然而,由于变化需要时间来传播,这将限制训练速度,我们在实验中注意到它通常是决定 DDPG+HER 学习速度的最重要因素。研究其他不会导致这种放缓的稳定训练的方法会很有趣。
- HER+多步回报。HER 中使用的经验是非常偏离政策的,因为我们替换了目标。这使得它很难与 多步返回一起使用。然而,多步返回是可取的,因为它们允许更快地传播有关返回的信息。
- 政策上的她。目前,HER 只能与 off-policy 算法一起使用,因为我们替换了目标,使得体验极度 off-policy。然而,最近最先进的算法(如 PPO) 表现出非常有吸引力的稳定性特征。研究 HER 是否可以与这种基于策略的算法相结合会很有趣,例如通过 重要性采样。 这方面已经有了一些 初步的成果。
- RL 动作非常频繁。当前的 RL 算法对采取行动的频率非常敏感,这就是为什么在 Atari 上通常使用跳帧技术的原因。在连续控制域中,随着采取行动的频率趋于无穷大,性能趋于零,这是由两个因素造成的:不一致的探索和需要引导更多次以及时向后传播有关回报的信息。如何设计一个样本高效的 RL 算法,即使采取行动的频率趋于无穷大也能保持其性能?
- 将 HER 与 RL 的最新进展相结合。最近有大量研究改进了强化学习的不同方面。首先,HER 可以与 优先体验回放、 分布式 RL、 熵正则化 RL或 反向课程生成相结合。
您可以在我们随附的技术报告中找到有关这些建议和新 Gym 环境的其他信息和参考 。
使用基于目标的环境
引入“目标”的概念需要对现有的 Gym API进行一些向后兼容的更改 :
- 所有基于目标的环境都使用
gym.spaces.Dict
观察空间。环境应该包括一个期望的目标,代理应该尝试实现 (desired_goal
),它当前已经实现的目标 (achieved_goal
),以及实际观察 (observation
),例如机器人的状态。 - 我们公开了环境的奖励功能,从而允许重新计算目标改变后的奖励。这允许替代目标的 HER 式算法。
这是一个简单的示例,它与一个新的基于目标的环境交互并执行目标替换:
新的基于目标的环境可以与现有的 Gym 兼容强化学习算法一起使用,例如 Baselines。用于 gym.wrappers.FlattenDictWrapper
将基于字典的观察空间展平为一个数组: