飞书原文 · 源修订 15
💡
机制课: 本课研究高层计划如何生成可达到、可验证、可恢复的子目标,并区分文本思维链、任务图、视觉子目标和基于世界模型的反事实规划。
学习目标
完成本课后,应能定义子目标的四项要求;构造任务图和前置条件;解释语言计划为什么不等于具身推理;比较符号、视觉、状态和 latent 子目标;设计闭环重规划和恢复实验。
1. 什么是有效子目标
子目标 必须满足:
- 可观测: 系统能够判断当前是否达到。
- 可达到: 低层策略有能力完成。
- 有用: 完成后提高整体任务价值。
- 可恢复: 失败时能诊断并选择替代路径。
“把厨房整理好”不是低层可执行子目标;“杯子稳定放在上层架子”更接近可验证状态。
2. 任务图与前置条件
任务图:
读法: 任务图由子目标节点集合和允许的转移边集合组成。
推导: 把每个可验收的任务阶段抽象为节点,把顺序、前置条件和可恢复路径抽象为有向边,就得到可检查、可修改的高层计划结构。
节点是子目标,边表示允许转移。每个节点可以有前置条件 和完成条件 。
若当前状态不满足前置条件,高层不能简单输出该子目标。规则可以来自人工知识,也可由世界模型和价值学习估计。

