写点什么

谷歌和 UC 伯克利联合发布机器人深度 RL 算法 SAC,机器人 2 小时学会行走

  • 2019-01-21
  • 本文字数:1927 字

    阅读完需:约 6 分钟

谷歌和UC伯克利联合发布机器人深度RL算法SAC,机器人2小时学会行走

深度强化学习(RL)使得直接从现实世界中获得的经验和交互中实现机器人行为完全自主学习成为可能,因为它能够使用通用神经网络表示来处理复杂的感知输入。然而,许多现有的 RL 算法需要数天或数周(或更多)的真实数据才能收敛到期望的行为。此外,这样的系统可能难以在复杂的机器人系统(例如腿式机器人)上部署,因为它们在探索阶段很容易被损坏,超参数设置可能难以调整,而且各种安全方面的考虑也可能会引起诸多限制。


我们最近与加州大学伯克利分校合作,发布了Soft Actor-Critic(SAC),这是一种稳定而有效的深度 RL 算法,适用于真实世界的机器人技能学习,与机器人实验的要求完全一致。重要的是,SAC 的效率足以在几个小时内解决实际的机器人任务,并且可以在仅有一组超参数的各种环境中工作。下面,我们将讨论 SAC 背后的一些研究,并介绍我们最近的一些实验。

真实世界机器人学习的要求

真实世界的机器人实验面临一些重大的挑战,例如由于硬件故障和手动重置导致的数据流经常中断,为避免机器人的机械磨损而进行的平滑工作,因为算法及其实现会由于机械磨损而受到限制,包括但不仅限于):


  • 良好的样品效率可以减少学习时间

  • 需要调整的超参数数量最少

  • 重用已经收集的不同场景数据(称为离策略学习)

  • 确保学习和实验不会损坏硬件

Soft Actor-Critic

Soft Actor-Critic 基于最大熵强化学习,这个框架旨在最大化预期奖励(标准的 RL 目标)并最大化策略的熵。熵越高的策略随机性更强,这意味着最大熵强化学习更喜欢随机性强但可以获得高回报的策略。


为什么这对机器人学习来说很重要?最明显的原因是针对最大熵优化的策略更加健壮:如果策略在训练期间能够容忍高度随机的行为,则更有可能在测试时成功响应意外的扰动。然而,更微妙的原因是最大熵的训练可以提高算法对超参数的健壮性和样本效率(了解更多信息,请参阅此BAIR博客文章本教程


Soft Actor-Critic 通过学习将状态映射到动作的随机策略和估计当前策略的目标值的 Q 函数来最大化熵奖励,并使用近似动态编程来对其进行优化。这样,SAC 将目标视为一种获得更好的强化学习算法的基本方法,这些算法性能稳定,并且样本效率足以适用于真实世界的机器人应用程序。有关技术细节,请参阅我们的技术报告

SAC 的性能

我们在两项任务上评估 SAC 的性能:1)使用 Ghost Robotics 的 Minitaur 机器人进行四足行走,以及 2)使用三指 Dynamixel Claw 旋转阀门。学习行走是一项重大挑战,因为机器人是欠驱动的,因此必须精确地平衡腿上的接触力以驱动机器人前进。未经训练的策略可能导致机器人失去平衡而摔倒,而摔倒次数过多最终会损坏机器人,这使得样本有效的学习变得至关重要。


我们在平坦的地面上训练这些策略,随后在不同的地形和障碍物上进行了测试。原则上,利用 SAC 学习的策略应该对于测试时间扰动是稳健的,因为其被训练为熵最大化(即输入最大噪声)。实际上,我们观察到使用此方法学习的策略对这些扰动是稳健的,而无需任何额外的学习。





