精读笔记

Problem Setting

《Enabling Long(er) Horizon Imitation for Manipulation Tasks by Modeling Subgoal Transitions》(CoRL 2025)关注的不是一般意义上的长时程 BC,而是子目标条件 imitation 在部署时的一个关键断点:policy 训练时知道每个状态对应哪个未来子目标,但测试时必须在线决定当前子目标是否已经完成、是否该切换到下一个。

这个问题的困难点在于,子目标切换不是一个局部数值判断。视觉状态距离、关节状态距离、物体接触状态和任务语义进展之间经常不一致。一个门把手位置接近目标并不意味着门已稳定打开;一个物体视觉上接近目标也不意味着 grasp/release phase 完成。长任务中,切换错误的代价不是一次动作错误,而是后续整段 policy conditioning 错位。

以前方法卡在这里:它们把 long-horizon task 分解成 shorter-horizon goal-conditioned control,但默认“什么时候换 goal”可以由阈值、budget 或 fixed future frame 解决。这相当于把最关键的时序 credit assignment 放在 policy 外部。论文的关键矛盾是:子目标分解降低了单段控制难度,但引入了新的离散调度问题;如果调度机制不可靠,长时程收益会被级联错误抵消。

Motivation

已有路线不够的根本原因是训练和部署之间的信息组织不一致。训练时,数据集已经提供了 state 到 future subgoal 的映射,策略只需模仿动作;部署时,策略却要依赖外部 heuristic 来维护 subgoal pointer。这个 pointer 一旦错,goal-conditioned policy 本身再强也会追错目标。

作者的核心观察是:固定 MSE 阈值在跨任务时没有稳定语义。不同任务、不同物体、不同 phase 的状态尺度差异很大,统一 epsilon 本质上是在用几何距离近似任务完成度。这个近似在 Franka Kitchen 这种相对短、子任务清晰的环境里还能调参,但在更长 episode 和真实 manipulation 里会变得非常脆。

关键缺口不是缺更大的 transformer,也不是缺更好的 action head,而是缺一种把“子目标进展/切换”纳入 policy learning loop 的机制。论文的动机可以概括为:既然子目标是长任务结构的核心变量,那么 subgoal routing 也应该被学习,而不是在部署时手写。

Core Idea

核心思想有两层。第一层是显式建模子目标完成:ST-GPT 在预测动作的同时预测是否切换子目标,把原先外部 threshold 决定的事件变成 policy 的输出。这引入了一个 inductive bias:动作生成和任务进展判断共享同一状态-目标表示,因此切换决策可以利用 manipulation phase、历史上下文和视觉语义,而不是只看状态距离。

第二层,也是论文更重要的一层,是取消“必须在某个离散时刻切换”的假设。SGPT 让当前状态对完整子目标序列做 cross-attention,动作不再条件在单一当前子目标上,而是条件在一个由 attention 产生的软任务上下文上。这样,子目标切换从 hard pointer update 变成连续 latent alignment:policy 可以逐渐降低对前一子目标的依赖、提前关注后续子目标,并利用完整任务结构避免局部贪心。

和 prior 的本质区别在于,prior 多数仍把任务进度表示为外部维护的 discrete index;SGPT 把 index 隐掉,让网络在 action generation 中自行完成 progress inference。这更像把 hierarchical control 中的 high-level scheduler 压进了 transformer attention,而不是显式写一个 scheduler。

Method

方法上真正必要的机制只有三个。

第一,使用 demonstration-derived visual subgoals 作为长任务骨架。它解决的是 BC 在长时程上监督信号稀薄、动作误差累积的问题。这里子目标不是新贡献,论文依赖 UVD 抽取 phase-shift frames;它提供的是中间锚点,使 policy 不必直接从初始状态条件到最终目标。

第二,ST-GPT 把 subgoal transition 作为 joint prediction target。它解决 threshold-based switching 对状态尺度敏感的问题。核心变化是:transition signal 与 action 共享表示,子目标完成不再是欧氏距离事件,而是学习到的状态-目标关系判断。不过它仍然保留 hard transition,因此只能缓解 heuristic,不解决离散切换本身的脆弱性。

