文章概括

引用:

@article{jiang2025gsworld,
  title={Gsworld: Closed-loop photo-realistic simulation suite for robotic manipulation},
  author={Jiang, Guangqi and Chang, Haoran and Qiu, Ri-Zhao and Liang, Yutong and Ji, Mazeyu and Zhu, Jiyue and Dong, Zhao and Zou, Xueyan and Wang, Xiaolong},
  journal={arXiv preprint arXiv:2510.20813},
  year={2025}
}
Jiang, G., Chang, H., Qiu, R.Z., Liang, Y., Ji, M., Zhu, J., Dong, Z., Zou, X. and Wang, X., 2025. Gsworld: Closed-loop photo-realistic simulation suite for robotic manipulation. arXiv preprint arXiv:2510.20813.

主页: https://3dgsworld.github.io/
原文: https://arxiv.org/pdf/2510.20813
代码、数据和视频: https://github.com/luccachiang/GSWorld

系列文章:
请在 《 《 文章 》 》 专栏中查找



宇宙声明!


引用解析部分属于自我理解补充,如有错误可以评论讨论然后改正!



ABSTRACT

本文提出了 GSWorld,这是一个用于机器人操作任务的鲁棒、照片级真实感仿真器,它将 3D Gaussian Splatting,3D 高斯泼溅 与物理引擎结合起来。 我们的框架主张在操作策略开发中“闭环”,也就是说:一方面能够对从真实机器人数据中学习到的策略进行可复现评估,另一方面也能够在不使用真实机器人的情况下进行 sim2real 策略训练。 为了实现多样化场景的照片级真实感渲染,我们提出了一种新的资产格式,称为 GSDF,Gaussian Scene Description File,高斯场景描述文件。这种格式将 Gaussian-on-Mesh,高斯附着在网格上的表示方式 与机器人 URDF 以及其他物体结合起来。 通过一个简化、高效的重建流程,我们构建了一个 GSDF 数据库,其中包含用于单臂操作和双臂操作的 3 种机器人本体,以及 40 多个物体。 通过将 GSDF 与物理引擎结合,我们展示了几个直接而有趣的应用:
(1) 借助照片级真实感渲染,学习 零样本 sim2real 的像素到动作机器人操作策略;
(2) 自动化地收集高质量 DAgger 数据,用于使策略适应部署环境;
(3) 在仿真中对真实机器人操作策略进行可复现的基准测试;
(4) 通过虚拟遥操作收集仿真数据;
(5) 实现 零样本 sim2real 视觉强化学习。


I. 引言

训练机器人操作策略通常依赖三类数据来源——仿真、人类视频和真实遥操作——而每一种数据来源都有各自不同的取舍。 虽然仿真可以为机器人提供完全对齐的动作空间,但它通常会受到许多 sim-to-real 差距的影响。 人类视频的优势在于它们具有照片级真实感的场景和真实的物理过程,但它们缺少与时间对齐的机器人动作,并且其动作空间与机器人并不匹配。 遥操作能够成功地对齐感知和动作,但其高成本以及难以大规模扩展的问题是明显的限制。

为了解决这些取舍问题,我们提出了 GSWorld,这是一个闭环的、照片级真实感的仿真套件,它将 3D Gaussian Splatting,3DGS 与物理仿真结合起来,从而缩小机器人操作任务中的视觉差距和动作空间差距。 这里的“闭环”指的是,同一个环境可以用于训练、评估、诊断失败以及重新标注,从而实现快速迭代:策略能够感知照片级真实感的渲染图像,同时在机器人的原生动作空间中发出控制指令,而这一切都发生在一个能够足够接近真实场景的仿真器中,因此可以支持零样本迁移和高效适应。 我们证明,GSWorld 能够支持一系列下游应用,尤其能够为模仿学习、强化学习以及 DAgger 风格的数据收集实现有效的 sim-to-real 迁移。

这种闭环能力由一个双向流程驱动,该流程确保物理世界与其数字孪生体之间实现紧密对齐。 在 real-to-sim,真实到仿真 的方向上,我们的流程从短时间的多视角采集中重建一个具有度量精度的数字孪生体,使用 ArUco markers,ArUco 标记 设定绝对尺度,并通过表面拟合方法,例如 ICP,将机器人 URDF 与场景进行对齐。 随后,我们附加碰撞网格和材料属性,从而生成一个通用的 GSDF 资产。 而 sim-to-real,仿真到真实 的方向则是相反的过程:在 GSWorld 中训练的策略可以直接部署到真实硬件上,而不需要进行接口转换,因为它们的控制空间和观测空间与机器人的原生 API 相匹配。 使用仿真数据和真实数据共同训练得到的策略,也可以被部署回仿真中,用于评估、检测失败并收集 DAgger 修正数据,从而闭合整个迭代循环。 要实现这种 sim-to-real 对齐,就要求场景几何、相机属性和动作语义在真实与仿真之间保持一致。 我们通过一组指标来衡量这种对应关系的程度,这些指标评估真实世界和仿真世界之间的视觉相似性、几何相似性和功能相似性。

