在人群里走路,难的从来不是躲开眼前那个人。难的是你此刻选的那条路,两秒之后会不会正好切进一支正在过街的人流、会不会压到车道边缘、会不会堵住别人正要推开的门。这三种动作在当前这一帧全都合法:不碰撞、不越界、和你见过的示范也长得像。它们错在别的地方——错在"接下来会发生什么"。

人类走路是靠预判的,这一点在人群行为研究里有大量证据;而工程上能实时跑的策略,绝大多数只看当前状态。想让智能体也预判,最直接的办法是给它一个世界模型,每一步都把上百个候选动作各推演一遍未来。这件事在算力上是灾难,于是这个领域事实上做了一次交换:用前瞻换速度。

arXiv 2611.07730v1 这篇《Seeing Beyond the Next Step: World-Model-Guided Human-Like Navigation in Multi-Agent Scenes》认为这个二选一是假的。它的主张可以压成一句话:世界模型在人群导航里的正确位置是训练期,当一个给候选动作打分的偏好裁判,而不是推理期,当一个在线规划器。 训完之后两个世界模型全部扔掉,部署时策略只做一次前向,65 毫秒选出一个动作锚点。

作者来自高丽大学与 NC AI,论文是 NeurIPS 2026 的接收稿,全文 37 页。它给出的三个数字是:五个留出场景上平均目标成功率 77.4%,比"预测器 + MPC"这一整类管线里最好的一个还高 20 多个点;平均社交区域违规率 4.0%,而在同一套监督下去掉两个世界模型,这个数字会回到 19.5%;推理一次 65 毫秒,而把两个世界模型搬到线上每一步都跑的版本要 1.2 秒。

这篇文章写给两类人:做人群仿真、社交机器人、服务机器人导航的人,以及任何在想"世界模型到底该怎么用"的人。前半段讲清楚它预测什么、怎么把预测接进策略、和只看当前状态的基线差在哪;后半段讲实验、讲"像人一样走路"这个指标到底值不值钱、讲它在哪里会崩。

先把结论摆出来:世界模型该待在训练期

一句话版本

把"下一步会怎样"变成训练信号,而不是推理开销。

具体做法是三段:先在一个离散的动作词表上训练一个模仿先验,让候选动作天然落在人类会走的那一族里;再用两个分工不同的世界模型给每个候选动作打出"后果分";最后用 GRPO 把这组组内相对偏好蒸馏回策略参数。部署时只剩策略本身。

三个数字把账算清

第一个是 77.4%。这是五个留出场景上的平均目标成功率(GSR),对照的"预测器 + MPC"管线里最强的是 56.1%(匀速模型),专门做不确定性建模的 Gen-Safe-Nav 只有 42.9%。

第二个是 4.0%。这是平均社交区域违规率(SRVR),衡量智能体有多少比例的时间步待在语义上不该待的地方,比如车道。同一套监督、同样五个场景,去掉两个世界模型之后是 19.5%。差距最大的是 Zara01_Group:最强基线 17.4%,本文 1.2%,差了一个数量级。

第三个是 65 毫秒对 1.2 秒。前者是部署策略一次决策的耗时,后者是把两个世界模型每一步都跑一遍的在线规划版本。在线版本的成绩是 80.6% 成功率,本文是 77.4%——用 3.2 个点的成绩,换 18 倍的速度,这就是全文的交易结构。

这篇论文做了三件事

作者在引言里列了三条贡献,我按重要性重排:

  1. 把世界模型的角色从"规划器"改成"裁判"。 世界模型不控制智能体,只对候选动作打分;打分结果经 GRPO 变成策略参数的一部分。这条是全文的骨架。
  2. 把未来预测拆成两个任务对齐的分支,而不是一个单体式(monolithic)的生成器。 一个预测周围实体的相对位置与速度,一个预测行人被抹掉之后的语义分割图。消融显示两个分支抓的是不同类的错误。
  3. 一套把"像人"拆成可测量的三条轴的评价。 闭环任务指标、对人类轨迹的几何保真度(ADE/FDE)、20 名被试的 7 级量表。

问题不在"下一步":三种局部可行、全局糟糕的动作

什么叫 reactive

几何反应式控制器(比如社交力模型、梯度转向)从当前的位置和速度里算一个斥力或转向角;学习式的人群策略把更长程的权衡压进一个价值函数,但决策时读的仍然是当前状态;视觉转向和最近的 VLA 模型把这套范式扩展到更丰富的视觉与语义感知,但它们把容量花在"把当下这帧读得更准",而不是"问每个候选动作会产生什么"。

这三类方法的共同点是:它们优化的对象是当前状态下的可行性,而不是动作的后果。

三个失败场景

论文开篇给了三个例子,都不是碰撞:

  • 一条路当前完全空着,你走上去,两秒后一辆转弯的车正好到达——你漂到了车道上,而不是走人行横道。
  • 前面的人流有一个缝,你切进去,正好把一支已经作为一个整体在移动的队伍劈开。
  • 一条窄通道当前不堵,你走进去,正好堵住门后要出来的人。

这三个动作在几何上合法、在示范分布内也合理,但它们在"动作导致什么"这个意义上是坏的。论文把这类错误的共性说得很准:它们由所选动作会引起什么决定,而不是由它当前避开了什么决定。

