news 2026/5/6 0:16:36

【学习笔记】让机器人“边想边动”——实时动作分块流策略的执行方法

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【学习笔记】让机器人“边想边动”——实时动作分块流策略的执行方法

引言:机器人“思考”太慢怎么办?

想象一下:你让机器人帮你点一根蜡烛。它拿起火柴,正要划燃时,突然“愣住”了——因为它在“思考”下一步该怎么做。这个“愣住”的时间,可能只有零点几秒,但对于一个需要精确动作的任务来说,足以导致失败。

现代机器人控制模型(尤其是视觉-语言-动作模型,VLA)虽然强大,但推理速度慢。更糟糕的是,机器人是物理系统,世界不会等它“想完”。这就是实时控制的挑战。

传统方法的困境

  • 同步推理:机器人执行一段动作后,停下来等模型生成下一段动作。问题是:模型生成动作的时间可能比执行时间长,导致机器人“卡顿”。
  • 动作分块:一次性生成多个动作,执行一部分,再生成下一批。虽然减少了推理频率,但在块与块之间容易产生不连续的“跳跃”动作,尤其在模型推理延迟较大时更明显。

我们的方法:Real-Time Chunking (RTC)

我们提出了一种无需重新训练的推理算法,能让模型边执行边思考,同时保证动作的平滑性和连续性。

核心思想:像“修图”一样补全动作
  • 当机器人在执行当前动作块时,我们已经在后台生成下一个动作块。
  • 如果新块生成得慢,我们就“冻结”那些已经被执行的动作,只补全未来的部分。
  • 这个过程类似于图像修复(inpainting)——已知部分不动,未知部分生成。
技术亮点
  • 软掩码机制:对重叠区域的动作给予逐渐衰减的权重,越远未来越不确定,越近过去越确定。
  • 基于流匹配的引导生成:利用伪逆引导(IGDM)算法,在每次去噪步骤中加入约束,使生成的动作块与已执行部分一致。
  • 无需重新训练:适用于任何基于扩散或流匹配的VLA模型。

实验结果

仿真实验(Kinetix)
  • 12个高动态任务(如投掷、接住、平衡等)
  • RTC在推理延迟增加时,依然保持高成功率,远超其他方法(如时间集成、双向解码等)
真实机器人实验
  • 6个高难度双手操作任务(如点蜡烛、插网线、叠衣服)
  • RTC在所有延迟条件下(+0ms, +100ms, +200ms)都表现出最高的任务吞吐量(成功进度/时间)
  • 对比方法在高延迟下会导致机器人剧烈抖动,触发保护停机

总结与展望

RTC是一种轻量级、通用、鲁棒的实时动作执行方法,适用于任何流或扩散模型。它让机器人能够在高延迟条件下依然流畅、精准地完成任务。

未来工作可以探索:

  • 与更轻量级的系统1/系统2架构结合
  • 应用于更动态的任务(如四足机器人 locomotion)
  • 减少RTC本身的额外计算开销

二、论文详细中文解析(技术向)

1. 问题定义

  • 控制周期(\Delta t):机器人控制器的采样时间(如20ms)
  • 推理延迟(\delta):模型生成一个动作块所需时间
  • 预测视野(H):一个动作块包含的动作数
  • 执行视野(s):每个块中实际执行的动作数

如果 (\delta > \Delta t),则无法在下一个动作到来之前完成推理 → 需要异步执行

2. 异步执行的挑战

  • 如果在执行当前块的同时生成下一个块,可能会出现动作不连续(如一个块向上,另一个块向下)
  • 简单的时间集成(如加权平均)会导致动作无效(如超出物理限制)

3. RTC 的核心机制

3.1 修复(Inpainting)视角
  • 将新动作块视为对旧动作块的“补全”
  • 已知部分:已经被执行的动作(冻结)
  • 未知部分:未来的动作(生成)
3.2 引导生成公式

使用 IGDM(伪逆引导扩散模型)方法:

[
\mathbf{v}{\mathrm{IGDM}} = \mathbf{v} + \min\left(\beta, \frac{1 - \tau}{\tau \cdot r\tau^2}\right) \left(\mathbf{Y} - \widehat{\mathbf{A}}\right)^\top \mathrm{diag}(\mathbf{W}) \frac{\partial \widehat{\mathbf{A}}}{\partial \mathbf{A}}
]

其中:

  • (\mathbf{W}) 是掩码(软掩码或硬掩码)
  • (\mathbf{Y}) 是目标值(已执行的动作)
  • (\tau) 是流匹配时间步
3.3 软掩码设计
  • 前 (d) 个动作:权重 = 1(完全确定)
  • 中间区域:指数衰减权重
  • 最后 (s) 个动作:权重 = 0(完全未知)

4. 实验设计与结果分析