通过在同一个循环中结合照片级真实感感知和原生动作空间控制,GSWorld 支持视觉模仿学习和视觉强化学习中的零样本 sim-to-real,同时利用可扩展的并行性来加速数据生成和训练。 它的闭环 DAgger 工作流程使研究人员能够在数字孪生体中复现真实机器人上的失败案例,逐帧检查这些失败过程,并以更低的遥操作成本收集有针对性的修正标签。 最后,GSWorld 提供了可复现的视觉基准测试:共享的 GSDF 资产、固定的相机内参和外参、一致的光照与材料,以及标准化的动作语义,使得不同机器人、场景和任务之间可以进行公平一致的比较——因此,性能提升能够反映算法本身的进步,而不是环境差异带来的影响。

现有的基于 GS 的仿真器,要么主要面向单一设置下的照片级真实感渲染,要么提供与特定引擎绑定的流程而缺少可移植的资产标准,要么限制了可复现的跨机器人本体基准测试以及面向部署的在线策略数据收集 [5, 27, 38, 45]。 相比之下,GSWorld 提供了一种有效的 real-to-sim-to-real,真实到仿真再到真实 工作流程,它将照片级真实感的 3DGS 与接触精确的物理仿真统一起来,从而支持可扩展的跨机器人本体基准测试、零样本模仿学习和强化学习,以及自动化的高质量 DAgger 数据收集,用于在部署过程中持续改进策略。

总而言之,我们的贡献如下:

一个稳健的 real-to-sim-to-real 流程。 我们稳健的 real-to-sim-to-real 流程能够准确地将仿真与真实环境对齐,从而支持一系列后续应用。

仿真数据收集与视觉模仿学习,Visual Imitation Learning,IL。 GSWorld 支持多种仿真数据收集方法,例如运动规划和遥操作。 使用 GSWorld 数据训练得到的模仿学习策略,可以直接部署到重建得到的真实世界场景中。

视觉强化学习,Visual RL。 GSWorld 被设计为能够利用仿真中的并行环境来训练强化学习策略。 我们提供了分析,表明 GSWorld 能够减少强化学习中的 sim2real 视觉差距。

结合视觉基准测试的闭环 DAgger 学习。 GSWorld 展现出与真实世界部署结果相关的可靠策略评估结果,从而有助于使用 DAgger 迭代式地改进真实世界策略。


II. 相关工作

A. 机器人仿真

随着计算机图形学渲染技术的发展 [54] 以及物体材料仿真技术的发展 [50],机器人研究社区设计了多种物理引擎 [10,13] 和仿真器 [47,56,60],以支持各种机器人任务。 近年来,越来越多的仿真器开始提升仿真的效率和真实度。 例如,Mujoco-Jax [60] 利用即时编译器,just-in-time compilers [18],在 Python 中实现了令人印象深刻的仿真效率。 为了提高渲染真实度并减少 sim2real 中的视觉差距,近期研究开始转向复杂的光线追踪技术 [54] 和生成式 AI 工具 [39],以缩小仿真渲染图像与真实世界之间的视觉观测差距。 近期的一个“元仿真器”,Roboverse [15],尝试提供一个统一的仿真接口,以利用各个独立仿真器的优势。 本文重点关注如何结合 3D Gaussian Splatting,3D 高斯泼溅和仿真器方面的最新进展,来提高仿真渲染的真实度。

B. Real2Sim,真实到仿真

作为一种不同于在仿真中自底向上建模基础物理和基本元素的方法,real2sim 方法采取了另一种思路:通过将真实世界中的资产虚拟化,来构建仿真资产。 近期的 real2sim 方法大致可以分为两类:照片级真实感的三维重建 [1,6,17,27,34,35,44,45,53],以及部件级,也就是关节式物体理解 [7,11,36,52]。

C. Real2Sim,真实到仿真——照片级真实感渲染

早期的 Real2Sim 重建方法 [44] 使用 NeRFs [37]、Diffusion,扩散模型 [28] 或 Mesh,网格模型 [52] 来进行照片级真实感建模。 由于 NeRFs 本身属于隐式表示,它们通常需要依赖一些替代性方法,例如 deformation fields,形变场 [21],来对视觉渲染结果进行形变,以适应物体运动;但这种方式并不自然,而且效率较低。 另一方面,基于 mesh,网格的表示方法会包含许多伪影 [52],这些伪影会导致视觉差距。 Simpler [28] 提出使用生成式建模来支持照片级真实感渲染,从而推动可复现基准测试的发展 [22,24]。 然而,Simpler 需要昂贵的人工劳动来匹配绿幕和纹理,这限制了它的可扩展性。 随着基于光栅化方法的 3DGS [26] 的发展,SplatSim [45] 成功地将 3DGS 与 PyBullet [10] 结合起来,构建了一个照片级真实感仿真器,并展示了零样本 sim2real 策略部署。 由于 3DGS 可以被显式地表示为一个个“Gaussian Blobs,高斯团/高斯斑点”,因此其照片级真实感外观可以随着物体物理运动保持一致地发生位移。 然而,SplatSim 依赖于对机械臂和物体进行手动三维分割,这使得它过度适配于单一场景。 在 SplatSim 发展的同时,Embodied-GS [1] 在单一场景中学习机械臂与物体的交互,但不使用物理引擎;Robo-GS [34] 关注如何从渲染结果中识别单个物体的物理参数;而 ManiGaussian [35] 则研究如何利用理想同步的多视角信息,从仿真器中优化高斯表示。 最近,Re3Sim [17] 扩展了 SplatSim [45],并发现具备照片级真实感仿真的能力,可以在结合域随机化和混合仿真时产生更加鲁棒的机器人操作策略,例如将非照片级真实感的仿真资产与照片级真实感场景结合使用。 我们通过结合 3DGS 的最新进展,并以统一的资产格式引入更多 3DGS 资产,继续推动照片级真实感仿真的发展。