为什么预判这么贵

一个诚实的世界模型要在每一步对候选动作做条件推演。论文里的候选词表是 100 个动作锚点,就算只对其中几十个做推演,每个推演还要跑一次去噪式的语义预测,单候选 0.115 秒。人群仿真、具身交互智能体、机器人本体上的导航这三类系统的决策回路都吃不下这个开销。

所以领域做了一个交换:放弃前瞻,换实时。论文的立场是,这个交换不必要——前瞻可以在训练时一次性摊销进参数里。

方法总览:两段式,世界模型只活在第二阶段

输入与输出

每一步 t,受控智能体拿到的观测是

ot={It, gt, vt, vt−1, Nt, Dt}o_t=\{I_t,\ g_t,\ v_t,\ v_{t-1},\ \mathcal{N}_t,\ \mathcal{D}_t\}ot​={It​, gt​, vt​, vt−1​, Nt​, Dt​}

其中 I_t 是 RGB 观测,g_t 是自车坐标系下的目标点,v_t 与 v_{t-1} 是当前与上一帧的自车速度,N_t 与 D_t 是附近行人与动态物体的集合。每个周围实体带一个自车系相对位置 p 和相对速度 u。

策略输出的是动作词表 A={a_1,…,a_K} 上的一个类别分布,K=100。每个锚点 a_k 是一条短的、自车系下的位移轨迹,20 步。

两阶段各自的损失

第一阶段是纯监督:把每条示范轨迹在时刻 t 最近的那个锚点当作标签,最小化交叉熵

LSFT=−E(ot,at⋆)[log⁡πθ(at⋆∣ot)]\mathcal{L}_{\mathrm{SFT}}=-\mathbb{E}_{(o_t,a_t^{\star})}\left[\log \pi_{\theta}(a_t^{\star}\mid o_t)\right]LSFT​=−E(ot​,at⋆​)​[logπθ​(at⋆​∣ot​)]

第二阶段冻结两个世界模型,只用它们算出的分数做 GRPO。这两个阶段之间没有第三个阶段,也没有推理期的重排。

部署时剩下什么

部署时被丢掉的东西清单值得单独列出来,因为它决定了这套方法的工程成本:

  • 两个世界模型本身(一个 31.1 TFLOPs,一个 6.8 GFLOPs)
  • 候选组构造(每次决策要凑 10 个候选)
  • 五项分数函数与它的全部超参
  • 语义分割的类别体系与阈值规则

留下的是一个 Qwen3-VL-2B-Instruct 加 LoRA 的分类头,一次前向 65 毫秒。

# 仅示意:训练期偏好蒸馏的一次迭代(伪代码,不是原文代码)
for o_t in rollout_buffer:
    anchors = top5(policy(o_t)) + uniform5(A \ top5)   # 从 K=100 里凑 10 个候选
    for a in anchors:
        dstate = f_state(h_t, a, P_t, U_t)            # 下一步相对位置与速度
        S_next = f_sem(h_t, a, D_t)                   # 下一步导航语义分割
        r[a] = G(a) - C(a) - P_cur(a) - P_fut(dstate, a) + M(S_next, a)
    adv = (r - mean(r)) / std(r)                      # 组内相对优势
    loss = -sum(log policy(a | o_t) * adv)            # GRPO 风格更新
    update(policy, loss)                              # 两个世界模型全程冻结
# 部署:丢掉 f_state、f_sem、候选组、打分函数,只留 policy
a_star = argmax policy(o_t)                           # 一次前向,65 ms

图 1
图 1|训练流水线的两段式结构:上面是观测的五个组成部分,左下 Stage 1 把 VLM 训成锚点分类器,中下 Stage 2 用候选组加双世界模型做偏好引导的 GRPO;右列是双世界模型的预测目标(相对速度与位置、语义图)和五项打分项。

动作空间:100 个锚点,把运动选择变成分类

锚点怎么切出来的

论文用 25 FPS 的示范轨迹,切成 20 帧一段、步长 10 帧的片段,每段展开成 40 维的位移向量,然后在这个 40 维空间里跑 K-means,K=100。每个聚类中心还原成 20 个二维点,就是一个锚点。

这个设计把"连续轨迹回归"换成了"100 类分类"。作者给的理由有两条:一是候选动作从一开始就落在人类会走的流形上,二是让"比较候选动作的后果"这件事在计算上可行——比较 10 个类别的分数,比在连续空间里做优化便宜得多。

为什么是 100

论文在附录 D 里做了一个经验性检查:从数据集里随机抽 20 条真实轨迹,各自找最近的锚点做重建。结论是 100 个锚点保住了短时运动的主方向、尺度和终点趋势,只在罕见或突变的动作上出现明显偏差。

作者对词表大小的权衡说得很直白:更小的词表会把直行、横移、转弯、变速这些不同行为并成过粗的原语;更大的词表会让监督变稀疏、候选比较变贵。100 是这两端之间的折中。

这一步买到了什么,代价是什么

买到的是一整套方法的地基:没有离散词表,就没有"10 个候选"这种比较结构,也就没有组内相对偏好。

