CMU清华MIT引爆全球首个Agent无限流,机器人「007」加班自学停不下来!具身智能被革命

转载
378 天前
3830
AI之势

文章转载来源:AI之势

文章来源:新智元

编辑:Aeneas 好困

最近,由CMU/MIT/清华/Umass提出的全球首个生成式机器人智能体RoboGen,可以无限生成数据,让机器人7*24小时永不停歇地训练。AIGC for Robotics,果然是未来的方向。

全球首个生成式机器人Agent发布了!

长久以来,相比于语言或者视觉模型可以在大规模的互联网数据上训练,训练机器人的策略模型需要带有动态物理交互信息的数据,而这些数据的匮乏一直是具身智能发展的最大瓶颈。

最近,来自CMU、清华、MIT,UMass等机构的研究人员提出了一种全新的RoboGen智能体。

利用涵盖在大语言模型和生成式模型中蕴含的大规模知识,配以逼真模拟世界提供的物理信息,可以「无限」生成各种任务、场景以及教学数据,实现机器人7x24小时全自动训练。

现在,我们正在迅速耗尽来自网络的高质量的真实token。全球训练AI的数据,都快不够用了。

深度学习之父Hinton表示,「科技公司们正在未来18个月内,要使用比现在GPT-4多100倍的算力训练新模型」。模型参数更大,算力需求巨大,然而数据在哪里?

面对饥渴的模型,AI合成就是答案。

论文地址:https://arxiv.org/abs/2311.01455

项目主页:https://robogen-ai.github.io/

开源地址:https://github.com/Genesis-Embodied-AI

具体来说,由MIT-IBM首席科学家淦创带领的研究团队,在生成式AI和和可微分物理模拟的加持下,提出了一种「提出-生成-学习」循环,让Agent能够自己出题自己训练机器人。

首先,Agent提出,我们要开发这个技能。

然后,它会生成相应的环境、配置和技能学习指导,来创建模拟环境。

最后,Agent会将提出的上层任务分解为子任务,选择最佳学习方法,然后学习策略、掌握所提技能。

值得注意的是,整个过程几乎都不需要人类的监督,而且任务的数量,竟然是——无限个!

对于这则重磅的研究,英伟达高级科学家Jim Fan也进行了转发。

现在,机器人已经学会一系列炸裂操作——

把物品放到储物柜中:

用微波炉加热一碗汤:

拉动杠杆冲泡咖啡:

以及后空翻等等:


模拟环境,多样化技能学习的关键


机器人研究中,长期存在这样一个难题:怎样赋予机器人多种技能,让它们在非工厂环境中操作,为人类执行广泛的任务?

近年来,我们教会了机器人各种复杂的技能,比如流体操纵、投掷物体、踢足球、跑酷等等,然而这些技能却各自为政,视野较短,需要人工设计的任务描述和训练监督。

因为现实世界数据收集成本高昂且费力,这些技能都是在适当领域随机化的模拟中训练,然后部署到现实世界中的。

与现实世界中的探索和数据收集相比,模拟环境具有许多优点,比如提供了低级状态的特权访问和无限的探索机会;支持大规模并行计算,数据收集速度显著加快;允许机器人开发闭环策略和错误恢复能力。

然而,构建模拟环境需要一系列繁琐的任务(设计任务、选择相关且语义上有意义的资产、生成合理的场景布局和配置、制定奖励或损失函数等训练监督)。即使在模拟世界中,也极大限制了机器人技能学习的可扩展性。

因此,研究者提出一种「生成模拟」范式,将模拟机器人技能学习的进步与基础和生成模型的最新进展结合起来。

利用最先进的基础模型的生成能力,生成模拟可以为模拟中各种机器人技能学习所需的所有阶段生成信息。

得益于最新基础模型中全面的编码知识,以这种方式生成的场景和任务数据,可能与现实世界场景的分布非常相似。