Real2Sim,真实到仿真——其他方向

在这里,我们简要回顾一些与我们方法相互独立、但同样属于 real2sim 领域的其他进展。

这里的 orthogonal to our method 不是“完全无关”,而是指这些工作和本文方法关注点不同,可以看作是互补方向。

部件级,也就是关节式物体理解方法 [7,11,36,52],会应用互联网规模预训练的视觉模型和语言模型 [32,46],从真实世界观测中创建仿真资产的物理属性和关节结构。 虽然这些方法主要关注理解物体的关节结构,但近期方法也开始研究更具挑战性的任务,例如估计可变形物体的物理属性 [25],以及刚性接触/刚体相关物理属性 [42]。

原文写的是 rigid contracts [42],这里很可能是作者笔误,结合后文 “mass, center of mass, and inertia tensor” 来看,主要是在说刚体物理参数估计。为了不偏离原意,我这里译为“刚性接触/刚体相关物理属性”。

PhysTwin [25] 通过假设一个 Spring-Mass model,弹簧-质量模型,并从视频观测中估计物理参数,来优化弹性物体的物理模型。 Scalable Real2Sim [42] 是在先前物理参数估计方法 [34] 基础上的进一步发展。在该工作中,作者构建了一个流程,利用机械臂和相机装置来自动估计刚体物理参数,包括质量、质心和惯性张量 [42]。 Liu 等人 [30] 提出通过可微渲染来优化机器人运动学。


在这里插入图片描述图 2:GSWorld 在现有仿真器之上提供了一个接口,用于渲染照片级真实感资产。 我们的 GSDF 资产与现有仿真器兼容,可以使用标准格式来渲染视觉信息,例如深度图、分割图,并计算物理碰撞。 GSWorld 在仿真器之上提供了一个渲染包装器,使 RGB 渲染具有照片级真实感,从而支持多种域随机化方法和应用。



III. 方法

A. 问题定义

机器人策略不是直接在普通仿真图像上训练,而是在 3DGS 重建出来的照片级真实感图像上训练。训练时机器人看到的是 I gs I^\text{gs} Igs,也就是 3DGS 渲染图;部署时机器人看到真实相机图像 I real I^\text{real} Ireal。如果 I gs I^\text{gs} Igs 足够像 I real I^\text{real} Ireal,策略就更容易从仿真迁移到真实世界。

我们考虑的是从视觉观测中学习机器人策略的问题。 令 S sim \mathcal{S}_\text{sim} Ssim 表示仿真场景,令 G real \mathcal{G}_\text{real} Greal 表示由 3DGS 从多个 RGB 视角 V = Σ v i \mathcal{V}=\Sigma v_i V=Σvi 重建得到的真实场景 S real \mathcal{S}_\text{real} Sreal

这里原文写作 V = Σ v i \mathcal{V}=\Sigma v_i V=Σvi,从语义上看,它想表达的是多个 RGB 视角的集合或组合。

G r e a l \mathcal{G}_{real} Greal 可以用来渲染新视角 RGB 图像 I gs = G r e a l ( p , s ) I^\text{gs}=\mathcal{G}_{real}(p,s) Igs=Greal(p,s),这使得系统能够在任意相机位姿 p p p 和环境状态 s s s 下,对场景进行照片级真实感渲染。

我们的目标是在下游机器人学习任务中,用 3DGS 渲染得到的图像 I gs I^\text{gs} Igs 替代原始真实世界 RGB 观测 I real I^\text{real} Ireal,这些任务包括模仿学习,IL,强化学习,RL,以及 DAgger。 形式化地说,在每一个时间步 t t t,系统的底层状态表示为:

s t = ( q t , x t 1 , … , x t n ) , (1) s_t=(q_t,x_t^1,\ldots,x_t^n),\tag{1} st=(qt,xt1,,xtn),(1)

s t s_t st 是系统在时间步 t t t 的底层状态,论文把它定义为机器人关节位置 q t q_t qt 和真实场景 S real \mathcal{S}_\text{real} Sreal 中各个物体的 6D 位姿 x t k x_t^k xtk 的组合。