💡
交互验证|分层规划、技能与记忆实验室
改变层级深度、闭环重规划频率和测试时记忆,观察长时任务中的错误传播与适应能力。
:::3. 子目标的表示
| 表示 | 优点 | 主要问题 |
|---|---|---|
| 语言 | 语义清楚、可组合 | 几何和接触不精确 |
| 视觉目标 | 包含空间布局 | 可能生成不可达图像 |
| 状态目标 | 适合控制和验证 | 真实状态难获得 |
| 技能 token | 离散规划方便 | 能力边界固定 |
| 潜在目标 | 表达灵活 | 难解释和检查 |
4. 文本思维链的边界
文本 CoT 产生语言序列:
读法: 语言模型在观测 o 和任务指令 l 的条件下,生成长度 M 的文本推理序列 y。
推导: 自回归模型把这条联合分布分解为逐 token 条件概率的乘积,因此能生成连贯计划;但训练目标只约束文本概率,除非 y 的中间变量被真实感知、动作和结果监督,否则文字正确不等于物理闭环正确。
它可能改善任务分解,但不会自动完成:
- 视觉对象绑定。
- 三维可达性。
- 接触和力学检查。
- 执行后的状态更新。
- 失败恢复。
具身推理必须让中间推理变量受到物理观测和执行结果约束。
5. 世界模型提供反事实
对候选子目标或技能 ,世界模型预测未来:
读法: 技能级世界模型根据当前高层状态 z_k 和候选子目标 g_k,预测子目标执行结束后的下一高层状态分布。
推导: 把实现 g_k 的低层动作、环境随机性和持续时间边缘化,就得到相邻高层决策时刻之间的转移。它适合比较“先做哪个子目标”,但预测质量必须在计划器实际选择的分布上验证。
高层可以问:“先开抽屉还是先拿杯子?”并比较候选未来。模型必须在技能时间尺度学习,而不一定预测每个低层动作。
6. 价值与子目标排序
读法: 在高层状态 z 选择子目标 g 的价值,等于完成该子目标期间的回报,加上结束状态价值按实际持续时间折扣后的条件期望。
推导: 这是 Semi-MDP Bellman 分解:一次高层决策跨越 tau_g 个低层时间步,所以后续价值必须乘 gamma 的 tau_g 次方,并对低层执行结果与随机持续时间取期望。
价值评估子目标完成后的长期收益。高层规划可以结合世界模型和价值:
读法: 在当前可行子目标集合中,选择世界模型预测的技能回报与后续价值之和最大的子目标。
推导: 先用前置条件筛出可行集合 G(z_k),再用世界模型为每个候选产生结束状态分布,最后用即时进展和长期价值排序。若不先做可行性筛选,价值模型可能给不可执行但看似高收益的子目标高分。
7. 完成检测
完成检测器:
读法: 完成检测器根据当前子目标、截至时刻 t 的视觉观测、本体或力觉状态以及已执行动作,估计子目标已经完成的概率。
推导: 把完成定义为二元变量 d_t,比写成对子目标本身的概率更清楚。历史观测用于判断状态变化,q 表示本体或力觉信息,动作历史帮助区分“尚未尝试”和“尝试后失败”;阈值应根据过早切换与过晚切换的代价校准。
过早切换会让下一技能在前置条件未满足时开始;过晚切换浪费时间并可能破坏结果。完成检测应与技能终止和任务阶段数据联合训练。
8. 闭环重规划
高层不是一次性生成完整计划,而是:
- 生成当前子目标。
- 低层执行一段。
- 检查完成、失败和环境变化。
- 更新记忆和任务图。
- 选择下一子目标或恢复路径。
这与 MPC 相似,只是规划变量从连续动作变成子目标或技能。
9. 恢复策略
| 失败 | 恢复层级 | 例子 |
|---|---|---|
| 动作偏差 | 低层策略 | 重新对准抓取点 |
| 技能失败 | 技能重试或替换 | 换一种抓法 |
| 前置条件破坏 | 高层重规划 | 先扶正物体 |
| 任务不可行 | 请求人工或终止 | 目标物体缺失 |
10. 视觉子目标
生成未来目标图像 后,低层策略:
读法: 低层动作从同时以当前图像和目标图像为条件的策略分布中采样。
推导: 目标图像 o_g 描述期望的可见结果,策略学习减少当前观测与目标观测之间的任务相关差异。若目标图像身份不一致、不可达或缺少接触信息,视觉相似度下降并不保证物理任务完成。
视觉目标需要身份一致、几何可达、物理合理和可判断完成。π0.7 可以作为此路线与 VLA/世界模型的交叉案例。
11. 最小实验:闭环子目标是否真的改善长时任务
选择一个包含五个阶段、可精确复位的桌面或厨房任务,训练时留出一种对象布局和一种子目标顺序。固定低层技能、视觉骨干、训练数据量、模型调用次数和控制预算,比较一次性文本计划、规则任务图、闭环文本重规划、世界模型加价值排序、视觉子目标五种系统。
在第二或第三阶段注入对象移动、抓取滑落、目标占用和完成检测噪声。报告整任务成功率、平均完成阶段、非法子目标率、完成检测精确率与召回率、计划修改次数、局部恢复率、恢复时间、未见组合成功率,以及相同推理预算下的结果。
- 选择包含五个阶段的任务。
- 比较一次性文本计划和闭环子目标。
- 加入世界模型可达性检查。
- 加入价值排序。
- 人为扰动一个中间阶段。
- 报告任务成功、阶段成功、恢复率和计划修改次数。
12. 本课练习
- 把一个自然语言任务写成任务图。
- 为每个子目标定义前置和完成条件。
- 构造文本计划合理但物理不可行的例子。
- 比较动作级 MPC 和技能级重规划。
- 设计视觉子目标可达性检查。
- 说明“具身思维链”必须包含哪些闭环变量。
13. 主要失败模式
| 失败 | 表现 | 诊断与修正 |
|---|---|---|
| 子目标不可观测 | 计划器输出“整理好”“处理完成”等无法从传感器验收的状态 | 把目标改写为对象、关系、接触或任务谓词,并明确检测器输入 |
| 前置条件遗漏 | 抽屉未打开就要求拿内部物体,或未抓稳就开始运输 | 记录非法子目标率,并用任务图或可达性模型过滤 |
| 文本计划幻觉 | 语言步骤合理,但对象不存在、位置错误或动作不可执行 | 让每个实体绑定视觉实例,并与同等状态反馈的非文本规划器对照 |
| 世界模型被利用 | 搜索找到模型预测高收益、真实世界却失败的子目标 | 报告计划分布误差、模型不确定性和真实 rollout 复核 |
| 价值捷径 | 高层追逐容易获得的局部奖励,破坏最终任务 | 检查奖励塑形、终局成功和子目标排序消融 |
| 完成检测误报 | 前置条件尚未满足就切换下一阶段 | 同时报告精确率、召回率、阈值曲线和过早切换代价 |
| 完成检测漏报 | 目标已完成仍反复操作,造成掉落或碰撞 | 检查时序标签、传感器延迟和迟滞机制 |
| 视觉目标不可达 | 目标图像漂亮但违反几何、身份或接触约束 | 加入对象一致性、逆动力学可达性和真实闭环验收 |
| 恢复循环 | 失败后在同一组子目标之间反复跳转 | 记录访问历史、失败原因、恢复预算和升级到更高层的条件 |
14. 论文事实、作者解释与课程判断
| 工作 | 论文事实 | 作者解释 | 课程判断 |
|---|---|---|---|
| SayCan | 将语言模型对技能序列的先验与机器人 affordance 或价值分数结合排序 | 语言知识与可执行性联合可支持长时任务 | 它依赖预定义技能和对应价值;应单独评测技能库覆盖、完成检测与恢复 |
| Inner Monologue | 把场景描述、成功检测等环境反馈写回语言上下文并重复规划 | 持续环境反馈可以改善长时计划执行 | 核心证据是闭环反馈,而非文字长度;必须和同信息、同预算的结构化状态规划对照 |
| Code as Policies | 让语言模型生成调用感知与控制 API 的程序式策略 | 代码结构可组合已有机器人能力并表达空间逻辑 | 程序可解释不等于物理正确,API 前置条件、异常处理和真实执行反馈仍决定可靠性 |
| VoxPoser | 利用语言模型和视觉语言模型构造三维价值图,引导运动规划完成操作任务 | 语言语义可以通过空间价值场落到连续控制 | 它展示了从符号到几何的桥梁;接触动力学、遮挡和价值图校准仍需独立验证 |

