机器人操作正在从结构化工业场景走向更开放的真实环境。相比完成单个预设动作,真实任务往往包含更长的执行链条、更复杂的物体交互,以及更多不可控的外部扰动。一次抓取没有完全夹稳、目标物体被轻微碰偏、双臂交接时姿态出现偏差,都可能让后续步骤偏离原本计划。
因此,可靠的机器人操作系统不能只会规划一条「正常路线」,还需要在执行过程中处理各种意外。
现有方法通常在失败发生后再检测、分析并重新规划恢复动作;但在长程任务中,这种事后补救往往会带来额外延迟,也容易让机器人陷入重复回退和重新执行。
近期,香港中文大学(深圳)、跨维智能与深圳河套学院的研究者提出了 AgentChord,一种面向机器人操作失败恢复的智能体系统。该工作已被机器人领域旗舰会议Robotics: Science and Systems (RSS) 2026接收,并已开源代码。
AgentChord 想解决的问题很直接:机器人能不能像人一样,在动手之前就想好「如果出问题该怎么救」?它不把失败恢复留到执行中临时重规划,而是提前预测可能发生的失败,把对应的恢复动作写进任务图。
这样,一旦在线监控发现异常,机器人可以立即切换到已经编译好的恢复分支,纠正当前状态后继续完成任务。
为什么不能等失败后再想办法?
人做操作任务时,很少真的从零开始「重新规划」。倒水时杯子歪了,我们会顺手扶正;瓶子快滑了,我们会立刻调整握姿;两只手交接物体没对准,一只手会退一点,另一只手再靠近。这个过程通常很快,也不会打断整个任务。
现在很多机器人系统采用的是另一套流程:执行动作,检测失败,调用多模态大模型分析原因,再生成恢复动作。这个思路在简单任务里可行,但一到长程任务,问题就会变得明显。
一方面,多次调用大模型会带来延迟。等系统完成观察、推理和重新规划时,错误可能已经扩大,比如水瓶已经倒下,或者物体已经滚到难以抓取的位置。
另一方面,如果不重新调用大模型,只是简单回退到上一个节点再执行一遍,也不一定有效。杯子倒了需要扶正,不是重复「接近杯子」;交接失败需要重新组织两只手的位置,也不是简单退回上一帧。
AgentChord 的出发点,就是把「失败恢复」从事后补救,变成执行前的一部分。
AgentChord:把任务、失败和恢复放进同一张图
AgentChord 将一个机器人操作任务表示为有向任务图。图中的节点是语义子目标,比如「抓住瓶子」「移动到杯子上方」「完成倾倒」;边则表示从一个子目标到下一个子目标的动作转换。
在这张图上,AgentChord 组织了三个智能体角色。
任务结构化智能体负责读懂语言指令和初始场景,先搭出一条正常完成任务的主线。可以把它理解为先写出「应该怎么做」的任务骨架。
恢复编排智能体会沿着这条主线检查每个关键步骤,提前想象可能出错的情况:物体滑落、目标位置被挪动、夹爪没有真正夹紧、物体倾斜、双臂相对位置失准等。对于这些失败,它会插入对应的恢复节点和恢复边,并指定恢复后应该回到任务图中的哪个后续位置。
执行编译智能体则把这些名义动作和恢复动作都编译成机器人可以执行的程序,同时生成低延迟监控函数。执行时,系统不需要反复询问大模型,而是持续读取物体位姿、点云几何、夹爪开合、关节状态等信号。一旦监控函数触发,机器人就直接进入对应的恢复分支。
这里最关键的一点是「前向恢复」。AgentChord 并不是鼓励机器人一失败就倒退重来,而是尽量让恢复动作继续朝最终目标推进。恢复完成后,机器人会重新汇入后续任务节点,避免重复执行已经完成的部分。
这让 AgentChord 更像是在任务开始前写好一份带应急段落的「执行乐谱」:正常动作是一条主旋律,恢复动作是提前准备好的变奏。什么时候切换,由在线监控来决定。
仿真和真实机器人实验
研究团队在 EmbodiChain 仿真环境和真实 CobotMagic 双臂机器人上进行了评测。任务覆盖单臂倒水、双臂倒水、餐桌整理、方块交接、折叠毛巾、咖啡托盘摆放六类场景,其中既有刚体物体,也有薄物体和柔性物体;既有单臂操作,也有异步和同步双臂协作。
在仿真实验中,团队选取单臂倒水、双臂倒水和餐桌整理三类任务,并以不同概率注入物体掉落等扰动。AgentChord 在所有设置下取得最高平均成功率,达到99.2%;平均执行时间为41.5 秒,也优于 Inner Monologue、DoReMi、ReKep 和 Code-as-Monitor 等基线方法。
这个差距并不只是来自「检测更准」。更重要的是,AgentChord 在失败发生前就已经准备好了恢复分支,因此不用在现场重新走完整的大模型推理和规划流程,也不需要反复回退执行。
真实机器人实验更接近实际部署环境:感知有噪声,抓取会失败,人为扰动也更难完全控制。在六个真实任务上,AgentChord 取得77.5%的平均成功率和92.2 秒的平均执行时间。作为对比,Code-as-Monitor 的平均成功率为 72.5%,平均执行时间为 130.9 秒。
在双臂倒水、方块交接这类需要精细协作的任务中,提前编译恢复分支的优势尤其明显。物体被挪动、掉落或姿态异常后,机器人可以快速进入对应恢复动作,而不是等待一次新的完整推理。
论文进一步给出了六类真实任务的多组试验对比:每一行对应一次独立试验,左侧是初始场景,右侧是任务完成后的结果。不同试验中,物体实例、位置、朝向以及外部扰动配置都会变化,但这些变化仍保持在机器人运动学可执行的范围内。
AgentChord 在这些不完全相同的场景中都能完成任务,在真实环境变化和执行不确定性下保持了稳定的恢复与继续执行能力。
下方两段执行视频展示了 AgentChord 在真实长程操作中的恢复能力。
在 Handover 任务中,机器人需要先由一侧机械臂抓取方块并送至交接位置,再由另一侧机械臂接手并完成放置。不同于失败发生后再临时重规划,AgentChord 在任务开始前就会预判可能出现的异常,例如交接过程中方块被外力移走,并提前生成对应的恢复分支。
实际执行时,一旦方块在交接前后受到扰动,系统不会重启整条任务流程,而是根据当前所处的任务节点触发相应恢复动作,重新调整双臂位置、夹爪状态和交接关系,再继续完成后续放置步骤。
双臂倒水任务则进一步考验系统的协作能力:一只机械臂需要稳定接水容器,另一只机械臂负责抓取水瓶、移动、对准并完成倾倒。当杯子或水瓶的位置发生变化时,AgentChord 通过在线监控及时发现偏差,并触发预先写入任务图的恢复动作,例如重新抓取、重新对准或调整双臂相对位置,使任务继续向目标推进。
这两段视频直观体现了 AgentChord 的核心思路:失败恢复不是事后重新规划,而是提前准备好的可执行分支。
视频链接:https://mp.weixin.qq.com/s/Bb2A51JmiuyBX8ufeS08wg?click_id=91
恢复轨迹也能用来训练策略
AgentChord 的作用不只是在执行时把任务救回来。它生成的失败恢复轨迹,也可以成为有价值的训练数据。
论文在单臂倒水任务中做了一个验证:在微调数据总量不变的情况下,把一半普通成功轨迹替换成 AgentChord 生成的可恢复失败轨迹。
结果显示,Sim2Real-VLA 策略在 50 次扰动测试中的成功次数,从 26/50 提升到 39/50。
这说明,机器人策略不应该只学习「顺利完成任务」的样子,也应该看到「出错后如何继续完成任务」。真实世界里的失败不可避免,而高质量恢复轨迹正好能补上这部分经验。
意义与展望
AgentChord 给机器人操作恢复提供了一种很清晰的组织方式:任务怎么做、哪里可能失败、失败后怎么恢复、恢复后接着往哪里走,都放在同一张可解释的任务图里。
当然,系统还不是万能的。它仍然依赖大模型提前预判常见失败模式。遇到罕见、复合或者完全没有被覆盖的失败时,仍可能需要额外诊断和动态补充分支。感知噪声、点云质量、逆运动学可行性,也会影响最终恢复效果。但这个框架的好处在于,它是模块化的。未来更强的视觉语言模型、更稳健的三维感知模块、更丰富的机器人技能库,都可以接入这张恢复增强的任务图。
从家庭服务到实验室自动化,从整理餐桌到复杂双臂装配,机器人迟早要面对各种意外。AgentChord 的意义在于,让机器人不再只是失败后的被动补救者,而是在行动开始前,就为可能发生的失败留好路。
作者介绍
第一作者:徐圣,香港中文大学(深圳)博士生,研究方向为强化学习及其在具身智能中的应用,曾在 RSS、ICLR、ICML、NeurIPS 等会议以第一作者发表论文。
通讯作者:刘桂良,香港中文大学(深圳)助理教授,研究方向聚焦具身智能决策与强化学习。在 NeurIPS、ICML、ICLR、RSS、ICRA、TPAMI 等国际机器学习会议和期刊上发表论文 50 余篇,担任 NeurIPS、ICLR 领域主席。