星尘智能 SmoothRL:投掷 39% 到 94%,三个成功率数字该怎么读
动态投掷 39% 提到 94%,给笔戴帽 8% 提到 83%,开箱 30% 提到 90%。三个数字都很硬,但它们不是这篇报告里最值得看的部分。最值得看的是那条 30%→20%→40%→90% 的非单调曲线,和「机器人错法变了」这件事。
- 它解决的是一个很具体的工程错位:模型一次生成一段动作序列,但异步部署下机器人真正执行的往往只是其中一部分,在线强化学习却把整段一起优化,导致「没做过的动作也被记功或背锅」。
- 做法是把动作块切成三个区域:已提交(committed)、执行中(execution)、被丢弃(discarded),只让梯度穿过真正执行的那一区。
- 三个真机数字:动态投掷 39% → 94%,给笔戴帽 8% → 83%,快递开箱 30% → 90%,均在绳驱本体 S1 上完成。
- 关键参数是节奏:S1 以 30 Hz 执行动作,推理请求 5 Hz(每 200 毫秒一个新动作块),每次预测 32 帧,其中只有 6 帧真正被执行。
- 开箱那条曲线不是单调上升的:在 150 个 rollout 时成功率一度从 30% 掉到 20%,再回升到 40%,最后到 90%。
- 它不是自主进化:基础策略被冻结,只训残差修正,且依赖稀疏的成功/失败奖励,允许人工介入。
机器人手在做 A,模型在算 B
现在的 VLA 与世界—动作模型,通常一次生成未来一整段动作序列,也就是 action chunk。模型越来越大,推理耗时越来越长,而机器人不能每隔几百毫秒停下来等下一段结果——尤其在投掷这类任务里,停一拍,已经攒起来的速度就掉了。
所以真实部署里普遍采用异步推理:机器人继续执行手上的动作,模型在后台同时算下一段。手上做 A,模型已经在算 B。
这个安排解决了卡顿,却给在线强化学习出了一道新题。传统在线 RL 默认一种规整的节奏:模型算出动作,机器人执行,按结果更新策略——模型生成什么,机器人就执行什么。异步执行打破了这个对应关系。
结果是:一整段动作块里,有些动作已经来不及改,有些真正执行了,还有一些根本没有发生过。如果强化学习照样把整段一起优化,就会出现一个很直接的荒诞——机器人没做过的动作,也可能因为这次任务成功而被记功,或者因为失败而背锅。
只对真正执行过的动作求梯度
SmoothRL 的处理分两步。第一步把账算清楚:把 action chunk 按执行状态切成三个区域——已提交区(上一轮已经提交、不可再改)、执行区(本轮新生成、机器人实际会走完)、丢弃区(模型生成过但会被下一轮覆盖)。训练时只让梯度穿过执行区,机器人的优化目标才和它真实经历的过程一致。
第二步更关键:让训练和部署遵守同一套时间节奏。很多方案是在理想的同步环境里训练,到部署才切异步;SmoothRL 反过来,在训练 rollout 阶段就完整跑异步推理环路,让推理延迟、动作切换、执行节奏与真实部署保持一致。团队把这条原则概括为 Reinforce in Deployment。
| 项目 | 取值 / 做法 |
|---|---|
| 基础策略 | 各任务微调后的 π0.5,沿用 RLT 基本骨架 |
| RL 结构 | 轻量 TD3-style actor-critic |
| 输出形式 | 在原始动作空间预测残差修正(residual correction) |
| 执行频率 | S1 本体 30 Hz |
| 推理频率 | 5 Hz,即每 200 ms 拿到一个新动作块 |
| 动作块长度 | 32 帧,其中 6 帧属执行区 |
| 额外约束 | 速度、加速度、加加速度的平滑性约束 |
39→94、8→83、30→90
三项真机验证都在星尘自研的绳驱本体 S1 上完成,覆盖两类互补能力:高速动态操作与高精度双臂操作。
但比数字更值得看的是错误模式的变化。在线 RL 之前,三项任务都有明显的系统性偏差:投掷时不能根据目标远近调节释放速度,开箱时刀片持续向左偏,给笔戴帽时对不同笔帽位置输出几乎一模一样的动作。这些不是随机噪声,是模型在异步失配下产生的固定偏移。
在线 RL 做的事情,是利用真实执行结果,一点一点把这些固定偏差修回来。到最终检查点,失败样本已经明显向成功位置收缩:开箱失败时刀片相对接缝的左右偏差约为 1–2 毫米,给笔戴帽的失败也主要变成正确位置附近的小幅错位。
30% → 20% → 40% → 90%
快递开箱这项任务的学习曲线,是整份报告里信息密度最高、也最容易被快讯漏掉的一条。
对做交付排期的人来说,这条曲线的意义超过三个终点数字。它意味着在线 RL 的收敛过程不能按「越跑越好」来做计划:中间存在性能回退窗口,而且回退幅度可能大到低于起点。如果你的验收节点恰好落在那个窗口里,你会得出完全相反的结论。
同一份报告里还有一组平滑性数据:在一次真实自主投掷 rollout 中,经过在线 RL 后,右侧末端执行器的加速度均方根下降 52%,急动度(Jerk)下降 47%。这说明它不只是把成功率做上去了,动作也变连贯了——这对硬件寿命和现场观感都有直接影响。这也是「Smooth」这个名字的来源。
它不是自主进化,也不该被当成自主进化
| 限制 | 含义 |
|---|---|
| 冻结的基础策略 | 只训残差修正,基础策略离目标行为太远时救不回来 |
| 稀疏奖励 | 当前只用任务成功/失败作为奖励信号 |
| 允许人工介入 | 训练中操作员可介入,介入动作直接进入训练数据 |
| 延迟预算硬约束 | 要求每次 chunk-level 推理都在预设延迟预算内完成 |
还有一个换算值得做一线的人记下来:如果一个动作每天重复 1000 次,99% 成功率意味着一天 10 次故障,95% 则是 50 次故障。成功率差 4 个百分点,故障次数差 5 倍。机器人的商业竞争力,正在从「能不能做出 Demo」转向「失败率是否低到足以投入业务使用」。
把这个换算套回 SmoothRL 的三个数字:94%、83%、90% 都是很大的提升,但离 99% 都还有距离。开箱任务 90% 意味着每天 1000 次里有 100 次失败——对一条真实产线来说,这仍然需要人工兜底。
搜狐科技同题稿件在「给笔戴帽」误差描述上存在自相矛盾(5 毫米 vs「一根头发丝直径」),本文未采用其表述。
解读时间:2026-09-04。