其中, q t ∈ R m q_t\in\mathbb{R}^m qtRm 表示机器人的关节位置, x t k x_t^k xtk 表示 S real \mathcal{S}_\text{real} Sreal 中第 k k k 个物体的 6D 位姿。 我们主要对机器人使用关节位置控制。 机器人接收到的观测为:

o t = I t gs = G r e a l ( p t , s t ) , (2) o_t=I_t^\text{gs}=\mathcal{G}_{real}(p_t,s_t),\tag{2} ot=Itgs=Greal(pt,st),(2)

该观测是在给定当前相机位姿 p t p_t pt 和环境状态 s t s_t st 的情况下,由 G real \mathcal{G}_\text{real} Greal 渲染得到的。

在强化学习,RL,中,策略 π θ \pi_\theta πθ 通过与环境交互并接收奖励来进行训练。 在模仿学习,IL,中,专家 E \mathcal{E} E 提供示范数据 τ E = { ( q 1 , o 1 , a 1 ) , … , ( q T , o T , a T ) } \tau_\mathcal{E}=\{(q_1,o_1,a_1),\ldots,(q_T,o_T,a_T)\} τE={(q1,o1,a1),,(qT,oT,aT)},这些示范数据用于监督训练策略 π θ \pi_\theta πθ。 在 DAgger 中,策略 π θ \pi_\theta πθ 会通过从先前失败案例中收集专家轨迹来进行迭代式改进,从而得到 τ D \tau_\mathcal{D} τD。 在所有这些情况下,策略都以 I t gs I_t^\text{gs} Itgs 而不是真实图像 I t real I_t^\text{real} Itreal 作为输入,同时还输入机器人的本体感知信息 q t q_t qt,即:

a t ∼ π θ ( I t gs , q t ) . (3) a_t\sim\pi_\theta(I_t^\text{gs},q_t).\tag{3} atπθ(Itgs,qt).(3)

在测试阶段,训练好的策略 π θ \pi_\theta πθ 必须能够泛化到真实世界观测 I real I^\text{real} Ireal 上,从而确保 GSWorld 能够弥合 sim2real 中的视觉差距。

先用真实多视角图像重建真实场景的 3DGS 表示 G real \mathcal{G}\text{real} Greal;然后在每个时间步,根据当前相机位姿 p t p_t pt 和场景底层状态 s t = ( q t , x t 1 , … , x t n ) s_t=(q_t,x_t^1,\ldots,x_t^n) st=(qt,xt1,,xtn),由 G real \mathcal{G}\text{real} Greal 渲染出照片级真实感图像 I t gs I_t^\text{gs} Itgs;机器人策略 π θ \pi_\theta πθ 输入这张 3DGS 渲染图像 I t gs I_t^\text{gs} Itgs 和自身关节状态 q t q_t qt,输出动作 a t a_t at;训练方式可以是 IL、RL 或 DAgger;最终目标是让在 I t gs I_t^\text{gs} Itgs 上训练的策略能够泛化到真实相机图像 I real I^\text{real} Ireal

B. Real2Sim 重建流程

真实世界里有一个机器人操作场景。 作者用相机拍它、记录机器人关节状态、做 3DGS 重建、做坐标对齐。 最后生成一个 GSDF 资产。 这个 GSDF 资产就可以被 GSWorld 用来仿真、渲染、训练策略。

本节描述 GSWorld 如何创建 GSDF 资产,以构建照片级真实感场景。 与已有工作 [17,27,34,45,59] 主要关注在单一场景中构建机器人不同,GSWorld 的设计目标包括两点:(1) 提供一个易于使用的、流程化的重建步骤,以减少人工对齐工作;(2) 融合 3DGS 的最新进展,例如几何精度方面的改进 [19]

a) 采集训练视角

为了构建包含机器人的场景,我们同时使用机器人传感器,也就是腕部相机和第三视角相机,以及手机相机进行采集;同时,在场景采集过程中保存机器人当前的关节位姿。

b) 对齐尺度以获得度量表示

让 3DGS 重建出来的场景具有真实世界的尺寸单位。

现有的 real2sim2real 方法 [43,45] 依赖 COLMAP [49],而这会引入尺度不确定性。 虽然这种尺度不确定性可以在单一场景中通过人工方式处理,但当涉及多个机器人本体和多个场景时,它会影响方法的可扩展性。 为了避免人工尺度对齐,我们采用了一个简单的解决方案:在数据采集过程中,在桌面上放置一个打印的 ArUco marker,ArUco 标记 [14,23],定性示例如图 1 所示。 检测到的 ArUco 标记关键点会被投影到由 3DGS 形成的点云上。 然后,我们利用 ArUco 标记的已知尺度来缩放点云。 此外,ArUco 标记还有助于在碰撞处理中识别支撑表面,并估计重力方向。


在这里插入图片描述图 1:GSWorld 利用 3DGS 重建来渲染照片级真实感的机器人场景,支持在仿真中使用多种策略学习方案,并实现零样本 sim2real 迁移。 GSWorld 还可用于策略的视觉基准测试,以及通过虚拟遥操作进行数据收集。