此外,这些模型可以进一步提供分解的低级子任务,这些子任务可以通过特定领域的策略学习方法无缝处理,从而产生各种技能和场景的闭环演示。


RoboGen流程


RoboGen是一种全自动流程,可以7x24h地让机器人学习各种技能,其中包括4个阶段:

1. 任务建议;

2. 场景生成;

3. 训练监督生成;

4. 利用生成的信息进行技能学习。

利用最新基础模型的嵌入式常识和生成功能,RoboGen可以自动生成任务、场景和训练监督,从而让机器人的多种技能学习实现规模化。

任务建议

在这一阶段,RoboGen能够提出上层任务,生成相应的环境,将上层目标分解为底层子任务,然后按顺序学习子技能。

首先,RoboGen会生成有意义的、多样化的、高水平的任务,供机器人学习。

研究者使用特定的机器人类型和从池中随机采样的对象,来初始化系统。然后将提供的机器人和采样对象信息输入LLM。

这种采样过程,就确保了生成任务的多样性。

比如,四足机器人等腿式机器人能够获得多种运动技能,而机械臂操纵器在配对时,有可能执行多种操纵任务与不同的采样对象。

研究者使用GPT-4在当前的流程中进行查询。随后在机械的背景下解释 RoboGen的详细信息,以及与对象操作相关的任务。

用于初始化的对象是从预定义的列表中采样的,包括家庭场景中常见的铰接式和非铰接式对象,例如烤箱、微波炉、饮水机、笔记本电脑、洗碗机等。

因为GPT-4接受过大量互联网数据集的培训,所以它对这些对象的可供性、如何与它们交互、它们可以与哪些有意义的任务相关联,都有着丰富的理解。

比如,假设采样的铰接物体是微波炉,其中关节0是连接门的旋转关节,关节1是控制计时器旋钮的另一个旋转关节,GPT-4会返回一个任务——「机器人手臂将一碗汤放入微波炉内,关上门并设置微波炉计时器,适当加热时间a」。

生成的任务所需的其他对象,有一碗汤a,以及与任务相关的关节和链接,包括关节0(用于打开微波炉门)、关节1(用于设置定时器)、链接0(门)和链接1(定时器旋钮)。

对于铰接物体,由于PartNetMobility是唯一高质量的铰接物体数据集,并且已经涵盖了各种铰接资产,因此将根据采样资产生成任务。

通过重复查询不同的采样对象和示例,可以生成各种操作和运动任务。

场景生成

给定一个任务,就可以继续生成相应的模拟场景,以学习完成该任务的技能。

如图所示,根据任务描述生成场景组件和配置,并检索或生成对象资产,随后填充模拟场景。

场景组件和配置由以下元素组成: 对要填充到场景中的相关资产的查询、其物理参数(例如大小)、配置 (例如初始关节角度) 以及资产的整体空间配置。

除了上一步中生成的任务所需的必要对象资产之外,为了增加生成场景的复杂性和多样性,同时类似于真实场景的对象分布,研究者还让GPT-4返回与任务语义相关对象的附加查询。

比如,对于任务「打开柜子,将玩具放入其中,然后关上它」,生成的场景还会包括客厅垫子、台灯、一本书和一把办公椅。

训练监督生成

为了获得相关技能,就需要对技能学习进行监督。

RoboGen会首先查询GPT-4,来把长任务规划和分解为较短范围的子任务。

一个关键假设是,当任务被分解为足够短的子任务时,每个子任务都可以通过强化学习、运动规划、轨迹优化等现有算法可靠地解决。

分解后,RoboGen会查询GPT-4,选择合适的算法来解决每个子任务。

RoboGen中集成了几种不同类型的学习算法: 强化学习、进化策略、基于梯度的轨迹优化、带有运动规划的动作初始化。

每一种都适合不同的任务,例如基于梯度的轨迹优化更适合学习涉及软体的细粒度操作任务,比如将面团塑造成目标形状。

