robocasa/robocasa

RoboCasa: Large-Scale Simulation of Everyday Tasks for Generalist Robots

RoboCasa – 大规模机器人仿真基准

这是什么

RoboCasa(现为RoboCasa365)是一个开源仿真框架,让研究人员能够在各种日常厨房任务中训练和评估机器人策略。它基于robosuite物理引擎,并提供:

  • 365个不同的任务(例如,抓取放置、打开橱柜)借助大语言模型生成。
  • 2,500多个厨房场景和3,200多个3D物体,包括人工设计和AI生成的物品。
  • 数百小时的演示数据 – 人工录制的演示和机器人生成的轨迹,现在增加了逐帧子任务注释。
  • 基准测试工具:现成的Gym环境、排行榜,以及用于训练Diffusion Policy、PI和GR00T等常见策略的脚本。

简而言之,它是一个研究级的“游乐场”,用于构建能够在仿真中处理许多家务操作任务的通用机器人智能体。


如何开始

  1. 创建conda环境(Python 3.11)并从master分支安装所需的robosuite后端。
  2. 克隆RoboCasa,以可编辑模式安装,并可选设置pre-commit格式化器。
  3. 下载资源 – 包含厨房场景和物体模型的大约10GB数据。
  4. 运行快速演示 – 仓库附带脚本,可用于:
    • 启动Gym环境并录制随机 rollout,
    • 回放示例演示,
    • 浏览厨房场景或物体库,
    • 通过键盘或SpaceMouse远程操作机器人。

所有这些都可以按照README中的说明,通过几条Python命令完成。


可以做什么

用例 RoboCasa提供的内容
策略研究 Gym兼容环境、预打包的任务定义,以及用于模仿学习或强化学习的大规模标注演示数据集。
分层学习 逐帧子任务标签(技能名称、阶段、自然语言指令)支持训练分层或基于技能的策略。
基准测试 标准化的评估划分(pretrain与target厨房)、公开排行榜,以及多种最先进算法的参考实现。
数据驱动的资源创建 访问精选和AI生成的物体(通过Objaverse),用于测试对新奇物品的泛化能力。
仿真研究 照片级逼真渲染(通过RoboSuite v1.5)和灵活的机器人配置,用于研究控制器设计。

谁可能觉得有用

  • 机器人研究人员:构建需要在多个任务和物体上泛化的操作策略。
  • 机器学习科学家:探索大规模模仿学习、扩散策略或分层强化学习。
  • 学生:希望使用现成的基准测试新算法,而无需从头构建仿真器。
  • 社区贡献者:可以将自己的模型提交到排行榜,并与已发布的基线进行比较。

局限性与注意事项

  • 仅仿真:框架在RoboSuite物理引擎中运行;将策略迁移到真实机器人需要额外的sim-to-real工作。
  • 资源大小:大多数任务需要下载完整数据集(约10GB),在网络带宽或存储有限时可能成为障碍。
  • 硬件:运行照片级渲染和大规模训练需要GPU和较好的CPU;纯CPU设置会较慢。
  • 范围:专注于厨房操作;其他领域(例如移动导航)默认不涵盖。

快速代码示例

import gymnasium as gym
import robocasa
from robocasa.utils.env_utils import run_random_rollouts

env = gym.make(
    "robocasa/PickPlaceCounterToCabinet",
    split="pretrain",
    seed=0,
)
run_random_rollouts(env, num_rollouts=2, num_steps=120, video_path="demo.mp4")

这会在一个随机选择的厨房场景中创建一个抓取放置任务,并录制随机动作的短视频。


了解更多


许可证与引用

  • 代码根据MIT许可证发布。
  • 资源和数据集根据CC-BY 4.0许可。
  • 使用框架或数据时,请引用相应的论文(RoboCasa365或原始RoboCasa)。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目