当前位置: 首页 > news >正文

DyWA:用于可推广的非抓握操作的动态自适应世界动作模型

27年7月来自北大和 Galbot 的论文“DyWA: Dynamics-adaptive World Action Model for Generalizable Non-prehensile Manipulation”。

非抓握操作对于处理非结构化环境中过薄、过大或无法抓取的物体至关重要。传统的基于规划方法难以处理复杂的接触建模,而基于学习的方法最近成为一种有前途的替代方案。然而,现有的基于学习方法面临两个主要限制:它们严重依赖多视角摄像机和精确的姿态跟踪,并且无法跨不同的物理条件(例如物体质量和桌面摩擦力的变化)进行推广。为了应对这些挑战,提出动态自适应世界动作模型 (DyWA),它通过联合预测未来状态并根据历史轨迹适应动态变化来增强动作学习。通过统一几何、状态、物理和机器人动作的建模,DyWA 可以在部分可观测性下实现更稳健的策略学习。与基线相比,该方法在模拟中仅使用单视角点云观测就将成功率提高 31.5%。此外,DyWA 在实际实验中实现 68% 的平均成功率,证明其能够跨不同物体几何形状进行推广、适应不同的桌面摩擦力,以及在半满的水瓶和光滑表面等具有挑战性的场景中具有稳健性。

DyWA 如图所示:

请添加图片描述


非抓握操作(例如推动、滑动、倾倒和翻转)极大地扩展机器人操纵器的功能,使其超越传统的拾取和放置操作。这些灵巧的动作使机器人能够处理由于物体几何形状、杂乱程度或工作空间限制而无法抓取或抓取效率低下的任务。多年来,该领域取得重大进展,尤其是通过基于规划的方法 [34, 36, 40, 51]。这些方法虽然有效,但通常依赖于物体属性的先验知识,例如质量、摩擦系数,甚至完整的 CAD 模型,这限制它们在实际应用中的实用性。最近,基于学习的方法 [54] 已成为一种有前途的替代方案,可以提高对各种未见过物体的泛化能力。在这种范式中,策略在模拟环境中进行训练,然后在现实世界中进行零样本部署。例如,HACMan [56] 利用基于视觉的强化学习 (RL) 对物体表面点云进行处理,以确定执行动作基元的接触位置和运动方向。同样,CORN [8] 采用师-生蒸馏框架,其中教师策略首先使用具有特权状态知识的 RL 进行训练,然后蒸馏为基于视觉的学生策略。

然而,这些方法面临两个关键限制,阻碍其在现实世界中的稳健部署。首先,如 [10] 所述,它们严重依赖多视角摄像机来获取准确的物体几何形状,并依赖精确的姿态跟踪模块来估计状态。然而,在实际环境中,多视角设置可能无法使用,并且跟踪模块通常不完善,导致状态信息不可靠。其次,这些方法难以在不同的物理条件下泛化,例如物体质量和桌面摩擦力的变化,因为它们的模型主要关注几何形状而忽略底层的动态特性。

相反,在现实的机器人环境中,可泛化的非抓握操作策略,不仅应适应不同的物体几何形状,还应适应变化的物理特性,而所有这些都仅依赖于单摄像头设置,而无需额外的跟踪模块。

为了实现这一目标,首先在这种具有挑战性的环境下试验流行的师-生策略蒸馏框架。实验表明,虽然强化学习教师策略在获得预言机信息后能在各种动态条件下取得高性能,但依赖于部分观察的蒸馏学生策略会遭受显著的性能下降。导致这一问题的三个关键因素:
首先,单视图设置中严重的部分可观测性会忽略关键的几何线索,从而损害行动学习。
其次,马尔可夫学生模型本质上只学习不同物理变化的平均行为,导致性能不佳。
第三,传统的蒸馏方法仅监督潜特征和最终动作,这不足以捕捉有效学习富含接触动作所必需的潜动态。

