
你有没有见过这样的机器人视频它熟练地打开冰箱门,精准地夹起一根胡萝卜,稳稳地放进碗里然后……在关冰箱门的最后一步突然卡住反复试探最后干脆放弃了。这不是段子这是长时间序列机器人任务里最常见的失败模式。而更让人无奈的是就算机器人做对了前面九成的动作只在最后一步翻车它得到的训练反馈和从头就没做对是一模一样的都是零分。这篇论文要解决的正是这个一步错全盘零的问题。**当机器人任务变长麻烦就开始了**先说说这件事到底难在哪。现在的视觉语言动作模型VLA模型一种能把摄像头看到的画面和文字指令直接翻译成机器人动作指令的AI模型比如让机器人把苹果放进碗里它就能理解并执行在处理短任务时表现相当不错抓个东西、挪个位置成功率能做到八九成。但一旦任务变长比如把洋葱放进碗里把碗放进微波炉关上门按下启动键这种需要连续完成四五个有依赖关系的动作的任务模型的表现就开始明显下滑。论文里给出了具体数字在RoboCasa365这个厨房模拟环境的测试里用GR00T-N1.5这个模型经过普通的监督微调后处理短任务800到1000步的成功率是51.7%处理最长任务1400到2900步的成功率骤降到27.9%。差了将近一倍。为什么会这样因为这类模型通常是靠人类示范数据训练出来的。监督微调让模型模仿大量人类操作录像来学习的训练方式简称SFT这种训练方式有个天生的弱点它只见过示范里出现过的那些状态。一旦机器人在实际执行时稍微走偏一点进入了训练数据里没见过的状态它就不知道该怎么办了越走越偏最后彻底失败。这就像一个只背过标准答案的学生遇到题目稍微变个说法就完全懵了。那怎么办答案是让机器人自己在环境里多试试用强化学习来纠正它。强化学习让模型通过不断尝试和获得奖励反馈来自我改进的训练方法简称RL**终点奖励的老问题不看过程只看结果**问题来了现有的在线强化学习方法几乎都只在任务彻底成功的那一刻给一次奖励中间过程什么都不给。这套逻辑放在短任务上还凑合反正步骤少很快就能等到结果。但放到长任务上就出大问题了。想象一下你在教一个新手做一份需要八道工序的菜。如果你的评价标准是只要有一道工序做错这顿饭就是零分而不管他前面七道工序做得多漂亮那这个新手能从你的反馈里学到什么几乎什么都学不到。他不知道自己是哪一步开始错的也不知道前面的努力到底有没有价值。如果不给中间反馈新手很可能永远在原地打转因为全对才算数这个信号太稀疏了稀疏到几乎捕捉不到任何有用的学习信息。这就是论文反复强调的核心矛盾任务越长成功的完整轨迹越稀少终点奖励这种信号就越没用。一个做对了七步只错最后一步的机器人和一个刚开始就走错方向的机器人得到的反馈完全一样都是零。这显然不公平也不利于学习。一些研究者试着用学习出来的奖励模型来给出更密集的反馈比如训练一个模型专门去预测这个动作完成到百分之多少了。但论文指出了这类方法的一个隐藏漏洞一个单纯的进度分数,并不能说明这个进度是不是有效的进度。举个例子如果机器人在还没把物品放进箱子之前就把箱子盖子关上了这个关箱子的动作看起来像是往前推进了任务但实际上它完全打乱了正确的顺序这种进度不该被奖励。**StructRL的做法把任务拆开还要排好队**面对这个问题研究团队提出了StructRLStructRL本论文提出的强化学习框架核心思路是把长任务拆解成可验证的子任务并按照依赖关系给出中间奖励它的思路可以概括成两步先把一个长任务拆成一串小任务再给这些小任务排出先后顺序谁必须先完成谁才能拿到奖励。具体来说研究者用一个大语言模型论文里用的是Claude Opus 4.8来做任务拆解。给它一句指令比如打包午餐它会先提出一堆候选的子任务比如靠近箱子打开箱子加入鸡肉松开夹爪关上箱子然后对每个候选项做两轮筛选。第一轮叫可验证性检查问的是这个动作完成没完成能不能用环境里的状态直接、可靠地判断出来靠近箱子就被刷掉了因为很难给它定一个清晰的完成标准靠近到什么程度算靠近这个边界模糊不清。第二轮叫进度检查问的是完成这个动作是不是真的代表任务往前推进了一步松开夹爪就被刷掉了因为这个动作可能发生在成功的抓取里也可能发生在一次失败的尝试里它本身不代表任何有效进展。经过这两轮筛选留下来的子任务才会被组织成有先后顺序的依赖组。比如打开箱子要排在最前面加入鸡肉和加入苹果可以随便谁先谁后但关上箱子必须等这两样东西都放进去之后才算数。这套拆解加排序的逻辑其实很像老师批改一份需要分步骤的数学题。如果只看最终答案对不对一个学生哪怕前面所有推导都对、只是最后抄错一个数字也会被判全错得不到任何鼓励。但如果老师按步骤给分,先看第一步的公式用对没用对再看第二步的代入是否正确学生就能清楚知道自己哪里扎实、哪里需要加强。如果不按步骤给分那批改这件事本身对学习就没有任何指导意义学生只会在黑暗里反复试错。StructRL做的正是这件事把一个大任务拆成一步步可以单独打分的小题。**光有子任务奖励还不够还要看快慢**拆解好任务、排好依赖顺序之后还有一个问题每完成一个子任务该给多少奖励如果不管三七二十一每完成一个子任务就给固定分数会出现一个隐藏漏洞机器人可能会在完成一个子任务之后故意拖延到处瞎晃悠然后再去完成下一个因为反正分数是固定的拖延不扣分。这就像考试如果只看你答没答对不看你用了多长时间那考生完全可以在每道题上磨蹭很久反正结果一样。这种情况下评分机制没能真正鼓励高效率的行为甚至可能纵容拖延。StructRL的解法叫动态奖励节奏动态奖励节奏根据完成子任务所用的时间长短动态调整该子任务奖励大小的机制完成得越快奖励越接近满分它会参考人类示范数据中完成每个子任务大概需要多长时间然后用一个公式机器人实际用的时间和示范时间的比值越小也就是完成得越快奖励就越接近设定的上限拖得越久奖励就越往下打折。这样一来机器人不但要做对还要尽量高效地做对磨洋工不再是免费的选择。这两个机制加在一起也就是排队打分加看速度打折构成了StructRL奖励公式的核心。整套系统最后配合PPOPPO一种常用的强化学习优化算法全称是近端策略优化,通过限制每次更新的幅度来保证训练稳定来更新机器人的策略网络让机器人在下一轮尝试里做得更好。**实验结果数字说话**理论说得再好也得看实际效果。研究团队在两个基准环境上做了测试:RoboCasa365和LIBERO-Long分别搭配GR00T-N1.5和π0.5两个主流VLA骨架模型。在RoboCasa365上用GR00T-N1.5这个模型普通监督微调的整体成功率是38.6%当时最强的在线强化学习对手SimpleVLA-RL能做到41.5%而StructRL做到了49.1%比最强对手高出7.6个百分点。而且在任务最长的那一档1400到2900步StructRL的优势更明显比最强对手高出7个百分点说明这套方法在长任务上确实更管用这正好对上了论文要解决的问题。在LIBERO-Long上同样用GR00T-N1.5StructRL达到96.6%的成功率比最强对手的92.4%高出4.2个百分点。换到π0.5模型上趋势依然一致只是幅度略小一些。研究团队还专门做了一个对照实验把StructRL和另一种叫RobometerRobometer一个基于视觉语言大模型训练出来的通用奖励模型通过看视频画面来预测任务完成进度的方法放在同样的训练条件下比较。Robometer代表的是用学习出来的模型去猜进度这条路线而StructRL代表的是直接用模拟器里可验证的事实去打分这条路线。结果是StructRL在两个骨架模型上都赢了Robometer差距分别是2.4和3.2个百分点。这说明,比起让一个模型去猜任务完成到哪了直接用环境里可以验证的硬事实来打分效果更靠得住而且还不需要额外训练一个笨重的奖励模型,省了不少计算资源。研究团队还做了拆分实验一个一个加上StructRL的各个组件看每个部分到底贡献了多少。结果显示光是加上子任务奖励这一项就能把RoboCasa365的整体成功率从41.3%拉到47.4%,这是最大的一块提升。动态奖励节奏又往上加了0.5个点依赖排序的门槛机制再加1.3个点最终凑成49.2%。这个结果说明,给出中间反馈这件事本身就是最关键的一步排序和节奏是在这个基础上的进一步精细化打磨。有意思的是研究者还试过把任务拆解得更细细到把抓取这个动作再拆成靠近接触闭合手指抬起好几个小步骤。结果发现拆解密度不是越细越好。当平均每个任务的子任务信号数量从0增加到5左右时成功率一路上升到50.4%但如果继续加细密度涨到52个信号点成功率反而跌到37.6%比完全不拆解还差。研究者分析了原因发现主要是两方面造成的一是过细的拆解会让奖励信号提前触发捕捉到的动作还没真正完成任务意图二是子任务越多累积的总奖励规模也跟着膨胀反而稀释了原本清晰的信号。这提醒我们拆解粒度也需要一个恰到好处的平衡点不是越精细越科学。**表RoboCasa365与LIBERO-Long上不同方法的整体成功率对比GR00T-N1.5骨架**| 方法 | RoboCasa365整体成功率 | LIBERO-Long整体成功率 ||---|---|---|| 监督微调SFT | 38.6% | 90.6% || Sparse-RL | 40.2% | 91.2% || SimpleVLA-RL | 41.5% | 92.4% || PolicyTrim | 39.8% | 91.4% || **StructRL本文** | **49.1%** | **96.6%** |QAQ1StructRL是什么AStructRL是一个在线强化学习框架专门用来提升机器人在长时间序列任务上的表现。它把复杂任务拆解成一系列可验证的子任务并按依赖关系和完成速度给予中间奖励而不是只在任务全部完成时才给一次反馈。Q2StructRL和普通的监督微调有什么区别A监督微调只是让模型模仿人类示范录像遇到没见过的状态容易出错。StructRL则是让模型在环境里不断尝试并通过结构化的中间奖励告诉它每一步做得对不对、快不快从而逐步纠正和优化自己的行为策略。Q3为什么长任务对机器人模型这么难A因为长任务需要按顺序完成多个有依赖关系的动作一旦某一步出错就容易连带影响后面所有步骤。而传统的强化学习方法只在任务彻底成功时给奖励导致模型很难从失败或部分成功的过程中学到有效经验。