25年11月来自Nvidia的论文“Isaac Lab: A GPU-Accelerated Simulation Framework for Multi-Modal Robot Learning”。

Isaac Lab,是 Isaac Gym 的自然继承者,将基于 GPU 的原生机器人仿真范式扩展到大规模多模态学习时代。Isaac Lab 融合高保真 GPU 并行物理引擎、照片级渲染以及模块化、可组合的架构,用于设计环境和训练机器人策略。除了物理和渲染之外,该框架还集成执行器模型、多频传感器仿真、数据采集流水线和域随机化工具,在一个可扩展的平台上统一大规模强化学习和模仿学习的最佳实践。本文重点介绍它在各种挑战中的应用,包括全身控制、跨具身移动性、接触密集型和灵巧操作,以及将人类演示融入技能获取。最后,讨论即将与可微分的 GPU 加速 Newton 物理引擎的集成,这有望为可扩展、数据高效且基于梯度的机器人学习方法带来新的机遇。


NVIDIA Isaac Gym(Makoviychuk,2021)在该领域做出了里程碑式的贡献,它首次证明了复杂机器人任务的端到端强化学习可以完全在单个GPU上完成。Isaac Gym使用NVIDIA PhysX,这是一款GPU加速的物理引擎,能够模拟大规模高保真刚体动力学。通过将物理模拟结果直接以PyTorch张量的形式呈现,Isaac Gym提供一个GPU原生流水线,将训练时间从数天缩短到数小时。自发布以来,该框架已成功应用于众多项目中,例如运动控制(Agarwal,2023;Rudin,2022)、全身控制(Fu,2023;He,2024)、手内操作(Allshire,2022;Handa,2023)、灵巧抓取(Lum,2024;Wang,2023)以及工业装配(Narang,2022)。由此,它为可扩展的高性能机器人仿真树立了新的标准,并为后续基于 GPU 的仿真框架奠定了基础。

Isaac Lab 是 Isaac Gym 的自然继承者,它将 GPU 原生机器人仿真范式带入大规模多模态学习时代。Isaac Lab 基于 NVIDIA Isaac Sim 构建,结合 RTX 渲染技术实现逼真且可扩展的视觉效果,以及 PhysX 高保真物理仿真技术。它使用通用场景描述 (USD) 作为结构化世界构建的核心数据层,简化复杂且富含传感器的场景设计。其物理引擎相比 Isaac Gym 进行诸多改进,例如过滤接触报告、模拟关节系统、闭环运动链、可变形体(布料和软体)以及刚体和可变形体的耦合求解器。高吞吐量的 GPU 加速渲染支持大规模生成 RGB、深度和分割数据,从而利用外部感知信息促进策略训练和仿真到现实的迁移。所有这些功能共同作用,使其能够在多 GPU 和多节点配置中高效扩展。

通用场景描述 (USD) 用于机器人技术

机器人仿真生态系统仍然高度分散,开发人员需要管理各种数据源,包括 CAD 模型、运动学和动力学描述、传感器参数等等。此外,仿真器通常依赖于多个用于物理和渲染的专用属性,这进一步增加资产数据的复杂性。现有工具也体现这些挑战。Gazebo(Koenig,2004)采用扁平且缺乏灵活性的基于 XML 的仿真描述格式 (SDF)。这种格式限制了生成大型、逼真场景以及协作处理场景变化的能力。它仅在组件级别定义描述,使得复杂的子系统行为(例如闭环运动链)难以表示。其他广泛使用的基于 XML 的机器人格式(例如 URDF 和 MJCF)也面临类似的限制。现代游戏引擎(例如 Unity 和 Unreal)越来越多地应用于机器人领域。它们提供逼真的渲染、集成的物理引擎和更强大的场景创作功能。然而,这些工具最初是为娱乐而设计的,其使用范式与传统的机器人工作流程不同。 AirSim(Shah,2017)试图降低机器人研究人员的入门门槛,但其将模拟编译成单一“游戏”的方法引入了显著的局限性:对模拟的任何修改通常都需要返回到底层游戏引擎。这些局限性凸显了对一种灵活的统一格式的必要性,该格式能够集成各种数据类型,支持复杂的子系统建模,并促进数字内容创作的协作工作流程。

为了应对这些挑战,开放通用场景描述(OpenUSD)(Pixar,2016)是一种开源格式,用于稳健且可扩展地创作由众多元素组成的复杂3D场景。它提供一套全面的工具和Python/C++ API,用于定义、组织和编辑3D数据。USD将3D场景表示为一个分层场景图(或舞台),数据按图元(或基元)命名空间排列。每个基元可以包含子基元,并具有属性,从而允许从父基元继承变换和属性。 USD 基于模式的系统有助于定义几何、材质、物理特性等的结构化属性,而分层和非破坏性合成功能则支持多个协作者同时处理同一场景,避免相互覆盖更改。此外,引用和实例化功能使用户能够合并多个 USD 文件并高效地重用重复元素。这些特性使 USD 成为一个灵活、可扩展且协作性强的基础架构,能够自然地融入机器人仿真工作流程。如图展示一个利用参考功能的 USD 场景示例。

请添加图片描述

OpenUSD联盟(AOUSD)是一个开放的非营利组织,致力于通过OpenUSD推进3D数据互操作性。在这一努力中,机器人领域的一项关键进展是USDPhysics模式。USDPhysics模式扩展OpenUSD,提供了一种标准化的方法来描述刚体、碰撞、关节和材料等物理属性。