仿真环境:Kinetix
  • 动态任务(力控制,无法“暂停”)
  • 加入动作噪声,强调闭环控制

结果

  • RTC 在延迟 (d = 4) 时仍保持高成功率
  • 软掩码优于硬掩码
  • 比 BID(双向解码)更快、更稳定
真实环境:(\pi_{0.5}) VLA
  • 双手臂 + 移动平台
  • 任务包括:点蜡烛、插网线、叠衣服等

结果

  • RTC 在任务吞吐量上显著优于同步推理和时间集成
  • 在高延迟下仍稳定运行,其他方法会触发安全停机
  • 在点蜡烛任务中,RTC 成功率更高

5. 方法局限性

  • 仅适用于扩散/流匹配模型
  • 增加了计算开销(反向传播)
  • 未在腿式机器人等更动态场景中验证

6. 未来方向

  • 结合系统1/系统2架构(如分层控制)
  • 降低 RTC 的额外计算成本
  • 扩展到更多动态任务(如四足机器人、无人机)

三、附录:关键公式与伪代码解读

流匹配更新公式

[
\mathbf{A}_t^{\tau + \frac{1}{n}} = \mathbf{A}t^\tau + \frac{1}{n} \mathbf{v}\pi(\mathbf{A}_t^\tau, \mathbf{o}_t, \tau)
]

软掩码公式

[
\mathbf{W}_i =
\begin{cases}
1 & i < d \
c_i \frac{e^{c_i} - 1}{e - 1} & d \leq i < H - s \
0 & i \geq H - s
\end{cases}
]
其中 (c_i = \frac{H - s - i}{H - s - d + 1})

算法流程(简化版)

  1. 初始化:当前块 (\mathbf{A}_{\mathrm{cur}}),延迟估计 (d)
  2. 主循环(GETACTION):
    • 返回当前块的下一个动作
    • 若已执行 (s) 个动作,触发后台推理
  3. 后台推理(INFERENCE LOOP):
    • 使用软掩码和引导生成新块
    • 替换当前块

四、总结

这篇论文提出了一种实用、高效、无需重新训练的实时动作执行方法,解决了大模型在机器人控制中“想得慢、动得抖”的问题。RTC 不仅在仿真中表现优异,在真实世界中也能稳定运行高精度任务,展示了其在实际部署中的巨大潜力。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/10 13:13:11

D3KeyHelper终极指南:如何轻松实现暗黑破坏神3自动化操作

D3KeyHelper终极指南&#xff1a;如何轻松实现暗黑破坏神3自动化操作 【免费下载链接】D3keyHelper D3KeyHelper是一个有图形界面&#xff0c;可自定义配置的暗黑3鼠标宏工具。 项目地址: https://gitcode.com/gh_mirrors/d3/D3keyHelper D3KeyHelper是一款专为暗黑破坏…

作者头像 李华
网站建设 2026/4/10 13:11:15

ARM 架构 JuiceFS 性能优化:基于 MLPerf 的实践与调优踊

Qt是一个跨平台C图形界面开发库&#xff0c;利用Qt可以快速开发跨平台窗体应用程序&#xff0c;在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置&#xff0c;实现图形化开发极大的方便了开发效率&#xff0c;本笔记将重点介绍QSpinBox数值微调组件的常用方法及灵活应用。…

作者头像 李华
网站建设 2026/4/10 13:08:15

DDT4All汽车诊断工具:5分钟掌握专业级ECU调参与CAN总线诊断

DDT4All汽车诊断工具&#xff1a;5分钟掌握专业级ECU调参与CAN总线诊断 【免费下载链接】ddt4all OBD tool 项目地址: https://gitcode.com/gh_mirrors/dd/ddt4all 想要深入了解汽车ECU系统却不知从何入手&#xff1f;DDT4All作为一款功能强大的开源汽车诊断工具&#x…

作者头像 李华
网站建设 2026/4/10 13:07:09

6G这事,我研究了3个月,说点不太好听的实话

&#x1f9e0;《6G这事&#xff0c;我研究了3个月&#xff0c;说点不太好听的实话》&#x1fa93;一、先泼冷水&#xff1a;大部分人根本不需要6G这话可能不太讨喜&#xff0c;但先说结论&#xff1a; &#x1f449; 90%的人&#xff0c;用不上6G你现在用手机&#xff1a; 刷视…

作者头像 李华
网站建设 2026/4/10 13:07:07

基于原生Android 16设置音量调用流程

应用或者按键调整音量→frameworks/base/media/java/android/media/AudioManager.javasetStreamVolume→frameworks/base/services/core/java/com/android/server/audio/AudioService.javasetStreamVolumeWithAttribution→setStreamVolumeWithAttributionInt→setStreamVolume…

作者头像 李华