代价写在局限里:词表之外的动作只能被近似。 急停、侧身挤过、突然折返这类动作如果不在 100 个锚点里,策略只能选一个最接近的,而"最接近"在拥挤场景里可能正好意味着撞上。

两个世界模型:一个预测谁往哪走,一个预测地归谁

状态转移世界模型:给"谁朝谁走"单独加一项

第一个分支 f_state 的输入是 4 帧视觉上下文 h_t、候选锚点 a_k,以及某个周围实体的当前相对位置与速度;输出是这个实体在下一步的相对位置增量和相对速度:

Δp^t,j(ak), u^t+1,j(ak)=fstate(ht,ak,pt,j,ut,j)\Delta\hat{p}_{t,j}(a_k),\ \hat{u}_{t+1,j}(a_k)=f_{\mathrm{state}}(h_t,a_k,p_{t,j},u_{t,j})Δp^​t,j​(ak​), u^t+1,j​(ak​)=fstate​(ht​,ak​,pt,j​,ut,j​)

预训练损失是

Ldyn=Et,j[∥Δp^t,j−Δpt,j∥22+λu∥u^t+1,j−ut+1,j∥22+λdir(1−cos⁡(u^t+1,j,ut+1,j))] \mathcal{L}_{\mathrm{dyn}}=\mathbb{E}_{t,j}\left[\|\Delta\hat{p}_{t,j}-\Delta p_{t,j}\|_2^2\right. \left.+\lambda_u\|\hat{u}_{t+1,j}-u_{t+1,j}\|_2^2\right. \left.+\lambda_{\mathrm{dir}}\left(1-\cos(\hat{u}_{t+1,j},u_{t+1,j})\right)\right] Ldyn​=Et,j​[∥Δp^​t,j​−Δpt,j​∥22​+λu​∥u^t+1,j​−ut+1,j​∥22​+λdir​(1−cos(u^t+1,j​,ut+1,j​))]

第三项是这篇论文里我认为最值得记的一处设计。它是一个方向项,权重 λ_dir=2.0,比速度项的 λ_u=1.0 还大。作者的解释是:这个分支对排序交互风险的用处,主要来自预判"谁正在朝谁走来",而不只是预判速度大小。两个速度向量的模长可能一样,方向相反则意味着完全不同的风险。

分支本身的精度在附录 E:位置 ADE 0.1846 米,位置 RMSE 0.2481 米,速度 MAE 0.3354 米每秒,速度 RMSE 0.4414 米每秒,速率 MAE 0.2096 米每秒,朝向误差 20.77 度。

语义转移世界模型:预测分割,不预测 RGB

第二个分支 f_sem 预测的是"给定这个锚点之后,下一步的导航语义分割图":

S^t+1(ak)=fsem(ht,ak,Dt)\hat{S}_{t+1}(a_k)=f_{\mathrm{sem}}(h_t,a_k,\mathcal{D}_t)S^t+1​(ak​)=fsem​(ht​,ak​,Dt​)

不是 RGB 帧。作者的理由很干脆:分数函数只需要知道智能体即将占据哪一类语义区域,预测 RGB 会把容量花在策略根本不读的纹理上。类别是七类加一个忽略类:人行道、人行横道、车道、车辆、建筑、障碍物、草地。

实现是一个 EDM 风格的条件去噪器,每次候选打分跑 25 步去噪,损失是带 EDM 噪声权重的重建项加一项 LPIPS 感知项(λ_LPIPS=0.1)。分割精度:像素准确率 99.2848%、mIoU 87.0020%、Dice/F1 89.0814%、频率加权 IoU 98.6099%;作为对照的 DDPM 变体是 97.7863% / 86.5421% / 88.2132% / 95.4289%。

图 2
图 2|语义分支在 Zara01 上连续四帧的预测:第一行是第三人称输入,第二行是真值分割,第三行是世界模型预测;红色轮廓是受控智能体,其他行人被排除在分割目标之外。

为什么把行人从分割目标里删掉

这是全文第二个我认为值得记住的设计。行人会出现在输入图像里,但他们的像素在分割目标里被赋成忽略标签。

理由是:行人只是"临时的遮挡物",不改变那块地面的可通行性。如果行人被当成普通分割目标,这个分支就得同时解决两个问题——预测持久的场景布局,和预测每一个行人的未来掩码。后者是状态分支的活,硬塞进来会引入噪声监督:行人位置的小误差会主导分割损失,却对"这只脚即将踩到哪类地面"这个判断毫无帮助。

删掉之后两个分支的分工就干净了:状态分支管谁往哪走,语义分支管场景归谁。(f_state 与 f_sem)作者把这个分工称为"两个不重叠的前瞻来源"。

从预测到偏好:10 个候选、一个标量分数、一次 GRPO

候选组:5 个贪心加 5 个随机

每次决策凑 10 个候选:5 个是当前策略下概率最高的锚点(利用监督先验),5 个从剩下 95 个里均匀随机采(探索先验之外的动作)。

这个设计在消融里被证明不是可有可无的。只取前 10 个(纯利用)在 Zara01_Group 上崩到 14.8% 成功率;纯随机 10 个在 ETH_Intersection 上只有 44.4%。作者的解释是两种极端以相反的方式失败:全取高分候选彼此太像,学不到东西;全随机候选太不相关,信号没用。

