2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

谷歌和 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:368694
用户头像

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

关注

评论

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

夜莺二次开发指南-任务执行中心

ning

滴滴夜莺 夜莺监控

用Rust写点啥:数据结构篇——单向链表

Kurtis Moxley

数据结构 rust

夜莺二次开发指南-用户资源中心

ning

滴滴夜莺 夜莺监控

夜莺二次开发指南-监控系统(3)

ning

滴滴夜莺 夜莺监控

调查bug的手段有哪些?(没有调查,就没有发言权,二)Jan 13, 2021

王泰

28天写作

时间之外的颜色「幻想短篇 5/28」

道伟

28天写作

28天瞎写的第二百一六天:LumaQQ 和 luma 二三事

树上

28天写作

JFR定位线上问题实例 - JFR导致的雪崩问题定位与解决

AI乔治

Java 架构 线程

【PS】给黑白照片上色

德育处主任

PhotoShop ps 28天写作

低代码开发技术

Sam678678

大型企业引进低代码开发技术是大趋势

Sam678678

外行话之不玩游戏,怎么做好游戏?

Justin

游戏 28天写作 外行话

HDFS SHELL详解(6)

罗小龙

hadoop 28天写作 hdfs shell

项目管理系列(1)-如何开好一个周会

Ian哥

项目管理 28天写作

微信视频号常见问题 | 视频号 28 天 (06)

赵新龙

28天写作

知乎问答:“既然生命无意义,为什么要活着?”

三只猫

28天写作

僵尸进程的成因以及僵尸可以被“杀死”吗?

AI乔治

Java 架构 进程

读书笔记:《Remote》

lidaobing

28天写作 Remote

如何让开发人员接受DevSecOps

啸天

DevOps 开发者 DevSecOps 升职加薪 应用安全

读《百度不需要用户》,我似乎懂得了领导者的无奈

李忠良

AI 企业

聚焦目标,团队工作不再一盘散沙(上)

一笑

管理 敏捷 目标管理 28天写作

每个人都拥有这项神技能

熊斌

职场成长 28天写作

Deno 双周刊 #1 - Deno 获 2020 JS 开源年度突破奖

hylerrix

typescript deno Node 周刊 V8

一文带你快速入门Canal,看这篇就够了!

大数据老哥

大数据 实时数仓 canal

一次慢查询暴露的隐蔽的问题

AI乔治

Java sql 架构 SQL优化

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

SamGo

学习

CSS13 - 定位

Mr.Cactus

html/css

一文学会Java死锁和CPU 100% 问题的排查技巧

AI乔治

Java 架构 死锁 cpu 100%

夜莺二次开发指南-资产设备管理

ning

滴滴夜莺 夜莺监控

okhttp3 第一次使用

我就感觉到快

【Mysql-InnoDB 系列】关于一致读

程序员架构进阶

MySQL 架构 innodb 28天写作

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