论文精读 · Harness for Robotics · Context Architecture(时序对齐)

TIC-VLA

A Think-in-Control Vision-Language-Action Model for Robot Navigation in Dynamic Environments

VLM 想完一次要好几秒,动作得每 0.1 秒给一次。TIC-VLA 不去等推理,也不假装推理是新鲜的:动作专家每一步除了当前画面,还拿到上一次推理留下的 KV cache,外加两条元数据,这段语义有多旧(Δt)、这期间机器人移动了多少(Δx, Δy, Δθ)。训练时也按这个口径人为注入延迟。

  • UCLA(Jiaqi Ma 组)
  • arXiv 2602.02459v2
  • v1 2026-02-02 · v2 2026-05-29
  • ICML 2026
  • arXiv · 项目页
CH1 VLM CH2 KV CH3 π 10 Hz CH4 Δt obs@0s obs@2s obs@4s obs@6s obs@8s 空 · 原地等待 S@0s S@2s S@4s S@6s 2s4s0 t = 7 s Δt = 3 s 0 2 4 6 8 10 s
按附录算法 3、4 画的时序示意,推理耗时取仿真默认的 2 s(0.5 Hz),不是实验数据。CH2 高亮段是 t = 7 s 时策略实际用的缓存:它来自 4 s 那帧。

做了什么

异步双系统导航 VLA。慢系统 InternVL3-1B 看 t−Δt 时刻往前 9 秒内的 4 帧,生成推理文本和 3 个航点;快系统是 6 层交叉注意力动作专家,10 Hz 运行,输入当前帧、速度状态、VLM 最后一层 KV cache 和 (Δt, Δx, Δy, Δθ),输出 3 秒 30 步的相对位移。

怎么训

VLM 用 GPT-5 标注的推理文本做 SFT → 动作专家做模仿学习,人为把语义延迟 Δt ~ U(0, 10) s → 在自建的 Isaac 仿真 DynaNav 里用 PPO 只调最后一层交叉注意力和输出 MLP,VLM 真实异步运行并额外注入平均约 5 s 的延迟。训练数据 SCAND 8.7 h + GND 11 h 以上 + DynaNav 5.1 h。

结果

DynaNav 85 条测试:SR 55.29,语言导航基线最好的 MobileVLA 32.94,用特权点目标的 NavDP 54.12。同样用 KV 接口,不做延迟建模 SR 只有 30.59,做了是 47.06(均未做 RL)。Unitree Go2 真机 4 个任务各 5 次:0.85,DualVLN 0.50,NaVILA 0.35。

最该留意的

模仿学习阶段喂给动作专家的 KV,是用 GPT-5 标注的推理文本算出来的,这些文本生成时看过未来帧;部署时换成 VLM 自己生成的文本。主表只有 TIC-VLA 在 DynaNav 的同类场景里做过 RL。85 条测试只跑一个种子,和 NavDP 的差距是 1 条。基线如何处理推理延迟,论文没有写。

问题 · §1

推理还没想完,世界已经变了

在有行人走动的环境里按语言指令导航,控制回路要几十 Hz,VLM 推理在机载算力上却要按秒计。论文真机实测(表 3):同一个 1B 模型,一次推理在 RTX 4060 笔记本 GPU 上要 3430.73 ms,在 Jetson Orin NX 上要 4831.73 ms。

论文把已有工作分成三类,认为它们都绕开了这个问题:

  • 经典 VLN(R2R、VLN-CE 这一类)把导航抽象成离散视点之间的跳转,本体、动力学和时间都不管。
  • NaVid、NaVILA 这类 VLA 依赖大 GPU,推理时往往停下来等结果,在动态环境里不现实。
  • 双系统 / 异步 VLA(DualVLN、InternVLA-N1)把慢推理和快控制拆开了,但仍默认语义输出是"新鲜的",等于假设推理延迟可以忽略。

论文的核心论点是:推理延迟不只是工程上的低效,而是一个建模问题。语义描述的是 Δt 秒前的机器人和环境,策略却把它当成当前状态来用。如果训练时不表示这个延迟,按同步监督训出来的策略,部署到真实延迟下会明显退化。

原文 Figure 1上排是两项设计:左边的延迟语义-控制接口(Lang. 到 Action 是一条虚线,表示语义状态是"延迟"的);中间是 Think 与 Control 的时间关系,一次 Think 之后的多个 Control 步都带着延迟元数据;右边是训练顺序:注入推理延迟 → 模仿学习 → RL 适应。中排是 DynaNav 仿真(仓库 + Spot、户外 + Nova Carter),下排是 Unitree Go2 真机(走廊、户外广场)。每张小图里,右上是指令,左下是 VLM 生成的推理文本开头。

解读"Think-in-Control"在 harness 层面改的是什么

它没有让 VLM 变快,也没有改 VLM 看什么。它改的是控制器看到的语义带不带时间戳:同一份语义特征,附上"生成于 Δt 秒前、此后机器人移动了 Δp",让策略自己决定怎么折算。放在本专题的 Context Architecture 一类里,它是唯一一篇处理"上下文是哪一刻的"这个问题的。

方法 · 全局 · §3.2 · 附录 A

一个 1B 的 VLM 慢慢想,一个 6 层交叉注意力专家快快开