分数函数:五项相加

每个候选拿到一个标量分数:

rt(i)=Gt(i)−Ct(i)−Pcur,t(i)−Pfut,t(i)+Mt(i)r_t^{(i)}=G_t^{(i)}-C_t^{(i)}-P_{\mathrm{cur},t}^{(i)}-P_{\mathrm{fut},t}^{(i)}+M_t^{(i)}rt(i)​=Gt(i)​−Ct(i)​−Pcur,t(i)​−Pfut,t(i)​+Mt(i)​

五项分别是:目标进展 G(朝目标点靠近的归一化量)、平滑代价 C(第一步速度与上一帧速度的差,双向归一化)、当前交互风险 P_cur、预测的未来交互风险 P_fut、语义有效性 M。

P 由三部分构成,每一项都在附录 B 给了闭式:

  • 人群压力:以 σ_ρ=2.5 米的高斯核加权的人数密度,乘一个速度离散度项,上限 N_max=15。
  • 近身距离代价:以 σ_p=1.25 米的高斯核加权,同组的行人权重取 0.5,非同组取 1.0——同一群体内的贴身是被允许的。
  • 碰撞风险:用时间到碰撞的代理量,τ=2.0,行人权重 1,动态物体权重 1.2。

M 是一组手写规则:局部三角足迹里,人行道加人行横道的像素占比超过 70% 得 +1,车道的占比超过 70% 得 −2,草地超过 25% 得 −1,车辆、建筑、障碍物超过 5% 各得 −10,最后除以 34 归一化。惩罚的严重程度有一个明确的层级:车辆、建筑、障碍物 高于 车道 高于 草地、人行道、人行横道。

GRPO 在这里做什么

GRPO 做的事只有一件:在同一组的 10 个候选里,偏好那些分数高于组均值的。它不需要一个价值网络,也不需要把分数转成绝对回报——这正是组内相对方法的好处,因为分数函数的五项都是人工定义的量纲,绝对值没有意义,排序才有。

五项权重全部取 1,作者明确说是"刻意避免按场景调奖励"。这句话在消融里被验证了:一个权重都不调,五个场景全部第一。

一个容易误读的点

世界模型不控制智能体。它们不输出动作、不做 MPC、也不产生想象中的轨迹让策略去模仿。它们只回答一个问题:这个候选动作之后,别人会怎么动、地面会变成什么类别。 答案被压缩成一个标量,标量被压缩成一个组内优势,优势被压进参数。

这层层的"压缩"就是"摊销"的具体含义:世界模型的前瞻能力被摊进了策略的权重里,代价一次性付在训练时。

主实验:五个场景,违规率掉一个数量级

场景、训练数据与基线

策略和两个世界模型都在 ETH/UCY 的四个场景上训练:ETH_Hotel、Zara01、ETH、Students003,全部重建成 Unity 场景。Zara01 与 Students003 按 8:1:1 切分训练、验证、测试,只用训练集做优化。

评估用五个场景,各有分工:

  • Zara01 与 Students003:训练场景、留出轨迹。
  • ETH_Hallway 与 ETH_Intersection:用 ETH 的场景资产新搭的布局,训练时从未见过。前者强调受限通道,后者强调交叉人流。
  • Zara01_Group:在 Zara01 上加大群体规模,测群体规模的泛化。

基线是三个人群导航范式:GBM(基于视觉的梯度转向)、CCP(可配置的强化学习 profile 模型)、CEDRL(example-driven 的强化学习方法)。每个场景三次运行取平均。

图 3
图 3|六个场景的重建画面:Students003、ETH_Hotel、Zara01、ETH、ETH_Hallway 与 ETH_Intersection;后两个是用 ETH 资产新搭、训练时从未见过的布局。

三个指标

  • GSR:目标成功率,无碰撞到达目的地的智能体比例。越高越好。
  • SRVR:社交区域违规率,待在语义不当区域(比如车道)的时间步比例。越低越好。
  • GD:群体距离,到被分配群体质心的平均距离。越低越好。

三个指标对应三件事:能不能到、守不守规矩、跟不跟得住队伍。

主结果

场景GSR 基线→本文SRVR 基线→本文GD(本文)
Zara0155.6 → 72.215.6 → 7.00.6
Zara01_Group38.9 → 77.817.4 → 1.22.1
Students00364.0 → 66.015.2 → 7.20.7
ETH_Intersection72.2 → 83.313.0 → 3.90.9
ETH_Hallway68.8 → 87.57.5 → 0.90.8

表里 GSR 那一列的最强基线,五个场景都是 GBM;SRVR 那一列在 Zara01 与 Zara01_Group 上是 CEDRL,在 Students003 是 GBM,在两个 ETH 场景上是 CCP。下面消融表里的"群体"两列,指的是 Zara01_Group 这个场景。

这张表里有几件事值得单独说。

第一,违规率的下降不是靠保守换来的。 一个只求不违规的策略可以站着不动,SRVR 会很低,GSR 也会很低。本文在五个场景上 GSR 全部高于最强基线,同时 SRVR 全部更低——两个方向同时改善,这才是"预判"该有的样子。