与运动规划相结合的动作初始化在解决任务时更加可靠,例如通过无碰撞路径接近目标对象。

强化学习和进化策略更适合接触丰富、涉及与其他场景组件持续交互的任务,例如腿部运动,或者当所需的动作不能简单地通过离散的末端执行器姿势参数化时,比如转动一个烤箱的旋钮。

总之,GPT-4会根据生成的子任务,在线选择使用哪种算法。

接下来,就可以为机器人构建模拟场景,让它们学习技能了。


机器人学会开保险箱


举个例子,RoboGen会让机器人去学习调整台灯方向这种非常精巧的任务。

有趣的是,在这个场景里,地面上竟然还放着像是电脑显示器这样的易碎物。

可以说,非常考验机器人的环境识别能力了。

对此,RoboGen会生成非常详尽的操作代码,包括场景配置、任务分解和监督:

此外,还会训练一些需要执行很多步骤才能完成的任务,比如让机器人把保险箱里的东西取出来。

这里就涉及到开门,取物,放下,关门等操作,期间还需要尽量避免与家具产生碰撞。

RoboGen给出的代码如下:

或者,诸如让波士顿动力的人形机器人原地转个圈,这种在狭小空间中可能会遇到情景。

代码如下:


实验结果


- 任务多样性

如表1所示,与之前的所有基准相比,RoboGen实现了最低的Self-BLEU和嵌入相似度。也就是说,RoboGen生成任务的多样性,比人工制作的技能学习基准和数据集还要高!

- 场景有效性

如图4所示,取消大小验证会导致BLIP-2分数急剧下降,这是因为Objaverse和PartNetMobility中的物体尺寸,与现实世界的实际尺寸之间存在着巨大差异。此外,没有对象验证的BLIP-2得分也较低,而且方差更大。

相比之下,RoboGen中的验证步骤,可以显著提高对象选择的有效性。

- 训练指导有效性

如图3所示,机器人在4个长程任务中,基于RoboGen生成的训练指导(即任务分解和奖励函数)学习到的技能。

结果表明,机器人成功学习到了完成相应任务的技能。也就是说,自动生成的训练指导能有效衍生出有意义且有用的技能。

- 技能学习

表2的结果显示,允许选择学习算法有利于提高完成任务的性能。如果只使用RL,大多数任务的技能学习都会失败。

- 系统

如图1所示,RoboGen可以生成各种任务,用于技能学习,包括刚性/关节物体操作、运动和软体操作。

而图3进一步表明,RoboGen能够以合理的分解方式提供长程操作技能。


作者介绍


Yufei Wang是卡内基梅隆大学机器人研究所三年级的博士生,导师是Zackory Erickson教授和David Held教授,研究兴趣是机器人学习。

此前,他于2020年12月在CMU获得了计算机科学硕士学位,导师是David Held教授,于2019年7月在北京大学元培学院获得了数据科学学士学位,导师是Bin Dong教授。

Zhou Xian是卡内基梅隆大学机器人研究所的一名博士生,导师是Katerina Fragkiadaki。研究兴趣是机器人、计算机视觉和世界模型学习。

在进入CMU之前,他在新加坡南洋理工大学完成了学士学位,师从Pham Quang Cuong和I-Ming Chen。并曾在Meta AI、Akshara Rai,以及MIT-IBM AI Lab实习,导师是Chuang Gan。

目前,他的研究重点是为可扩展的机器人学习构建统一的神经策略和仿真基础设施。

此外,共同一作还有清华姚班的陈枫。

团队负责人淦创,现任IBM首席科学家和麻省大学助理教授,是姚期智院士的弟子。在博士期间曾获得清华特奖,微软学者,百度学者。他的研究同时得到了Amazon Research Award,Sony Faculty Award,Cisco Faculty Award,Microsoft Accelerate Foundation Models Research Program等资助。

参考资料:

https://robogen-ai.github.io