第96章:VLA / Foundation Model 在复合机器人上的应用¶
| 元信息 | 值 |
|---|---|
| 难度 | ⭐⭐⭐⭐(跨本体基础模型、动作 token、闭环频率与部署边界) |
| 预计时间 | 1 周(20-25 小时) |
| 前置依赖 | 复合/140_VLA移动操作,复合/150_Mobile_ALOHA与UMI,复合/20/30 控制基础 |
| 章节定位 | 跨方向前沿与博士路径:把 VLA 放进复合机器人系统,而不是把控制问题交给单个模型 |
前置自测¶
在开始本章前,请独立回答以下问题。 如果有两个以上答不出,建议先回顾对应章节。
| # | 问题 | 回顾入口 |
|---|---|---|
| 1 | π0 的 flow matching 动作头和 OpenVLA 的离散 token 动作头有什么差异? | 复合/140 |
| 2 | FAST 为什么使用 DCT 与 BPE 压缩动作片段? | 复合/140 与本章 96.4 |
| 3 | Mobile ALOHA 与 UMI 的数据接口分别适合训练哪类策略? | 复合/150 |
| 4 | WBC/MPC 为什么仍然需要高频运行? | 复合/20 与复合/30 |
| 5 | 人形或四足+臂系统中,VLA 输出若不满足稳定性约束会发生什么? | 复合/30 与 D3 调研 |
本章目标¶
- 理解 VLA / Foundation Model 在复合机器人中的接口位置和适用边界。
- 掌握离散动作 token、FAST tokenization、连续 flow matching 和 diffusion head 的核心区别。
- 能分析 S1/S2 双系统或三层系统的频率分工。
- 能设计 VLA + MPC/WBC/CBF 的安全部署架构。
- 能为博士研究判断数据、模型、控制和硬件四条路线的可行切入点。
前置依赖与下游连接¶
- 复合/140_VLA移动操作:提供 openpi、LeRobot、ACT、Diffusion Policy 的模型与部署基础。
- 复合/150_Mobile_ALOHA与UMI:提供高质量操作数据、标定和同步基础。
- 复合/20/30:提供统一动力学、MPC、WBC、安全约束和频率分层。
下游章节会继续使用本章的概念。 - 复合/270_SimToReal统一方法论、复合/人形控制章节会继续使用本章的边界分析。
96.0 知识地图:复合机器人基础模型栈 ⭐⭐¶
本章不是把多个论文名称排成清单,而是建立一棵可以复用的知识树。 根节点是任务闭环:人类给出目标,系统理解场景,策略给出动作接口,低层控制保证真实机器人安全执行。 每一个模型、数据集和开源项目都挂在这棵树上的某个位置。
复合机器人基础模型栈
├── 模型接口
│ ├── 图像-语言输入
│ ├── 本体状态输入
│ ├── 动作接口输出
│ └── 任务记忆
├── 动作表示
│ ├── 逐步离散 token
│ ├── FAST 动作 token
│ ├── 连续 flow
│ ├── diffusion chunk
│ └── EE 轨迹
├── 频率分层
│ ├── 语义 1Hz
│ ├── 视觉动作 5-50Hz
│ ├── 运动先验 50-200Hz
│ └── 控制 500-1000Hz
├── 数据来源
│ ├── 机器人遥操作
│ ├── 手持工具
│ ├── 人类视频
│ ├── 仿真合成
│ └── 网页图文
├── 部署边界
│ ├── 安全过滤
│ ├── 低层控制
│ ├── 延迟预算
│ ├── 跨本体适配
│ └── 失败恢复
本质洞察:VLA 的价值不是跳过机器人学, 而是把开放世界语义、视觉表征和任务条件转换成可被控制系统消费的动作接口。 低层控制仍然负责频率、力、稳定性和安全边界。
| 层级 | 输入 | 输出 | 典型频率 | 主要风险 |
|---|---|---|---|---|
| 任务语义层 | 语言、目标、场景记忆 | 子任务、技能选择、目标对象 | 0.2-2 Hz | 语义错解、目标歧义 |
| 视觉表征层 | RGB/RGB-D/本体状态 | 物体、可操作区域、场景 token | 5-30 Hz | 遮挡、反光、视角偏移 |
| 动作接口层 | 表征 + 指令 | EE 目标、关节片段、夹爪命令 | 5-50 Hz | 动作越界、时序漂移 |
| 控制执行层 | 参考轨迹、当前状态 | 力矩、速度、位置命令 | 100-1000 Hz | 碰撞、失稳、饱和 |
96.1 基础模型在复合机器人中的位置 ⭐⭐⭐¶
动机:Foundation Model 到底替代了哪一层?¶
基础模型擅长把多模态上下文压缩成任务相关表征。 它可以替代大量手写语义规则和部分动作生成模块。 它不能替代实时动力学约束、硬件驱动和接触安全。
反例与递进理解¶
- 反例:把基础模型当作单体控制器,模型输出一段动作后直接下发,接触力和稳定性无人负责。
- 机制:基础模型适合处理多模态语义和动作参考,实时物理约束仍由控制层承担。
- 工程接口:policy runtime、action adapter、safety controller 和 hardware gateway 必须分层。
- 失败模式:层级混淆会让错误跨过多个模块,最终在硬件端以碰撞或饱和形式出现。
来龙去脉¶
RT-1/RT-2 把 Transformer 引入真实机器人动作。 Open X-Embodiment 让跨本体数据训练成为主流。 以论文和官方发布为准,π0、OpenVLA、Octo、GR00T 和 Helix 可作为不同动作头与系统分层思路的代表性路线来理解。
核心机制¶
- 模型层负责解释”要做什么”。
- 动作接口负责描述”给控制器什么参考”。
- 控制层负责保证”如何安全做到”。
- 评测层负责判断”是否真的完成”。
基础模型能替代和不能替代的模块对比:
| 传统机器人系统模块 | 基础模型能否替代 | 替代条件/限制 |
|---|---|---|
| 物体检测与分割 | 能(部分) | VLM 隐式完成,但精度可能不如专用检测器 |
| 任务规划(TAMP) | 能(部分) | 短程任务通过端到端完成,长程多阶段仍需要结构 |
| 运动规划 | 能(隐式) | 模型隐式学到避障,但没有完整性保证 |
| 抓取姿态估计 | 能(隐式) | 从示教中学习,但新物体可能失败 |
| 实时力控 | 不能 | 需要高频反馈,基础模型延迟太大 |
| 关节限位保护 | 不能 | 硬件安全,不能依赖软件模型 |
| 碰撞检测 | 不能单独替代 | 可作为补充,但不能作为唯一安全手段 |
| 动力学约束 | 不能 | 物理定律不因模型变大而改变 |
本质洞察:基础模型替代的是”需要大量领域知识才能手写规则”的模块——物体识别、语义理解、抓取策略。不能替代的是”由物理定律决定”的模块——力矩限制、接触安全、动力学约束。分界线不在模型大小,而在”规则来自数据”还是”规则来自物理”。
数学接口¶
工程接口¶
- 把基础模型封装成 policy service 或 local runtime。
- 把动作接口封装成 action adapter。
- 把安全检查封装成 control gateway。
⚠️ 常见陷阱¶
- 概念误区:基础模型越大,控制层越不重要。实际是模型越通用,安全边界越要明确。
- 工程陷阱:把模型输出直接接到驱动,绕过限位和碰撞检查。
- 思维陷阱:把基础模型当作单一组件,而不是系统中的一个层级。
练习¶
- 画出一个 VLA + WBC 的四层部署图。
- 列出基础模型能替代和不能替代的模块。
- 用一个推门任务说明模型层和控制层的分工。
96.2 模型输入接口:图像、语言、本体与记忆 ⭐⭐⭐¶
动机:为什么同一个 VLA 在不同机器人上需要不同适配?¶
输入接口决定模型知道多少世界和自身状态。 复合机器人比桌面机械臂多了底盘、姿态、接触和任务阶段。 如果本体状态缺失,模型会把视觉中的晃动误解为物体运动。
反例与递进理解¶
- 反例:跨机器人训练只统一图像和语言,不提供本体状态,模型无法区分轮式底盘和人形手臂的可执行范围。
- 机制:输入接口要把图像、语言、本体、上一动作和任务记忆共同表达出来。
- 工程接口:缺失字段应使用 mask,而不是直接填零后假装真实观测。
- 失败模式:本体信息不足会让模型把机器人自身运动误解为外部物体变化。
来龙去脉¶
RT 系列强调图像和语言。 π0/π0.5 的公开路线可作为把本体状态和动作专家纳入 VLA 控制链的代表性思路。 GR00T/Helix 类公开系统可作为强调多频率模块和全身状态接口的代表性案例。
核心机制¶
- 图像输入提供语义和几何线索。
- 语言输入提供任务目标。
- 本体输入提供机器人当前可执行状态。
- 记忆输入提供长任务阶段和历史失败。
本体状态在跨本体训练中的挑战。不同机器人的本体状态维度完全不同:
| 机器人 | 关节数 | 本体状态维度 | 特殊状态 |
|---|---|---|---|
| Franka | 7 | 14(位置+速度) | 力矩传感器、碰撞检测 |
| Mobile ALOHA | 16 | 32+底盘速度 | 底盘里程计、双夹爪 |
| Stretch | 6 | 12+底盘 | 升降柱高度 |
| Unitree G1 | 29+ | 58+ | IMU、足底力 |
跨本体训练要么用 padding/mask 统一到最大维度,要么用 embodiment-specific adapter 把不同本体状态映射到统一表征空间。两种方法都有代价:padding 浪费容量且可能引入虚假相关,adapter 增加模型复杂度且需要为每个平台单独训练。
数学接口¶
工程接口¶
- 为不同机器人写 observation adapter。
- 保持输入字段稳定,缺失字段使用 mask。
- 把任务记忆与实时观测分离,避免低频语义扰动高频动作。
⚠️ 常见陷阱¶
- 概念误区:跨本体只需要统一图像和语言。本体状态维度和语义也必须对齐。
- 工程陷阱:缺失字段用零填充但不提供 mask,模型把零当成真实状态。
- 数据陷阱:训练时有腕相机,部署时无腕相机,模型失去关键接触视角。
练习¶
- 设计一个 G1 人形的 observation schema。
- 比较轮式双臂与四足+臂在本体状态上的差异。
- 说明任务记忆应该以多低的频率更新。
96.3 动作接口:Foundation Model 的输出契约 ⭐⭐⭐¶
动机:动作输出为什么必须是契约而不是随意向量?¶
输出契约说明模型输出的每个数如何被执行。 没有契约,模型训练和实机部署之间会出现隐藏假设。 跨本体模型尤其依赖统一动作语义。
反例与递进理解¶
- 反例:同一个 token 在源平台表示夹爪闭合,在目标平台表示腕关节旋转,迁移会产生灾难性动作。
- 机制:动作输出是契约,必须定义单位、frame、频率、horizon 和执行责任。
- 工程接口:每个平台都应提供 action contract,并由 adapter 显式转换到控制参考。
- 失败模式:动作契约含糊时,训练指标可能正常,实机却出现不可解释的方向错误。
来龙去脉¶
OpenVLA 可作为离散动作 token 路线的代表性开源 VLA。 Octo 和 Diffusion Policy 可作为动作 chunk 路线的代表性参考。 π0 可作为 flow 动作专家路线的代表性参考。 GR00T/Helix 类公开系统可作为高层视觉语言与低层运动模块分工的代表性参考。
核心机制¶
- 关节空间契约适合固定本体。
- 末端空间契约适合跨平台操作。
- 任务帧契约适合 UMI 类数据迁移。
- 全身契约适合人形上肢和步态共同控制,但安全压力最大。
动作契约的七个必需字段。一个完整的动作契约应包含以下信息,缺少任何一项都可能导致部署错误:
| 字段 | 说明 | 缺失后果 |
|---|---|---|
action_dim |
动作向量总维度 | 维度错配导致崩溃 |
action_space |
关节/EE/任务帧 | 解释错误导致方向反转 |
unit |
每维的物理单位(rad/m/normalized) | 幅值差异数量级 |
frame |
坐标系定义(base/ee/world/task) | 空间语义完全错误 |
rate |
输出频率和执行频率 | 速度语义改变 |
horizon |
动作片段长度 | 执行窗口错误 |
normalization |
归一化统计量版本 | 幅值系统偏移 |
本质洞察:动作契约不是文档,而是系统中最关键的接口协议。它类似于网络协议中的 schema——发送方和接收方必须严格一致,否则数据虽然能传输但语义完全错误。在网络中这叫"协议不匹配",在机器人中这叫"策略能跑但动作全错"。
数学接口¶
工程接口¶
- 在模型配置中写明 action_dim、unit、rate、frame、normalization。
- 将 action adapter 纳入评测,单独测接口误差。
- 动作下发前做可达性和动力学检查。
⚠️ 常见陷阱¶
- 概念误区:统一动作空间等于统一控制能力。动作空间只是一种表示,执行仍受硬件约束。
- 工程陷阱:模型输出 EE 轨迹,但机器人端 IK 用不同末端 frame。
- 安全陷阱:全身动作同时控制腿和臂,却没有稳定性过滤。
练习¶
- 为 Stretch、Mobile ALOHA、G1 设计三种动作契约。
- 讨论任务帧动作如何迁移到四足+臂。
- 列出 action adapter 的单元测试。
96.4 动作 token:从逐步离散到 FAST ⭐⭐⭐⭐¶
动机:为什么动作 tokenization 是机器人基础模型的核心数学对象?¶
语言模型天然处理 token 序列。 机器人动作是连续时间序列,必须被压缩成可学习、可解码、可实时生成的形式。 tokenization 的好坏直接决定自回归模型能否满足闭环频率。
反例与递进理解¶
- 反例:为了短序列过度压缩动作 token,擦拭动作仍平滑,插入任务却丢失接触瞬间的细节。
- 机制:FAST 类路线可作为用频域压缩和子词合并降低动作序列长度的代表性思路。
- 工程接口:tokenizer 要报告重构误差、接触片段误差、词表来源和解码滤波方式。
- 失败模式:tokenization 错误不是语言问题,而是动作频率、物理单位和接触细节问题。
来龙去脉¶
RT-2 可作为将动作离散化为 token 的代表性早期路线之一。 OpenVLA 的公开实现可作为每维离散 bin 动作表示的代表性参考。 FAST 可作为使用 DCT、量化和 BPE 压缩动作片段的代表性思路,具体细节以论文和官方发布为准。
核心机制¶
- 逐步离散简单,但 token 数随 horizon 和动作维度线性增长。
- DCT 利用机器人动作低频特性。
- BPE 利用动作片段中重复结构。
- 解码后仍需要反归一化和滤波。
Tokenization 策略深度分析¶
理解动作 tokenization 需要回答一个根本问题:机器人动作和自然语言有什么本质不同,以至于不能直接复用 NLP 的 tokenizer?
自然语言 vs 机器人动作的结构差异:
| 特性 | 自然语言 | 机器人动作 |
|---|---|---|
| 值域 | 离散词表(有限集) | 连续实数(无限集) |
| 维度 | 1(token 序列) | 高维(7-50 维并行) |
| 时间结构 | 语义依赖(长距离) | 物理连续性(局部平滑) |
| 误差容忍 | 一个词错整句可能崩 | 微小误差通常可以被控制层吸收 |
| 频率特性 | 无明确频谱 | 低频主导,高频只在接触事件出现 |
三代 tokenization 演进:
第一代:逐维逐步离散(RT-2、OpenVLA)。把每个维度的连续值量化为 \(B\) 个 bin,每步每维产生一个 token。对于 \(D\) 维动作和 \(H\) 步 horizon:
例如 7 维 50 步 = 350 tokens。以每 token 20ms 自回归延迟计算,单次推理需要 7 秒——远超闭环预算。
量化误差为 \(\epsilon = \frac{\Delta}{2B}\),其中 \(\Delta\) 是动作范围。256 bin 在 \([-1,1]\) 上的分辨率约 \(0.0078\),对关节角(弧度)来说约 \(0.45°\)。对精细插入任务,这个误差可能是"成功"和"卡住"的区别。
第二代:频域压缩(FAST)。利用机器人动作的频率特性——大部分动作能量集中在低频。
DCT(离散余弦变换)把时域动作序列变换到频域:
只保留前 \(K\) 个低频系数(\(K \ll H\)),就能以较小重构误差表示原始动作。
BPE(字节对编码)进一步把量化后的频域系数合并为更短的 token 序列。BPE 利用的是动作片段之间的重复模式——例如"缓慢接近"和"快速回退"可能对应频域中固定的系数组合。
压缩后 token 数从 \(D \times H\) 降低到 \(K_{effective} \approx \frac{D \times K}{merge\_ratio}\),通常能缩短 5-10 倍。
第三代的方向:把 tokenization 和动作生成解耦。例如使用 VQ-VAE 学习一个离散动作码本,或者直接用连续 flow/diffusion 头绕过 tokenization。两种思路各有工程代价。
跨领域类比:DCT 压缩动作片段与 JPEG 压缩图像的思路完全一样——利用信号的频域稀疏性。JPEG 把 \(8 \times 8\) 像素块做 DCT 后只保留低频系数;FAST 把 \(H\) 步动作做 DCT 后只保留低频系数。但区别在于:图像压缩丢失的高频是细节纹理,动作压缩丢失的高频可能是接触事件。插入和开瓶动作中的高频分量往往包含关键力信息。
数学接口¶
工程接口¶
- 先对动作片段做平滑和归一化。
- 选择 DCT 低频数量 \(K\) 时检查重构误差。
- BPE 词表训练必须只使用训练集,避免信息泄漏。
⚠️ 常见陷阱¶
- 概念误区:token 越短越好。过度压缩会丢失接触瞬间的高频动作。
- 工程陷阱:解码动作忘记恢复尺度,输出幅值过小。
- 思维陷阱:把自然语言 token 经验直接套到机器人动作,忽略连续性和物理单位。
练习¶
- 在 50Hz、7 维、50 步动作片段上计算逐步离散 token 数。
- 实现 DCT 截断并画出重构误差。
- 讨论 FAST 对擦拭、插入和抛接任务的适用差异。
96.5 Flow Matching 与 Diffusion Action Head ⭐⭐⭐⭐¶
动机:连续动作模型如何生成可执行片段?¶
连续动作头避免每维离散化误差。 它把动作片段看成高维连续样本,从噪声逐步变成示教动作。 这类方法更适合多模态接触动作,但仍需要闭环执行。
反例与递进理解¶
- 反例:扩散动作头采样步数随负载波动,机器人端仍按固定周期执行,接触相位开始漂移。
- 机制:连续生成式动作头用噪声到数据的过程表达多模态动作,但必须服从实时预算。
- 工程接口:采样步数、随机性开关、最大延迟和动作缓存策略要进入部署配置。
- 失败模式:生成质量和实时性相互制约,不能只看离线轨迹相似度。
来龙去脉¶
Diffusion Policy 使用条件去噪。 π0 可作为 conditional flow matching 动作头的代表性路线。 RDT-1B 可作为用 DiT 扩散模型处理双臂操作的代表性路线,具体规模和设置以论文发布为准。
核心机制¶
- Diffusion 学噪声或 score。
- Flow Matching 学从噪声到数据的速度场。
- 推理步数越少,延迟越低,但动作质量取决于模型和积分误差。
Diffusion vs Flow Matching 的工程权衡¶
在复合机器人部署中选择 diffusion 还是 flow matching 动作头,不是模型好坏的选择,而是系统工程约束下的权衡。
推理延迟对比。DDPM 标准采样需要 50-1000 步去噪,每步需要一次完整网络前向传播。DDIM 等加速方法可以降到 10-50 步,但质量会下降。Flow matching 的 ODE 积分通常需要 5-20 步 Euler 步就能达到可用质量。假设每步前向耗时 10ms:
| 方法 | 采样步数 | 推理延迟 | 可支持闭环频率 |
|---|---|---|---|
| DDPM | 50-100 步 | 500-1000ms | 1-2 Hz |
| DDIM | 10-50 步 | 100-500ms | 2-10 Hz |
| Flow (Euler) | 5-20 步 | 50-200ms | 5-20 Hz |
| Flow (自适应) | 3-10 步 | 30-100ms | 10-30 Hz |
对于需要 20Hz 以上闭环的接触操作任务,flow matching 的延迟优势是决定性的。
多模态表达能力。理论上 diffusion 和 flow matching 都能表达任意复杂的多模态分布。但实践中的差异来自训练稳定性——diffusion 模型通过逐步加噪/去噪积累了大量训练经验(从图像生成领域),训练技巧更成熟。Flow matching 训练更简单(纯回归损失),但对网络架构和学习率更敏感。
本质洞察:在机器人系统中,"模型更强"和"系统更可靠"往往不是同一回事。一个 10 步 flow 动作头配合 20Hz 闭环,可能比 50 步 diffusion 配合 2Hz 闭环更安全——因为更高的闭环频率意味着更快的纠错。
数学接口¶
工程接口¶
- 部署时固定采样步数和最大推理时间。
- 对输出动作做安全过滤。
- 记录每次采样的随机种子,便于诊断。
⚠️ 常见陷阱¶
- 概念误区:生成式动作有多样性就一定更强。实机更需要可控、多样性和稳定性平衡。
- 工程陷阱:采样步数随负载变化,控制频率随之抖动。
- 安全陷阱:随机采样导致偶发危险动作,必须有动作过滤。
练习¶
- 比较 DDPM 50 步和 flow 10 步在延迟预算上的差异。
- 推导 CFM 线性路径下的监督速度。
- 设计生成式策略的随机性开关和评测协议。
96.6 闭环频率:S2、S1、运动先验与控制内环 ⭐⭐⭐⭐¶
动机:为什么一个模型不能用同一频率处理所有问题?¶
语义理解不需要 1000Hz。 接触力和关节稳定必须接近硬件频率。 复合机器人系统自然分成低频语义、中频动作和高频控制。
反例与递进理解¶
- 反例:语义模块每次识别到新物体都立即改目标,高频控制层被迫追逐跳变参考。
- 机制:复合机器人需要语义、视觉动作、运动先验和控制内环按不同时间尺度分工。
- 工程接口:每层都要有缓存、超时、目标保持和上层失联处理。
- 失败模式:频率混淆会把低频语义噪声放大成高频机械抖动。
来龙去脉¶
Helix、GR00T 等公开系统可作为强调双系统或多层频率分工的代表性案例。 人形和四足+臂尤其需要低层运动先验或 WBC 保持稳定。
核心机制¶
- S2 类模块处理视觉语言和任务理解,频率约 1-10Hz。
- S1 类模块处理视觉运动动作,频率约 10-200Hz。
- WBC/PD/驱动内环运行在 500-1000Hz 或更高。
数学接口¶
$\(f_{semantic}<f_{policy}<f_{wbc}<f_{motor}\)$ 频率不是越统一越好,而是按物理时间尺度分层。
工程接口¶
- 为每层设置输入缓存和超时策略。
- 低频层只能更新目标,不直接抢占高频控制。
- 高频层必须能在上层失联时保持安全。
频率设计的量化方法。给定一个复合机器人任务,如何确定每层的频率?关键是识别每层处理的物理现象的时间常数:
- 语义层:任务阶段的最短持续时间。如果最短子任务持续 2 秒,语义层不需要超过 1-2Hz
- 视觉动作层:物体运动的特征时间。物体以 0.3m/s 移动,需要 0.01m 精度,则至少需要 30Hz
- 运动先验层:关节运动的特征频率。人形行走步频约 2Hz,但足底接触事件需要 50-200Hz 的响应
- 控制内环层:执行器的带宽。电机响应时间常数通常在 1-5ms,控制频率应为其 5-10 倍,即 200-1000Hz
层间缓存设计。当高层频率 \(f_H\) 低于低层频率 \(f_L\) 时,低层需要在两次高层更新之间使用缓存的目标。缓存帧数为 \(N_{buffer} = f_L / f_H\)。例如 S2 以 2Hz 更新目标,S1 以 50Hz 执行动作,则 S1 需要缓存最近的 25 步动作计划。如果 S2 在这 25 步内超时,S1 必须有独立的保持或回退策略。
⚠️ 常见陷阱¶
- 概念误区:高层模型输出越快越好。高频输出若没有物理约束,会把噪声直接打到机器人。
- 工程陷阱:S2 目标更新与 S1 动作片段边界不对齐,造成目标跳变。
- 安全陷阱:低频语义模块阻塞导致高频控制等待。
练习¶
- 为人形整理碗碟任务分配四层频率,写出每层的物理时间常数依据。
- 计算 7Hz 语义层和 200Hz 动作层之间需要多少动作缓存。
- 设计上层失联时底层保持稳定的状态机。
96.7 跨本体数据:统一与差异并存 ⭐⭐⭐¶
动机:为什么跨机器人训练既有效又危险?¶
跨本体数据能让模型学到更广泛的视觉语义和操作模式。 但不同机器人动作空间、工作空间和动力学差异很大。 统一训练必须保留本体身份和动作语义。
反例与递进理解¶
- 反例:把多个平台的关节动作直接拼接训练,模型学到平均动作,却没有任何一个机器人能执行。
- 机制:跨本体训练要共享语义和任务结构,同时保留本体身份、动作 mask 和工作空间差异。
- 工程接口:数据集中应明确 embodiment_id、有效字段、动作归一化范围和目标平台 adapter。
- 失败模式:跨本体数据越多,若契约不清,错误监督也会越多。
来龙去脉¶
Open X-Embodiment 统一了多机器人数据。 OpenVLA、Octo、π0 和 RDT 等路线都可放在跨本体数据训练的讨论框架中理解,但具体收益应以各自论文和官方评测为准。 跨本体迁移到腿足和人形时,低层控制差异更突出。
核心机制¶
- 共享的是视觉语义和任务模式。
- 不共享的是硬件几何、动作范围、接触动力学和控制频率。
- 本体 embedding、动作 mask 和任务帧动作是常见桥接方式。
跨本体泛化的理论分析¶
跨本体泛化可以用迁移学习的框架来理解。设源本体域为 \(\mathcal{S}\),目标本体域为 \(\mathcal{T}\),任务为 \(\tau\)。泛化成功需要三个条件:
条件 1:语义不变性。视觉场景和语言指令的理解不应依赖机器人形态。"拿起红色杯子"对轮式双臂和人形都是同一语义。VLM 预训练天然提供这种不变性。
条件 2:动作可映射性。源本体的动作和目标本体的动作之间存在可计算的映射 \(\phi: \mathcal{A}_S \to \mathcal{A}_T\)。如果使用关节空间动作,不同机器人的关节完全不同,映射不存在。如果使用末端空间或任务帧动作,映射变为 IK 问题。
条件 3:工作空间重叠。目标任务所需的工作空间必须在目标本体的可达范围内。一个在 1.2m 高桌面上训练的策略迁移到最大伸展高度 0.9m 的机器人上,无论模型多强都会失败。
这三个条件构成了跨本体迁移的"不可能三角"的边界。语义可以共享、动作需要映射、工作空间必须检查——三者缺一,迁移就会在该环节失败。
跨本体训练中的负迁移。当不同本体的数据被错误混合时,可能出现负迁移。最常见的形式是:
- 动作冲突:源本体的关节 3 控制肘部,目标本体的关节 3 控制腰部,混合训练让模型在关节 3 上收到矛盾梯度
- 工作空间偏差:大平台数据量大,模型倾向于生成大平台工作空间内的动作,小平台可能不可达
- 夹爪语义反转:不同平台的夹爪开合方向可能相反(0 表示闭合 vs 0 表示张开)
数学接口¶
$\(\pi(a|o,e_{embodiment})\)$ \(e_{embodiment}\) 表示机器人形态和动作接口信息。
工程接口¶
- 数据混合时记录机器人类型、动作接口和传感器布局。
- 训练时给模型提供本体标识或接口 mask。
- 迁移时先冻结低层控制,只迁移任务帧目标。
⚠️ 常见陷阱¶
- 概念误区:跨本体成功说明可以忽略机器人学。实际成功常依赖动作适配和低层控制。
- 工程陷阱:不同机器人夹爪开合方向相反,合并数据后标签冲突。
- 数据陷阱:强平台的数据量压倒小平台,模型偏向主平台动作。
练习¶
- 设计一个跨 Mobile ALOHA 和 Stretch 的动作统一方案。
- 说明本体 embedding 应包含哪些信息。
- 讨论轮式臂策略迁移到四足+臂的困难。
96.8 GR00T、Helix 与双系统架构 ⭐⭐⭐¶
动机:工业前沿为什么偏向多系统协同?¶
人形和复合机器人任务同时要求语义理解、全身协调和高频稳定。 单一大模型很难同时满足长时语义和毫秒级控制。 多系统架构把慢思考和快反应分离。
反例与递进理解¶
- 反例:高层视觉语言系统决定“拿杯子”,低层运动模块不知道杯子已被拿起,仍执行旧抓取先验。
- 机制:双系统架构需要在目标、动作片段、状态记忆和完成判据之间建立同步契约。
- 工程接口:S2 目标更新必须带版本号、有效期和阶段条件,S1 或运动先验按版本消费。
- 失败模式:双系统分工不清会产生目标滞后,而不是简单的识别错误。
来龙去脉¶
GR00T N1/N1.5 的公开资料可作为视觉语言系统和动作专家组合的代表性参考。 Helix 系列公开资料可作为 S2 视觉语言、S1 视觉运动和更底层运动先验分工的代表性参考。 这些工业系统共同指向频率分层和职责分离。
核心机制¶
- S2 处理任务意图和开放词汇语义。
- S1 处理像素到动作的短时闭环。
- S0 或 WBC 处理稳定、步态、力和姿态。
- 三者通过目标、动作片段和状态反馈通信。
为什么双系统不只是"工程方便"? 它反映了物理世界的多时间尺度本质。
- 语义时间尺度(秒级):识别杯子、理解指令、选择子任务——这些信息变化慢,处理延迟大(100ms-1s),但容许的误差也大(识别错了可以重新观察)。
- 运动时间尺度(毫秒级):维持平衡、吸收接触冲击、跟踪轨迹——这些必须在硬件允许的最高频率运行,延迟超过 10ms 就可能失稳。
如果把这两种时间尺度强行放在同一个模型中,要么语义理解被迫降低到不必要的频率,浪费计算;要么运动控制被迫等待语义模块,丢失物理安全。
跨领域类比:双系统架构类似于人类大脑的快慢系统(Kahneman 的 System 1/System 2)。S2 是"慢思考"——深思熟虑地理解任务。S1 是"快反应"——看到杯子就知道怎么伸手。WBC/S0 则类似于脊髓反射——不经大脑直接维持姿态。三者的响应时间差两到三个数量级。
数学接口¶
工程接口¶
- 定义清楚 S2 到 S1 的目标接口。
- S1 输出不能绕过 S0 的安全约束。
- S0 必须能在 S1 失效时保持站立或缓停。
⚠️ 常见陷阱¶
- 概念误区:双系统只是工程实现。实际上它反映了任务时间尺度的物理差异。
- 工程陷阱:S2 改目标太频繁,S1 动作还未完成就被打断。
- 安全陷阱:S0 只做跟踪,不检查接触和稳定裕度。
练习¶
- 画出 GR00T 类双系统的数据流。
- 为四足+臂设计 S2/S1/WBC 接口。
- 讨论 S2 频率低时如何保持长任务一致性。
96.9 安全边界:VLA + CBF/MPC/WBC ⭐⭐⭐⭐¶
动机:如何把学习策略放进形式化约束中?¶
基础模型输出概率意义上的动作,不提供硬安全证明。 机器人部署需要在动作执行前检查约束。 CBF、MPC 和 WBC 是三类常见安全边界。
反例与递进理解¶
- 反例:VLA 给出的动作离障碍物很近,CBF 或 MPC 没有被接入,系统只能在碰撞后依赖急停。
- 机制:安全边界应把策略参考投影到满足约束的动作集合,并记录投影量。
- 工程接口:过滤层要输出安全动作、激活约束、不可行原因和回退模式。
- 失败模式:安全层不可观测时,研究者无法知道失败来自策略还是约束冲突。
来龙去脉¶
传统控制先有约束再优化。 VLA 先生成动作再过滤。 混合架构要解决过滤后是否仍完成任务的问题。
核心机制¶
- CBF 适合快速局部安全投影。
- MPC 适合考虑短时未来和动力学。
- WBC 适合全身约束和力矩分配。
- 三者可以串联,也可以按任务选择。
CBF/MPC/WBC 的适用场景对比:
| 安全方法 | 时间视野 | 约束类型 | 计算复杂度 | 最适合的风险 |
|---|---|---|---|---|
| CBF | 瞬时(当前步) | 状态约束(距离、速度) | 低(QP) | 碰撞、越界 |
| MPC | 短时未来(0.1-1s) | 状态+动作约束 | 中(轨迹优化) | 动力学不可行、预测碰撞 |
| WBC | 瞬时(当前步) | 全身动力学 + 接触 + 力矩 | 中高(多优先级 QP) | 失稳、力矩饱和 |
组合安全层的设计。对于人形或四足+臂系统,三种方法可以串联使用:
每层的投影量应被记录——如果 CBF 频繁激活,说明 VLA 的动作分布与工作空间边界冲突;如果 WBC 频繁力矩饱和,说明动作要求超出硬件能力。
反事实推理:如果只用最简单的 clipping(裁剪到关节限位内)代替所有安全层会怎样?Clipping 只处理关节位置约束,不考虑速度、加速度、碰撞和稳定性。一个关节位置在限位内但速度极大的动作,clipping 不会拦截,但执行时会产生巨大冲击。更危险的是,clipping 后的轨迹不再是模型生成的轨迹——被裁剪的维度改变了,但其他维度没有相应调整,整段动作的协调性被破坏。QP 投影的优势在于它找到"最近的安全动作",保持整体协调性。
数学接口¶
工程接口¶
- 为每类风险定义 barrier 或 path constraint。
- 把过滤失败反馈给高层模型,触发重规划。
- 记录过滤量,作为策略训练的安全损失候选。
⚠️ 常见陷阱¶
- 概念误区:过滤层只是最后保险。过滤频繁激活说明动作接口或训练数据有系统问题。
- 工程陷阱:CBF 只看当前状态,忽略动作片段后半段会碰撞。
- 安全陷阱:MPC filter 修改动作后没有同步给策略记忆,下一步策略继续沿错误假设输出。
练习¶
- 为末端避障写一个距离 barrier。
- 比较 CBF 与 MPC filter 的适用场景。
- 设计过滤结果反馈给 VLA 的状态字段。
96.10 部署边界:算力、延迟、隐私与可靠性 ⭐⭐⭐¶
动机:基础模型上机器人时最先遇到哪些非算法问题?¶
真实部署受 GPU、散热、电池、网络和隐私约束。 大模型可以远程运行,但机器人安全必须本地闭环。 长期运行还需要日志、版本、回滚和异常处理。
反例与递进理解¶
- 反例:云端推理在演示时正常,家庭网络拥塞后动作过期,机器人仍继续执行旧片段。
- 机制:部署边界由算力、延迟、隐私、可靠性和维护成本共同决定。
- 工程接口:系统应区分本地动作缓存、远程语义服务、离线日志和隐私数据边界。
- 失败模式:可靠性不足常以偶发问题出现,平均延迟无法覆盖尾部风险。
来龙去脉¶
OpenVLA 可作为讨论量化部署路线的代表性开源参考。 openpi 支持服务化推理。 工业系统通常将大模型、动作专家和低层控制部署在不同算力节点。
核心机制¶
- 端侧推理降低延迟但受算力限制。
- 云端推理提高模型容量但引入网络风险。
- 混合推理让语义远程,动作和安全本地。
三种部署架构对比:
| 架构 | 端侧全部 | 云端全部 | 混合(语义云端+动作本地) |
|---|---|---|---|
| 延迟 | 最低(无网络) | 最高(含网络往返) | 中等(语义可异步) |
| 模型规模 | 受限于边缘 GPU | 不受限 | 大模型云端,小模型本地 |
| 可靠性 | 最高(无网络依赖) | 最低(网络中断则停止) | 中等(本地可降级) |
| 隐私 | 最好(数据不出机器人) | 最差(视频上传) | 可控(视觉可云端,动作本地) |
| 维护成本 | 模型更新需到现场 | 远程更新方便 | 分层更新 |
混合架构的具体设计。推荐的生产级架构是:
[云端] 大 VLM:理解指令、选择任务、生成高层目标
↓ (目标消息,1-5Hz,可容忍 200ms 延迟)
[本地] 小动作模型:把目标转成动作片段
↓ (动作片段,10-50Hz,需 <50ms 延迟)
[本地] 安全控制器:过滤和执行
↓ (控制命令,100-1000Hz,需 <5ms 延迟)
[本地] 硬件驱动
这种分层让每个模块都运行在合适的硬件上:大模型在云端 A100 上跑 1Hz 就够了,小动作模型在本地 Jetson 上跑 50Hz,安全控制器在实时 CPU 上跑 1kHz。
数学接口¶
工程接口¶
- 为每层设置 watchdog。
- 策略和控制进程分离。
- 模型版本、数据版本和标定版本必须一起记录。
⚠️ 常见陷阱¶
- 工程陷阱:模型升级后 action normalization 改变,机器人端未更新。
- 安全陷阱:云端断连后机器人继续执行过期动作。
- 系统陷阱:日志只记录成功结果,不记录过滤和超时。
练习¶
- 计算一个 20Hz 动作层的延迟预算。
- 设计端侧与云侧混合推理架构。
- 列出长期部署必须记录的日志字段。
96.11 评测基准:从 LIBERO 到真实家庭 ⭐⭐¶
动机:如何评价一个复合机器人基础模型?¶
基础模型评测不能只在单一平台上看单任务成功率。 需要同时看跨任务、跨环境、跨本体、长时程和安全指标。 仿真基准和真实家庭评测回答的问题不同。
反例与递进理解¶
- 反例:模型在标准基准上分数高,但真实厨房中相机安装、光照和物体材质都变了,任务失败无法归因。
- 机制:评测基准提供可比性,真实系统评测提供部署证据,两者都不能单独替代另一个。
- 工程接口:评测应同时记录任务分布、硬件设置、失败阶段和安全过滤统计。
- 失败模式:只追基准分数会忽略系统接口,只看实机视频又缺少可重复比较。
来龙去脉¶
LIBERO、RoboCasa、HomeRobot OVMM、DROID、OXE 和真实移动操作任务各自覆盖不同维度。 没有单一基准能代表全部复合机器人能力。
核心机制¶
- 仿真基准利于规模化和复现。
- 真实评测暴露感知、延迟、接触和硬件问题。
- 跨本体评测检验动作接口和数据混合。
仿真与真实评测的互补关系:
| 维度 | 仿真基准能评测的 | 真实系统才能评测的 |
|---|---|---|
| 任务语义 | 指令理解、多任务切换 | 开放词汇、新物体 |
| 动作质量 | 轨迹平滑度、任务完成率 | 接触力、材质摩擦 |
| 泛化能力 | 场景变换、物体替换 | 光照变化、相机脏污 |
| 系统延迟 | 算法延迟 | 端到端延迟(含通信和硬件) |
| 安全性 | 碰撞检测准确性 | 紧急停机响应时间 |
仿真评测的核心价值是**可复现的横向比较**——同一任务、同一初始条件下比较不同模型。但仿真永远不能替代真实评测,因为仿真中最容易的部分(完美传感器、完美同步、无通信延迟)恰恰是真实系统中最容易出问题的部分。
数学接口¶
工程接口¶
- 评测报告必须包含失败类型。
- 同一任务在训练环境和新环境分别评测。
- 安全指标与任务成功率并列报告。
⚠️ 常见陷阱¶
- 概念误区:仿真排名高就代表实机强。实机差异常来自传感器、摩擦和延迟。
- 工程陷阱:评测 episode 太短,看不到长时漂移。
- 数据陷阱:测试任务与训练任务共享同一采集背景,泛化被高估。
练习¶
- 为“清理厨房台面”设计评测指标。
- 比较 RoboCasa 与真实厨房的差异。
- 设计一个跨本体迁移评测矩阵。
96.12 博士路径:模型、数据、控制与系统四条线 ⭐⭐⭐¶
动机:怎样选择有研究价值且能落地的切入点?¶
复合机器人基础模型研究不是只训练更大模型。 高价值问题往往在模型、数据、控制和系统交界处。 选题需要同时考虑可验证性、硬件可得性和前沿空白。
反例与递进理解¶
- 反例:博士课题同时改模型、数据、控制和硬件,实验成功后无法说明真正贡献来自哪里。
- 机制:研究问题必须把变量收窄到可归因的接口、数据或控制假设。
- 工程接口:每个实验计划应列出固定项、变化项、度量项和失败判据。
- 失败模式:系统越复杂,变量越多,越容易产生无法复现的结论。
来龙去脉¶
D2 移动操作强调开放世界和数据。 D3 四足+臂强调动态稳定和接触。 D3 人形强调高维全身控制和跨本体学习。
核心机制¶
- 模型线:动作头、tokenization、跨本体表征。
- 数据线:UMI、遥操作、人类视频、仿真合成混合。
- 控制线:VLA + MPC/CBF/WBC 安全包络。
- 系统线:长时任务、失败恢复、持续学习和部署可靠性。
四条研究路线的可行性评估框架:
| 评估维度 | 模型线 | 数据线 | 控制线 | 系统线 |
|---|---|---|---|---|
| 硬件需求 | GPU 集群 | 机器人 + 采集工具 | 单台机器人 | 完整系统 |
| 实验周期 | 2-4 周/次训练 | 1-2 周/次采集 | 1-2 天/次验证 | 数月级集成 |
| 可归因性 | 高(控制变量) | 中(数据质量变化) | 高(约束可量化) | 低(系统交互) |
| 论文门槛 | 基准提升 | 数据规模/质量影响 | 安全性证明 | 系统演示 |
| 长期价值 | 随模型迭代变化 | 数据资产可积累 | 方法可复用 | 工程经验 |
选择路线时的实用建议:如果实验室有 GPU 集群但没有机器人,选模型线。如果有机器人和采集设备但 GPU 有限,选数据线。如果有控制背景,选控制线——这个方向的竞争者最少,因为大多数 VLA 研究者不熟悉控制理论。
数学接口¶
工程接口¶
- 选择一个窄任务做强闭环,而不是泛泛追求通用机器人。
- 保证每个实验能归因到模型、数据或控制改变。
- 优先构建可复现实验资产。
⚠️ 常见陷阱¶
- 思维陷阱:只跟最新模型名,忽略可验证问题。
- 工程陷阱:硬件无法稳定运行,研究变成平台维护。
- 选题陷阱:只做系统集成,没有可量化的新变量。
练习¶
- 提出一个 VLA + MPC filter 的博士课题,并写出实验指标。
- 设计一个跨 UMI、ALOHA、仿真数据的混合训练实验。
- 为 G1 或 Go2+臂选择一个 6 个月可完成的研究问题。
96.13 参考架构:VLA 高层 + WBC 底层 ⭐⭐⭐¶
下面给出一个跨轮式双臂、四足+臂和人形都能复用的接口草图。 它刻意把模型输出和电机命令分开,强调安全边界。
class ModelRuntime:
def select_action(self, observation):
"""返回动作接口片段,而不是电机命令。"""
raise NotImplementedError
class ActionAdapter:
def to_reference(self, action_chunk, robot_state):
"""把模型动作转换成 EE 目标或关节参考。"""
raise NotImplementedError
class SafetyController:
def filter(self, reference, robot_state):
"""检查限位、碰撞、稳定性和速度。"""
raise NotImplementedError
def closed_loop_step(runtime, adapter, controller, robot):
obs = robot.observe()
raw_action = runtime.select_action(obs)
reference = adapter.to_reference(raw_action, robot.state())
safe_reference = controller.filter(reference, robot.state())
robot.track_reference(safe_reference)
接口解释:
- ModelRuntime 可以是 OpenVLA、π0、Octo、GR00T 风格动作专家或自研策略。
- ActionAdapter 是跨本体迁移的核心,它理解动作单位、坐标系和机器人几何。
- SafetyController 是最后一道显式物理边界,可以由 CBF、MPC、WBC 或组合实现。
- robot.track_reference 才接近硬件执行,它不应直接暴露给基础模型。
96.14 从数据到模型到系统的完整工程闭环 ⭐⭐¶
回顾本章,从第 84 章的 VLA 移动操作,到第 85 章的数据采集,再到本章的基础模型系统栈,三章共同构成了一条完整的工程闭环:
这条闭环中最容易断裂的三个接口:
-
数据到训练的接口:归一化统计量不匹配、动作空间定义不一致、相机外参变化未更新。这些问题在
复合/150的采集链路中已详细讨论。 -
训练到部署的接口:模型版本和 stats 版本不同步、action adapter 未适配目标平台、安全过滤未接入。这些问题在本章的 runtime-adapter-controller 架构中给出了解决方案。
-
部署到数据的接口:失败 episode 没有回流到采集计划、评测指标没有细化到阶段、过滤统计没有用于诊断。这是"闭环"能否真正闭合的关键——如果失败只是被记录而不被利用,系统永远不会改进。
本质洞察:VLA 基础模型的工程成熟度不取决于模型参数量或基准分数,而取决于这条闭环是否能稳定运转。一个 1B 参数的模型配合完善的数据闭环、安全过滤和阶段化评测,比一个 70B 参数的模型裸部署更值得信赖。
96 本章小结¶
| 知识点 | 本章结论 | 能做什么 |
|---|---|---|
| 模型接口 | 基础模型输出动作接口,不直接输出裸电机控制 | 能设计 runtime-adapter-controller 三层接口 |
| 动作 token | FAST、离散 bin、flow、diffusion 是不同动作表示路线 | 能按频率和精度要求选择动作头 |
| 闭环频率 | 语义、动作、运动先验和控制内环必须分频运行 | 能为复合机器人分配频率 |
| 安全边界 | VLA 必须与 CBF/MPC/WBC 等显式约束结合 | 能设计安全过滤流程 |
| 博士路径 | 高价值课题位于模型、数据、控制和系统交界处 | 能定义可验证研究问题 |
96 累积项目:本章新增模块¶
- 新增
FoundationModelRuntime:统一封装 OpenVLA、π0、Octo、GR00T 类策略入口。 - 新增
EmbodimentAdapter:把跨本体动作转换为目标机器人可执行参考。 - 新增
FrequencyBridge:协调语义、动作、WBC 和电机内环频率。 - 新增
SafetyEnvelope:用 CBF/MPC/WBC 表达不可绕过的物理边界。
96 延伸阅读¶
| 材料 | 难度 | 阅读重点 |
|---|---|---|
| RT-2 / OpenVLA | ⭐⭐⭐ | 离散动作 token 与开放源 VLA 训练 |
| π0 / FAST / π0.5 | ⭐⭐⭐⭐ | flow matching、DCT+BPE 与开放世界移动操作 |
| Octo / RDT-1B | ⭐⭐⭐ | 跨本体策略和双臂扩散基础模型 |
| GR00T / Helix 技术报告 | ⭐⭐⭐ | 双系统、多频率和人形全身部署 |
| Open X-Embodiment / RoboCasa / HomeRobot | ⭐⭐ | 跨数据集与评测生态 |
96 故障排查手册¶
教学不能只讲系统如何搭起来,还要讲系统坏了怎么定位。 下表按症状组织排查路径,适合在仿真、采集和实机部署中直接使用。
| 症状 | 可能原因 | 排查步骤 | 修正方式 |
|---|---|---|---|
| 模型能理解目标但动作不可执行 | 动作接口与机器人几何不匹配 | 检查 action schema、IK 可达性和 frame 定义 | 修改 adapter,优先输出任务帧或 EE 参考 |
| 动作安全过滤频繁激活 | 策略分布与安全约束冲突 | 统计过滤量和激活约束;回放对应观测 | 补充约束感知数据或调整动作接口 |
| 跨平台迁移后成功率低 | 本体状态、夹爪语义或工作空间差异 | 比较源/目标动作范围和观测字段 | 加入本体 mask、重新归一化并小规模微调 |
| 高层目标频繁跳变 | 语义层没有任务记忆或结束条件 | 记录目标时间序列和阶段标签 | 加入任务状态机和稳定结束条件 |
| 延迟导致接触任务失败 | 模型推理或网络超出闭环预算 | 测端到端延迟分布;检查缓存策略 | 本地化动作层或减少采样步数 |
96 专题学习路径:从基础模型到复合机器人系统假设¶
本节把重复卡片改成一条前沿系统学习路径。 每张卡片都用限定语处理近年模型事实,并把注意力放回可验证接口。
96.A 使用方法¶
这些卡片不是零散速记,而是把本章主线压缩成可执行判断。 阅读时建议按顺序回答三件事:当前系统的关键接口是什么,最可能出现的反例是什么,工程上如何观测这个反例。 每张卡片都对应一个设计检查点,适合在方案评审、实验准备和实机排查前使用。
卡片 001:模型不是内环¶
- 关键判断:基础模型输出参考而非裸控制
- 反例:动作绕过 WBC 和限位直接发到驱动
- 机制:物理约束需要高频控制层执行
- 工程接口:policy runtime 与 control gateway 分开
- 失败模式:碰撞和饱和
- 练习:画出四层系统图
卡片 002:动作头是接口¶
- 关键判断:离散、flow、diffusion 是动作接口选择
- 反例:只比较模型大小,不比较动作表示
- 机制:动作头决定频率、误差和跨本体边界
- 工程接口:记录 action_dim、frame、rate 和 horizon
- 失败模式:迁移失败不可解释
- 练习:为三个平台写动作契约
卡片 003:OpenVLA 要限定语¶
- 关键判断:近年模型应按论文和发布理解
- 反例:把某路线说成唯一标准
- 机制:代表性路线说明接口思想,不替代复现实验
- 工程接口:在文档中标注“可作为代表性路线理解”
- 失败模式:过度强断言误导读者
- 练习:改写一句模型事实陈述
卡片 004:FAST 看重构¶
- 关键判断:压缩动作 token 要看物理误差
- 反例:只追求 token 更短
- 机制:DCT/BPE 类思路改变动作片段表示
- 工程接口:报告重构误差和接触误差
- 失败模式:接触瞬间失真
- 练习:实现 DCT 截断对比
卡片 005:flow 看延迟¶
- 关键判断:连续生成要服从闭环预算
- 反例:采样步数随任务随意变化
- 机制:ODE 或采样过程占用策略周期
- 工程接口:固定最大推理时间和缓存
- 失败模式:动作过期
- 练习:计算延迟预算
卡片 006:diffusion 看随机性¶
- 关键判断:多样性必须可控
- 反例:实机评测每次随机采样不同
- 机制:随机动作影响安全和复现
- 工程接口:记录种子并提供确定模式
- 失败模式:偶发失败难定位
- 练习:设计随机性评测表
卡片 007:S2/S1 要同步¶
- 关键判断:双系统需要目标版本契约
- 反例:高层目标变了,低层仍执行旧片段
- 机制:层间通信需要版本、有效期和阶段条件
- 工程接口:目标消息带 version 和 timeout
- 失败模式:目标滞后
- 练习:写 S2 到 S1 消息字段
卡片 008:频率按物理分层¶
- 关键判断:语义慢、接触快是系统事实
- 反例:所有模块都用同一循环频率
- 机制:不同现象有不同时间尺度
- 工程接口:为每层写 rate、buffer 和 fallback
- 失败模式:低频噪声进入高频控制
- 练习:分配人形操作任务频率
卡片 009:跨本体要身份¶
- 关键判断:共享语义不代表共享动作
- 反例:不同机器人没有 embodiment_id
- 机制:身份信息帮助模型解释有效字段和动作范围
- 工程接口:提供本体 embedding 或 mask
- 失败模式:平均动作不可执行
- 练习:设计 embodiment metadata
卡片 010:任务帧利于泛化¶
- 关键判断:EE 或任务帧动作通常比关节动作更易迁移
- 反例:源机器人关节轨迹直接给目标机器人
- 机制:任务 frame 保留对象相对关系
- 工程接口:adapter 负责 IK 和碰撞
- 失败模式:目标平台跳变
- 练习:把 UMI 轨迹转成任务帧
卡片 011:安全过滤要可观测¶
- 关键判断:过滤统计是诊断信号
- 反例:过滤层只返回改写后的动作
- 机制:约束激活说明策略和物理边界冲突
- 工程接口:记录原始动作、安全动作和激活约束
- 失败模式:无法归因
- 练习:设计 safety log
卡片 012:CBF/MPC/WBC 分工¶
- 关键判断:安全方法按时间尺度和约束类型选择
- 反例:所有约束都塞进同一个 clipping 函数
- 机制:CBF 适合局部约束,MPC 适合预测,WBC 适合全身分配
- 工程接口:按任务声明过滤链
- 失败模式:保守或漏检
- 练习:比较三类安全层
卡片 013:部署算力要预算¶
- 关键判断:推理延迟是系统参数
- 反例:模型升级后不测端到端延迟
- 机制:延迟改变动作相位和接触稳定
- 工程接口:记录平均、尾部和超时
- 失败模式:偶发接触失败
- 练习:写端到端延迟表
卡片 014:隐私边界要设计¶
- 关键判断:家庭数据需要权限和脱敏
- 反例:把所有视频上传远程服务
- 机制:部署架构影响数据流向
- 工程接口:区分本地视觉、远程语义和日志
- 失败模式:数据不可用或不可发布
- 练习:设计隐私字段
卡片 015:评测要双轨¶
- 关键判断:基准和实机互补
- 反例:只看 LIBERO 类离线指标
- 机制:基准提供可比性,实机提供部署证据
- 工程接口:同时记录 benchmark 和 real task
- 失败模式:纸面提升无法落地
- 练习:设计双轨评测
卡片 016:长任务要记忆¶
- 关键判断:单帧无法表示阶段
- 反例:模型重复执行已完成动作
- 机制:任务状态应独立于瞬时观测
- 工程接口:维护阶段状态和完成判据
- 失败模式:循环抓取
- 练习:设计任务记忆
卡片 017:失败恢复要入口¶
- 关键判断:开放世界任务一定会失败
- 反例:失败后只能急停
- 机制:系统需要检测、保持、回退和重新规划
- 工程接口:定义 recovery policy
- 失败模式:小错变大错
- 练习:写恢复状态机
卡片 018:数据来源要标注¶
- 关键判断:机器人、手持、视频和仿真语义不同
- 反例:所有数据混成一个 source
- 机制:来源决定动作可执行性和噪声模型
- 工程接口:source_id 进入 batch 和评测
- 失败模式:模型学到混合假设
- 练习:比较四类数据
卡片 019:网页知识有限¶
- 关键判断:语义知识不等于操作能力
- 反例:模型知道物体用途却不会抓取
- 机制:语言知识需要落到感知和动作接口
- 工程接口:把知识检索和动作生成分层
- 失败模式:语义正确动作错误
- 练习:分析一个工具使用任务
卡片 020:人形更看稳定¶
- 关键判断:全身平台不能只看手部成功
- 反例:手抓到物体但站姿不稳
- 机制:上肢动作和质心、接触、足底约束耦合
- 工程接口:WBC 或运动先验接在动作层下方
- 失败模式:操作成功但机器人失稳
- 练习:为人形拿杯子写约束
卡片 021:四足加臂看耦合¶
- 关键判断:底盘姿态会改变机械臂工作空间
- 反例:只训练机械臂,不提供机身姿态
- 机制:本体状态影响可达性
- 工程接口:observation 包含 base pose 和接触状态
- 失败模式:上坡场景失败
- 练习:设计四足加臂输入
卡片 022:服务化要错误码¶
- 关键判断:运行时接口需要明确异常语义
- 反例:模型失败返回空数组
- 机制:客户端必须知道是超时、拒绝还是无解
- 工程接口:定义状态码和回退动作
- 失败模式:异常变成危险动作
- 练习:写 runtime 返回协议
卡片 023:模型升级要回归¶
- 关键判断:新模型必须通过旧接口测试
- 反例:换模型后直接实机演示
- 机制:接口回归保障 action schema、延迟和安全统计不退化
- 工程接口:固定回归任务和日志字段
- 失败模式:能力提升伴随安全退化
- 练习:制定模型升级检查
卡片 024:研究变量要单一¶
- 关键判断:博士课题需要可归因
- 反例:一次同时换模型、数据和控制
- 机制:变量隔离让贡献可解释
- 工程接口:固定三条线,只改一条
- 失败模式:结论不可复现
- 练习:设计对照实验
卡片 025:论文结论要有边界¶
- 关键判断:前沿陈述不应超出公开证据
- 反例:把演示视频当作全面能力证明
- 机制:论文和官方发布只覆盖特定设置
- 工程接口:写清平台、任务和限定语
- 失败模式:读者误判成熟度
- 练习:给一段前沿描述加限定
卡片 026:adapter 是研究对象¶
- 关键判断:跨本体瓶颈常在 adapter
- 反例:只训练大模型,不测 adapter 误差
- 机制:adapter 决定动作语义落地
- 工程接口:单独评测 adapter 的几何和时序误差
- 失败模式:模型背锅
- 练习:设计 adapter 单测
卡片 027:日志是系统记忆¶
- 关键判断:没有日志就没有系统研究
- 反例:只保存最终视频
- 机制:多层系统需要跨层时间线
- 工程接口:记录目标、观测、动作、过滤、控制状态
- 失败模式:失败无法重放
- 练习:写跨层日志字段
卡片 028:开源路线要分层读¶
- 关键判断:读项目先找数据和接口
- 反例:直接看 transformer block
- 机制:部署问题常在输入输出和服务封装
- 工程接口:按 dataset、model、policy、runtime 阅读
- 失败模式:看懂模型却接不上机器人
- 练习:制定源码阅读顺序
卡片 029:前沿不是免控制¶
- 关键判断:模型越通用,边界越要清楚
- 反例:相信基础模型能自行避免所有危险
- 机制:训练分布不可能覆盖所有硬件状态
- 工程接口:把控制约束作为系统默认层
- 失败模式:少见状态下危险
- 练习:列出三类必须硬约束
96.B 案例推演¶
场景 1:选择动作表示¶
从任务频率开始:如果任务需要高频接触修正,动作表示必须支持短周期更新。 再看平台迁移:固定机械臂可用关节动作,跨平台优先考虑末端或任务帧动作。 最后看模型结构:自回归路线需要 tokenization,连续生成路线需要延迟预算和随机性控制。 任何选择都要落到 action adapter 和 safety filter,而不是只写在模型配置里。
场景 2:双系统部署¶
S2 处理图像语言、目标选择和任务阶段,更新频率较低。 S1 或动作层处理短时视觉运动,负责把目标转成动作片段。 控制层负责高频跟踪、稳定和约束。三层之间用版本化目标和动作缓存连接。 如果高层目标改变,低层必须知道旧动作是否仍然有效。
场景 3:跨本体训练¶
跨本体数据首先统一任务语义,其次保留本体身份,最后才考虑共享动作头。 不同平台的动作字段不能强行补齐,缺失字段要有 mask。 评测时要分平台统计,否则大平台数据可能掩盖小平台失败。 adapter 的单独误差是判断迁移是否成立的关键证据。
场景 4:VLA + WBC¶
VLA 输出目标和动作片段,WBC 把这些参考放到全身动力学约束中求解。 中间需要安全过滤层检查可达性、碰撞、速度和稳定裕度。 当过滤失败时,系统应返回高层可理解的失败原因,而不是只停机。 这种反馈可以让高层重新选择目标或触发恢复策略。
场景 5:博士选题¶
模型路线关注动作头、跨本体表征和推理效率。 数据路线关注采集工具、任务帧、质量筛选和混合训练。 控制路线关注约束过滤、稳定性和动作参考到硬件的映射。 系统路线关注端到端日志、部署可靠性和故障恢复。每条路线都应有可归因实验。
场景 6:事实陈述边界¶
OpenVLA、π0/π0.5、FAST、RDT、GR00T、Helix 等名称在教学中适合当作代表性路线。 具体能力、平台和数字应以论文或官方发布为准,不应在教学文档中无依据扩展。 描述时优先写“可作为某类思路理解”,再说明它启发的接口设计。 这样既能介绍前沿,也能避免把快速变化的发布状态写成永久事实。
96.C 收束与综合练习¶
本章的核心不是追逐模型名称,而是把基础模型放进复合机器人系统栈中。 读者应始终追问五个接口:输入接口、动作接口、频率接口、安全接口和评测接口。 综合练习 1:为一个人形整理桌面任务设计 VLA、动作层、WBC 和硬件驱动之间的数据流。 综合练习 2:比较 OpenVLA 式离散动作、FAST 式压缩动作和 π0 式连续 flow 在同一任务中的接口差异,注意使用限定语。 综合练习 3:设计一个跨 Mobile ALOHA、UMI 和仿真数据的训练方案,明确 source mask、动作契约和评测拆分。 综合练习 4:为一个云端高层模型 + 本地控制器部署方案写延迟预算、隐私边界和超时回退。 完成这些练习后,应能把近年前沿模型转化为可验证的机器人系统假设,而不是停留在名称比较。
96.C1 2025-2026 年基础模型系统新趋势¶
VLA 和基础模型领域在 2025-2026 年出现了若干值得关注的系统级趋势,具体结论以论文和官方发布为准。
思维链式动作推理。部分公开路线开始探索在动作生成前加入显式推理步骤——模型先用文本或内部表征"思考"任务分解和约束检查,再输出动作。这类似于 LLM 中 Chain-of-Thought 的思路,但应用到物理动作领域带来了新挑战:推理过程增加延迟,且推理结论与物理可行性之间存在鸿沟。
视觉-动作预训练的分离与融合。2025 年以来,架构设计出现两极化趋势。一极是把视觉语言理解和动作生成放在同一个模型中端到端训练(如部分 VLA 路线),另一极是显式分离为视觉语言模块和动作专家模块(如 GR00T/Helix 类双系统路线)。两种路线各有工程代价:端到端模型训练数据需求更大但接口更简单;分离模型各层可独立迭代但层间对齐成本更高。
小模型高效微调。不是所有场景都需要 7B+ 参数的大模型。2025 年以来,多个方向探索使用 1-3B 参数量级的模型配合高效微调(LoRA、adapter)实现接近大模型的单任务性能。这对端侧部署特别有价值——1B 模型可以在消费级 GPU 上实时推理,避免了远程服务的延迟和可靠性问题。
物理世界模型辅助动作评估。除了前面提到的世界模型 + VLA 生成未来观测,另一个方向是用物理世界模型评估动作安全性——在执行前用快速物理仿真预测动作后果,如果预测到碰撞或失稳就拒绝执行。这本质上是把安全过滤从基于约束的方法扩展到基于预测的方法。
本质洞察:2025-2026 年的趋势表明,VLA 基础模型正从"单一大模型解决一切"走向"模型系统协作"。模型负责语义和动作生成,系统负责约束、安全和部署可靠性。这两条线的分工越清晰,系统越强壮。
260.D 递进复盘:从动机到练习¶
这一组复盘把本章关键概念重新组织为“动机 -> 反例 -> 机制 -> 工程接口 -> 失败模式 -> 练习”的链条。 它不是新增术语,而是帮助读者把前文内容转化为现场排查和研究设计能力。
复盘 1:系统分层¶
- 动机:把基础模型放到正确接口位置。
- 反例:模型输出绕过控制层。
- 机制:语义、动作、安全、硬件分层协作。
- 工程接口:runtime、adapter、controller、gateway 分开。
- 失败模式:错误直接落到硬件。
- 练习:画四层参考架构。
复盘 2:模型事实限定¶
- 动机:按论文和官方发布理解前沿路线。
- 反例:把代表性案例写成永久结论。
- 机制:教学关注接口思想而非未经核实数字。
- 工程接口:使用“可作为代表性路线理解”等限定语。
- 失败模式:读者误判成熟度。
- 练习:改写三句强断言。
复盘 3:动作 token¶
- 动机:压缩动作同时保留物理细节。
- 反例:只追求更短 token 序列。
- 机制:tokenization 改变频率、误差和接触细节。
- 工程接口:报告重构误差和接触段误差。
- 失败模式:插入任务失败。
- 练习:比较逐步离散和 DCT 压缩。
复盘 4:连续动作头¶
- 动机:生成连续片段并满足实时预算。
- 反例:采样步数过多导致动作迟到。
- 机制:flow 或 diffusion 需要推理时间约束。
- 工程接口:配置最大延迟、缓存和确定模式。
- 失败模式:动作过期或偶发危险。
- 练习:写延迟预算。
复盘 5:频率接口¶
- 动机:按物理时间尺度分配模块。
- 反例:语义层高频刷新目标。
- 机制:低频目标和高频控制需要隔离。
- 工程接口:每层声明 rate、timeout 和 fallback。
- 失败模式:高频抖动。
- 练习:为 S2/S1/WBC 分配频率。
复盘 6:跨本体身份¶
- 动机:让模型知道当前硬件形态。
- 反例:所有机器人共享同一空白身份。
- 机制:本体信息解释有效字段和动作范围。
- 工程接口:提供 embodiment_id、mask 和 adapter。
- 失败模式:平均动作不可执行。
- 练习:设计本体 metadata。
复盘 7:任务帧迁移¶
- 动机:用相对动作降低平台差异。
- 反例:直接迁移关节轨迹。
- 机制:任务 frame 保留对象关系。
- 工程接口:adapter 做 IK、碰撞和限速。
- 失败模式:目标平台跳变。
- 练习:迁移一段 UMI 轨迹。
复盘 8:安全组合¶
- 动机:让学习动作经过显式约束。
- 反例:只用 clipping 替代安全控制。
- 机制:CBF、MPC、WBC 分别处理不同约束。
- 工程接口:记录过滤量和不可行原因。
- 失败模式:保守或漏检。
- 练习:比较三类安全层。
复盘 9:部署可靠性¶
- 动机:把算力和网络纳入系统设计。
- 反例:云端推理无本地回退。
- 机制:尾部延迟决定接触可靠性。
- 工程接口:记录平均、尾部、超时和缓存命中。
- 失败模式:偶发失败难复现。
- 练习:设计云边协同策略。
复盘 10:评测双轨¶
- 动机:同时追求可比性和实机证据。
- 反例:只看标准基准分数。
- 机制:基准和真实任务回答不同问题。
- 工程接口:报告 benchmark、真实任务和安全统计。
- 失败模式:纸面提升无法部署。
- 练习:设计双轨评测表。
复盘 11:博士变量¶
- 动机:让研究贡献可归因。
- 反例:一次改四条技术线。
- 机制:固定大部分系统,只改变关键假设。
- 工程接口:实验计划写固定项、变化项和度量项。
- 失败模式:结论不可复现。
- 练习:设计一个控制变量实验。
复盘 12:日志体系¶
- 动机:为复杂系统保留可回放时间线。
- 反例:只保存最终视频。
- 机制:跨层日志连接语义、动作、安全和控制。
- 工程接口:记录目标、观测、动作、过滤和底层状态。
- 失败模式:失败无法定位。
- 练习:写跨层日志 schema。
260.D+ 2025-2026 VLA 最新进展补遗¶
本章主体内容覆盖了 VLA 基础模型的核心设计原则。2025-2026 年间,这一方向继续快速演化,以下进展值得关注。
Physical Intelligence pi-0 系列(2024-2025)。pi-0 的核心贡献在于将 flow matching 引入动作生成头——与 RT-2 的离散 token 化和 Octo 的 diffusion head 不同,flow matching 通过学习一个从噪声到动作的连续变换场来生成动作序列。这种方法的优势在于:(1)推理时只需一步或少数步去噪,延迟显著低于 diffusion;(2)天然支持连续动作空间,无需 token 化带来的量化误差。pi-0.5 进一步引入了 web 数据预训练 + 机器人数据微调的两阶段训练,验证了"互联网视觉知识可以迁移到机器人动作"的假设。从接口角度看,pi-0 系列的输入仍然是图像 + 语言指令,输出是末端位姿或关节角的连续轨迹,频率约 5-10 Hz——下游仍需低层控制器将轨迹转化为力矩。
OpenVLA 的后续生态与局限。OpenVLA 作为开源 VLA 模型,在 2024-2025 年间催生了大量社区复现和改进工作。OpenVLA 2.0 引入了更高效的视觉编码器和更大的动作预测窗口。然而,OpenVLA 系列暴露了一个系统性问题:开源权重的训练数据规模与工业方案(如 pi-0、GR00T)相差 1-2 个数量级,这导致在 zero-shot 泛化能力上存在显著差距。对于研究者来说,OpenVLA 的价值更多在于提供一个可修改的 baseline,而非直接可部署的方案。
NVIDIA GR00T 与 Helix 的工业路线。GR00T N1 将 VLA 与人形机器人硬件绑定——模型架构、训练数据和部署管线都针对人形场景优化。Helix 则采用双系统架构:一个慢速大模型处理语义理解和长程规划(System-2),一个快速小模型处理实时动作生成(System-1)。这种分频设计与本章强调的"语义层-动作层频率分离"原则完全一致。从工程角度看,GR00T/Helix 的核心贡献不在模型架构本身,而在于验证了 VLA 在工业级人形平台上的可部署性——包括推理延迟优化、安全过滤集成和多传感器融合。
跨本体基础模型的新尝试。2025-2026 年,"一个模型控制多种机器人"成为热门方向。RDT(Robotics Diffusion Transformer)和后续工作尝试通过 embodiment token 和 action adapter 来处理不同机器人之间的形态差异。核心思路是:视觉-语言编码器共享,动作解码器按本体分支。这与本章 260.3 讨论的跨本体训练接口设计一致——关键工程问题仍然是 valid mask 的设计和归一化统计的对齐。
给学习者的定位建议:VLA 基础模型方向的论文产出速度极快(2025 年上半年已超过 50 篇),但核心的工程接口问题(输入格式、动作表示、频率匹配、安全过滤)变化不大。建议把精力放在理解接口设计原则上,而非追逐每一篇新论文。本章的 12 条设计原则和接口模板在可预见的未来仍然适用。
260.E 口试式综合题¶
这些题目适合在读完本章后闭卷回答。每题都要求先说接口,再说风险,最后说验证方法。
- 选择一个真实移动操作任务,说明观测字段、动作字段和安全过滤字段。
- 给出一个模型离线指标提升但实机失败的例子,并按数据、模型、控制三层定位。
- 设计一次最小实机实验,要求能够区分同步错误、标定错误和策略错误。
- 写出一个失败 episode 的最小诊断记录,包括关键帧、动作、状态和失败原因。
- 说明本章方法与前置移动操作规划、MPC/WBC 和模仿学习章节的连接方式。
- 说明哪些结论可以通过离线 replay 验证,哪些必须通过实机接触验证。
- 把一个前沿模型名称转化为输入接口、动作接口、频率接口和安全接口四个问题。
- 给出一个你会拒绝部署的动作片段,并说明拒绝条件来自哪一层。
- 设计一个小规模数据闭环,让下一轮采集只补最关键的失败阶段。
- 用一段话总结本章最重要的工程原则,并说明它如何降低实机风险。
260.F 闭卷掌握清单¶
- 是否能把 OpenVLA、π0/π0.5、FAST、RDT、GR00T 和 Helix 等名称改写成接口假设?
- 是否能说明离散 token、FAST tokenization、flow matching 和 diffusion head 的工程边界?
- 是否能为一个复合机器人系统写出 S2、S1、运动先验和控制内环的频率分工?
- 是否能说明跨本体训练为什么需要 embodiment_id、valid mask 和 action adapter?
- 是否能把基础模型输出接入 CBF、MPC 或 WBC,而不是直接接入硬件?
- 是否能同时设计基准评测、实机评测和安全过滤统计?
- 是否能为云端语义服务与本地动作执行之间写出超时和隐私边界?
- 是否能把博士研究问题收敛成一个可归因、可验证的系统假设?
本章与课程体系的衔接¶
VLA 基础模型是本课程复合方向的"顶层"——它将前序章节的多个模块串联成完整的系统。以下是关键的跨章连接:
| 前置章节 | 连接点 | VLA 基础模型中的角色 |
|---|---|---|
| 复合/60 Pfaffian 约束 | 非完整约束 | VLA 输出的底盘速度命令必须满足运动学约束 |
| 复合/70 轮足 MPC | 实时轨迹优化 | VLA 生成的目标轨迹由 MPC 跟踪执行 |
| 复合/140 VLA 移动操作 | 部署接口 | 本章的模型架构通过 140 章的接口落地 |
| 复合/150 ALOHA/UMI | 训练数据 | 高质量演示数据是 VLA 微调的关键输入 |
| 复合/190 Visual WBC | 视觉底层 | VBC 式教师-学生蒸馏可作为 VLA 的运动先验层 |
| 复合/210 RAMBO | 安全执行 | MPC-RL 混合控制器作为 VLA 输出的安全执行层 |
| 复合/220 人形 WBC | 全身控制 | HQP/WBC 将 VLA 的末端目标转化为关节力矩 |
全局视角:VLA 基础模型解决的是"做什么"(语义理解和任务规划),而本课程复合方向的其他章节解决的是"怎么做"(运动控制和安全执行)。两者缺一不可。一个没有底层控制保障的 VLA 是危险的;一个没有语义理解的控制器是盲目的。
本章术语表¶
| 术语 | 全称 | 含义 |
|---|---|---|
| VLA | Vision-Language-Action | 将视觉、语言和动作统一建模的基础模型 |
| Flow Matching | - | 通过学习连续变换场生成样本的生成模型方法 |
| FAST Tokenization | - | 面向机器人动作的高效离散化编码方案 |
| Embodiment Token | - | 标识机器人本体类型的可学习嵌入向量 |
| Action Adapter | - | 将统一动作表示转换为特定机器人关节命令的模块 |
| Valid Mask | - | 标识跨本体训练中哪些动作维度对当前本体有效 |
| CBF | Control Barrier Function | 保证系统状态不离开安全集的在线约束修正方法 |
| S1/S2 | System 1 / System 2 | 快速反应系统与慢速推理系统的双系统架构 |
| RDT | Robotics Diffusion Transformer | 基于 Diffusion Transformer 的跨本体机器人基础模型 |
| Diffusion Head | - | 使用扩散过程生成动作序列的解码模块 |
| Zero-Shot | - | 不经过目标任务微调直接推理的能力 |
本章完成后,建议回顾复合方向全部章节的跨章连接,形成从运动学约束到基础模型的完整技术栈认知。
—— 本章终 ——