第二,群体场景的差距最大。 Zara01_Group 上 SRVR 从 17.4 掉到 1.2,是 14.5 倍;GSR 从 38.9 涨到 77.8,正好翻倍。群体场景难在"个体可行"和"群体可行"经常冲突:你插进队伍中间,自己省了两秒,整支队伍的形态被打散。只看当前状态的策略没有工具去区分这两种。

第三,ETH_Hallway 是语义分支的主场。 SRVR 从 7.5 掉到 0.9。受限通道里,"这只脚会踩到哪类地面"比"隔壁那个人下一步往哪偏"更决定成败。

第四,Students003 的 GSR 只涨了 2 个点(64.0 到 66.0),是五个场景里最小的。这个场景行人密度高但布局简单,基线本来就不差;提升主要落在 SRVR(15.2 到 7.2)和 GD(1.4 到 0.7)。

定性例子:人行横道

论文 Figure 3 给了一个过街场景:有画线人行横道,四个方法各跑一遍,红色曲线是过去 60 帧的轨迹。基线们普遍离开人行横道、直接从车道区域穿过去;本文的方法整个过程留在横道内,其中一帧还沿着横道边缘绕开一个迎面行人——绕行没有离开横道。

这个例子对应的就是 M 项里的规则:车道占比超过 70% 扣 2 分,人行道加人行横道超过 70% 加 1 分。规则很土,但它把"什么是合法地面"这件事写进了训练信号。

图 4
图 4|过街对比:蓝色框标出 CCP、CEDRL、GBM 离开人行横道、直接穿过车道区域的帧;本文(右下)整段过街都留在横道内,第二帧还沿横道边缘绕开迎面行人。

群体场景的三个对比画面

图 5
图 5|群体导航对比:CCP 出现掉队、CEDRL 与车辆贴得过近、GBM 把队伍拉散到车道,本文(右列)在同样三帧里保持更紧凑的队形并避开车辆。

同一组对照在群体场景里更直观:三帧时间序列上,CCP 的队伍被拉成一长串,CEDRL 有一帧和车辆贴到几乎重叠,GBM 把整支队伍推到了车道边缘;本文那一列在同样三帧里队形更紧凑,也没有进入车道。

这也解释了 GD 这个指标为什么值得单独报:它量的不是"有没有撞上",而是"还像不像一个群体"。在 Zara01_Group 上,本文的 GD 是 2.1,CCP 是 4.8、CEDRL 是 5.9、GBM 是 1.9——GBM 的队形比本文还紧,但它的成功率只有 38.9%、违规率 17.5%,也就是说它是靠"贴着队伍慢慢挪"换来的紧凑。只看 GD 会把这个策略误判成好策略。

消融与对照:删掉世界模型掉 40 个点,在线跑世界模型只多 3 个点

删掉双世界模型

变体平均 GSR平均 SRVR群体 GSR群体 SRVR
本文77.44.077.81.2
去掉双世界模型37.319.516.747.0
去掉状态分支45.912.427.822.3
去掉语义分支56.811.138.917.5
去掉 VLM 主干53.510.629.67.4
纯 top-10 候选47.717.314.842.7
纯随机 10 候选42.614.818.518.5

表里除"本文"和"去掉双世界模型"两行外,平均值是我按原文五个场景的数值求的算术平均,论文只报了这两行的均值;单场景数字都来自原文表 2。

去掉双世界模型是全文最大的一次塌方:平均 GSR 从 77.4 掉到 37.3,平均 SRVR 从 4.0 涨到 19.5。 这个对照很重要,因为它去掉的只是第二阶段——第一阶段那个模仿人类的监督先验还在,100 个锚点还在,VLM 主干还在。也就是说:光有一个"像人"的模仿先验,不足以区分局部可行但后果不同的动作。 这句话是全文对"像人"这个目标最锋利的一次限定。

两个分支各管一类错

  • 状态分支管交互风险。 ETH_Intersection 上去掉它,GSR 从 83.3 掉到 51.9,比去掉语义分支(66.7)更惨。交叉人流里,胜负手是"谁正在朝谁走来"。
  • 语义分支管布局约束。 ETH_Hallway 上去掉它,SRVR 从 0.9 涨到 13.7,比去掉状态分支(8.7)更糟。受限通道惩罚的是语义上不成立的足迹。
  • 但两边都不是只影响自己那一轴:去掉任一分支,五个场景的 GSR 都降、SRVR 都升。所以作者说两个分支互补,且状态分支在多数场景里影响更大。

和"预测 + 规划"这一整类比

方法GSR ↑SRVR ↓GD ↓
在线双世界模型(OnlineWM)80.63.20.9
匀速 + MPC56.115.62.2
Social-LSTM + MPC51.915.02.1
Social-GAN + MPC53.215.02.2
Trajectron++ + MPC54.417.02.1
Gen-Safe-Nav42.914.12.3
本文(蒸馏后)77.44.01.0

这张表回答的是"要不要世界模型"这个更根本的问题。四个轨迹预测器(包括 Trajectron++ 这种强预测器)配 MPC,最好的一个也只有 56.1%;Gen-Safe-Nav 用保形预测处理预测不确定性,只有 42.9%。更好的预测本身并不带来更安全的导航——这一点和此前一些工作的结论一致。