GSWorld 为了让 3DGS 重建结果具有真实物理尺度,在采集场景时在桌面上放置一个已知尺寸的 ArUco marker。系统检测 marker 的角点,并把这些角点对应到 3DGS 点云中,再用 marker 的真实尺寸缩放整个点云。这样重建出的场景就有了米/厘米级的度量尺度,同时 marker 还帮助识别桌面支撑平面和重力方向,为后续物理碰撞、机器人 URDF 对齐和 sim2real 策略训练打基础。

c) 对齐机器人和桌面

真实重建出来的机器人在 3DGS 里有一个位置;仿真器里的机器人 URDF 也有一个位置。现在要把这两个机器人对准,让仿真里的机器人模型和 3DGS 里的真实机器人重合。

给定静态机器人 R \mathcal{R} R 的度量尺度 G r e a l \mathcal{G}_{real} Greal,以及 S s i m \mathcal{S}_{sim} Ssim 中具有度量尺度的机器人 URDF,我们将仿真中的关节位置与真实世界进行对齐。

第一步必须先让仿真里的机器人关节角度和真实机器人一致。 也就是: q s i m = q r e a l q_{sim}=q_{real} qsim=qreal

然后,我们从机器人 URDF 的视觉网格中采样并加密表面点云。 接着,我们执行 ICP 来计算刚体变换 T R , s i m g s \mathcal{T}^{gs}_{\mathcal{R},sim} TR,simgs

G r e a l = T R , s i m g s ⋅ S s i m \mathcal{G}_{real}=\mathcal{T}^{gs}_{\mathcal{R},sim}\cdot \mathcal{S}_{sim} Greal=TR,simgsSsim

与先前方法 [45] 相比,由于尺度已经固定,我们的 ICP 具有更少的自由度。

从 URDF 的视觉网格表面采样很多点,生成一个密集的机器人表面点云。ICP 要做的事情是:找到一个刚体变换,让仿真机器人点云尽可能贴合真实 3DGS 机器人点云。这个刚体变换就是: T R , s i m g s \mathcal{T}^{gs}_{\mathcal{R},sim} TR,simgs
G r e a l \mathcal{G}_{real} Greal: 点云来自真实 3DGS 重建场景
S s i m \mathcal{S}_{sim} Ssim: 点云来自仿真 URDF 机器人

在完成对齐之后,我们使用 K-NN G r e a l \mathcal{G}_{real} Greal 中分割机器人的各个连杆。

K-NN 是 K-Nearest Neighbors,K 近邻算法。 这里可以这样理解: 对齐之后,URDF 机器人每个 link 的表面点云已经和 3DGS 机器人重合了。 而 URDF 点云是有 link 标签的。


例如: 这些点属于 base link 这些点属于 shoulder link 这些点属于 elbow link 这些点属于 wrist link,这些点属于 gripper link。然后对 3DGS 里的每个 Gaussian,去找离它最近的 URDF link 点。 如果一个 Gaussian 最近的点属于前臂 link,那么这个 Gaussian 就被标记为前臂。 如果一个 Gaussian 最近的点属于夹爪 link,那么这个 Gaussian 就被标记为夹爪。 这就是 K-NN 分割。


简单说: 哪个URDF link离这个Gaussian最近,这个Gaussian就属于哪个link

d) 物体资产

GSWorld 不只要重建背景和机器人,还要让可移动物体也能进入仿真,并且这些物体要同时具备“真实感外观”和“物理可操作性”。


也就是说,机器人操作任务里真正要抓、推、搬的东西,比如瓶子、罐子、勺子、砧板、盒子、胡萝卜等,不能只是图片里看起来像,它们还必须有:

  • 3DGS 外观:用来渲染照片级真实感图像;
  • mesh 网格:用来做碰撞、物理交互;
  • 质量 mass:用来让物理引擎知道它多重;
  • 完整形状:尤其是底部、背面这些相机没拍到的地方;
  • 与仿真物体的对齐关系:让 GS 外观和物理 mesh 重合。

我们前面的重建阶段主要关注背景和机器人扫描。 对于可移动物体 O \mathcal{O} O,为了提高泛化能力,我们考虑整合已有的大规模数据集,并支持自定义物体。 具体来说,我们使用 DTC [12],因为它具有照片级真实感的视觉质量;同时也使用 YCB [4]

DTCYCB:别人已经准备好的物体库。 里面有很多常见物体的 3D 模型、纹理、视觉资产等。

对于自定义物体,我们使用 2DGS [19] 来获得其高斯重建 O g s \mathcal{O}^{gs} Ogs 和网格重建。 物体质量通过称重来估计。 对于物体底部未被观测到的区域,可以选择使用 amodal reconstruction,非模态重建/完整形状重建 [2,55]3D object generation,三维物体生成 方法 [31] 进行补全。 类似地,我们使用 ICP 来获得第 k k k 个物体的变换 T k , s i m g s \mathcal{T}^{gs}_{k,sim} Tk,simgs