在 Isaac Lab,USD 是机器人仿真的基础。虽然 USD 的领域无关设计提供了灵活性,但它也需要特定领域的约定来维护结构化的场景图并开发可靠的 API。机器人领域在 USD 舞台中使用米制和 Z 轴向上约定,而其他领域(例如计算机图形学)则遵循较为宽松的约定。图元必须遵循特定的层级规则。例如,两个具有刚体属性的图元不能相互嵌套。此外,还需要考虑实例化等其他因素,以确保高效地创建大规模仿真场景的舞台。为了满足这些需求,Isaac Lab 提供了适用于常用格式(包括 URDF、MJCF 和网格如 OBJ、DAE)的 USD 转换器。它还提供了围绕 USD API 的高级封装器,允许用户通过简单的配置对象来配置属性和创建图元。这些封装器可以处理舞台修改的细微差别,例如高效地克隆大规模场景的图元以及更改 USD 属性以实现领域随机化。此外,得益于 SimReady (一个用于物理上精确的 3D 资产和数字孪生的标准和生态系统,其中包含现实世界的属性、行为和数据绑定如物联网)持续不断的资产创建工作,Isaac Lab 包含各种逼真且物理上精确的机器人和物体资产,可随时用于模拟。

物理仿真

NVIDIA PhysX SDK 是一款开源的多物理场仿真引擎,旨在满足机器人和工业应用领域的高要求。随着 PhysX 的发布,该引擎整合了原 NVIDIA Flex 库的功能,包括基于有限元方法 (FEM) 的软体动力学,以及用于液体和充气物体的基于位置的动力学 (PBD)。它支持多种仿真类型,从刚体和关节/铰接体到可变形体,例如布料、流体和软体。这些仿真对象可以通过专用求解器之间的双向耦合进行交互。例如,基于 FEM 的布料求解器与基于 Featherstone 的关节求解器交换脉冲,从而支持高效、精确的混合物理场交互。在此基础上,PhysX 不断发展,致力于机器人应用,并与机器人工程师和研究人员合作开发特定领域的功能,包括力矩传感器仿真、用于关节的高级执行器和摩擦模型,以及碰撞处理改进,例如符号距离场 (SDF) 方法。SDF 方法对于机器人装配任务中遇到的高精度非凸几何体尤为重要。

PhysX 既可在 CPU 上运行,也可在 GPU 上运行,从而为不同的仿真场景提供灵活性。对于高性能、大规模机器人学习工作流程,GPU 执行可提供高效扩展所需的并行性和吞吐量。PhysX 的 Direct-GPU API 可直接读写 GPU 内存中的仿真状态和控制数据。生成的 CUDA 张量随后可使用工作流程进行高效处理。这种端到端的 GPU 流水线消除了传统仿真器中常见的 CPU-GPU 数据传输造成的性能瓶颈。这种以 GPU 为先的仿真方法的优势首先在 Isaac Gym(Makoviychuk,2021)的强化学习项目中得到验证,该项目将复杂机器人任务的训练时间从几天缩短到几小时。

值得注意的是,目前只有仿真状态和控制可以直接在 GPU 设备上访问。由于当前的设计限制,摩擦系数、刚体质量和关节属性等仿真参数仍然必须通过 PhysX CPU API 设置。

NVIDIA Omniverse Physics (OmniPhysics) 作为 NVIDIA Omniverse 中 PhysX 仿真引擎的集成层。它通过在 PhysxSchema 下引入用户自定义数据类型来扩展 OpenUSD 框架,从而实现物理仿真的表示和控制。OmniPhysics 从 USD 解析这些属性,将其映射到 PhysX,运行仿真,并将仿真输出写回 USD。它还通过监控 USD 的变化并相应地更新活动仿真来支持状态更新。在 Isaac Lab 中,高性能和大规模仿真场景十分常见,仿真过程中 USD 的读写周期通常会成为性能瓶颈,因此会被绕过。取而代之的是,仿真数据通过 OmniPhysics Tensor API 访问,而 OmniPhysics Tensor API 内部依赖于 PhysX Direct GPU API。对于需要渲染的工作流程,例如视觉在环训练,OmniPhysics 还能保持仿真状态和渲染器之间的高效同步。

算法 1 总结 Isaac Lab 中的 OmniPhysics 工作流程。用户通过 USD API 设置 USD 场景。Isaac Lab 提供可配置的接口和 API,以方便以编程方式创建图元。这些接口支持生成不同类型的图元、修改其 USD 属性,以及高效地将原型场景复制到 USD 场景上的多个环境实例。当模拟场景准备就绪并开始运行后,OmniPhysics 会解析 USD 场景,创建一组与 USD 场景镜像的 PhysX 模拟对象(例如机器人、刚体或静态碰撞器)。为了高效地将原型环境扩展到数千个实例,OmniPhysics 提供了复制 API,可以将原型的 PhysX 模拟对象复制到多个并行训练环境中。在此复制过程中,还会建立 PhysX 对象与其 USD 图元路径之间的映射关系,该关系随后用于构建 Tensor API 视图。

请添加图片描述

如图所示,OmniPhysics Tensor API 将模拟数据以批处理的设备驻留数组的形式呈现,并组织成视图。用户无需单独操作每个物理 Actor,而是可以通过 SimulationView 与 Actor 集合进行交互。SimulationView 将所选的张量框架(例如 NumPy、PyTorch 或 NVIDIA Warp)链接到物理模拟后端。然后,可以使用仿真视图为不同类型的物理对象创建专用视图,包括刚体(RigidBodyView)和关节系统(ArticulationView)。视图使用 USD 基本体路径模式匹配进行定义。

请添加图片描述

渲染

