历时2年,华人团队力作,震撼开源生成式物理引擎Genesis,可模拟世界万物
科技
2024-12-19 13:05
四川
这是生成式大模型的时代 —— 它们能生成文本、图像、音频、视频、3D 对象…… 而如果将所有这些组合到一起,我们可能会得到一个世界!现在,不管是 LeCun 正在探索的世界模型,还是李飞飞想要攻克的空间智能,又或是其他研究团队提出的其它类似概念,我们都毫无疑问地在离这个世界越来越近。就在几个小时前,我们向着这个世界又跨出了一步:CMU 联合其他 20 多所研究实验室开源发布了一个生成式物理引擎:Genesis,意为「创世纪」。从名字也能看出,这或许真是一个新世界的起点。据项目贡献者 CMU 机器人研究所博士生 Zhou Xian 和领导者淦创教授在 X 上分享的内容看,该项目耗费了 2 年多时间,海内外近 20 家机构参与了内部测试。最终,这个联合团队得到的 Genesis 生成式物理引擎可以生成 4D 动态世界,而其基础是一个用于通用机器人和物理 AI 应用的物理模拟平台。- 开源地址:https://github.com/Genesis-Embodied-AI/Genesis
- 项目页面:https://genesis-embodied-ai.github.io/
- 文档地址:https://genesis-world.readthedocs.io/en/latest/
目前 Genesis 的技术论文还未发布,但据官方文档,Genesis 的主要特性包括:- 并行模拟的速度前所未有:Genesis 是世界上最快的物理引擎,模拟速度比现有的 GPU 加速的机器人模拟器(Isaac Gym/Sim/Lab、Mujoco MJX 等)快 10 到 80 倍(是的,这有点科幻),同时不会影响模拟准确性和保真度。
- 支持各种 SOTA 物理求解器的统一框架,可建模各种材料和物理现象。
- 可微分性:Genesis 在设计时就考虑了与可微分模拟完全兼容。目前,其 MPM 求解器和工具求解器(Tool Solver)都是可微分的,其他求解器的可微分性也将很快添加(会从刚体模拟开始)。
- 原生支持生成式模拟,允许通过语言提示生成各种模态的数据:交互式场景、任务提议、奖励、资产、角色动作、策略、轨迹、相机动作、(物理上准确的)视频等。
为了佐证 Genesis 的优越特性,Zhou Xian 在 X 上分享了一个例子:在单台 RTX4090 上,它的模拟速度比实时速度快大约 430,000 倍,仅需 26 秒就能训练完成一个可迁移到真实世界的机器人运动策略。Zhou Xian 表示:「我们的目标是构建一个通用数据引擎,其能利用上层的生成式框架自动创建物理世界,以及各种模式的数据,包括环境、相机运动、机器人任务提议、奖励函数、机器人策略、角色运动、完全交互式 3D 场景、开放世界铰接资产等,从而自动生成用于机器人、物理 AI 和其他应用的数据。」GitHub 项目 star 数也在短短几个小时内突破了 1.5k。
Genesis 是一个综合物理模拟平台,专为通用机器人、具身 AI 和物理 AI 应用而设计。它同时具有多种属性:- 一个从头开始重建的通用物理引擎,能够模拟广泛的材料和物理现象;
- 一个轻量级的、超快的、Python 化的、用户友好的机器人仿真平台;
- 生成式数据引擎,将用户提示的自然语言描述转换为各种数据形式。
Genesis 由重新设计和重新构建的通用物理引擎提供支持,并将各种物理求解器及其耦合集成到一个统一的框架中。此核心物理引擎通过在更高级别运行的生成式智能体架构上得到进一步增强,旨在为机器人技术及其他领域实现全自动数据生成。淦创教授介绍说:「我们的方法的核心是对人类心智模型进行逆向工程,并构建由生成式物理引擎驱动的机器人大脑!我意识到许多机器人专家对这种方法持怀疑态度,他们指出了设置模拟器和解决模拟-现实差距的困难。他们主张只专注于从现实世界的数据中学习。我理解这些担忧,但我坚信我们不能只是因为创建一个好模拟器很有挑战性就绕过它们!」目前,该研究正在开源底层物理引擎和模拟平台。在不久的将来,将逐步推出对生成框架的访问。作为一个高度优化的物理引擎,Genesis 可以借助 GPU 加速并行运算,在各种场景中提供了前所未有的模拟速度。在模拟操控(manipulation)场景时,Genesis 以 4300 万帧 / 秒的速度运行,比实时速度快 43 万倍。在大规模模拟中,Genesis 利用「auto-hibernation」来加速处于收敛和静态实体的模拟。不过这项功能正在测试中,将在 0.1.1 版本中发布。Genesis 与常用的基于 CPU 和 GPU 的机器人模拟器的速度比较。Zhou Xian 表示,Genesis 的 GPU 并行化 IK(Inverse kinematics)求解器可以在 2 毫秒内完成 1 万台 Franka 机器臂的 IK 求解。Genesis 的物理引擎由基于 VLM 的生成式智能体提供支持,该智能体使用模拟基础设施提供的 API 作为工具来创建 4D 动态世界,然后将其用作提取各种模式数据的基础数据源。结合生成相机和物体运动模块,Genesis 能够生成物理上精确且视图一致的视频和其他形式的数据。并且,Genesis 还支持模拟各种不同的材料,包括刚体、铰接体、布料、液体、烟雾、可变形体、薄壳材料、弹性 / 塑性体、机器人肌肉等。星球与太空船的质感也非常高,看起来就像是来自一部大制作的科幻电影。子弹击破水球的物理过程就好像真的是来自设备精良的高速摄影。对充气人偶的模拟也恰到好处,同样也非常幽默地模拟现实状况。有了如此高质量的物理引擎,对于游戏制作业来说也是好消息,许多复杂的动作和效果都可以通过提示词来快速生成了:提示:手持棍棒的迷你版悟空在桌面上飞奔 3 秒,然后跳到空中,落地时右臂向下摆动。镜头从他的脸部特写开始,然后稳定地跟随角色,同时逐渐缩小。当悟空跳到空中时,在跳跃的最高点,动作暂停几秒钟。镜头围绕角色 360 度旋转,然后缓慢上升,然后继续动作。Genesis 可以利用生成式机器人智能体和物理引擎自动生成不同场景下各种技能的机器人策略和演示数据。这意味着研究人员可以在仿真环境中快速获得符合物理规律的机器人动作方案,并将其可靠地迁移到实体机器人上。下面展示了一些不同形态的机器人执行不同任务的示例。提示:一个移动的 Franka 机械臂使用碗和微波炉做爆米花提示:宇树 Go2 四足机器人在雨中奔跑 (Sim)比如,从提示词到在仿真环境中的动作策略,再迁移到实体机器人上,可以如此丝滑:提示:宇树 H1-2 人形机器人向前行走 (Sim2Real)做倒立需要精确平衡控制和全身协调,这么高难度的动作,现在也可以通过 Genesis 来实现 Sim2Real:提示:四足机器人用前两条腿做倒立 (Sim2Real)倒立不够,在 Genesis 的助力下,机器狗还能更快地学会「体操技巧」,稳稳地做两个直体后空翻:像拉椅子这样要和真实世界里的物体交互的动作,也没问题:Genesis 的生成框架支持生成 3D 和完全交互的场景,这些场景可用于训练机器人技能。家庭室内场景,有客厅(包括用餐区)、卫生间、书房和卧室。Genesis 也能生成具有铰接结构的物体及其交互过程,例如汽车开关门、打开合上笔记本电脑、折叠金属刀片。Genesis 还是首个为软肌肉和软机器人及其与刚性机器人的交互提供全面支持的平台。Genesis 还附带类似 URDF 的软机器人配置系统。官方还提供了一个相关教程:https://genesis-world.readthedocs.io/en/latest/user_guide/getting_started/soft_robots.htmlGenesis 也能模拟带有软皮肤和刚性骨骼的混合机器人。音频以及面部表情也是 Genesis 想要整合的模态,下面展示了两个示例:最后,Zhou Xian 展示了一个用 Genesis 打造的俄罗斯方块游戏,其中的方块是果冻材质的,并且能以符合现实的物理规律运动。我们以前可能也刷到过类似的视频,但那些是视频特效师们精心制作的结果,而现在 Genesis 已经可以一键导出,并进一步转化为真实可实现的技术突破。淦创教授在 X 上分享了自己参与这个项目的经历:「自 2018 年以来,我决定将自己的研究重点从视觉转向具身 AI,因为我着迷于创建能够与物理世界和其他具有类似人类灵活性的智能存在交互的通用智能体——我们将这个领域称为具身 AGI(embodied AGI)。」他还写到:「说实话,有时候我觉得这个模拟器可能太先进了,不能发布,但我们相信让它完全开源并围绕我们的使命建立一个强大的社区是至关重要的!请加入 Genesis 社区!我们希望让机器人学研究社区相信『Generative Physics Simulator is all You Need!』」」不得不说,还真是让人非常期待 Genesis 的实际应用呢!投稿或寻求报道:liyazhou@jiqizhixin.com