而在线跑双世界模型的 OnlineWM 拿到 80.6%,是全场最高。本文的蒸馏版本 77.4%,差 3.2 个点。这 3.2 个点就是"把前瞻摊销进参数"的价格。

成本表

组件计算量单次耗时部署时是否保留
语义转移世界模型31.1 TFLOPs0.115 s否
状态转移世界模型6.8 GFLOPs1.904 ms否
策略(Qwen3-VL-2B + LoRA)23.6 TFLOPs65 ms是
在线双世界模型规划三个组件逐候选叠加1.2 s—

语义分支是训练期算力的大头,因为它要在 25 步去噪里产出一张稠密分割图;状态分支只有 6.8 GFLOPs,因为它只回归低维的相对位置和速度。这两个成本只在生成偏好监督时付一次。

输入消融:视觉和状态谁也替不了谁

论文附录 N 把输入拆开:State only 去掉图像,Vision only 保留图像和目标点、去掉其余手工状态。Zara01 上分别是 44.4% 和 61.2%,完整版 72.2%;ETH_Hallway 上是 62.5% 和 68.8%,完整版 87.5%。作者的读法是:视觉主要改善 GSR 与 SRVR,状态特征主要帮群体一致性(GD)。

一个不该被忽略的对照:标准 ETH/UCY 预测基准

附录 O 把方法放回标准 ETH/UCY 预测协议(留一场景)跑了一遍:本文平均 ADE/FDE 是 0.51/1.10(most-likely)与 0.31/0.53(best-of-20)。Trajectron++ 是 0.53/1.11 与 0.31/0.54,Social-LSTM 是 0.72/1.54。基本打平,不是 SOTA:Hotel 场景上本文 0.37/0.68 明显不如 Trajectron++ 的 0.33/0.62。

作者自己写得很清楚:目标不是刷预测精度,这个结果只说明框架在 Unity 重建之外也站得住。我认为这句话该被认真对待——它同时说明这套方法的价值不在预测器本身有多强,而在预测被怎么用。

图 6
图 6|消融的定性对照:左侧是完整方法的三帧,右侧是去掉双世界模型后的同样三帧;后者对周围行人的反应更迟、轨迹更贴车道边缘。

像人一样走路是不是伪需求

这是我最想在本文里单独拆的一节,因为它决定这套方法该不该被抄。

两个"像人"的度量,涨幅差了一个数量级

论文用了两把尺子量"像人"。

第一把是几何保真度:把生成的轨迹和留出的人类轨迹比 ADE 与 FDE,单位米,越低越像。

场景方法ADE ↓FDE ↓
Zara01GBM0.30570.5203
Zara01CCP0.24060.4524
Zara01CEDRL0.36290.6817
Zara01本文0.20640.3897
Students003GBM0.21470.4194
Students003CCP0.20530.3873
Students003CEDRL0.23380.4382
Students003本文0.19940.3948

Zara01 上 ADE 比最好的基线低 14.2%(0.2406 到 0.2064),FDE 低 13.9%。Students003 上 ADE 只低 2.9%(0.2053 到 0.1994),FDE 反而比 CCP 差(0.3948 对 0.3873)。

第二把尺子是 20 名被试的 7 级量表,评三个维度:动作质量、自然度、平滑度。

方法综合动作质量自然度平滑度
本文4.94 ± 0.444.914.885.05
CCP3.54 ± 0.343.483.453.68
GBM3.19 ± 0.343.143.133.32
CEDRL3.14 ± 0.343.043.073.31

图 7
图 7|20 名被试在动作质量、自然度、平滑度三个维度上的均值:本文为 4.91、4.88、5.05,三个基线都在 3.0 到 3.7 之间;括号是 Holm 校正后的配对 Wilcoxon 检验,星号表示显著。

综合分 4.94 对 3.54,差 1.4 分,在 7 级量表上是很大的差距;Friedman 检验 χ²(3)=20.84,p<.01;三个维度分别显著;事后配对 Wilcoxon 加 Holm 校正,对 GBM 与 CEDRL 都是 p<.01,对 CCP 是 p<.05。

于是这里出现一个错位:几何上只好了 3% 到 14%,感知上好了 40%。 两个都在说"像人",量级完全不同。

任务指标涨了,但不是因为"像人"

这一点很关键,而且论文自己的消融给出了证据。

如果"像人"是任务收益的来源,那么保留模仿先验、去掉世界模型的变体应该还能保住大部分成绩。实际上它掉到平均 37.3% GSR。按原文五个场景的数值求平均,三个基线里最好的 GBM 是 59.9%,也就是说去掉世界模型之后连基线都不如。换句话说:

  • 监督先验负责"提出像人的候选";
  • 世界模型负责"在这些像人的候选里挑出后果最好的那个";
  • 任务收益几乎全部来自后半句。

"像人"在这里不是一个目标函数,而是一个候选空间的约束。 这个区别决定了你怎么用它:如果你想要的是任务指标,你需要的是后果打分;如果你想要的是"看起来像人",监督先验就够了,而且你不需要世界模型。

用户研究的三个问题其实在问同一件事

