开源生成式物理引擎Genesis,可模拟世界万物

news2025/1/10 13:23:47

这是生成大模型时代 —— 它们能生成文本、图像、音频、视频、3D 对象…… 而如果将所有这些组合到一起,我们可能会得到一个世界!

现在,不管是 LeCun 正在探索的世界模型,还是李飞飞想要攻克的空间智能,又或是其他研究团队提出的其它类似概念,我们都毫无疑问地在离这个世界越来越近。

2024年12月24日,Genesis横空出世。

据项目贡献者 CMU 机器人研究所博士生 Zhou Xian 和领导者 Chuang Gan 教授在 X 上分享的内容看,该项目耗费了 2 年多时间,海内外近 20 家机构参与了内部测试,最终这个联合团队得到的 Genesis 生成式物理引擎可以生成 4D 动态世界,而其基础是一个用于通用机器人和物理 AI 应用的物理模拟平台。

Genesis,意为「创世纪」,从名字也能看出,这或许真是一个新世界的起点。

Genesis是什么?

Genesis是卡内基梅隆大学、马里兰大学、斯坦福大学、麻省理工学院等研究机构联合推出的开源生成式物理引擎,能模拟世界万物。

Genesis能用简单的语言描述,快速生成精确的物理模拟,包括物体运动、人物动作和机器人策略等。引擎的特点在于高度的物理准确性、快速的模拟速度(比现实世界快约43万倍),及用户友好的Python化设计。

Genesis能模拟各种材料和物理现象,提供一个轻量级、超快速的机器人仿真平台,及一个强大而快速的照片级写实渲染系统。

Genesis能将用户的自然语言描述转换为数据模式,用在生成式数据引擎。

Genesis为通用机器人、具身AI和物理AI应用而设计,预示着物理模拟和机器人技术领域的重大进步。

Genesis主要功能

  • 物理模拟:模拟各种材料和物理现象,包括物体的运动、碰撞、流体动力学等。
  • 机器人仿真:提供轻量级、超快速的机器人仿真平台,支持多种机器人类型,如机械臂、腿式机器人、无人机、软体机器人等。
  • 照片级渲染:拥有强大而快速的照片级写实渲染系统,能生成高质量的视觉输出。
  • 生成式数据引擎:将用户的自然语言描述转换为数据模式,用在生成模拟场景。
  • 交互式3D场景:支持完全交互式的3D场景生成,包括家居室内场景、游戏环境等。
  • 开放世界物体生成:能生成开放世界中的铰接式物体,提供高质量的mesh资产软体。
  • 机器人模拟:针对软性机器人实现逼真的模拟,如虫、柔软的抓手等。
  • 面部动画和语音同步:生成面部动作和表情,与语音同步,实现逼真的面部动画。

Genesis的技术原理

  • 通用物理引擎:从头开始构建,集成各种物理求解器,如刚体、MPM(物质点方法)、SPH(光滑粒子流体动力学)、FEM(有限元方法)、PBD(位置基动力学)等,实现精确的物理拟。
  • 生成Agent框架:在核心物理引擎之上运行,用在自动化数据生成,包括视频、摄像机运动、角色动作、机器人策略等。
  • 可微分仿真:支持可微分仿真,让仿真过程与机器学习算法结合,用在训练和优化。
  • 多模态集成:将物理模拟与视觉渲染、动作捕捉、语音合成等多模态技术集成,实现全面的模拟体验。
  • 跨平台兼容性:设计为可在不同操作系统和计算后端(如CPU、Nvidia GPU、AMD GPU、Apple Metal)上运行。

Genesis应用场景

  • 机器人仿真训练:模拟复杂环境,训练机器人在现实世界中执行任务。
  • 游戏物理引擎:在游戏开发中,创建逼真的物理效果和角色动作。
  • 电影特效制作:模拟逼真的物理破坏和动态效果,用在电影后期制作。
  • 科学研究模拟:在物理学和工程学研究中,模拟实验和测试理论。
  • 虚拟教学平台:在教育领域,创建虚拟实验室,辅助物理和科学教学。