O k g s = T k , s i m g s ⋅ O k \mathcal{O}^{gs}_k=\mathcal{T}^{gs}_{k,sim}\cdot \mathcal{O}_k Okgs=Tk,simgsOk

C. 应用——为视觉操作策略开发闭合循环

a) 闭环 DAgger 训练

传统模仿学习通常是这样的: 专家示范数据→训练策略→部署策略


训练完之后,策略参数固定了。 但是问题是: 机器人真实部署时一定会遇到训练数据里没有见过的情况。 比如任务是:

抓黄色瓶子。

训练数据里瓶子位置比较正常。 但是部署时,机器人可能把瓶子碰歪了,或者夹爪走偏了,或者物体被遮挡了。 这时候策略可能进入一个“它没见过的状态”,然后越来越错。 普通模仿学习的问题就是: 它只学过专家的正确轨迹,没有学过自己犯错以后怎么恢复

DAgger 的核心思想是:

不要只在专家轨迹上训练,还要让当前策略自己执行;如果它跑到错误或危险状态,就让专家告诉它这个状态下应该怎么做。

在传统模仿学习设定中,策略权重一旦完成训练并部署之后,就不会再被更新。 在部署过程中,策略经常会遇到失败情况。 DAgger [48] 是针对这种情况的一种解决方案,它使用修正数据来训练模型,使模型能够适应失败案例。 已有工作表明,相比普通数据,DAgger 数据具有更高的数据效率 [29,61]。 然而,收集 DAgger 数据是困难的,因为它需要重新复现相应的场景设置,让模型能够“重新经历”失败案例。

GSWorld 提供了一个接口,用于在仿真中自动收集 DAgger 数据。 给定目标部署环境的 GSDF,以及带有脚本策略的任务,我们使用 GSWorld 对这些策略进行 rollout,即执行策略轨迹展开。 对于失败记录 D f = ( s 1 , … , s T ) \mathcal{D}_f=(s_1,\ldots,s_T) Df=(s1,,sT),我们使用均匀采样器从中随机采样恢复状态 s r ∼ D f s_r\sim \mathcal{D}_f srDf,其中任务在 s r s_r sr 状态下仍然是可以完成的;然后运行运动规划器来获得修正数据,如图 3 所示。


在这里插入图片描述图 3:在仿真中进行 DAgger 数据收集。 借助仿真提供的特权信息,我们可以记录并重现策略 rollout 过程中出现的失败案例,并生成用于策略适应的修正数据。


为了迭代式地改进零样本 sim2real 策略,我们进行数据收集、策略评估、失败记录和恢复,从而得到一个聚合数据集 τ S \tau_\mathcal{S} τS

τ S = ∑ i ( Q s , O s , A s ) i (4) \tau_\mathcal{S}=\sum_i(\mathcal{Q}_s,\mathcal{O}_s,\mathcal{A}_s)_i\tag{4} τS=i(Qs,Os,As)i(4)

其中, Q s \mathcal{Q}_s Qs A s \mathcal{A}_s As 分别表示仿真中的机器人关节位置和动作标签。 O s = I g s \mathcal{O}_s=I^{gs} Os=Igs 表示由 GSWorld 渲染得到的观测, i i i 表示 DAgger 的迭代轮次。

为了改进使用真实世界数据训练得到的策略,我们首先评估这些策略,并重复相同的循环,从而得到数据集 τ R \tau_\mathcal{R} τR

τ R = ( Q r , O r , A r ) ∪ τ S (5) \tau_\mathcal{R}=(\mathcal{Q}_r,\mathcal{O}_r,\mathcal{A}_r)\cup\tau_\mathcal{S}\tag{5} τR=(Qr,Or,Ar)τS(5)

其中, Q r \mathcal{Q}_r Qr O r \mathcal{O}_r Or A r \mathcal{A}_r Ar 是通过真实世界中的遥操作采集得到的。

训练策略:

第一步,用真实遥操作数据或者初始数据训练一个策略:

π θ \pi_\theta πθ

第二步,把策略放进 GSWorld 里面执行 rollout。

第三步,如果 rollout 成功,就记录结果。 如果失败,就保存失败轨迹:

D f = ( s 1 , … , s T ) \mathcal{D}_f=(s_1,\ldots,s_T) Df=(s1,,sT)

第四步,从失败轨迹中采样一个可恢复状态:

s r ∼ D f s_r\sim\mathcal{D}_f srDf

第五步,把仿真重置到 s r s_r sr

第六步,运行运动规划器,生成正确修正动作。

第七步,把这些数据加入:

τ S \tau_\mathcal{S} τS

第八步,用新的聚合数据重新训练策略。

第九步,再评估,再失败记录,再修正。