我对这把尺子持保留意见,理由有三条,都基于原文报告的数字:

  1. 三个维度的分数几乎是同一个数。 本文 4.91 / 4.88 / 5.05,CCP 3.48 / 3.45 / 3.68,四组数据里每一组的三项差距都在 0.2 以内。动作质量、自然度、平滑度在感知上是高度相关的——受试者看的是同一段视频、评的是同一个整体印象。把它们当成三条独立证据会高估证据量。
  2. 唯一一个不显著的对照恰好是最强的基线。 平滑度上本文对 CCP 的差异在 Holm 校正后不显著。也就是说 4.94 对 3.54 这个总差距里,有一部分是"本文比 GBM、CEDRL 平滑得多",而不是"本文比所有基线都更像人"。
  3. 样本是 20 人、40 段视频(每个方法 10 段,五个场景均匀采样),每人每题看 10 段。这个规模足以支持"差异存在",不足以支持"差异有多大"。

一个内在张力:像人,还是像守规矩的人

还有一处我认为作者没有展开的矛盾。

SRVR 惩罚的是"待在语义不当区域",最典型的就是车道。但真实的人类轨迹里,横穿马路是常态;ETH/UCY 的数据本身就是从真实人行道与街口采的,里面包含大量不走横道的行为。当你用 ADE 对齐"人类轨迹"、又用 SRVR 惩罚"进入车道"时,这两个目标在某些场景下是互相拉扯的。

论文的 M 项用一组手写阈值(车道占比超过 70% 扣 2 分)把这件事定死了:它要的"像人",是"像守规矩的行人"。 这在工程上是合理的——服务机器人不该学人闯红灯——但把它叫作"human-like"会让读者误以为它对齐了人类行为的全部。更准确的说法是"人类可行且社会可接受"。

我的判断

不是伪需求,但不能把"人类相似度"当成主 KPI。

三条理由:

  • 它涨得少(ADE 3% 到 14%),而且在 Students003 的 FDE 上还不如 CCP,用它当验收线会把一个有效方法判死。
  • 它和任务指标不同源。任务指标的大头(SRVR 一个数量级、GSR 翻倍)来自后果打分,不来自模仿。
  • 它容易被"平滑"冒充。用户研究里平滑度对最强基线不显著,说明感知分数里有一部分是运动平滑性,而不是社会性。

真正该被当成主 KPI 的是 SRVR 与 GSR 的联合:违规率降了、成功率没降,才算预判起了作用。人类相似度是一个漂亮的副作用,适合写在摘要里,不适合写进验收标准。

局限与失效场景

固定词表与单步预测

两个限制叠在一起,决定了这套方法的能力边界。

词表固定为 K=100,词表外的动作只能被近似。论文自己承认:更长的时间尺度需要更大或可学习的词表。

两个世界模型都只做一次锚点条件预测。这意味着它们抓不住延迟让行、密集人群的多轮协商、几秒尺度上的队伍重组。作者的原话是:一步预测里看起来安全的动作,在更长的 rollout 里仍然可能变成坏行为。

两个世界模型打架时没有仲裁

五项分数之和的权重全部取 1。当状态分支说"这个人不会撞上"、语义分支说"这块地不能踩"时,策略跟随的是那个单位权重的加和,而不是任何显式的仲裁规则。作者把"学习式或上下文相关的加权"列为未来工作。

这在工程上意味着一个具体的失效模式:在语义与交互给出相反建议的场景(比如为了避让行人必须短暂压线),分数函数会用一个固定的兑换率替你决定,而这个兑换率是手调的。

只在 Unity 重建场景里验证过

这是全文最重要的一条边界,也是读者最该先确认的一件事:没有真机实验。

论文的五个评估场景全部是把 ETH/UCY 轨迹重建成 Unity 场景后的闭环仿真。作者在局限里写得很清楚:策略没有在真机上验证过传感器噪声、定位误差、执行延迟;附录 I 的结尾更进一步——现有结果应被理解为"世界模型引导的细化能改善后果感知的导航"的证据,而不是"完整的真机安全保证"。

配套的还有一条:重建场景用的是商业授权资产,不能分发。所以复现这套闭环实验,你需要自己重建场景,而不是下载作者的 Unity 工程。

语义规则是手调的

M 项的全部阈值——70% 的可通行占比、25% 的草地、5% 的车辆与建筑——都是经验调出来的。作者保留了惩罚严重程度的层级(车辆、建筑、障碍物 高于 车道 高于 草地、人行道、人行横道),但层级之内的数值是调参的结果。

这带来一个迁移成本:换一个城市、换一套语义标注体系(比如没有单独的"人行横道"类),分数函数的规则要重写一遍。

预测本身会失效

附录 I 给了一个语义分支的失败案例(Figure 9):在复杂的 ETH 场景里,人行道的一部分、车道边界、障碍物区域或智能体区域会在相邻预测帧之间漂移或消失。附录 H 还提到细长障碍物有时会被过度延伸。

这类错误会直接污染 M 项——策略依据一张会漂移的分割图判断"这一步是否踩在合法地面上"。

图 8
图 8|语义分支的失败案例:白框处相邻帧的预测互相矛盾,路面边界与障碍物区域发生漂移,而真值(中行)在这些位置是稳定的。