Omniverse RTX 渲染器使用基于物理的光线追踪技术,模拟 RGB 相机和合成真实传感器,包括深度、表面法线和语义分割。它支持实时和离线路径追踪、直接光照以及基于硬件加速光线追踪的降噪功能。为了提高渲染效率,RTX 渲染器利用深度学习超采样 (DLSS) 技术,该技术使用高质量的时间超分辨率将图像从较低的内部分辨率放大,使其非常适合高分辨率感知任务。在分辨率极低、视觉数据不足以供放大器使用的场景下,RTX 渲染器允许用户选择性地禁用 DLSS。DLSS 仅影响 RGB 输出;其他真实数据(例如深度和分割)始终以其原始分辨率渲染。

高质量渲染的一个重要方面是将正确的材质应用于 USD 图元。USD 图元的材质方案使用 NVIDIA 的材质定义语言 (MDL) 编写。 MDL 提供了一个灵活而强大的框架,用于描述具有逼真细节(例如反射、折射和表面纹理)的复杂、基于物理的材质(例如 OmniPBR、OmniGlass)。这些材质能够在渲染场景中实现高质量的视觉效果,如图所示。此外,为了支持语义分割,USD 图元还可以标注语义信息,例如对象类别或实例标识符。这种元数据允许将逐像素的实例和类别标签与 RGB 图像一起渲染,这与大规模多相机设置中的分块渲染完全兼容。

请添加图片描述

为了在并行模拟环境中支持数千个相机,Isaac Lab 使用 RTX 渲染器的分块渲染流水线。该方法通过将多个相机在 GPU 帧缓冲区中按空间排列成图块,将它们批量处理到单个渲染流水线中。每个相机都保留其自身的内参和姿态,并且确定性的分块布局能够高效地重建每个环境的张量,而无需进行代价高昂的主机-设备数据传输。这种设计对于大规模数据生成工作负载(例如视觉在环强化学习)至关重要,因为它能够使传感器吞吐量随 GPU 资源线性扩展,最大限度地降低延迟,并同步跨环境的观测数据以进行策略训练(如图所示)。尽管 Omniverse RTX 渲染器已经支持激光雷达和雷达等主动传感器,但它们与分块渲染的集成仍在进行中。作为替代方案,RayCaster 传感器使用 NVIDIA Warp 操作进行光线投射。

请添加图片描述
RTX渲染器还可以通过Omniverse NuRec执行3D高斯渲染,支持使用诸如Kerbl(2023)提出的3D高斯溅射 (3DGS)和Wu(2025)提出的3D高斯Unscented Transform (3DGUT)等方法对真实世界场景进行逼真的重建。这些高斯图元与RTX渲染器中的光线追踪几何无缝集成,使得机器人和合成物体能够在逼真的重建环境中运行。这种方法提高了视觉真实感,并促进了策略迁移,而无需手工制作资源。如图展示Liu(2025)提出的早期集成示例。

请添加图片描述


基于上述介绍的核心技术,Isaac Lab 带来最先进的仿真功能。虽然这些通用技术暴露大量底层状态和属性,但这种灵活性也可能导致陡峭的学习曲线,使非专业用户望而却步。Isaac Lab 旨在通过一个模块化、集成化的框架来降低这一门槛,该框架利用物理学域和渲染域的最新进展。其接口专为机器人学习而设计,简化环境设计,并引入了对部署到物理机器人至关重要的功能。该框架采用自下而上的设计理念,从对复杂执行器动力学、异步传感和控制、真实传感器噪声以及环境不确定性进行建模开始,向上构建到高级任务抽象和机器人学习接口。如图所示,它支持不同的机器人平台和目标类型、底层执行器和传感器模型以辅助模拟-到-真实的迁移,并集成用于数据采集的外围设备——从而支持强化学习和模仿学习。
请添加图片描述

资源

资源对应于任何可以添加到仿真中的启用物理的对象。这些对象包括刚体、关节和可变形体。每个资源都提供了一个高级接口,该接口封装了底层 USD 和 OmniPhysics 视图 API。这些接口管理对象在仿真场景中的生成,并提供对其物理状态的结构化访问。尽管底层 TensorAPI 视图提供了对仿真数据的直接读写访问,但 Isaac Lab 引入了额外的抽象层,以确保与仿真进行统一可靠的交互。

资源接口整合 TensorAPI 不直接管理但对机器人至关重要的属性。这些属性包括用户定义的属性(例如默认初始状态和碰撞过滤器组,这些属性通过配置实例指定)以及派生量(例如机器人躯干在其局部坐标系中的速度,这些速度作为数据参数存储,可在仿真期间访问)。

此外,为了最大限度地减少性能开销,该接口采用延迟更新机制来检索仿真状态。虽然 TensorAPI 视图允许获取部分对象的数据,但此操作需要将查询到的属性复制到一个连续的张量中,如果重复执行此操作,则会增加开销。采用延迟更新方法,每个属性的数据仅在模拟步骤后的首次访问时获取,而同一步骤内的后续访问则使用缓存值。

对于关节/铰接系统,同一接口提供一种定义和集成自定义执行器模型的机制。虽然物理引擎包含一个内部关节级PD控制器,但实际关节/铰接动力学特性通常与该模型有所不同。在每个仿真步骤中,关节接口会通过这些自定义模型处理用户指定的关节目标,并将生成的命令应用于物理引擎,从而确保对预期执行器行为进行准确且一致的仿真。如图所示,该接口支持为系统中不同的关节组配置不同的执行器模型,以灵活地模拟异构的驱动特性。

请添加图片描述

执行器