GSWorld 可以用于闭环 DAgger 训练。传统模仿学习策略部署后如果失败,很难重新复现失败现场并收集修正数据。GSWorld 因为是仿真环境,可以记录失败 rollout 的完整状态序列 D f = ( s 1 , … , s T ) \mathcal{D}f=(s_1,\ldots,s_T) Df=(s1,,sT),从里面采样一个仍可恢复的状态 s r s_r sr,把仿真重置到这个状态,再用运动规划器生成正确动作。多轮迭代后,得到仿真修正数据集 τ S \tau_\mathcal{S} τS。如果要改进真实世界策略,还可以把真实遥操作数据 ( Q r , O r , A r ) (\mathcal{Q}_r,\mathcal{O}r,\mathcal{A}r) (Qr,Or,Ar) 和仿真 DAgger 数据 τ S \tau\mathcal{S} τS 合并成 τ R \tau\mathcal{R} τR,继续训练策略。

b) 视觉基准测试

近期的 VLA,Vision-Language-Action,视觉-语言-动作模型 [3,33,40] 会训练能够适用于多种不同机器人本体的通用策略。 通过从大规模跨机器人本体训练数据中学习,这些基础模型能够以少样本甚至零样本的方式适应未见过的机器人硬件和语言指令 [3,33]。 然而,由于这些模型在训练过程中依赖真实机器人数据,目前还不存在一个标准化的视觉操作基准,用于研究这些基础模型的质量,以及它们在新机器人本体上的数据采样效率。

GSWorld 提供了一个照片级真实感渲染接口,以解决这一问题。 借助我们的 GSDF 资产,我们能够为具有不同机器人本体的多种场景提供照片级真实感仿真,并提供大量可交互物体。 我们使用 ManiSkill [51] 作为仿真器后端,定义了一系列机器人操作任务。 此外,我们使用图像增强来进一步减少仿真与真实世界之间的视觉差距。

c) 强化学习

强化学习需要智能体与环境之间进行大量交互,通常还需要并行化 [51]。 为了更好地支持强化学习,GSWorld 对其实现进行了优化:它只对与场景中运动部件相关联的 3DGS 点进行并行化,也就是机器人 R R R 和物体 O O O 相关的点;而其他点则只缓存一份副本。 这使得我们能够使用单个 GPU 运行大规模并行仿真,从而加速强化学习的收敛。


IV. EXPERIMENTS

本节对 GSWorld 进行实证评估,以证明其有效性。 我们的实验旨在回答以下研究问题:

  • 零样本 Sim2real 模仿学习。 GSWorld 能否有效弥合 sim-to-real 差距,从而实现零样本策略迁移?

  • 闭环策略改进。 访问目标部署环境的数字孪生体,是否能够提高采样效率,并通过 DAgger 在策略部署后实现持续改进?

  • 视觉基准测试。 GSWorld 中的性能是否与真实世界中的性能相关?

  • 虚拟遥操作。 GSWorld 是否能够通过人类遥操作实现仿真数据采集?

  • 强化学习,RL。 GSWorld 能否缩小视觉强化学习中的 sim2real 视觉差距?


在这里插入图片描述图 4:真实世界硬件平台。 对于 FR3,我们设置了两个相机:一个放置在机器人前方的第三视角相机,即前视角;以及一个安装在机器人末端执行器上的腕部相机,即腕部视角。 对于 xArm6,我们在机器人旁边设置了一个第三视角相机,即侧视角,并设置了一个腕部视角。


a) 硬件平台 尽管 GSWorld 可以扩展到多种机器人本体,但在评估中,我们考虑了三个机器人平台:一个配备 UMI 夹爪 的 Franka Research 3,FR3 机器人 [9];一个配备平行夹爪的 UF xArm6;以及一个配备两条 6 自由度机械臂 的双臂 Galaxea R1 机器人。

b) 实验协议 总体而言,我们在 FR3 上用 4 个操作任务评估 GSWorld,并在 xArm 上用 3 个任务进行评估。 我们还使用 R1 来展示 GSWorld 支持通过虚拟仿真遥操作进行数据采集。 在策略实现方面,我们使用 ACT [62] 和 Pi0 [3],以表明 GSWorld 与具体策略无关,也就是说它是 policy-agnostic 的。 对于视觉基准测试,我们有意使用不同的训练设置和不同的数据规模来训练策略,以评估“好”策略和“差”策略的表现。 由于篇幅有限,完整的实现细节请参考我们发布的代码库。


在这里插入图片描述



在这里插入图片描述


c) 操作任务设计 我们设计了以下桌面操作任务来评估性能,如图 5 和图 6 所示:

Place Box,放置到盒子上。 瓶子和盒子会在一个 45 c m × 45 c m 45 cm \times 45 cm 45cm×45cm 的区域内随机初始化。 FR3 必须抓起瓶子,并将其放到盒子上。

Pour Sauce,倒酱料。 芥末瓶和面包片被放置在一个 45 c m × 45 c m 45 cm \times 45 cm 45cm×45cm 的区域内。 FR3 is required to pour the sauce onto the bread slice. FR3 需要将酱料倒到面包片上。