原文 Figure 2左:系统提示、指令、历史轨迹和任务描述(要求预测未来 3、6、9 秒的航点)。中下:延迟视觉输入是 t−Δt−9、−6、−3、t−Δt 四帧,实时输入是当前帧 t,两者共用一个 ViT 编码器。中上:语言模型输出 <think> 推理文本和 <answer> 航点,最后一层 KV 连同 Latency (Δt) 和 Ego-motion Offset 组成"Delayed Semantic-Control Interface"(橙色虚框),和视觉 token、机器人状态一起进 Transformer 动作专家,输出 (dx, dy, dθ)。右:IL 阶段的延迟采样示意和 RL 阶段的冻结 / 可训练划分。

慢系统 · 推理 VLM

主干
InternVL3-1B = InternViT-300M + Qwen2.5-0.5B
读
t−Δt−{9, 6, 3, 0} s 四帧(原始 1920×1080,每帧 256 个视觉 token),指令与历史轨迹
出
<think> 推理文本 </think> + 3 个航点 (x, y, heading),对应未来 3 / 6 / 9 s;也可以只出航点
频率
仿真(L40S)带推理文本约 0.5 Hz;只做前向取 KV、不解码文本时 4 Hz

接口 · 延迟语义状态

语义
最后一层 KV cache St−Δt(这次推理整段序列的 K/V)
时间
Δt:从这次推理所看的那一帧到现在过了多久
空间
Δp = (Δx, Δy, Δθ):同一时段里机器人的位姿变化,由两次位姿相减得到(表 14 模拟了里程计漂移)
更新
VLM 每完成一次推理就整体覆盖缓存(式 2)

快系统 · 动作专家

结构
6 层交叉注意力 Transformer,30 个可学习 query
读
当前帧 256 个视觉 token、状态 (vx, vy, ωz)、KV cache、(Δt, Δx, Δy, Δθ)
出
30 步 × (dx, dy, dθ) = 3 s,累加成轨迹,取目标点交给控制器转成 (v, ω)
频率
10 Hz,从不等 VLM

视觉编码器是共享的:同一个 InternViT 既给 VLM 编码延迟帧,也给动作专家编码当前帧。论文的理由是让两边的视觉表示一致。动作专家拿到的当前帧 token 是 896 维,和语言模型同宽,应是已经过 InternVL 投影层的视觉 token(按维度推断,论文没明说)。

方法 · 延迟语义-控制接口 · §3.2 · 附录算法 3、4

把"这段语义有多旧、这期间我走了多远"一起交给控制器

论文先把延迟定义成系统里的一个变量。有效推理延迟是推理耗时加上"上次推理完成后又过了多久":

Δt = tinfer + telapse ≥ 0,    𝒳vlmt−Δt = { xt−Δt−δ | δ ∈ {0, 3, 6, 9} }§3.2

VLM 在 t 时刻读的是锚定在 t−Δt 的四帧,输出 ℛt−Δt(场景理解、关键物体、意图预测、航点),航点也表达在推理开始时刻 t−Δt 的机体系里。动作策略的输出:

at = {at1, …, atT} = πθ( 𝒮t−Δt, xt, st, Δt, Δpt ),   ati ∈ ℝ3(1)
(𝒮cachet, ℛcachet) = (𝒮t, ℛt) 若推理在 t 完成;否则 = (𝒮cachet⁻, ℛcachet⁻),   𝒮t−Δt = 𝒮cachet(2)

附录的算法 3、4 写清了运行时的细节,有几处正文没提:

  • 每个 10 Hz 时刻先查后台 VLM 任务。完成了,就更新 KV 缓存、文本缓存,以及这次推理开始时记下的步数 kcache 和位姿 posecache。
  • 没有正在跑的任务,就立刻用当前可用的帧启动下一次推理,同时记下 (kgen, posegen)。帧不够 9 秒历史时,SampleFramesAvailable 退回到更少的帧。
  • Δt = ElapsedTime(k, kcache),Δp = RelativePose(posecache, posek)。两者都从"这次推理看的那一帧"算起,不是从推理完成时算起。
  • 第一个 KV 就绪之前,Δ 全部置 0、kv_ready = False,控制器直接输出 (v, ω) = (0, 0):机器人原地等第一次推理。

拖动推理耗时,看动作生成时拿到的是哪一刻的语义

调度按附录算法 3、4;路线、行人、0.6 m/s 车速是示意

论文里的实测值
当前位姿 / 当前帧里的行人 语义锚点时刻(VLM 看到的) Δp VLM 航点(3 / 6 / 9 s)

这一步动作专家收到的输入

解读Δt 是锯齿,不是常数

按算法 4,如果一次推理耗时 T、完成后立刻启动下一次,那么新缓存到手时 Δt ≈ T,之后线性增长,直到下一次推理完成时接近 2T 再跳回 T(另有最多 0.1 s 的 10 Hz 取整)。所以策略实际看到的 Δt 在 [T, 2T] 之间来回,平均约 1.5T。这也是训练时把 Δt 采成区间而不是固定值的原因:IL 阶段 U(0, 10) s,RL 阶段注入的延迟平均约 50 步(5 s)。

疑点同一个"effective latency",两处定义不一样

§3.2 把有效延迟定义为 tinfer + telapse,也就是上面那条锯齿。附录"Latency control in simulation"一段则把它定义为"从采集观测到语义可用"的时间,即缓存刚到手那一刻的年龄 T,并说默认设置下平均约 2 s;图 5 的横轴(1–5 s)按的是后一种。正文又说仿真里 VLM 以 0.5 Hz 运行。按前一种定义,0.5 Hz 对应的平均 Δt 约 3 s,不是 2 s。读图 5 时要记住:横轴是"到达时的年龄",策略实际输入的 Δt 还要再大一截。

方法 · 延迟感知动作专家 · §3.2 · 附录 A