当然,也能用于生成训练用的自动驾驶场景数据。

接下来,我们看看具体的示例展示。

生成4D动态物理世界

Genesis 物理引擎由基于 VLM 的生成式智能体提供支持,该智能体使用模拟基础设施提供的 API 作为工具来创建 4D 动态世界,然后将其用作提取各种模式数据的基础数据源。

结合生成相机和物体运动模块,Genesis 能够生成物理上精确且视图一致的视频和其他形式的数据。并且,Genesis 还支持模拟各种不同的材料,包括刚体、铰接体、布料、液体、烟雾、可变形体、薄壳材料、弹性 / 塑性体、机器人肌肉等。

模拟一层巧克力酱,自然不在话下。

图片

绞碎泡沫的质感看起来也非常真实。

图片

星球与太空船的质感也非常高,看起来就像是来自一部大制作的科幻电影。

图片

子弹击破水球的物理过程就好像真的是来自设备精良的高速摄影。

图片

一壶字母糖,看起来很 Q 弹。

图片

对充气人偶的模拟也恰到好处,同样也非常幽默地模拟现实状况。

图片

角色动作生成

有了如此高质量的物理引擎,对于游戏制作业来说也是好消息,许多复杂的动作和效果都可以通过提示词来快速生成了:

图片

提示:手持棍棒的迷你版悟空在桌面上飞奔 3 秒,然后跳到空中,落地时右臂向下摆动。镜头从他的脸部特写开始,然后稳定地跟随角色,同时逐渐缩小。当悟空跳到空中时,在跳跃的最高点,动作暂停几秒钟。镜头围绕角色 360 度旋转,然后缓慢上升,然后继续动作。

设计动作的时间成本一下子就被打下来了。

图片

机器人策略生成

Genesis 可以利用生成式机器人智能体和物理引擎自动生成不同场景下各种技能的机器人策略和演示数据。这意味着研究人员可以在仿真环境中快速获得符合物理规律的机器人动作方案,并将其可靠地迁移到实体机器人上。

下面展示了一些不同形态的机器人执行不同任务的示例。

图片

提示:一个移动的 Franka 机械臂使用碗和微波炉做爆米花

图片

提示:宇树 Go2 四足机器人在雨中奔跑 (Sim)

比如,从提示词到在仿真环境中的动作策略,再迁移到实体机器人上,可以如此丝滑:

图片

提示:宇树 H1-2 人形机器人向前行走 (Sim2Real)

做倒立需要精确平衡控制和全身协调,这么高难度的动作,现在也可以通过 Genesis 来实现 Sim2Real:

图片

提示:四足机器人用前两条腿做倒立 (Sim2Real)

倒立不够,在 Genesis 的助力下,机器狗还能更快地学会「体操技巧」,稳稳地做两个直体后空翻:

图片

四足机器人连着后空翻两次 (Sim2Real)

像拉椅子这样要和真实世界里的物体交互的动作,也没问题:

图片

大型欠驱动机器人的运动操作 (Sim2Real)

3D完全交互式场景生成

Genesis 的生成框架支持生成 3D 和完全交互的场景,这些场景可用于训练机器人技能。

图片

     家庭室内场景,有客厅(包括用餐区)、卫生间、书房和卧室。

图片

餐厅内部

开放世界铰接物体生成

Genesis 也能生成具有铰接结构的物体及其交互过程,例如汽车开关门、打开合上笔记本电脑、折叠金属刀片。

图片

软体机器人

Genesis 还是首个为软肌肉和软机器人及其与刚性机器人的交互提供全面支持的平台。Genesis 还附带类似 URDF 的软机器人配置系统。官方还提供了一个相关教程:https://genesis-world.readthedocs.io/en/latest/user_guide/getting_started/soft_robots.html

图片

Genesis 也能模拟带有软皮肤和刚性骨骼的混合机器人。

图片

语音音频,面部表情和情绪生成

音频以及面部表情也是 Genesis 想要整合的模态,下面展示了两个示例:

人物情绪从中性转变为愤怒,然后再转变为快乐。 

 Genesis 将情绪的转变泛化到不同的面部

结语

最后,Zhou Xian 展示了一个用 Genesis 打造的俄罗斯方块游戏,其中的方块是果冻材质的,并且能以符合现实的物理规律运动。

图片

我们以前可能也刷到过类似的视频,但那些是视频特效师们精心制作的结果,而现在 Genesis 已经可以一键导出,并进一步转化为真实可实现的技术突破。

淦创教授在 X 上分享了自己参与这个项目的经历:自 2018 年以来,我决定将自己的研究重点从视觉转向具身 AI,因为我着迷于创建能够与物理世界和其他具有类似人类灵活性的智能存在交互的通用智能体——我们将这个领域称为具身 AGI(embodied AGI)。

他还写到:「说实话,有时候我觉得这个模拟器可能太先进了,不能发布,但我们相信让它完全开源并围绕我们的使命建立一个强大的社区是至关重要的!请加入 Genesis 社区!我们希望让机器人学研究社区相信『Generative Physics Simulator is all You Need

 

Genesis项目地址

项目官网:Genesisicon-default.png?t=O83Ahttps://genesis-embodied-ai.github.io/?utm_source=ai-bot.cn
GitHub仓库:GitHub - Genesis-Embodied-AI/Genesis: A generative world for general-purpose robotics & embodied AI learning.A generative world for general-purpose robotics & embodied AI learning. - Genesis-Embodied-AI/Genesisicon-default.png?t=O83Ahttps://github.com/Genesis-Embodied-AI/Genesis

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2274354.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【PPTist】批注、选择窗格

前言:本篇文章研究批注和选择窗格两个小功能 一、批注 批注功能就是介个小图标 点击可以为当前页的幻灯片添加批注,还能删除之前的批注 如果我们增加了登录功能,还可以在批注上显示当前的用户名和头像,不过现在是写死的。 左侧…

Vue进阶(贰幺贰)npm run build多环境编译

文章目录 一、前言二、实施三、总结:需要打包区分不同环境四、拓展阅读 一、前言 项目开发阶段,会涉及打包部署到多个环境应用场景,在不同环境中,需要进行项目层面的区分,做不同的操作,可以利用打包的--mo…

Elasticsearch—索引库操作(增删查改)

Elasticsearch中Index就相当于MySQL中的数据库表 Mapping映射就类似表的结构。 因此我们想要向Elasticsearch中存储数据,必须先创建Index和Mapping 1. Mapping映射属性 Mapping是对索引库中文档的约束,常见的Mapping属性包括: type:字段数据类…

“AI智慧组卷系统:让考试变得更简单、更公平!

大家好,我是一名资深的产品经理,今天咱们就来聊聊教育领域的一款黑科技产品——AI智慧组卷系统。在这个信息技术飞速发展的时代,AI技术已经渗透到了我们生活的方方面面,教育行业也不例外。下面我就用大白话给大家介绍一下这个AI智…

单元测试概述入门

引入 什么是测试?测试的阶段划分? 测试方法有哪些? 1.什么是单元测试? 单元测试:就是针对最小的功能单元(方法),编写测试代码对其正确性进行测试。 2.为什么要引入单元测试&#x…

三、Angular 路由

一、简介 Angular 的路由服务是一个可选的服务,它用来呈现指定的 URL 所对应的视图。它并不是Angular 核心库的一部分,而是位于 angular/router 包中。像其他 Angular 包一样,路由服务在用户需要时才从此包中导入。 [1]. 创建路由模块 默认…

【MATLAB】绘制投资组合的有效前沿

文章目录 一、数据准备二、有效前沿三、代码3.1 数据批量读取、预处理3.2 绘制可行集3.3 绘制有效前沿3.4 其它-最大夏普率 一、数据准备 准备多个股票的的历史数据,目的就是找到最优的投资组合。 下载几个标普500里面的公式的股票数据吧,下载方法也可…

JuiceFS 2024:开源与商业并进,迈向 AI 原生时代