训练成本与复现门槛

训练用 8 张 A100,推理用一张 RTX 6000 Ada。相对"预测器 + MPC"这类不需要训练策略的管线,这套方法的工程复杂度明显更高:一个 VLM 主干加 LoRA、一个 EDM 去噪器、一个状态回归网络、一个 GRPO 训练循环、一套手调分数函数。

作者自己在局限里承认:当场景的语义约束很少、或者训练算力有限时,一个更简单的预测器配 MPC 可能是更实际的选择。

落地判断

值得试的三种团队

  • 做人群仿真与虚拟人的人。 这套方法的输出是锚点索引,天然适配仿真器;65 毫秒一次的决策在仿真里绰绰有余,而"违规率一个数量级"这种改善在仿真里正好是最容易被看见的。
  • 已经有语义分割或语义地图的服务机器人团队。 M 项需要一张导航语义分割图。你手里如果已经有这套标注体系(哪怕是室内的地毯、门槛、电梯口),把它换成语义类别就能直接接上。
  • 在"预测 + 规划"上卡住的团队。 如果你的 MPC 已经用上了不错的轨迹预测器但成绩上不去(论文里四个预测器配 MPC,最好的也只有 56.1%),问题可能不在预测精度,而在"预测没有被转成偏好"。这时候值得试的不是换预测器,而是换用法。

别碰的三种情况

  • 真机安全关键场景。 论文没有真机实验,作者自己说这不是真机安全保证。传感器噪声、定位漂移、执行延迟这三件事在这套管线里一件都没被测过。
  • 需要词表外动作的场景。 紧急制动、侧身挤过、突然折返,这些动作如果不在 100 个锚点里,策略只能选最近的,在拥挤场景里"最近"可能就是撞上。你的场景如果以这类动作为主,得先解决词表。
  • 需要长时协调的场景。 电梯、排队、多人接力搬运这类需要几秒尺度协商的任务,单步预测抓不住。作者把"延迟协调"明确列为未来工作。

六步自查

如果你决定在自己场景里试一次,我会按这个顺序:

  1. 先确认你的失败是"看不见后果"还是"感知不准"。 如果是后者,先修感知;这套方法假设世界模型本身是准的(语义 87 mIoU、状态 0.18 米 ADE)。
  2. 查你的动作空间能不能离散化。 100 个 20 帧锚点是一个具体的先验,你的机器人如果是全向底盘或者有机械臂,动作空间形状完全不同。
  3. 把 SRVR 和 GSR 一起报。 只报一个都会被另一种策略钻空子:只报 GSR 会奖励冒险,只报 SRVR 会奖励站着不动。
  4. 先跑"去掉世界模型"这个对照。 这是全文最便宜也最有信息量的一个消融——如果去掉之后你的成绩没掉,说明你的任务不需要后果打分。
  5. 测一次在线版本当上界。 OnlineWM 的 80.6% 是这套方法的天花板。如果你的蒸馏版本离它太远,问题在蒸馏而不在世界模型。
  6. 把用户研究当参考,不当证据。 20 人、三个高度相关的维度、对最强基线有一项不显著。它证明"感知上更好",不证明"好多少"。

一句话

这篇论文真正的贡献不是"世界模型有用",而是一句更精确的话:世界模型的价值取决于你把它放在哪。 放在推理期,它是每步 1.2 秒的规划器;放在训练期,它是 65 毫秒策略背后的一次性教师。同一个模型,两种工程命运。

它给出的最硬的一条负面结论同样值得记住:一个模仿人类的先验,单独存在时只有 37.3% 的成功率——比最强的基线低 22 个点。像人,不等于会走路。

术语速查

术语原文一句话解释
锚点anchor一条 20 步、自车系下的短位移轨迹,100 个锚点构成离散动作词表
动作先验action prior第一阶段用示范轨迹监督出的锚点分类器,本文的主干是 Qwen3-VL-2B 加 LoRA
状态转移世界模型State Transition World Model预测每个周围实体下一步的相对位置增量与相对速度,带方向项损失
语义转移世界模型Semantic Transition World Model预测下一步的导航语义分割图(7 类),行人像素被赋忽略标签
EDMElucidating the Design Space of Diffusion一种扩散模型训练/采样框架,本文用它做条件分割去噪,每候选 25 步
偏好蒸馏preference distillation把世界模型算出的组内相对偏好,用 GRPO 压进策略参数
GRPOGroup Relative Policy Optimization组内相对策略优化,只比较同组候选的相对高低,不需要价值网络
后果分consequence score五项加权:目标进展减平滑代价、当前风险、未来风险,加语义有效性
GSRGoal Success Rate目标成功率,无碰撞到达目的地的比例
SRVRSocial Region Violation Rate社交区域违规率,待在语义不当区域(如车道)的时间步比例
GDGroup Distance到被分配群体质心的平均距离,衡量群体一致性
ADE / FDEAverage / Final Displacement Error与人类轨迹的平均逐点偏差与终点偏差,单位米
近身代价proxemic cost以 1.25 米高斯核加权的贴身惩罚,同组行人权重减半
在线双世界模型OnlineWM每一步都跑两个世界模型的在线规划器,本文用它当性能上界
Logo

更多推荐