30 个时间步 query,对四类 token 做交叉注意力

原文 Figure 3(a) 动作专家:视觉 token、VLM KV cache 各过 MLP,机器人状态和延迟数据加位置嵌入,拼接后作为每层交叉注意力的 K、V;Q 来自动作 query;最后 MLP 输出动作。(b) RL 用的价值网络:视觉 token 过 Conv1D 和平均池化,状态与目标位置过 MLP,拼接后输出 V(s)。(c) 三阶段训练,火焰表示可训练、雪花表示冻结。(d) 闭环异步:VLM 一次推理(Inference time)完成后又过了一段 Elapse time,动作专家在 t 时刻用的是 𝒮t−Δt,Δt 是两段之和。
Key / Value 来源内容原始维度处理
当前视觉 token共享 InternViT 编码的当前帧256 × 896MLP 投影到 512
VLM KV cache最后一层 Transformer 的 K/V,来自 t−Δt 的那次推理N × 256MLP 投影到 512;token dropout 0.1
机器人状态(vx, vy, ωz)3编码到 512 + 位置嵌入;dropout 0.5
延迟元数据(Δt, Δx, Δy, Δθ)4编码到 512 + 位置嵌入
Query按时间步索引的可学习嵌入30 × 5126 层交叉注意力,FFN 2048,输出 MLP

输出是 30 步的相对增量 (dx, dy, dθ),覆盖未来 3 秒(10 Hz)。一个累加器(cumsum)把它们积成轨迹点 (x, y, θ)。因为真实数据里没有底层控制量,损失直接比积出来的位姿和真值轨迹:

𝓛a = (1/T) Σi=1..T SmoothL1( p̂t(i) − pt(i) ),   T = 30(4)

未披露:KV token 的个数 N(取决于提示词、4×256 视觉 token 和生成文本的长度,是否全部保留没写);query 之间有没有自注意力;Δt 和 Δp 各自怎么编码(只写了"encoded");部署时选哪一步作为目标点(RL 里取 1 秒处)。

解读KV 为什么是 256 维

Qwen2.5-0.5B 用分组查询注意力,公开配置是 2 个 KV 头、每头 64 维,K 和 V 各 128 维,拼在一起正好 256。论文只写了"KV cache 特征从 256 维投影到 512 维",没有说明拼法,这是按公开配置推的。这也意味着动作专家读到的不是语言模型 896 维的隐状态,而是被压到 256 维的注意力键值。

解读价值网络比策略多看了一样东西

图 3(b) 的价值网络输入里有相对目标位置,策略没有(策略只靠语言和视觉找目标)。这是 RL 里常见的非对称 critic,只在训练时用,不影响部署时"无特权信息"的说法。

方法 · 延迟一致的三阶段训练 · §3.3 · 附录 B、D

先教 VLM 推理,再在人为延迟下模仿,最后在仿真里带着真实延迟强化

① VLM 监督微调

视觉编码器冻结,语言模型全参数训练,自回归交叉熵。目标序列混合两种格式:"推理文本 + 航点"和"只有航点",部署时可以按需要省掉文本。

8 × L40S,每卡 batch 2,lr 2×10⁻⁵,cosine。

② 延迟下的模仿学习

把原本时间对齐的示范拆开:采 Δt ~ U(0, 10) s,取 t−Δt 的帧和推理文本,用冻结的 VLM 算出 KV,再配上当前帧、状态和 (Δt, Δx, Δy, Δθ) 去预测 t 时刻的 30 步动作(算法 1)。

每卡 batch 16,lr 2×10⁻⁴,10 epoch,warmup 1000 步。

③ 异步引导下的 RL

在 DynaNav 里跑 PPO,VLM 和视觉编码器冻结,只训动作专家最后一层交叉注意力和输出 MLP。VLM 在后台真实异步推理,结果放出前再注入随机延迟,平均约 50 个环境步(5 s)。

单张 L40S,400 次迭代,3 个任务每 100 次迭代轮换。

SFT 数据:GPT-5 标注的指令与推理文本

原始长序列切成 20 秒一段,只留 RGB 和位姿,统一降到 10 Hz;再按固定步长下采样,大约每 3 秒一个标注样本。标注分两步(附录 B):

  • 每段一条指令。取当前、+5、+10、+15、+20 s 五帧和未来轨迹偏移,让 GPT-5 写四种措辞不同、路线相同的祈使句,随机分给样本。提示词要求只写宏观路线和静态地标,不写行人和避让。
  • 每帧一段推理。给 GPT-5 更多上下文:从段首到当前、按 1 s 汇总的历史轨迹,过去 9、6、3 s 的帧,当前帧,以及未来帧(+5 到 +20 s)。要求写一段 60 词以内的第一人称文字,覆盖当前处境、关键物体、物体运动、任务进度、接下来 10 s 的计划。
原文 Figure 7左:Phase 1,五帧加轨迹信息 → GPT-5 → 四种措辞的指令。右:Phase 2,过去(t−9、−6、−3)、当前和未来(t+5 到 t+20)帧,加上以当前机体系表达的关键帧偏移图和逐帧累计轨迹 → GPT-5 → 一段推理文本(例:"我在医院大厅走廊交汇处……前方有行人可能进入我的路径……接下来完成转弯,必要时让行")。

模仿学习:延迟是采出来的