第三,SGPT 用完整子目标序列替代单个 active subgoal。它解决的是 hard pointer 在超长任务中错误不可恢复的问题。当前状态通过 cross-attention 读取所有 subgoals,动作由连续任务上下文生成。这个机制的关键不是 transformer 模块本身,而是信息流从“单目标条件 + 外部切换”变成“全计划条件 + 内部软路由”。

action chunking、temporal averaging、VIP image encoder 等更像稳定训练和控制的工程支撑。它们重要,但不是论文的核心机制;如果没有 subgoal routing 的改变,这些技巧不足以解释 FrankaLHT 和真机上的差距。

Key Insight / Why It Works

这篇最有价值的 insight 是:在长时程 imitation 中,失败往往不是因为 low-level policy 不会执行某个子技能,而是因为 policy 在错误时间追踪了错误的子目标。换句话说,long-horizon BC 的关键 latent variable 是 task progress / subgoal alignment,而不是单步动作映射。

ST-GPT 有效的原因比较直接:它把 progress classifier 和 controller 绑在一起,避免了用固定距离阈值近似完成度。尤其在 InD setting 下,demonstration timing 和 state distribution 接近,transition bit 很容易学到,因此效果显著。但它的上限也很明显:transition label 极稀疏,且本质上依赖 demonstration 中的离散边界;一旦任务变长,单次 transition 错误仍然会级联。

SGPT 更可能是核心贡献。它本质上是在做 learned soft retrieval over subgoal memory:完整子目标序列是一个 test-time memory bank,当前 state query 从中检索与当前 phase 最相关的目标信息。这个机制同时带来三种收益:一是消除 hard boundary 的不可逆错误;二是允许提前利用未来子目标,形成弱形式的 lookahead;三是让不同子目标之间通过 encoder self-attention 建模依赖关系。

但需要直说:SGPT 的“long-horizon reasoning”更像 representation-level retrieval/alignment,而不是显式 planning。它没有搜索、没有状态预测、没有失败恢复,也没有在线重规划。它之所以能在 benchmark 上强,可能是因为给定的 subgoal sequence 已经包含了足够 dense 的 task plan,policy 只需把当前 observation 对齐到这个 plan。这里的泛化更多是对 unseen demonstrations 的 trajectory alignment,而不是对新任务结构的组合推理。

增益来源中最清楚的是 better inductive bias:soft subgoal attention 比 hard pointer 更适合模糊 phase transition。可能的辅助来源包括更强 test-time context、更多 subgoal tokens 带来的 memory reuse、以及 UVD 子目标质量。如果把完整 subgoal sequence 看作一种 hidden supervision,那么 SGPT 的优势并不完全来自 policy learning 本身,而来自把 demonstration plan 在测试时显式喂给模型。

Relation To Prior Work

这篇属于 goal-conditioned imitation + subgoal decomposition + transformer policy 的技术谱系,最接近 UVD-style visual subgoal decomposition、waypoint imitation、以及 BAKU/ACT/RT-style transformer policy。它不是在提出新的 subgoal discovery,也不是新的 BC objective;它真正补的是 subgoal-conditioned policy 在部署时的 progress tracking。

相对 UVD,本文的新增信息是:UVD 解决“取哪些子目标”,但没有解决“执行时如何在子目标间移动”。ST-GPT/SGPT 正是在补这个执行层调度问题。相对 waypoint imitation,本文强调视觉子目标和多任务长链条,而不是手工或 proprioceptive waypoint。相对 BAKU 这类直接 final-goal conditioning 的方法,本文认为单一最终目标对长任务不够 dense,但多子目标必须配套 transition modeling。

看似新的部分里,ST-GPT 的思想其实接近 task success classifier / termination classifier,只是把它 joint training 到 policy 中,并用于 subgoal pointer update。实质创新更在 SGPT:把 discrete subgoal scheduler 改写为 attention-based soft alignment。这个重组并不复杂,但切中长时程 imitation 的实际 failure mode。

它和 hierarchical policy 的差别也值得强调:传统 hierarchical 方法通常显式维护 high-level skill 或 option transition;SGPT 没有显式 skill abstraction,而是用子目标序列作为外部结构,把 hierarchy 压缩进单个 transformer policy 的 attention pattern 中。这更简单,也更依赖 demonstration plan。