(在 Minitaur 机器人上使用 SAC 学习走路的展示。有关学习过程的完整视频,请访问我们的项目网站


而操作任务需要机械手臂旋转阀门状物体,使彩色桩钉朝右,如下图所示。由于感知上的挑战和机械手臂有 9 度的自由活动空间,该任务非常具有挑战性。为了感知阀门,机器人必须使用右下方插图中显示的原始 RGB 图像。每次实验,阀门的初始位置被随机均匀地重置,迫使策略学习使用原始 RGB 图像来感知当前的阀门方向。



SAC 迅速地完成了这两项任务:Minitaur 学会运动需要 2 个小时,而通过图像观察阀门旋转任务需要 20 个小时。我们还在为提供图像,而是实际阀门位置作为策略的观察对象,学习了此情况下阀门旋转任务的策略。SAC 可以在 3 小时内学习这个更简单的阀门任务。为了进行比较,先前的工作使用自然策略梯度在没有图像的情况下,7.4 小时内学习相同任务。

结论

我们的工作表明,基于最大熵框架的深度强化学习可以应用于学习现实世界环境中的机器人技能。由于这些策略是直接从现实世界中学习的,因此它们表现出对环境变化的健壮性,这非常难得。结果还表明,我们可以直接从高维图像观察中学习,这是典型机器人技术面临的重大挑战。我们希望,SAC 的发布有助于其他研究团队在未来采用深度 RL 来处理更复杂的现实任务。


有关更多技术细节,请访问BAIR博客文章,或阅读早期预印本和更完整的算法详解。你还可以在 GitHub 上找到具体的实现方法 https://github.com/rail-berkeley/softlearning

致谢

此研究由谷歌和加州大学伯克利分校合作完成。感谢所有参与人,包括 Sehoon Ha,Kristian Hartikainen,Jie Tan,George Tucker,Vincent Vanhoucke 和 Aurick Zhou。


原文链接:https://ai.googleblog.com/2019/01/soft-actor-critic-deep-reinforcement.html


2019-01-21 15:368464
用户头像

发布了 98 篇内容, 共 66.0 次阅读, 收获喜欢 285 次。

关注

评论

发布
暂无评论
发现更多内容

第十二周 作业

熊桂平

极客大学架构师训练营

第十二周 架构方法学习总结 —— 数据应用

兵长

架构1期 第十二周作业

haha

第十二周 数据应用(一)总结

蓝黑

极客大学架构师训练营

week8-作业二-根据当周学习情况,完成一篇学习总结

未来已来

SpringBoot系列(6)- 测试

引花眠

spring springboot

ARTS打卡 第25周

引花眠

微服务 ARTS 打卡计划 springboot

减肥为什么会失败,有可能是因为你仍然在摄入容易消化的食用糖。

叶小鍵

科普 减肥、廋身 盖里·陶比斯 加工食用糖

架构师训练营 1 期 - 第 十二周作业(vaik)

行之

极客大学架构师训练营

第三周总结

胡益

Week_12 总结

golangboy

极客大学架构师训练营

week8-作业一

未来已来

与前端训练营的日子 --Week07

SamGo

学习

架构师训练营 12 周笔记

郎哲158

数据应用(一)

wing

极客大学架构师训练营

ARTS打卡 第26周

引花眠

微服务 ARTS 打卡计划 springboot

第十二周 学习总结

熊桂平

极客大学架构师训练营

「奇淫技巧」如何写最少的代码

Kerwin

Java 代码设计 代码技巧

架构师训练营第 1 期 - week12 - 作业

lucian

极客大学架构师训练营

架构第12周总结

Geek_Gu

极客大学架构师训练营

第12周作业

paul

架构师训练营 - 第12周

袭望

架构师训练营第十二周学习笔记

一马行千里

智天下APP系统开发|智天下软件开发

系统开发

第十二周 作业2

Yangjing

极客大学架构师训练营

架构第12周作业

Geek_Gu

极客大学架构师训练营

架构师训练营 2 期 Week08 作业

ARTS打卡 第27周

引花眠

微服务 ARTS 打卡计划 springboot

第十二周 作业1

Yangjing

极客大学架构师训练营

架构师训练营 1 期 - 第 十二周总结(vaik)

行之

极客大学架构师训练营

架构师训练营 2 期 Week08 总结

谷歌和UC伯克利联合发布机器人深度RL算法SAC,机器人2小时学会行走_AI&大模型_谷歌机器人团队_InfoQ精选文章