为了解决前两个问题,本文引入一个动态自适应模块,该模块受到 RMA [20] 的启发,对历史观察-动作对进行编码以模拟动态属性,并结合足够的几何和物理知识。对于第三个问题,通过强制对动作及其相应未来状态进行联合预测来扩展传统的动作学习。这种重构将传统的动作模型转变为世界动作模型,在教师提供的信号之外引入额外的监督信号。这种协同学习范式改进模仿损失优化,并显著提高整体成功率。最后,为了用动态嵌入充分指导世界动作模型,用基于特征的线性调制 (FiLM) 条件作用将这两个部分连接起来。简而言之,其提出一个策略学习框架,它可以联合预测未来状态,同时根据历史轨迹调整动态。这种方法称为 动态自适应世界行动模型(DyWA)。


本文方法概述如图所示:世界动作模型处理当前观测值(部分点云、末端执行器位姿和关节状态)和目标点云(由初始部分观测值转换而来)的嵌入,以预测机器人动作和下一状态。此外,自适应模块对历史观测值和动作进行编码,并将其解码为动态嵌入,并通过 FiLM 调节模型。预训练的强化学习教师策略使用特别全点云和物理参数嵌入来监督动作和自适应嵌入。

请添加图片描述

任务制定

沿袭 HACMan【56】 和 CORN 【8】的研究,专注于通过非抓握操作实现 6D 物体重排的任务。机器人的目标是执行一系列非抓握动作(例如推动、翻转),将桌面上的物体移动到目标 6D 姿态。将目标姿态 G 定义为相对于物体初始姿态的 6DoF 变换,假设初始姿态和目标姿态在桌面上均保持稳定。时间步 t 的任务状态 S_t 由物体当前姿态与目标姿态之间的相对变换表示。观测数据包括部分点云 P_t、关节状态 J_t 和末端执行器姿态 E_t。

流程概述

训练流程遵循标准的师-生蒸馏框架。由于获取高质量演示的难度,首先训练一个基于状态的强化学习策略,并使用额外的特权信息(即完整的物体点云、任务状态和物理参数)作为教师策略。为了保持一致性,采用与 CORN 相同的奖励设计。为了获得适合实际部署的基于视觉策略,引入动态自适应世界动作模型(DyWA),该模型是从教师策略中蒸馏出来的学生策略。与教师策略不同,学生模型仅依赖于在实际环境中可获得的有限观察数据。

世界动作模型

定义:世界动作模型是指一种联合预测动作并预测相应未来状态的策略模型。尽管当前动作未作为显式输入,但该模型通过隐式地限制当前策略动作预测来展现世界模型的特征。

观测与目标编码:模型以观测和目标描述作为输入,使用单独的编码器对不同的模态进行编码。对于部分点云观测,用简化的 PointNet++ [41] 对其进行处理以获得 f_tP。对于机器人本体感觉,用浅层多层感知器 (MLP) 分别编码关节位置和速度 (f_tJ) 以及末端执行器姿态 (f_tE)。对于目标描述,不依赖于未知的任务状态 S_t,而是通过将初始点云 P_0 转换为目标姿态,得到 P_G = GP_0,从而构建视觉目标表征。然后,使用与观测点云编码器共享的网络对该目标点云进行编码。

基于状态的世界建模。实施端到端模型,该模型共同做出行动决策并预测其结果,从而创建协同学习过程,进而改进行动学习。具体而言,观测和目标嵌入通过多层感知器 (MLP) 处理,以生成动作 A_t 和下一个任务状态 S_t+1,监督信号分别来自教师策略和模拟结果。以目标为中心的世界模型,使用任务状态 S_t+1 而不是高维视觉信号来表示环境,从而使策略能够专注于与任务相关的动态。

除了定义的世界模型损失,还采用模仿损失,定义为预测动作和教师动作之间的 L2 损失。

动态自适应

为了增强世界模型适应各种动态的能力,从历史轨迹中提取环境变化的抽象表示。其方法将关于完整点云和物理参数的教师知识蒸馏成自适应嵌入,然后将其解码为动态嵌入。然后,该嵌入通过可学习的特征线性调制机制(FiLM)来调节世界动作模型。

自适应嵌入。设计一个自适应模块,用于处理连续的观察-动作对,以弥补当前部分观察中缺失的几何和物理知识。具体而言,在每个时间步,将观察嵌入 f_tO = {f_tP, f_tJ, f_tE} 与先前的动作嵌入 f_t-1A 连接起来,其中动作嵌入是通过浅层多层感知器 (MLP) 获得的。构建一个由 L 个过去观察-动作元组组成的输入序列,然后由基于 1D CNN 的自适应模块进行处理,以提取紧凑的自适应嵌入。