算法 1 的关键一行是 𝒮t−Δt ← fLM(𝒱vlmt−Δt, I, ℛt−Δt):KV 由冻结的语言模型在 t−Δt 的帧、指令和数据集里的推理文本上做一次前向得到。附录原话是"策略以延迟的真值推理标注和引导航点为条件,保证拿到正确的高层意图"。动作专家要学的,是把一份正确但过时的语义,结合当前帧和 Δp,折算成现在该怎么走。

疑点模仿学习用的 KV 和部署时的 KV 不是一回事

训练时的 ℛt−Δt 是 GPT-5 看过未来 5–20 秒画面后写的推理文本,其中"接下来 10 s 的计划"带着未来信息;部署时 KV 来自 VLM 自己生成的文本,可能出错。这正是论文强调的"训练-部署一致"没覆盖到的一环。RL 阶段换成了 VLM 自己生成的输出,算是部分补上,但 RL 只调最后一层。论文没有报告"IL 用模型生成文本算 KV"的对照。另一个没说清的细节:标注样本约 3 秒一个,而 Δt 从连续区间 U(0, 10) 采样,任意 Δt 处的推理文本从哪来没写。

RL:真异步 + 人为加延迟

动作专家每步预测一条短轨迹,取 1 秒后的目标点,换算成期望线速度和角速度,作为高斯策略的均值;标准差是一个可学习的 log σ。rollout 时缓存延迟 KV,优化时复用(算法 2)。奖励:

rt = wg rgoal + wp rprogress + wc rcollision + ws rspeed,   wg = 400, wp = 5, wc = −100, ws = −0.1(5)

速度项同时惩罚过慢和过快,目标速度 1 m/s。PPO 参数(表 9):动作 lr 1×10⁻⁵、价值 lr 1×10⁻⁴、每次 rollout 1024 步、γ 0.99、GAE λ 0.95、clip 0.2、梯度裁剪 0.5、熵系数 0.001、每次 5 个 epoch、batch 64。如果 1024 是每次迭代的总步数,400 次迭代合计约 41 万环境步,10 Hz 下约 11 小时仿真时间(我们按表 9 算的);并行环境数未披露,若 1024 是每个环境的步数则更多。

原文 Figure 10RL 的三个训练任务:仓库(进 04 号通道走到底右转到墙边)、办公室(穿门进办公区左转停在靠墙的桌子旁)、医院(穿过走廊直走到尽头的自动售货机)。论文说这三个任务和测试任务不同,但场景与 DynaNav 测试集的三类室内场景相同。

DynaNav 基准 · §3.4 · 附录 C、D

85 条带人群的语言导航测试,物理和渲染都在 Isaac 里

论文认为现有基准测不出延迟问题:R2R、VLN-CE、RxR 场景小、导航是视点跳转、没有物理交互;VLN-PE、GRUtopia 支持具身评测但没有动态行人;SocialHM3D、HA-VLN 有行人但视觉真实感有限。DynaNav 用 Isaac Sim 做评测(30 Hz 仿真,策略每 3 帧出一次动作、中间保持),用 Isaac Lab 做 GPU 并行的 RL 训练;人和机器人、机器人和场景之间都是物理接触。支持轮式 Nova Carter 和四足 Spot 两种机器人,也支持键盘遥操作采数据(310 条、5.1 小时)。

场景条数行人数特点(附录 C)
Hospital250–60长走廊、病房、医疗设备;窄通道、频繁遮挡。目标如售货机、病床、饮水机。
Office250–60互连的房间、走廊、电梯、工位;多步空间指令(转弯、进门、地标),目标常在视野外。
Warehouse250–60长通道和货架,视觉高度重复,要选对通道、认对实例。论文称它是最拥挤、最易混淆的场景。
Outdoor10100–200不平地面、坡道、街道、开阔空间,靠远处地标导航;成功阈值放宽。因渲染成本高只做了 10 条。

同一场景里的任务共享语义目标,只改人群密度、机器人平台和超时时间。每条 episode 在新的仿真进程里跑,固定随机种子。成功:超时前到达目标 1.5 m 以内(户外放宽);碰撞:与行人距离小于 0.5 m,或静态物体接触传感器触发;CR 是发生过至少一次碰撞的 episode 占比。

原文 Figure 9四行分别是 Hospital、Office、Warehouse、Outdoor,每行 5 个任务示例:画面里有 Nova Carter 或 Spot,红星是目标,蓝箭头是大致路线,下方是指令(如"直走经过轮椅,停在窗边的饮水机旁""进入 01 号通道,最左边那条,走到底")。

疑点成功阈值前后不一

附录 C 说户外场景用放宽的阈值,但没给数值;附录 D 的仿真设置和指标定义都只写了 1.5 m。另外,episode 一进入 1.5 m 就自动终止,正文却把 SR 写成"停在目标 1.5 m 内":实际不需要策略自己决定停车,经过目标附近就算成功。

实验设置 · §4.1 · 附录 D

训练数据、基线、指标与真机

