RoboCasa: 通用机器人日常任务的大规模模拟
论文:RoboCasa: Large-Scale Simulation of Everyday Tasks for Generalist Robots
1. 背景介绍
目前机器人数据相对稀缺,其中一个关键问题是如何获取机器人训练数据,在仿真环境下生成大规模合成数据是一个有前景的替代方案。
仿真必须满足三个核心标准。
-
模拟器必须保证物理、渲染和底层模型的真实性,以便能够转移到现实世界。
-
模拟器必须满足其提供的场景、资产和任务的多样性。
-
必须提供机器人大型数据集
提出了RoboCasa,这是一个以家庭环境为中心的大规模仿真框架,基于RoboSuite 构建,这是一个基于MuJoCo的模块化、快速且易于使用的框架。RoboCasa 以厨房环境为重点,具有逼真而多样的场景。其提供数千个 3D 资产,涵盖 150 多个目标类别和数十种可交互的家具和电器,其中大部分是由文本到3D工具生成的。RoboCasa支持多种形式的移动操作器,如单臂移动平台、人形机器人和带手臂的四足机器人。
这些资产使我们能够模拟厨房场景中的各种行为。此版本包括100个系统评估任务,前25项是原子任务 ,具有基本的机器人技能,如拾取和放置、打开和关闭门以及旋转旋钮。它们是构建复杂长期任务的基本基石。另外75个是涉及一系列机器人技能的复合任务。
在所有100项任务中进行高质量的人工演示来补充我们的任务。采用MimicGen增强数据集,为原子任务生成了10万条额外的轨迹。
论文贡献如下:
-
开发了RoboCasa仿真框架,该框架具有多样化、逼真的厨房场景,借助生成式人工智能工具创建的多样化资产,包括120个厨房场景和2500多个3D对象,对移动操纵器和人形机器人的跨实施例支持。
-
介绍了一组100个系统评估任务,包括25个代表基本运动技能的原子任务,和75个在大型语言模型指导下生成的复合任务。
-
为模型训练提供了一个大型多任务数据集,包括大规模合成生成的轨迹。
如图所示RoboCasa:


RoboCasa和其他框架相比:
- RoboCasa支持房间级场景
- RoboCasa具有照片级真实感渲染
- RoboCasa拥有大量的任务、房间级场景和物体
- 通过人类远程操作和MimicGen系统的组合提供大规模的任务演示数据集
2. RoboCasa 仿真
2.1 核心仿真平台
采用 RoboSuite作为开发 RoboCasa 的核心模拟平台。之所以选择 RoboSuite,是因为它注重物理真实感、高速和模块化设计,这能够扩展到大规模场景。直接继承 RoboSuite 的几个核心组件,包括环境模型格式和机器人控制器。
为了支持房间规模的环境,扩展 RoboSuite 以适应移动机械手,包括安装在轮式底座上的机器人、人形机器人和带手臂的四足动物。还支持使用 NVIDIA Omniverse 进行高质量渲染,能够捕捉逼真的图像。
2.2 厨房场景
初版专注于以厨房活动为中心的家务。模拟 10 个平面图 (如图所示),从公寓中的基本设计到高端住宅中更精致的设计。每个厨房都可以配置为采用自定义建筑风格。在查阅建筑杂志后,汇编流行的厨房风格,包括工业、斯堪的纳维亚、沿海、现代、传统、地中海、乡村等。总共,建模 12 种厨房风格 。每个平面图都可以配置为任何风格,从而产生 120 个厨房场景。每个场景都可以通过替换大量高质量 AI 生成的纹理来进一步定制。有 100 种墙壁纹理、100 种地板纹理、100 种柜台纹理和 100 种橱柜面板纹理。用流行的文本-转-图像工具 MidJourney 来生成这些图像。将这些纹理用作域随机化的一种形式,以显著增加训练数据集的视觉多样性。

2.3 资产
创建了一个大型的复杂 3D 资产库,以适应各种厨房活动。该库包括橱柜、抽屉和各种厨房用具 。从在线 3D 模型库中获取这些资产,并将其转换为 MuJoCo MJCF 模型格式。后处理操作涉及将电器分割成铰接实体,如图所示:

除了电器之外,还创建一个丰富的厨房常见物品库,涵盖水果和蔬菜、乳制品、家禽、饮料、容器、工具等。
从两个来源收集目标资产,即 Objaverse 数据集和在线文本-到- 3D 服务 Luma.ai。挖掘大量候选目标,并过滤掉有缺陷或质量低下的目标。在此过程结束时,收集 2,509 个高质量资产,涵盖 153 个独特目标类别。这些资产中的大多数(1,592 个)来自 Luma.ai。有关目标的说明,参见下图