为了确保有意义的表示学习,连接完整点云嵌入和来自教师编码器的物理嵌入,监督自适应嵌入。

动态条件调节。一旦获得适应嵌入,将其解码为动态嵌入,并通过特征线性调制 (FiLM) 作为世界动作模型的条件输入。FiLM [38] 通过应用学习的缩放和平移变换,动态地调节世界动作模型的中间特征表示,从而使模型能够适应变化的动态。每个 FiLM 块由两个浅层 MLP 组成,它们以动态嵌入作为输入,并输出每个潜特征 f 的调制参数 γ 和 β。

将 FiLM 模块紧密集成到世界动作模型的早期层中,而对最终层进行无条件约束。该技术已被证明在将语言指导集成到视觉编码器方面非常有效 [1, 7]。本文该机制允许动态嵌入选择性地影响特征表示,从而能够根据底层动态自适应地调整模型行为。

具有可变阻抗的动作空间

为了实现机器人与物体之间的自适应力交互,采用可变阻抗控制 [8] 作为低级动作执行机制。这使得机器人能够根据任务需求动态调节交互力。具体而言,策略的动作空间由末端执行器的子目标残差 ∆T_ee 以及关节空间阻抗参数组成。关节空间阻抗由位置增益(P)和阻尼因子(ρ)参数化,其中速度增益计算为 D =ρ §0.5

为了执行指令的末端执行器运动,首先使用阻尼最小二乘法的逆运动学求解所需的关节位置。然后,将所需的关节位置 q_d 和阻抗参数 K,D 应用于关节空间阻抗控制器,从而为机器人生成阻抗-觉察的控制命令。利用广泛采用的 Polymetis API [24] 进行实现。

训练协议

总体学习目标可表示为模仿损失、世界模型损失和适应损失之和。首先在模拟环境中使用 PPO 对教师策略进行 20 万次迭代训练。随后,用 DAgger [43] 在教师监督下对学生策略进行 50 万次迭代训练。为了增强鲁棒性和泛化能力,改变物体的质量、尺寸和摩擦力,以及物体、工作台和机器人夹持器的恢复特性,这样在训练过程中引入域随机化,。物体尺寸经过调整,使其最大直径保持在预定范围内。为了进一步提升模拟-到-现实的迁移,在训练学生策略时对扭矩指令、物体点云和目标位姿注入小扰动。

桌面非抓握式重排的模拟基准测试

为了公平地比较它们的性能,在统一的模拟环境中将该方法与多个基准方法一起进行评估。尽管先前的研究 [8, 56] 已经开发自己的模拟环境来训练和验证非抓握式操作策略,但仍然缺乏一个标准化的基准来评估现有和未来的方法。为了弥补这一差距,基于 CORN 设置建立一个全面的基准测试。

请添加图片描述

具体来说,采用 IsaacGym 模拟环境,并利用来自 DexGraspNet [46] 的 323 个目标资产进行训练。此外,通过引入一个未见过目标测试集来丰富任务设置,该测试集包含 10 个几何形状各异的目标,每个目标缩放到 5 种不同的尺寸,总共包含 50 个评估目标。此外,引入两个额外的感知维度:(i) 单视图与多视图(三摄像头)观测;(ii) 是否已知用于构建任务状态 S_t 的物体姿态。训练和测试环境均完全随机化,包括质量、摩擦力和恢复力等动力学属性。

任务设置。在每轮开始时,随机将物体以稳定的姿态放置在桌子上。然后,机械臂以在预定义关节范围内均匀采样的关节配置进行初始化,该关节配置略高于工作空间,以防止与桌子或物体发生意外碰撞。接下来,在桌子上采样一个随机的 6D 稳定目标姿态,确保它距离初始姿态至少 0.1 米,以防止初始化后立即成功。为了保证每个物体的初始姿态和目标姿态有效,预先计算一组稳定姿态。如果物体的最终姿态在目标姿态的 0.05 米和 0.1 弧度范围内,则认为该回合成功。