项目设置
训练数据SCAND 8.7 h(多种社交环境里的机器人驾驶轨迹);GND 11 h 以上(多个校园);DynaNav 仿真 5.1 h(310 条键盘遥操作,四类场景,含行人)
仿真评测DynaNav 85 条,单张 L40S;动作策略 10 Hz,VLM 异步约 0.5 Hz;每个条件跑一次(固定种子)
指标NE(终点到目标的距离,越低越好);SR(%);SPL(按最短路径长度加权的 SR);CR(%,越低越好)
真机平台Unitree Go2,前置 RGB 相机;板载 Jetson Orin NX(25 W)或 RTX 4060 笔记本 GPU(50 W);基线跑不动时用远程 RTX A6000,由笔记本中转观测和指令;开 FlashAttention
真机任务室内走廊(行人 + 静态障碍)、杂乱办公室、户外广场、户外不平步道;零样本(无任务专用训练数据);每任务 5 次;需要人工干预防碰撞即算失败
基线类型说明
BC Policy点目标RGB + 点目标直接回归动作;不建模延迟;有相对目标位置这一特权信息
RL Policy点目标与价值网络同结构的 PPO 策略,每个环境单独训练,10 个并行环境、各 1M 步
NavDP点目标点目标条件的扩散导航策略
Uni-NaVid语言视频 VLA,多种导航任务统一训练
NaVILA语言分层 VLA:语言指令 → 中层语言动作 → 视觉运动策略
DualVLN语言双系统 VLA,慢推理与快控制异步
MobileVLA-R1语言思维链监督的推理型移动机器人 VLA
OmniVLA语言支持语言、目标图像、目标位姿三种条件

语言基线"在同样的训练数据上微调、同样设置下评测",训练按各自的开源实现。它们在仿真里是阻塞执行还是异步、仿真是否随推理暂停,论文没写。

结果 · §4.2–4.4 · 附录 E

主表、延迟曲线、接口对照、真机和七组消融

主结果(表 1)

DynaNav 85 条,11 个方法

按表 1 的分组排列。点目标方法直接拿到目标坐标。

原表数字(表 1)

论文的读法:点目标方法不调用 VLM、没有推理延迟,但直接拿到目标坐标;TIC-VLA 只用第一视角图像和语言。不做 RL 的 TIC-VLA(47.06)已超过 BC(45.88)和 RL(30.59),离 NavDP(54.12)还差 7 个点;做完 RL,SR 55.29 最高、CR 28.24 最低,但 NE 和 SPL 仍是 NavDP 最好(8.61、52.62)。五个语言导航基线的 SR 在 22.35–32.94 之间,CR 都在 45 以上。论文的解释是,它们为更抽象的导航设定设计,应付不了连续控制和动态障碍。阻塞执行的 TIC-VLA (Sync.) 掉到 32.94。

解读换算成条数再看

表里所有 SR、CR 都是 85 的整数倍(例如 55.29 = 47/85)。TIC-VLA 成功 47 条,NavDP 46 条,"SR 最高"是 1 条之差;不做 RL 的 TIC-VLA 40 条;MobileVLA 和 TIC-VLA (Sync.) 都是 28 条。单种子、每条跑一次,相差一两条的结论不稳。和语言基线之间相差 12 条以上,这部分比较可信。

延迟鲁棒性(原文图 5)

VLM 推理延迟从 1 s 到 5 s

横轴是附录意义上的延迟(缓存到手时的年龄)。1 s 靠暂停仿真等推理完成实现;3–5 s 靠在采集观测后推迟 30 / 60 / 90 个仿真帧再启动推理。数字读自原图柱顶标注。

RL 之后只有 IL
图中数字

只做 IL 的策略在 2 s 之后掉得快:47.1 → 43.5 → 30.6 → 27.1。RL 后 1–3 s 保持在 52.9–55.3,4 s 48.2,5 s 45.9。碰撞率两条线都几乎不随延迟变化(IL 32.9–36.5,RL 27.1–28.2),论文据此说异步策略的反应能力与推理速度无关。2 s 处的四个数和表 1 的 TIC-VLA / TIC-VLA (no RL) 一致,说明表 1 就是在这个默认延迟下测的。

解读RL 的收益随延迟变大

按图中数字算,RL 带来的 SR 提升:1 s +7.0,2 s +8.2,3 s +9.4,4 s +17.6,5 s +18.8。RL 训练时注入的延迟平均约 5 s,提升最大的正是 4–5 s 这一段。但 RL 后 SR 最高的点仍在 2 s,延迟越大绝对性能越低。

接口形式 × 延迟建模(表 2)

用航点还是 KV cache,做不做延迟建模

"延迟建模"= 输入延迟元数据 + 训练时注入延迟。四行都没有 RL。格子里大字是 SR,小字是 NE / SPL / CR。

原表数字(表 2)

KV 比航点好得多,延迟建模对 KV 的帮助(SR 30.59 → 47.06)也远大于对航点的帮助(16.47 → 22.35)。论文对航点差的解释:航点稀疏,而且可能和机器人的局部观测对不上;KV 保留了 VLM 更丰富的语义和上下文。附录补充说,航点变体在训练和推理时都会先把延迟航点变换到当前机体系,但"不建模延迟"那一行是否也做了这个变换,没写清。

解读从 30.59 到 55.29,一步一步拆

同一个 85 条测试集,三张表里的四个数

第二步假设表 6 的"W/o Motion Offset"只去掉 Δp、保留 Δt 输入和延迟训练,论文没有明说。

按这个拆法,延迟训练 + Δt 贡献 9 条,Δp 再加 5 条,RL 再加 7 条。延迟建模的两部分合起来(14 条)比 RL(7 条)多一倍。

真机(表 3、表 10)

Unitree Go2,4 个任务 × 5 次

每格 0.05 是 20 次里的 1 次。TIC-VLA 的 4060 和 Orin NX 是本地部署;A6000 是远程,所有基线都在 A6000 上跑。

方法 · 平台成功率动作策略 (ms)VLM 推理 (ms)
TIC-VLA (no RL) · 40600.70——
TIC-VLA · 40600.8585.733430.73
TIC-VLA · Orin NX0.75120.274831.73
TIC-VLA · A60000.8032.701681.66
Dual-VLN (7B) · A60000.50299.921534.67
NaVILA (7B) · A60000.354106.62(单系统)