3. RoboCasa数据集
模拟器支持各种可能的厨房活动,我们用100个任务的综合套件来表示这些活动。本节概述了这些任务及其附带的大型多任务数据集
3.1 原子任务
专注于构成大多数家庭活动基础的一组八种传感运动技能:1) 拾取和放置,2) 打开和关闭门,3) 打开和关闭抽屉,4) 扭转旋钮,5) 转动杠杆,6) 按下按钮,7) 插入,8) 导航。
这些技能并不构成详尽的清单,包括以可变形操作等行为为中心的其他技能留待将来研究。为了有效地学习这些技能,提出一组 25 项任务,每项任务都涉及这八项技能中的一项。将它们称为原子任务。
3.2 使用大语言模型创建复合任务
复合任务涉及排序技能,以解决语义上有意义的活动,例如烹饪和清洁。
用大语言模型 (LLM) 的指导来定义任务。这种方法有几个关键好处。
-
LLM 封装人类知识的不同来源,因此可以有效地传达基于现实世界的不同想法。
-
这些 LLM 可以大规模用于定义数千个独特的任务,从而大大减少任务定义所涉及的人力劳动。
通过两个步骤生成任务(如图所示)。首先,提示 ChatGPT (GPT-4) 列出常见的高级厨房活动。列出 20 项活动:泡咖啡或茶、洗碗、补充厨房用品、切菜、烤面包、解冻食物、烧水、准备肉类、摆桌子、清理桌子、消毒、准备零食、整理橱柜和抽屉、洗水果和蔬菜、煎炸、重新加热食物、搅拌和混合、烘烤、上菜和蒸蔬菜。
然后,提示 GPT-4 和 Gemini 1.5 为每个活动标签提出代表性任务。LLM 偶尔会出现逻辑缺陷,因此会过滤或修改它们的一些输出。从 LLM 中总共汇编 75 个任务蓝图,并继续为它们编写代码实现。除了设计用于特定环境的少数复合任务外,所有任务都可以在任何厨房场景中模拟。

3.3 RoboCasa 数据集
概述一套全面的 100 项任务,其中包括 25 项原子任务和 75 项使用 LLM 创建的复合任务。首先使用人工遥控操作收集一组基本演示,然后使用自动轨迹生成方法将其扩展为更大的演示集
通过人工遥控操作收集一组基本演示。一个由四名人工操作员组成的团队使用 3D SpaceMouse 为每个原子任务收集 50 个高质量演示。每个任务演示都是在随机厨房场景中收集的(随机厨房平面图、随机厨房风格和随机 AI 生成的纹理)。这通过人工遥控产生了大量多样化的模拟数据集(1,250 次演示,对应25 项原子任务)。最后,选择使用数据生成工具来扩展数据量。
利用自动轨迹生成方法来合成演示 。为了以最少的人力进一步扩大数据集的大小,采用 MimicGen ,这是一种最近开发的轨迹生成方法。MimicGen 可以通过将人类演示的种子集调整到新设置来自动合成丰富的数据集。
核心生成机制,首先将每个人类演示分解为一系列以目标为中心的操作片段。然后,对于一个新场景,它根据相关目标的当前姿势转换每个以目标为中心的片段,将片段拼接在一起,并让机器人遵循新的轨迹来收集新的任务演示。
MimicGen 数据生成尝试并不总是成功的。在实践中,它采用拒绝采样方案仅保留导致任务成功的生成尝试。利用 RoboCasa 模拟,在多个模拟过程中并行化 MimicGen 数据生成,以加快数据生成过程。
3.4 实验
- 原子任务

-
Human-50:一个包含1250个人类演示的数据集,涵盖所有25个原子任务,每个任务有50个人类演示
-
Generated-100:我们完整生成数据集的随机1/30子集,每个任务生成100个演示。这总共产生了2400条轨迹。
-
Generated-300:我们完整生成数据集的随机1/10子集,每个任务生成300个演示。这总共产生了7200条轨迹
-
Generated-3000:由MimicGen1在24个原子任务中合成的72000个演示的数据集,我们将50个人体演示作为每个任务的输入,并使用它们自主生成3000个轨迹
- 复合任务

Scratch:从这50次demonstration中从头开始训练policy
Fine-tuning: 将我们在原子任务中学习到的预先训练好的策略与完整的MimicGen生成的数据集结合起来,在这50个人类演示进行微调。
Scratch基线在4/5的任务上未能达到任何非零的成功率。微调方法在4/5个任务上实现了非零的成功率。