在 Isaac Lab 中,执行器是所需关节/铰接动作与关节/铰接运动之间的接口。执行器提供一个控制回路,用于控制所需运动和关节固有模型定义。所有执行器都提供用于定义关节摩擦的接口,支持两种不同的模型。第一种模型是简单的库仑摩擦模型(Coulomb friction model),摩擦系数恒定。第二种模型是静摩擦模型,包含静滑移阈值、动摩擦系数和粘性摩擦系数。执行器还有一个电枢值,代表电机惯性,用于影响执行器的动态响应。还可以设置速度和力矩的限制,以更好地模拟实际应用中的限制。执行器分为两类:隐式执行器和显式执行器。

传感器

传感器是机器人学习的基础,因为它们使智体能够感知自身的物理状态和周围环境。如图所示,Isaac Lab 提供三大类传感器:基于物理的传感器、基于渲染的传感器和基于变形的传感器。与资源类似,所有传感器都统一在一个通用接口下,从而简化实例化、配置和运行时集成。该接口还支持在并行环境设置中灵活的传感器更新频率。这避免通常不切实际的同步感知和控制假设,并更好地模拟传感器以不同速率运行且存在通信延迟的现实世界情况。
请添加图片描述

控制器

Isaac Lab 中的控制器代表一类机器人工具,它们能够根据更高层次的输入生成所需的关节级指令(位置、速度、力)。这些更高层次的输入通常涉及任务或关节空间的期望运动。控制器的作用是确定完成更高层次指令所需的关节级动作。Isaac Lab 中的控制器可以分为几个关键类别:逆运动学(IK)控制器、力控制器和运动规划器。这些控制器通常集成到机器人学习任务的马尔可夫决策过程 (MDP) 模型中。

逆运动学

Isaac Lab 中的逆运动学 (IK) 控制器使用两种主要方法将期望的任务空间运动转换为所需的关节空间运动。第一种是微分 IK 控制器,它利用运动学雅可比矩阵来计算末端执行器姿态期望变化引起的关节位置变化。第二种是 Pink 库的实现,它利用二次规划方法,根据末端执行器期望速度确定所需的关节速度。

微分 IK 控制器利用运动学雅可比矩阵定义的微分运动学概念,通过逆雅可比矩阵将期望的任务空间姿态变化转换为关节位置变化。雅可比矩阵的逆矩阵在遇到运动学奇异点时存在缺陷。微分 IK 控制器允许采用不同的方法来处理这种奇异点。可选方法包括 Moore-Penrose 伪逆、自适应奇异值分解、雅可比矩阵转置近似和阻尼伪逆。微分逆运动学控制器的可配置功能包括控制末端执行器的位置或姿态,以及处理相对或绝对期望位置或姿态。

Isaac Lab 集成 Pink 库,这是一个用于基于任务的微分逆运动学的 Python 框架,它使用 Pinocchio 进行正向运动学计算,并使用二次规划 (QP) 求解器进行优化。与传统的解析逆运动学方法不同,Pink 允许通过加权目标函数计算引导机器人完成多个同步任务的运动。在此基础上,其实现一个能够实现实时性能的反应式逆运动学控制器。Pink 的一个关键优势在于其可扩展的基于任务架构,该架构允许用户轻松地在其底层 QP 求解器中引入自定义目标。任务由描述期望行为(例如,末端执行器定位、避障、关节限位)的残差函数定义。虽然可以通过归一化成本加权来解决相互竞争的任务之间的冲突,但这种方法会牺牲每个任务的性能和精度。Isaac Lab 在 Pink 的任务库中扩展了 NullSpacePostureTask,该任务专为高自由度机器人系统设计。此任务规范化对主要控制目标(例如在末端执行器定位期间保持首选手臂姿态)没有贡献的冗余关节。该实现可在保持任务空间精度的同时提供受控的零空间行为,从而提高具有运动学冗余的关节系统的运动质量。

力控制

力控制是一种使机器人能够与环境交互并利用本体感觉来调节作用于环境和物体的力的有效方法。Isaac Lab 提供了两种力控制方法的实现:关节阻抗控制器和操作空间控制器。

关节阻抗控制器提供一个接口,用于根据所需的阻抗来控制关节的位置。这在关节层面上单独进行,使用类似于理想PD关节执行器的PD控制,但它还提供用于计算惯性和重力补偿的前馈力的接口。该控制器还支持固定阻抗、可变刚度和可变阻抗版本。

操作空间控制器提供一个接口,用于控制机器人在操作空间或任务空间内的阻抗。该控制器带有一个通用接口,用于实现混合力-运动控制、动力学解耦、重力补偿、可变阻抗以及冗余机械臂的零空间控制等功能。

运动规划

Isaac Lab中集成的cuRobo(Sundaralingam,2023)实现快速的、GPU并行化的碰撞-觉察运动规划。其核心是cuRobo的MotionGen,它结合逆运动学、碰撞检测和轨迹优化,并可选地提供基于图的全局运动规划。这为动态场景和操作任务提供低延迟规划。在 Isaac Lab 中,规划器根据机器人配置和世界描述进行初始化,并在专用的 CUDA 设备上运行。张量处理在内部进行,以确保 cuRobo 计算和 Isaac Lab 张量之间的一致性。一个简短的预热调用会初始化内核和缓存,以减少首次规划延迟。

远程操作支持

远程操作仍然是机器人技术不可或缺的一部分。其应用范围涵盖用户直接控制、控制器和策略评估,以及机器人学习演示。在 Isaac Lab 中,远程操作可以通过一系列硬件设备和扩展现实应用程序来实现。

虚拟场景生成

地形生成