逐任务成功率(表 10,%)

原文 Figure 6(a) 硬件:Go2 上有深度相机、RGB 相机、LiDAR 和板载 Orin NX,旁边是 RTX 4060 笔记本和 RTX A6000 台式机。(b) 四个任务及指令,图注名称是 Indoor Hallway / Indoor Office / Outdoor Plaza / Outdoor Walkway(表 10 里后两个叫 Outdoor Campus / Outdoor Sidewalk)。(c) 室内走廊任务的过程:绕开垃圾桶、避让迎面走来的人,到达终点。

解读1B 的 VLM 并不比 7B 的快

同在 A6000 上,TIC-VLA 的 VLM 一次推理 1681.66 ms,比 7B 的 DualVLN 慢系统(1534.67 ms)还慢,因为它每次要自回归生成一段推理文本和航点。它快在控制端:动作策略 32.70 ms,DualVLN 299.92 ms。另外,Orin NX 上动作策略单次 120.27 ms,超过 10 Hz 需要的 100 ms,这时策略实际跑多少 Hz,论文没说。

疑点平台之间的比较混着通信开销

论文把 A6000(0.80)不如 4060(0.85)归因于远程通信开销。但所有基线都在 A6000 上跑,也都背着这份开销。同平台的公平对比是 A6000 上的 0.80 / 0.50 / 0.35。表 3 的运行时间是否包含通信,没写。0.85、0.80、0.75 之间各差 20 次里的 1 次。

七组消融

定性结果(原文图 4)

原文 Figure 4上:医院场景,Nova Carter 按"出房间右转进走廊,直走到底"执行,t = 2.6 s 到 41.1 s;下:办公室场景,Spot 按"右转沿蓝地毯走到走廊尽头,进入有前台的房间"执行,t = 2.3 s 到 69.1 s。每个气泡是一次 VLM 推理的文本和 3 个航点,红圈是推理里提到的行人或障碍。相邻航点(间隔 3 秒)相距约 0.5–2 米,可以看出仿真里车速大致在 0.2–0.7 m/s。

读懂它

这篇真正说明了什么

关键 insight

1. 延迟要作为输入,而不是当噪声

同一个 KV 接口,加上延迟元数据并在训练时注入延迟,SR 从 30.59 到 47.06(表 2);单独去掉 Δp 掉到 41.18(表 6)。这组对照是全文最直接支撑核心论点的证据,而且都在不做 RL 的条件下。

2. 慢系统交给快系统的东西要"厚"

3 个航点做接口,SR 最多 22.35;最后一层 KV 做接口,47.06。航点把 VLM 的理解压成几个坐标,过时之后没法重新解释;KV 里还留着场景、物体和意图的信息,策略可以结合当前帧重新读。

3. RL 买的主要是大延迟下的鲁棒性

RL 只调最后一层交叉注意力和输出 MLP,在 1–2 s 延迟下提升 7–8 个点,在 4–5 s 下提升 17–19 个点(图 5)。IL 学会了"读时间戳",RL 把它校准到真实的异步闭环分布上。

4. 在这套设置里,小模型 + 显式延迟胜过大模型

换成 Qwen2.5-VL 3B,SR 降到 32.94(表 12),论文归因于推理更慢导致感知和动作对不齐;真机上 1B 的 TIC-VLA 也胜过 7B 的 DualVLN 和 NaVILA。各骨干的实际延迟没有报告,这条只能算方向性证据。

容易误解的地方

  • "TIC-VLA (Sync.)"不是"不建模延迟的异步版"。它是阻塞执行:推理时机器人停住,推理完执行 0.5 s 预测轨迹,再停下来等下一次。T = 2 s 时只有 0.5 / 2.5 = 20% 的时间在动。在有超时限制的测试里,它的 32.94 同时反映了"语义新鲜"和"动的时间少"两件事。对应"假设推理与控制同步"的对照是表 2 的 KV ✗ 那一行(30.59)。
  • 同步阻塞的"Δt = 0"只对机器人自己成立。附录把它的 Δt 和 Δp 记为 0,因为机器人在推理时没动;但行人在这 T 秒里照样在走,语义描述的仍是 T 秒前的人群。
  • Δt 不等于推理耗时。它在 [T, 2T] 之间锯齿变化(见上面的交互)。图 5 横轴是到手时的年龄 T。
  • 10 Hz 是动作策略的调用频率。Orin NX 上实测单次 120.27 ms;0.5 Hz 是仿真里带推理文本时 VLM 的频率,不解码文本时 4 Hz。
  • "零样本"指没有真机任务的专用数据。训练集里有 SCAND、GND 两个真实世界数据集,真机测试不是 sim-to-real 意义上的零样本。

FAQ

它和 DualVLN 这类双系统 VLA 到底差在哪?

架构上都是"慢推理 + 快控制、异步运行"。论文强调的区别是接口:DualVLN 一类假设慢系统的输出是新鲜的;TIC-VLA 把语义的陈旧程度(Δt)和这期间的自身位移(Δp)作为显式输入,并在 IL、RL 两个阶段按部署时的延迟分布训练。表 1 里 DualVLN SR 30.59,与"KV 接口但不建模延迟"的 TIC-VLA 变体(表 2,30.59)恰好相同,但两者骨干、训练流程都不同,不能直接当作同一个对照。

Δt 和 Δp 各自管什么?有没有单独去掉 Δt 的实验?