即将过去的 2024 年,是 JuiceFS 开源版本推出的第 4 年,企业版的第 8 个年头。回顾过去这一年,JuiceFS 社区版依旧保持着快速成长的势头,GitHub 星标突破 11.1K,各项使用指标增长均超过 100%,其中文件系统总…

重生之我在异世界学编程之C语言:枚举联合篇

大家好,这里是小编的博客频道 小编的博客:就爱学编程 很高兴在CSDN这个大家庭与大家相识,希望能在这里与大家共同进步,共同收获更好的自己!!! 本文目录 引言正文枚举(Enum&#xff0…

6 分布式限流框架

限流的作用 在API对外互联网开放的情况下,是无法控制调用方的行为的。当遇到请求激增或者黑客攻击的情况下,会导致接口占用大量的服务器资源,使得接口响应效率的降低或者超时,更或者导致服务器宕机。 限流是指对应用服务进行限制…

【Linux系列】如何使用 nohup 命令在后台运行脚本

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

门禁系统与消防报警的几种联动方式

1、规范中要求的出入口系统与消防联动 1.1《建筑设计防火规范》GB 50016-2018 1.2《民用建筑电气设计规范》JGJ 16-2008  14.4出入口控制系统 3 设置在平安疏散口的出入口限制装置,应与火灾自动报警系统联动;在紧急状况下应自动释放出入口限制系统&…

Express 加 sqlite3 写一个简单博客

例图: 搭建 命令: 前提已装好node.js 开始创建项目结构 npm init -y package.json:{"name": "ex01","version": "1.0.0","main": "index.js","scripts": {"test": &q…

GetMaterialApp组件的功能与用法

文章目录 1. 知识回顾2. 使用方法2.1 源码分析2.2 常用属性3. 示例代码4. 内容总结我们在上一章回中介绍了"Get包简介"相关的内容,本章回中将介绍GetMaterialApp组件.闲话休提,让我们一起Talk Flutter吧。 1. 知识回顾 我们在上一章回中已经介绍过GetMaterialApp组…

LabVIEW之树形控件

一、树形控件基本构成 树形控件这个名称非常形象,其如同树一样,是典型的分层结构。树形控件的属性和方法使用非常灵活,树形控件的内容既可以静态编辑,也可以通过编程来动态填充。静态编辑树形控件适用于内容不变的应用场景&#…

Inno Setup制作安装包,安装给win加环境变量

加 ; 加环境变量,开启,下面一行 ChangesEnvironmentyes 和 ; 加环境变量wbrj变量名,{app}\project\bin变量值,{app}\后接文件名,{app}表示安装路径。下面一行,{olddata};原来的值上拼接 Root: HKLM; Subkey: “SYSTEM\…

张朝阳惊现CES展,为中国品牌 “代言”的同时,或将布局搜狐新战略!

每年年初,科技圈的目光都会聚焦在美国拉斯维加斯,因为这里将上演一场被誉为 “科技春晚” 的年度大戏 ——CES 国际消费电子展。作为全球规模最大、最具影响力的科技展会之一,CES 吸引了来自 160 多个国家的创新者和行业领导者,是…

UDS诊断之0x27服务—结合实例讲解

前言: 本文讲解的是比较深入一点知识,对于一些刚入门的同学,建议直接先看一遍14229规范,然后找一个实际项目练练手!然后再来看本文,相信你会对0x27服务有更深的认知!!! …

React Router 向路由组件传state参数浏览器回退历史页面显示效果问题

昨天在看尚硅谷张天禹老师讲的 React教程p90,老师讲到 React路由的 replace模式和push模式,老师的演示效果与自己本地操作不太一样。 老师的效果:点击查看消息1,消息2,消息3 再点回退,可以依次查看到 消息…

静态路由配置与调试——计算机网络实训day1

文章目录 操作前准备一、实验目的二、实验要求三、实验过程1、在R1和R2上配置设备名称。基本配置设备命名 2、在R1和R2上配置接口IP地址,并查看IP地址的配置情况。3、在R1和R2上配置静态路由,并查看路由表。静态路由缺省路由(默认路由&#x…