基线。根据两个最先进的基线来评估方法:HACMan 【56】和 CORN【8】,它们分别代表基于基元的方法和闭环方法。由于 HACMan 最初是在 MuJoCo 模拟器中实现的,因此在基准测试中重新实现了它以进行公平的比较。然而,由于它需要严格的每点对应作为输入,因此在未知状态设置下其成功率极低。CORN 与本文方法共享相同的模拟环境,这能够以最少的修改直接训练和评估它。为了确保公平的比较,进一步增强 CORN,用相同的视觉主干替换其基于浅层 MLP 的点云编码器。此外,对于当前物体姿态未知的设置,为所有方法提供相同的目标点云表示以保持一致性。

真实世界实验

为了评估方法在真实世界中的适用性,在物理机器人装置上进行实验。目标是验证策略从模拟环境到现实世界的零样本迁移能力,并将其性能与先前的方法进行比较。

真实世界设置。实验装置如图所示。用 Franka 机械臂执行动作,并使用 RealSense D435 摄像头(位于侧视图)捕捉 RGB-D 图像。在 10 个真实世界中从未见过的物体上评估方法,这些物体包括滑溜的物体和质量分布不均匀的物体,例如半满的瓶子。在每轮实验之前,首先将物体放置在目标姿态并记录其点云。然后,将物体重定位到一个随机的稳定姿态,并让策略执行操作任务。完成后,用迭代最近点 (ICP) 来测量最终物体位置与记录的目标姿态之间的姿态误差。对于对称物体,如果直接 ICP 对齐存在歧义,放宽对称轴上的成功标准,仅计算平移和相关旋转分量的误差。

请添加图片描述

应用

提出一个实用的操作系统,该系统集成视觉语言模型 (VLM)、非抓握策略和一个抓取模型 [45]。利用 VLM,目标条件策略可以基于自然语言指令执行。具体来说,利用 SoFar [42](一个能够根据语言命令生成语义物体姿态的模型)来指定策略的目标。如图所示,给定命令“将电钻的握把放到某人手中”,SoFar 会生成电钻的目标变换(例如,旋转 ∆θ = 122° 和平移 ∆x, ∆y = [0.54, 0.09]),然后将其用作策略的目标。这使得自然的、指令驱动的目标切换成为可能,突出了方法在人机交互方面的潜力。

请添加图片描述

http://www.dtcms.com/a/311862.html

相关文章:

  • 硅基计划3.0 学习总结 伍 优先级队列排序初识
  • 【Vue3】Class绑定:从基础到高级的完整指南
  • Web前端实现银河粒子流动特效的3种技术方案对比与实践
  • 【完结篇】华为OpenStack架构学习9篇 连载—— 09 OpenStack编排管理【附全文阅读】
  • 深入 Go 底层原理(三):Goroutine 的调度策略
  • OSPF综合
  • VS Code高效开发指南:快捷键与配置优化详解
  • 深入 Go 底层原理(十二):map 的实现与哈希冲突
  • Mybatis学习之获取参数值(四)
  • 字符串(java不死)
  • c++之基础B(进制转换)(第三课)
  • 详解Python标准库之并发执行
  • AI Agent开发学习系列 - LangGraph(3): 有多个输入的Graph
  • C#多数据库批量执行脚本工具
  • OneCode3.0 核心表达式技术深度剖析:从架构设计到动态扩展
  • 波士顿咨询校招面试轮次及应对策略解析
  • 双机并联无功环流抑制虚拟阻抗VSG控制【simulink仿真模型实现】
  • OneCodeServer 架构深度解析:从组件设计到运行时机制
  • 「iOS」————weak底层原理
  • Conda创建虚拟环境,解决不同项目的冲突!
  • Windows本地使用dify搭建知识库+ollama+deepseek
  • 从零打造大语言模型--处理文本数据
  • vue引入阿里巴巴矢量图库的方式
  • SpringBoot3.x入门到精通系列: 2.3 Web开发基础
  • sifu mod制作 相关经验
  • 11:java学习笔记:1D array(1维数组)
  • Windows下定位Mingw编译的Qt程序崩溃堆栈
  • Python科研数据可视化技术
  • 2025年常见网络安全问题及针对性预防措施
  • 小迪23年-22~27——php简单回顾(2)