Dataset / Evaluation

评估设计总体能支撑论文的主要 claim,但泛化 claim 需要谨慎读。论文覆盖了三类设置:Franka Kitchen 作为相对标准但较短的 long-horizon benchmark;FrankaLHT 作为作者构造的更长、更细粒度、多场景模拟 benchmark;以及 6 个真机桌面任务。这个组合比只在 Kitchen 上验证强很多,尤其 FrankaLHT 和真机结果显示 hard-transition 方法在更长 horizon 下确实会崩。

实验最有说服力的地方是横向趋势一致:阈值 GPT 对 epsilon 敏感;ST-GPT 在短 horizon 上能修复很多切换错误;SGPT 在更长 horizon 和真实场景中明显更稳。这正好对应论文的机制假设:hard transition 可以 improve,但 soft transition 才更 scalable。

但 evaluation 的 OoD 定义偏弱。所谓 OoD 主要是从 held-out trajectories 抽取子目标,而不是新任务组合、新物体类别、新语义指令或显著不同的初始分布。因此它验证的是 trajectory-level generalization / unseen demonstration alignment,而不是强语义泛化。

FrankaLHT 的引入是有价值的,因为 Kitchen 已不足以区分现代 policy 的长时程能力;但作为新 benchmark,任务模板、子目标密度、demonstration 收集方式是否偏向本文方法,文中未充分说明。真机任务提供了现实可信度,但规模仍小,且仍依赖给定 demonstration subgoals。总体看,实验支持“soft subgoal transition 有用”,但不足以支持“通用长时程 manipulation planning”。

Limitation

最大的隐含前提是:测试时已有一条合理、顺序正确、足够 dense 的子目标序列。也就是说,论文没有解决 long-horizon task planning 的生成问题,而是假设 plan 已经以视觉子目标形式存在。方法把难点从“如何完成长任务”转移为“如何跟随给定 demonstration plan”。这在 imitation setting 合理,但不能外推到开放任务执行。

第二个上限是 scalability。SGPT 对所有子目标做 attention,在中等长度任务中有效,但对于大量重复、层级组合、对象数量可变的任务,attend over all constituent subgoals 会遇到计算和语义双重瓶颈。作者也承认包装大量瓶子这类周期性任务需要更语义化的 decomposition。这里说明 SGPT 更适合有限长度、phase 明确的 demonstration following,而非无限扩展的任务执行。

第三,泛化能力可能被高估。当前 OoD 并不是跨任务语义组合,而是同任务族内 held-out trajectories。SGPT 的成功可能主要来自子目标序列作为 dense retrieval key,模型学会把当前视觉状态对齐到 demonstration phase。所谓推理更像 retrieval,不是长期状态建模。

第四,增益归因仍不完全干净。SGPT 与 baselines 不仅在 transition 机制上不同,也在可见上下文上不同:它看到完整 subgoal sequence,而 MLP/GPT/ST-GPT 大多只看当前 active subgoal。完整序列本身就是额外 test-time information。论文没有充分隔离“soft transition”与“more context/memory”两个因素。

第五,失败恢复能力缺失。若机器人偏离 demonstration 子目标 manifold、漏掉某个对象交互、或需要回退重试,SGPT 没有显式机制修正 subgoal sequence 或重新规划。attention 可以软化切换,但不能保证闭环任务级纠错。

Takeaway

  • 1. 长时程 imitation 的关键瓶颈之一不是 action model,而是 progress/subgoal alignment;把子目标切换留给 heuristic 会成为 horizon 扩展时的主要 failure source。
  • 2. 相比学习更准确的 hard termination classifier,更值得迁移的 insight 是把 discrete scheduler 变成 continuous attention/routing。
  • 很多分层控制问题都可以重新表述为“当前状态对计划 token 的软对齐”。
  • 3. SGPT 的价值在于把 demonstration plan 作为 test-time memory 使用。

一句话总结

这篇论文在长时程模仿学习中把“子目标切换”从外部 heuristic 推进为 policy 内部的 learned soft alignment,是从子目标分解走向子目标路由建模的一步,但其能力更接近 demonstration-plan retrieval than general planning。