Δp 告诉策略"语义生成那一刻我在哪、朝哪",可以把语义里的空间信息(航点、"前方偏左的行人")换算到当前机体系;Δt 告诉策略语义有多旧,环境里会动的东西(行人)可能已经走了多远。表 6 只去掉 Δp(47.06 → 41.18);表 2 把 Δt、Δp 和延迟训练一起去掉(47.06 → 30.59)。没有只去掉 Δt、保留 Δp 的实验。

为什么 1 s 延迟反而不比 2 s 好?

RL 后 1 s 是 54.1、2 s 是 55.3,相差 1 条 episode,在噪声范围内。另外 1 s 条件是靠"推理开始 1 s 后暂停仿真、推理完再继续"造出来的,环境被冻结的方式和其他条件不同,严格说不是同一种干预。

动作专家读得懂 VLM 的推理文本吗?

动作专家不读文本,只读最后一层 KV。推理文本的作用是改变 KV:生成了文本,KV 序列里就多了这些 token 的键值。表 4 显示带文本推理 SR 55.29、不带 40.00,但动作专家训练时 KV 一直带着文本,测试时去掉属于分布外输入,所以这组差距不能全算在"推理本身有用"上。

这个接口能搬到操作任务上吗?

论文把"扩展到操作"列为未来工作,没有实验。解读导航里 Δp 是一个 3 维的自身位姿变化,语义里最重要的空间量(目标方向、行人位置)都能用它近似换算;操作里过时的往往是被操作物体的状态,单靠机械臂自身的位移补偿不了,可能需要把"当前帧"这条通路的权重设计得更重。

局限与疑点

作者承认的,和我们读出来的

论文自己提到的

  • 系统还没有为运行效率做充分优化,推理和部署都有提速空间。
  • 真机评测规模有限,需要更大的研究来验证鲁棒性。
  • 只做了导航,扩展到操作等领域是未来工作。
  • 影响声明里提到:在人群中运行仍有误解指令、碰撞、社交上不得体等风险,安全关键场景需要人类监督。

我们读出来的

  • 疑点IL 阶段的 KV 由 GPT-5 标注的推理文本算出,这些文本生成时看过未来 5–20 s 的画面;部署时 KV 来自 VLM 自己生成的文本。"延迟一致"没有覆盖这一层。
  • 疑点"有效延迟"两处定义不同(tinfer + telapse 与"观测到可用");0.5 Hz 与"平均约 2 s"按前一种定义对不上。
  • 疑点只有 TIC-VLA 在 DynaNav 的 office / hospital / warehouse 场景里做了 RL(任务不同、场景相同),基线没有对应的仿真内适应;基线在仿真里如何处理推理延迟没写。
  • 疑点Sync. 变体把"语义新鲜"和"80% 时间停车"绑在一起,不是对"同步假设"的干净检验。
  • 疑点85 条单种子;表 1 和 NavDP 差 1 条,多数消融差 1–5 条;真机每任务 5 次,0.85 / 0.80 / 0.75 各差 1 次。
  • 疑点表 4 的"无推理"对照混入了 KV 分布偏移(动作专家训练时 KV 一直带推理文本)。
  • 户外成功阈值"放宽"但没给数值;episode 到达 1.5 m 自动终止,SR 不考察停车。
  • 任意 Δt 处的推理文本从哪来没写(标注约 3 s 一个样本,Δt 连续采样);KV token 个数、Δt / Δp 的编码方式未披露。
  • 各 VLM 骨干的推理延迟(表 12)、TIC-VLA RL 的并行环境数未披露;Orin NX 上动作策略达不到 10 Hz,实际频率未说明。
  • 真机任务名在图 6 和表 10 不一致(Plaza / Campus,Walkway / Sidewalk)。

放到专题里看

Context Architecture 里唯一管"时间"的那一篇

在 Harness for Robotics 专题里,TIC-VLA 属于 Context Architecture:设计模型每次决策看到什么、以什么形式看到。它的子方向是时序对齐,改的是"看什么"里的"看哪一刻的",不是"记什么"。缓存只保留最近一次推理的结果,下一次推理完成就整块覆盖,不累积历史;Δt 和 Δp 是附在这份上下文上的时间戳和坐标变换。