Isaac Lab 支持多种创建模拟环境的方法:(i) 通过脚本进行程序化生成;(ii) 导入扫描网格(Straub,2019);(iii) 通过类似 Isaac Sim 游戏的图形用户界面进行交互式编辑;以及 (iv) 上述方法的混合组合。基于脚本的界面可以对环境难度进行精细控制,并支持系统化的地形随机化,以测试模型的鲁棒性。该界面利用 Trimesh(https://trimesh.org/)生成基本形状和任意网格,这些形状和网格可以灵活地组合成复杂的结构(例如,金字塔或复合地形)。它还支持高度场,高度场会自动转换为网格以表示粗糙的地形表面。所有这些方法都旨在提高底层 PhysX 引擎的性能,从而确保高效的模拟。

与外部资源生成框架集成

场景图生成框架,例如 Scene Synthesizer (Eppner et al., 2024) 和 Infinigen (Raistrick et al., 2024),可用于以编程方式设计杂乱的 3D 环境(例如房屋和厨房),并将其导出为 USD 格式,以便在 Isaac Lab 中使用。这些框架拥有预定义对象库,并能将其与艺术家生成的数据集(例如 Objaverse (Deitke et al., 2023))无缝结合,从而生成 USD 场景。在 Isaac Lab 中,使用此类程序生成的场景训练运动操作策略,可以提高模型的鲁棒性和泛化能力。例如,(Sleiman et al., 2024) 展示四足移动机械臂开门策略的仿真到实战迁移,而 (Luo et al., 2025) 则展示在大量程序化厨房环境中训练的人形机器人所具备的可泛化的抓取和放置技能。

多资源生成和随机化

在定义地形后,Isaac Lab 允许在场景中实例化资源,并在并行环境中进行克隆。在每个环境中,可以同时生成多个资源,并且可以随机化几何和视觉属性。Isaac Lab 还支持在不同环境之间交换资源,前提是它们属于同一资源类别。例如,在操作任务中,目标对象可能是杯子、玻璃杯或餐具,这使得策略能够在追求相同目标的同时,泛化到不同的形状。对于基于视觉的策略,Isaac Lab 集成域随机化技术,以提高仿真-到-真实的迁移效果。在此,纹理、材质和颜色等视觉属性可以通过程序在不同资源和环境中进行变化。这种几何变化和视觉随机化的结合,使策略能够应对更广泛的任务相关场景,从而提升了系统的鲁棒性。

任务框架和环境

Isaac Lab 支持两种构建和执行机器人学习工作流程的主要范式:基于管理器的工作流程和直接工作流程。这些工作流程在抽象程度、模块化程度和预期用例方面有所不同。这为用户提供了灵活性,从构建极简高性能环境的用户到开发复杂结构化机器人系统的用户都能找到合适的方案。

基于管理器的工作流程提供一种更结构化和模块化的设计,将机器人组件封装到可重用的子系统中(例如,动作、观察、奖励、命令)。相比之下,直接工作流程提供一个接口,允许用户直接与仿真、物理和学习组件交互,而无需强制执行特定的组织结构。它尤其适用于对性能要求较高的训练流程,在这些流程中,最小的开销和与 GPU 资源的紧密集成至关重要。算法 2 概述两种工作流程的阶跃函数逻辑,展示逐步构建环境的计算序列。
请添加图片描述

Isaac Lab 提供涵盖经典、运动、操作和导航四大类机器人学习环境,其中许多任务都提供直接学习和基于管理器的学习两种模式。
这些环境在选择时均考虑其仿真到实际应用的相关性、先进的仿真功能(例如 SDF、接触感知、分块渲染)以及清晰的技能结构(涵盖灵巧性、运动和层级控制)。重新实现的基准测试共享统一的 API 和数据布局,以最大限度地减少粘合代码,并最大限度地提高社区的可比性和可访问性,方便他们进行复现、研究或扩展。


强化学习

Isaac Lab 遵循 Gymnasium API(Towers,2024),这是一个被广泛采用的用于定义强化学习环境接口。通过遵循 gymnasium.Env 规范,Isaac Lab 环境可以直接与任何支持 Gym 兼容环境的库一起使用。同时,许多强化学习框架实现用于处理来自并行环境的批处理数据的自定义规范。为了解决这个问题,Isaac Lab 在设计时充分考虑可扩展性,以便以最小的工程工作量集成自定义解决方案。 Isaac Lab 开箱即用,内置支持 SKRL (Serrano-Munoz,2023)、RSL-RL (Schwarke,2025)、RL-Games (Makoviichuk & Makoviychuk,2022)、Stable-Baselines3 (SB3) (Raffin,2021) 和 Ray (Moritz,2018)。这些库补充强化学习工作流程的不同方面,并凸显了 Isaac Lab 的互操作性。
直接从视觉输入中学习有效的控制策略是现代机器人和强化学习的核心挑战。传统方法依赖于低维状态表示,但许多实际应用需要能够解释和处理高维感知观测结果(例如 RGB 或深度图像)的策略。Isaac Lab 通过提供快速高保真渲染和特权状态访问来支持这一研究方向。它支持视觉域随机化,使策略能够适应不同的光照条件、纹理、颜色和背景,并提供了使用预训练视觉骨干网络(例如 Theia (Shang, 2024) 和 ResNet (He, 2016))的示例。

基于群的训练

尽管强化学习(RL)仍然是仿真中训练策略的主要方法,但训练过程的随机性和庞大的超参数空间共同导致训练结果的高方差性,尤其对于高自由度(DoF)系统和奖励稀疏的任务而言更是如此。因此,有些训练可能进展迅速,而另一些则停滞不前,几乎没有改进。Petrenko(2023)通过使用遗传算法来变异超参空间,从而促进学习智体的多样性和探索性,以此来解决这个问题。构建于基于群训练(PBT)(Jaderberg,2017)之上,DexPBT 为每个工作节点分配一个独立的强化学习训练过程,并为其分配一组独立的超参数。如图所示,性能最佳的节点及其权重和超参会定期替换性能最差的节点。 Isaac Lab 包含 DexPBT 与 RL-Games 的结合,用于 DextrAH 中的灵巧操作环境(Lum,2024;Singh,2024)。它使用 8 个节点(每个节点配备 1-2 个 GPU)复现原始 DexPBT 工作中的 6D 静止任务,并在 NVIDIA OVX L40 硬件上大约 16 小时即可收敛。Isaac Lab 中的 PBT 框架可配置且可推广到其他环境,从而实现可扩展的多节点强化学习训练。
请添加图片描述

域随机化

域随机化 (DR) 是模拟-到-现实迁移的关键组成部分,它通过在模拟过程中随机化系统参数来提升策略的泛化能力和部署后的鲁棒性。对于物理而言,这些参数包括摩擦力、骨架、重力和质量(Peng,2017);而对于渲染而言,这些参数包括纹理,它们在现实世界中可能难以精确估计,也可能随时间变化。通过在训练过程中将这些参数随机化到广泛的分布上,策略能够获得对这些参数的不变性,从而提高向现实的迁移能力。域随机化的一个关键要求是能够动态地修改参数,从而为学习智体提供多样化的训练场景。

Isaac Lab 支持物理和渲染参数的随机化。网格相关属性(例如尺度和碰撞器类型)只能在模拟开始运行之前进行随机化(如算法 1)。大多数其他物理参数可以在运行时进行随机化。由于当前 PhysX 设计的限制,只有模拟状态可以直接在 GPU 上访问,而模拟参数(例如质量、摩擦力、接触偏移和关节骨架)必须通过 CPU API 进行修改。渲染参数(例如视觉材质、光照强度、光源位置和背景纹理)也可以在运行时随机化,但它们目前依赖于基于 CPU 的 USD API。

此外,Isaac Lab 通过可配置的课程框架支持自动域随机化 (ADR)(OpenAI,2019),该框架能够根据智体的表现自适应地调整环境难度。Isaac Lab 中的 dexsuite 示例提供强化学习 (RL) 训练的参考 ADR 配置。该框架能够自动管理难度递增,持续挑战学习智体,而不会使其不堪重负,从而促进更稳健、更具泛化能力的策略的形成。

模仿学习

尽管强化学习在处理大量仿真数据时展现出了显著优势,但为许多机器人任务设计奖励函数仍然是一个挑战。模仿学习 (IL) 提供一种替代方案,它允许智体直接从专家演示中学习,而不是仅仅依赖试错探索。仿真环境为收集模仿学习的训练数据提供了一个更安全、更具可扩展性且更经济高效的环境,优于现实世界。此外,仿真-到-现实转换技术的最新进展,包括使用诸如 NVIDIA Cosmos 之类的生成模型,为完全基于合成数据训练策略并将其有效迁移到真实世界环境提供了有前景的方法。

Isaac Lab 通过与 Mandlekar (2022) 广泛使用的 RoboMimic 框架集成来支持 IL。演示数据可以通过人工远程操作收集,也可以使用 Isaac Lab Mimic合成生成。所有演示数据均以标准化的 HDF5 格式存储。

Isaac Lab 通过与 Mandlekar (2022) 开发的广泛使用的 RoboMimic 框架集成,为 IL 提供支持。演示数据可以通过人机远程操作收集,也可以使用 Isaac Lab Mimic合成生成。所有演示数据均以基于 RoboMimic 模式的标准化 HDF5 格式存储。Isaac Lab 包含一套可与 RoboMimic 即插即用的参考训练和评估脚本,为实验提供一个简化的起点。它还提供一个专用的转换工具,允许用户将现有的 HDF5 数据集转换为 LeRobot 格式(Cadene,2024)。LeRobot 格式使用列式 Parquet 格式处理时间序列数据,并使用 MP4 编码进行高效的视觉数据处理,从而加速与 Hugging Face Hub 上托管的模型的集成。

合成数据生成

Isaac Lab Mimic 专注于从有限的人类演示数据集中合成生成大量机器人演示。其工作流程将人类演示分割成以对象为中心的子任务,对每个分割部分应用刚体变换,并将它们重新组合成新的演示(Jiang et al., 2025; Mandlekar et al., 2023)。通过变换和拼接轨迹,Mimic 可以调整这些演示,使机器人即使在姿态与原始演示不同的情况下也能成功执行任务,从而显著扩展训练数据集的多样性和覆盖范围。

为了使基于管理器的环境设计与 Mimic 工作流程兼容,用户需要实现必要的集成接口,包括将机器人姿态转换为动作(反之亦然)、检索机器人末端执行器姿态以及从环境动作中提取夹爪状态的功能。一旦环境与 Mimic 兼容,即使仅使用单个人类演示,也能生成数量几乎无限的合成演示。此外,Isaac Lab Mimic 支持并行环境执行以生成数据,从而大幅提高吞吐量并减少整体演示生成时间。

运动操作数据生成

Isaac Lab Mimic 工作流程的一个例子是通过模仿学习来学习移动操作任务。如图所示概述数据生成流程,该流程采用与 Ben (2025) 类似的解耦式全身控制器来控制人形机器人。通过将全身控制器与导航相结合,合成运动操作任务演示,其中协调的运动和操作使机器人能够在移动(例如行走或蹲下)的同时与物体交互(例如抓取、推拉)。这种耦合支持复杂的序列,例如从桌子上拿起物体、穿越空间并将物体放置在其他位置。
请添加图片描述

该系统通过随机化箱子的拾取和放置位置以及改变障碍物的位置来增强演示效果。它通过将操作分割成拾取和放置阶段与运动交错进行,从而增强数据采集流程。利用此流程,从仅包含操作的人类演示中生成大量增强型运动操作数据,使人形机器人能够学习集成的运动操作技能。Isaac Lab 中提供的界面保持灵活性,允许用户应用不同的模型,包括人形机器人和移动机械臂,并选择合适的控制器。

基于 SkillGen 的数据集增强

SkillGen(Garrett,2024)是 Isaac Lab Mimic 中的一个自动化演示生成系统,能够大规模生成高质量、碰撞感知的机器人演示。它将人类提供的子任务片段与 GPU 加速的运动规划相结合,生成能够适应新的物体位置和场景布局的多样化可行轨迹。通过自动生成标注技能之间的过渡运动,它减少了手动数据采集,同时提高了数据集的一致性和有效性。

Isaac Lab 集成的 SkillGen 提供简单的控件,可用于创建可扩展的数据集。用户只需勾选一个标志即可选择由规划器支持的生成模式,并可配置试验次数、并行环境数量和计算设备,以及调整规划器的参数以平衡速度、成功率和运动质量。生成的数据集支持 Isaac Lab 中的 IL 工作流程。


为了进一步推进 Isaac Lab 的发展,即将到来的一个重要里程碑,是与 Newton 物理引擎的集成。Newton 是一款 GPU 加速、可扩展且可微分的模拟器,为刚体、关节和可变形体动力学提供最先进的求解器。这将解决现有引擎在复杂机器人场景中的关键局限性。除了物理方面的改进,未来的版本还将通过与 NVIDIA 的 RTX 实时光线追踪技术的深度集成来增强渲染能力,从而为基于视觉的学习提供更逼真、更符合物理规律的视觉效果。此外,还将致力于提升性能和可扩展性,以支持大规模感知训练。同时,目标是构建一个标准化的平台,用于跨不同机器人领域的策略评估和基准测试。通过整合一系列易于学习的环境,该平台将支持严格、可复现的评估,并促进其作为统一框架的广泛应用,从而推进可通用机器人策略的发展。

Newton引擎与Isaac Lab集成

Newton是一款开源的GPU加速物理仿真引擎,专为机器人专家和仿真研究人员设计。它由NVIDIA、Google DeepMind和迪士尼研究院合作开发,旨在通过提供一个强大、可扩展且易于扩展的物理人工智能平台,推动机器人学习和开发。Newton基于NVIDIA Warp(Macklin,2022)构建,后者是一个用于加速仿真和空间计算的开发者框架。Newton扩展并通用化Warp现有的仿真功能,并将MuJoCo Warp集成为主要后端。它强调基于GPU的计算、可微性以及用户自定义的可扩展性,从而促进快速迭代和可扩展的机器人仿真。

主要特性和功能

Newton 具有以下几个特性,可满足现代机器人研究的需求:
• 开源且社区驱动:Newton 是一个开源项目,源代码可在 GitHub 上获取,并通过 PyPI 分发。
• GPU 加速性能:Newton 利用 NVIDIA Warp 和 CUDA 图,无需底层编程即可提供高性能的端到端 GPU 仿真,从而消除旧物理引擎中常见的 CPU 瓶颈。
• 可扩展性:Newton 的模块化设计便于集成自定义求解器和模型,支持使用各种材料(例如食物、布料、土壤和电缆)进行逼真的多物理场仿真。
• 可微分性:Newton 可自动对输入、控制和参数进行微分,从而加速策略训练、设计优化和系统辨识,实现高效的基于梯度的机器人学习。
• 统一 API:Newton 提供单一且一致的编程接口,用于在同一框架内跨多个求解器与各种物理仿真模型(包括刚体、软体、颗粒材料和布料)进行交互。
• OpenUSD 集成:该引擎利用 OpenUSD 框架,受益于其灵活的数据模型和组合引擎,能够聚合描述机器人及其环境的数据。

架构与设计原则

Newton 的架构围绕清晰的关注点分离而构建,旨在实现灵活性以及与深度学习框架的互操作性。如图所示:
请添加图片描述

• 高级架构:Newton 围绕几个核心组件组织仿真:newton.ModelBuilder 用于构建模型,newton.Model 用于物理结构,newton.State 用于动态数据,newton.Solver 用于推进仿真。它支持通过 newton.Importer 导入 URDF、MJCF 和 USD 资产,并可轻松与 Isaac Lab 等平台集成。
• 物理模型与数值方法分离:Newton 将时间不变的物理模型与时间步进求解器分离。这使得不同的求解器可以应用于同一模型,从而针对不同的动态状态进行优化。
• 扁平数据优于面向对象编程 (OOP):仿真数据以张量和扁平数组的形式表示,而不是深层的类层次结构。此设计与 PyTorch 和 JAX 等机器学习框架兼容,可实现高效的向量化、即时编译、尽可能实现零拷贝互操作性,并轻松集成到学习工作流程中。
• 无隐藏状态:所有内部状态均公开,使用户能够完全控制内存和计算。求解器如同纯函数一般运行——数据输入,数据输出——任何状态变更都明确显示,以确保清晰性和可组合性。
• 模块化,“按需选择”:Newton 采用模块化设计,从底层几何体到完整的求解器均可集成。用户只需集成所需的组件,即可支持轻量级原型和完整的生产系统。
• 灵活的选择 API:与 PhysX 的 Tensor API 类似,Newton 的选择 API 允许创建场景中实体的专用视图,并支持对场景子集(例如特定机器人或机械臂)的模型、状态和控制对象中的所有属性进行批量零拷贝访问。它支持命名属性访问、关节/连杆过滤和自定义排序——使其易于扩展并与机器学习管道和自定义求解器集成。

求解器实现

Newton 支持多种求解器实现,包括显式和隐式方法的混合,以及简化坐标法和最大坐标法,每种方法在精度、内存使用和性能方面各有优劣。
• 标准求解器:Newton 内置经典的求解器,例如 XPBD(Macklin,2016)、Featherstone(Featherstone,1984)和半隐式欧拉法。这些求解器通常是成熟方法的轻量级实现,可供实现者或求解器开发者参考。
• 新求解器:Newton 的一项重要新进展是基于 MuJoCo Warp 库的 MuJoCo 求解器,它是使用 NVIDIA Warp 构建的 MuJoCo(Todorov,2012)算法的完整重新实现。与之前基于 JAX 的 MuJoCo XLA (MJX) 实现相比,这显著提升了性能,尤其是在涉及大量接触的复杂场景(例如灵巧操作、人形运动)中,无需手动进行接触修剪。此外,Newton 还将包含一个专用的最大坐标求解器,名为 Kamino Solver,由 Disney Research 开发,旨在稳健地处理具有闭环的系统 (Tsounis et al., 2025)。
• 求解器扩展:除了内置求解器之外,许多合作伙伴正在基于 Newton 构建他们的模拟器,例如用于触觉操作的专用 IPC (Li et al., 2020) 求解器 (Li et al., 2025),以及用于布料动力学的专用求解器,例如 Style3D Solver。

Newton 的求解器抽象支持包含刚体、布料和粒子模拟的混合系统。多个求解器可以独立运行以管理这些不同的动力学,目前正在进行的开发工作重点是实现双向耦合,以处理更复杂的交互。

Newton USD 作为 USD 物理标准化的过渡方案

作为 AOUSD 推进 USD 作为物理人工智能描述语言计划的一部分,正在开发新的方案,以与引擎无关的方式表示机器人系统的物理属性。
这项工作与 Newton 的求解器抽象 API 相一致,后者也旨在跨仿真后端进行通用化。Newton USD 方案与 Newton API 同步开发,作为一个过渡平台,用于识别和形式化通用仿真参数,其明确目标是将其提交给 USD 物理标准,以便将来纳入其中。

Newton 与 Isaac Lab 的集成

Isaac Lab 与 Newton 物理引擎的集成目前正在进行中。这项早期集成支持部分机器人环境,包括用于平坦地形运动、操作和基于视觉的工作流程的强化学习任务。这些实现作为测试平台,通过典型的机器人工作流程来评估 Newton 的性能、稳定性和物理精度。作为集成工作的一部分,进行与现有 PhysX 后端的仿真对比,以及在物理硬件平台上的仿真到实际验证。这些测试旨在表征仿真引擎和实际部署之间的策略可迁移性。

后续开发将着重于扩展 Newton 对 Isaac Lab 所有功能集的支持,包括增加传感器和执行器仿真及学习环境,目标是在未来几个月内实现与现有 PhysX 后端的功能对等。

这项工作是朝着将 Newton 确立为 Isaac Lab 内高保真、可扩展机器人仿真默认物理引擎迈出的关键一步。

策略评估与基准测试

Isaac Lab - Arena

Isaac Lab - Arena 旨在简化和扩展机器人策略评估流程。虽然 Isaac Lab 基于管理器的工作流程提供了强大的配置功能,但要实现从资产准备到环境搭建再到大规模策略评估的端到端仿真,通常需要大量的人工干预。这导致设置分散、开销高、可扩展性有限,且入门门槛高。Arena 基于 Isaac Lab 构建,引入一种系统化、可扩展的评估方法。它提供一个强大的框架,用于设置和执行复杂的实验,同时最大限度地减少基础设施开销,从而为更便捷、更高效地开展基于高级仿真的实验奠定了基础。

该框架支持简化的、可组合的任务定义,便于自定义和场景多样化,如图所示。它包含用于指标、数据收集和评估的可扩展库——首先是基于规则的方法,并将很快扩展到包含基于神经网络和基于代理的方法。 Arena 支持并行 GPU 加速评估,并与数据生成、训练和部署框架无缝集成,以支持闭环工作流程。它还包含一个不断增长的示例任务库,涵盖操作、运动和移动操作等任务。
请添加图片描述

NVIDIA 正积极与策略开发者、基准测试编写者和仿真合作伙伴(例如 Lightwheel)合作,共同开发 Arena,并利用它加速评估,同时促进他们的方法和基准测试回馈社区。Isaac Lab 的 Arena 即将开源于 GitHub。

装配基准测试

Isaac Lab 提供优化的环境,用于评估和测试机器人操作策略在接触密集型任务上的性能。这些任务对应于美国国家标准与技术研究院 (NIST) 装配任务板 (Kimble,2020) 的一个子集。先前的研究(Noseworthy,2025;Tang,2023,2024)表明,在这些环境中训练和评估的策略可以有效地迁移到真实机器人上。下一步自然是将这些接触丰富的环境扩展到涵盖 NIST 基准测试任务的全部内容,从而进一步拓宽其适用范围和影响力。

灵巧操作套件

Isaac 实验室目前提供一个基本的操作任务套件,包括使用 KUKA Allegro 机械手进行的举起、抓取和重定向任务。这些任务基于 DextrAH(Lum,2024;Singh,2024)和 DexPBT(Petrenko,2023)的先前工作。展望未来,计划大幅扩展该套件,使其涵盖工业、物流和家政服务等领域中更复杂、更真实的场景。具体来说,目标是配备多指手的人形平台,在非结构化的家庭环境中运行——从而扩大 Isaac Lab 在现实世界中高灵巧性任务中的适用范围。

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