Stack Cans,堆叠罐子。 两个罐子会被随机放置在一个 45 c m × 45 c m 45 cm \times 45 cm 45cm×45cm 的区域内。 FR3 必须将它们堆叠起来。

Arrange Cans,排列罐子。 两个罐子会被随机放置在一个 20 c m × 15 c m 20 cm \times 15 cm 20cm×15cm 的区域内。 一个架子会被随机放置在它们旁边。 FR3 的任务是先将一个物体放到架子上,然后将第二个物体放到它旁边。

Align Cans,对齐罐子。 xArm 需要抓取一个罐子,并将其放到另一个罐子旁边。 Grasp Banana,抓取香蕉。 xArm 应该抓住香蕉,并沿着 z z z 轴将其旋转 30 30 30 60 60 60 度。

Tidy Table,整理桌面。 xArm 需要拿起厨房勺子,并将其放到砧板上,以清理桌面。

A. 零样本 Sim2real 模仿学习

图 7 展示了仅使用仿真数据训练得到的策略的表现。 我们使用 MPlib 运动规划器 [51],并利用预定义的动作和位姿。 对于每个任务,我们在每一轮迭代中收集 100 条轨迹,并使用所有生成数据的总和进行训练。 我们可以较有把握地得出结论:GSWorld 支持零样本 sim2real 策略迁移,并展现出有前景的成功率。 更多细节见第 IV-B 节。


在这里插入图片描述


B. 用于持续策略改进的闭环 DAgger

数据收集使用与零样本 sim2real 学习相同的方法。 对于 sim2real,我们在 DAgger 训练的初始迭代中收集 100 条专家轨迹。 在后续迭代中,我们评估当前策略,并识别出所有失败轨迹。 对于每一次失败,我们将环境重置到失败之前的某个状态,在该状态下任务仍然可以完成;然后从这个状态开始,使用运动规划器收集额外的修正数据。 这个 DAgger 数据收集过程会额外重复 4 轮迭代,每一轮迭代生成 100 条专家轨迹。 如图 7 所示,与仅使用监督式模仿学习目标从零开始训练,training from scratch,TfS 相比,我们基于 DAgger 的方法在所有 4 个任务上都带来了显著的性能提升。

DAgger 也可以用于改进真实世界策略。 我们不必从随机初始化的策略开始,而是可以进行 real2sim2real 的 DAgger 学习。 首先,我们使用少量示范数据训练一个真实世界中的 ACT 策略。 然后,我们从这个检查点开始,在 GSWorld 中进行 DAgger。 图 8 表明,GSWorld 可以在真实世界策略部署之后进一步提升其性能。


在这里插入图片描述


这些结果突出了闭环 DAgger 训练的关键作用。 借助我们的照片级真实感数字孪生体,研究人员可以收集关键的修正数据;而这些数据在真实世界中会极其难以获得,主要原因是很难将物体精确重置到失败发生之前的状态。

C. 基准测试

在图 9 中,我们观察到,在所有评估任务和不同策略架构中,仿真性能与真实世界性能之间存在很强的相关性。 这种相关性表明,GSWorld 可以在不需要将策略实际部署到真实世界场景中的情况下,可靠地预测其真实世界结果。 如表 I 所示,更高的仿真性能始终对应着真实世界实验中更高的成功率。 通过利用 3DGS 的照片级真实感渲染能力 [26],我们建立了一个能够反映真实世界行为的基准测试框架。


在这里插入图片描述



v


D. 虚拟遥操作

仿真数据可以用于扩大机器人策略学习的规模 [20,58]。 我们展示了可以通过鼠标和键盘,在具有真实感渲染的仿真环境中收集遥操作数据,如图 10 所示。


在这里插入图片描述


E. 视觉强化学习

GSWorld 被设计为支持并行环境,因此我们可以利用它来学习视觉强化学习策略,而视觉强化学习在机器人学习中具有很大潜力 [20,41]。 我们使用 GSWorld 训练了 asymmetric SAC,非对称 SAC [16],其中 critic,评论器,可以看到仿真提供的特权信息,而 actor,执行器,只使用机器人关节位置。 由于我们的目标是展示 GSWorld 能够减少强化学习中的视觉差距,而不是获得性能很强的 sim2real VRL,仿真到真实视觉强化学习 策略,因此为了效率,我们在训练时除了颜色抖动之外,不使用其他域随机化。 我们只使用第三视角,因为腕部相机在强化学习探索过程中表现出明显的差距。 在真实世界中,我们的方法在 Grasp Banana,抓取香蕉 和 Tidy Table,整理桌面 两个任务上的成功率分别为 30% 和 20%;而基线方法 ManiSkill 在这两个任务上的成功率分别为 0% 和 5%。 训练结果如图 11 所示。


在这里插入图片描述



V. CONCLUSION

在本文中,我们提出了一套用于构建照片级真实感数字孪生体的流程;该流程能够在不同策略架构和不同机器人本体上,使仿真部署与真实世界部署之间的性能指标高度相关。 此外,我们证明了我们的环境能够高效、大规模地收集修正数据,从而实现更有效的策略训练。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