TIC-VLARA-VLAActiveVLAMemoryVLAOptimusVLASOMAHiMe
类别Context · 时序对齐Context · 检索Context · 视觉选择MemoryMemoryMemoryMemory
改了什么语义上下文来自哪一刻,并附时间与位移从示范库检索行为相近的片段当上下文从点云渲染虚拟视角、放大关键区域感知 / 认知双流记忆库检索到的轨迹先验 + 已执行动作的一致性记忆头部相机扫描建立的物体级空间记忆执行器 / 哨兵 / 规划器三层记忆
以什么形式VLM 最后一层 KV + (Δt, Δx, Δy, Δθ)预编码缓存的 VLM 特征 + 状态 + 动作渲染图像(正交投影、主动视角、放大)记忆 token,key 上加时间步编码先验动作分布 + 加性一致性偏置外观特征 + 3D 位置编码的记忆 token文本子目标 + 多模态键值记忆库
进入哪里动作专家每层交叉注意力的 K/V动作头交叉注意力,每层配一个片段VLM 的输入图像扩散动作专家的条件流匹配的初始噪声与偏置交叉注意力增强 VL token 后进 DiT执行器(π0.5)的语言条件
时间怎么处理显式 Δt、Δp;训练注入延迟不涉及不涉及(预测下一关键帧位姿)正弦时间步编码Mamba 建模块间动态新观测按相似度 EMA 融合哨兵每 n 步检查,子任务边界唤醒规划器
任务动态人群中的语言导航操作(LIBERO、UR5e)操作(RLBench 等)操作操作视野外物体操作长时程操作
  • 和 RA-VLA(同类,注入位置最像):两者都把 VLM 侧算好的特征当作动作头交叉注意力的 K/V,而不是塞进 VLM 的输入序列。RA-VLA 明确是为了避免上下文变长拖慢推理,TIC-VLA 是为了让快系统不必等慢系统。区别在上下文的来源:RA-VLA 来自离线示范库,按行为相似度检索,和时间无关;TIC-VLA 来自同一 episode 里几秒前的自己,所以要带时间戳。
  • 和 ActiveVLA(同类):ActiveVLA 改的是空间上的"看哪里、看多细",代价写在它自己的消融里:加上主动视角选择和 3D 放大,RLBench 上每步推理从 0.26 s 增加到 0.53 s。它预测下一个关键帧位姿,没有连续控制回路,延迟在它的设定里不构成问题。TIC-VLA 处理的正是这个设定之外的情况:上下文变贵、变慢之后,控制端怎么接。
  • 和 HiMe(跨类,结构最像):两者都是"快执行 + 慢推理"的多速率层级。HiMe 的慢层(GPT-4o 规划器,附录实测 P50 38.59 s)只在哨兵判定子任务完成时被唤醒,交给执行器的是文本子目标,子目标在完成前一直有效,所以论文没有把"规划结果有多旧"当作问题。TIC-VLA 的慢层持续运行,交下来的是稠密特征,在行人中间几秒就过时,所以必须附上 Δt 和 Δp。
  • 和 MemoryVLA(跨类):两者都给"过去的信息"打时间标签:MemoryVLA 在记忆条目的 key 上加时间步正弦编码,TIC-VLA 把 Δt 作为单独的 token。但 MemoryVLA 累积多步历史,TIC-VLA 只有一份最新语义。
  • 和 SOMA(跨类):两者都要把"别的时刻 / 视角得到的信息"配准到当前。SOMA 把物体存在 VGGT 估计的全局坐标系里,显式维护;TIC-VLA 只给相对位姿 Δp,折算交给策略去学。
  • 和 OptimusVLA(跨类,点到为止):它的局部一致性记忆记的是自己已执行的动作块,TIC-VLA 的 Δp 是自己已执行的位移,都属于"本体运动历史",但一个用来约束动作平滑,一个用来重新解释过时的语义。
  • 和(3)结构化执行、(4)评估与反馈两类:ACoT-VLA 也让动作头读 VLM 的 KV(EAR 每层读同层 KV,IAR 每层用 1 个 query 从降到 128 维的 KV 里抽先验),但它在同一帧上推理(RTX 4090 上 112 ms),论文没写是否异步执行。解读两篇的数字在「显式轨迹还是隐式特征」上指向不同方向:TIC-VLA 用 3 个航点做接口 SR 最多 22.35、用 KV 是 47.06,ACoT 在 LIBERO-Plus 上显式粗轨迹(EAR)单独到 83.7、隐式先验(IAR)单独 80.4(基线 75.7);不过前者的航点是 VLM 解码出的 3 个稀疏点、还会过时,后者由单独的 300M 模块生成 15 点,不能直接比。τ₀-VLA 的部署同样是异步双层(高层约每 1 s 刷新子任务缓存,低层约 30 Hz 读缓存),但交下去的是文字子任务,不带延迟信息,搜索期间低层一直按旧子任务执行、搜索耗时也没报告,正是 TIC-VLA 处理的那种情况。

术语表

读这篇会遇到的词

展开术语表
TIC
Think-in-Control:让控制在"知道推理有多旧"的前提下使用推理结果。
delayed semantic-control interface
延迟语义-控制接口:延迟的 VLM 语义状态(最后一层 KV)+ 延迟 Δt + 自身位移 Δp。
Δt
有效推理延迟 = tinfer(推理耗时)+ telapse(上次推理完成后又过了多久);附录另有"观测到可用"的定义。
Δp = (Δx, Δy, Δθ)
ego-motion offset:从语义所依据的那一帧到现在,机器人的相对位姿变化,由位姿估计相减得到。
KV cache
Transformer 每层的键值缓存。本文取 VLM 最后一层的 K/V 作为语义特征,256 维。
latency-consistent training
延迟一致训练:IL 时人为采样延迟、RL 时真实异步并注入延迟,使训练输入的延迟分布接近部署。
dual-system VLA
双系统 VLA:慢的推理模型 + 快的动作模型,通常异步运行。
action query
按时间步索引的可学习嵌入,本文 30 个,对应 3 s 内每 0.1 s 一步。
SmoothL1
Huber 型损失,本文用于比较积分出的位姿和真值轨迹。
PPO / GAE
近端策略优化 / 广义优势估计,本文 RL 阶段的算法。
DynaNav
本文的 Isaac Sim / Isaac Lab 仿真套件与 85 条测试基准。
NE / SR / SPL / CR
导航误差 / 成功率 / 按路径长度加权的成功率 / 碰撞率。
point-goal
点目标导航:直接给目标坐标,本文把这类方法视为有特权信息的参考。
Sync.
本文的同步阻塞变体:推理时停车,推理完执行 0.5 s,再停。
GQA
分组查询注意力:多个查询头共享少量 KV 头,Qwen2.5-0.5B 有 2 个 KV 头。
odometry drift
里程计漂移,影响 Δp 的准确性;本文表 14 注入按距离成比例累积的噪声测试。