📄 论文信息
- 标题:VADv2: End-to-End Vectorized Autonomous Driving via Probabilistic Planning
- 作者机构:华中科技大学(HUST) × 地平线机器人(Horizon Robotics)(Bo Jiang, Shaoyu Chen, Hao Gao, Bencheng Liao, Qian Zhang, Wenyu Liu, Xinggang Wang)
- arXiv:2402.13243(v2,2026 年 4 月更新)
- 收录:ICLR 2026
- 代码:github.com/hustvl/VAD
- 一句话总结:把驾驶规划从"我猜唯一最优动作"改成"我算所有动作的概率分布再采样",用规划词表离散化连续动作空间,用概率场函数学习场景与动作的关联,在 CARLA Town05 跑出 85.1 DS,比 DriveMLM 高 9.0,而且只用相机、不用规则后处理。

🤔 要解决什么问题?规划的不确定性被忽视了
端到端自动驾驶已经证明"从大量人类驾驶数据中模仿学习"是可行的路线。但 VADv2 抓到了一个被忽视的根本问题:驾驶规划本质上是高度不确定的。
作者举了非常直观的两个例子:
| 场景 | 人类司机的合理选择 | 核心问题 |
|---|---|---|
| 跟车时 | 继续跟、变道超车、减速让行 | 多个动作都合理,没有唯一正确答案 |
| 对面来车 | 减速让行、加速抢道 | 取决于无数隐变量,无法精确建模 |
现有的学习方法(VAD、UniAD、ThinkTwice、Diffusion Planner 等)全都在做一件事:确定性回归——给一个场景,直接回归出一个轨迹或一组控制信号。这隐含地假设了"场景到动作"存在确定性的映射关系,但实际情况完全不是这样。当可行解空间是非凸的(比如多条合理轨迹在空间上不相邻),确定性回归会"取中间值",输出一个哪里都不靠的危险动作——作者把这个叫做"regression to the mean"问题。
这个痛点和 LLM 面临的挑战是类似的——给定上文,下一个词也不是唯一的。但 LLM 的做法是学一个条件概率分布 $p(\text{next_word} \mid \text{context})$,然后采样。VADv2 的核心洞察就是把 LLM 这套哲学搬到驾驶规划里:不猜唯一答案,而算概率分布。
💡 核心思想:概率规划(Probabilistic Planning)
VADv2 的核心主张非常清晰:
把规划建模为场景条件随机过程 $p(\bm{a} \mid \bm{o})$,其中 $\bm{o}$ 是观测,$\bm{a}$ 是候选动作。学分布,而不是直接回归动作值。
这个转变带来三个关键好处:
| 优势 | 解释 |
|---|---|
| 天然处理非凸解空间 | 分布可以呈现多峰,每条合理轨迹都可以有高概率,不需要被迫取舍 |
| 更丰富的监督信号 | 确定性回归只监督最优动作;概率规划给每个候选动作都提供监督 |
| 推理灵活 | 输出整个动作空间的分布,可灵活结合规则或优化方法做后处理筛选 |
实现的技术难点是:如何在一个高维连续时空里高效地表达和计算这个概率分布?
🏗️ 方法详解:从连续空间到离散词表
第一步:场景编码器(Scene Encoder)
VADv2 的场景编码器继承自 VAD 的向量化范式并做了增强:
- 多视图图像序列经过 BEVFormer 提取 BEV 特征,通过可变形注意力实现跨视角融合
- 用 MapTR 风格的 query 提取向量化地图元素(车道线、边界、路沿)
- 用 agent query 检测并追踪周围车辆,输出 3D 框和运动状态
- 最终得到一组场景 token 序列 $\bm{o}$,编码了整个驾驶环境的状态
值得一提的是,场景编码器输出的 token 维度默认设为 256,在精度和效率之间取了平衡。
第二步:规划词表(Planning Vocabulary)
这是 VADv2 最核心的创新。既然连续动作空间没法直接处理概率分布——那就离散化:
- 从所有训练集的人类驾驶轨迹中收集动作集合,每个动作是一条 3 秒的完整轨迹(6 个 waypoint,间隔 0.5 秒)
- 用 Farthest Point Sampling(最远点采样) 从集合中选出 N 条最具多样性的轨迹作为规划词表
- 默认词表大小 N = 4096
- 每条轨迹来自真实驾驶数据,天然满足车辆运动学约束——转换成控制信号时不会超出合理范围
为什么用最远点采样而不是 k-means?因为驾驶轨迹分布天然不均匀——直行轨迹占绝大多数,k-means 聚类会浪费大量词表容量在细微的直行变体上,而转弯、变道等关键动作反而得不到足够的表征。最远点采样保证了词表在整个动作空间上均匀覆盖。
与 MotionLM 那种单步离散化(每步拆成纵向+横向)不同,VADv2 的每个词条是一条完整的轨迹序列,避免了迭代 rollout 带来的误差累积。同时,词表本身就是一组物理可行的运动基元,采样出来的轨迹不需要后处理修正。
然后把这个词表通过一个可学习的 embedding 层 token 化,得到规划 token 序列,和前面的场景 token 拼在一起送入 Transformer 做交叉注意力交互。
第三步:概率场函数(Probabilistic Field)
场景 token 和规划 token 经过 Transformer 交互后,每个规划 token 得到一个匹配分数 $s_i$,然后通过 softmax 转换成概率:
$$P(a_i \mid \bm{o}) = \frac{\exp(s_i)}{\sum_{j=1}^{N} \exp(s_j)}$$整个动作空间上的 softmax 分布就是 VADv2 学到的东西——给定某个场景,词表里每条轨迹有多合理。
训练时,分布受到两重监督:
- 模仿学习(行为克隆)监督:被采集到的真实驾驶轨迹映射到最近邻的词表条目,该条目获得高概率
- 场景约束监督:碰撞的、偏离道路的、违反交通规则的轨迹被额外的损失项压低概率
推理时直接从这个分布里采样一条轨迹,通过一个轻量的控制转换器映射到方向盘转角、油门和刹车值,执行到车上。什么?第二条轨迹候选怎么办?不需要——因为概率分布已经是多模态的自然编码了,采样天然就会得到多种可能性,但执行时只要一条。
🎯 实验亮点:全面超越,规则后处理拜拜
CARLA Town05 闭环:纯相机超越跨模态方案
| 方法 | 传感器 | Drive Score | Route Completion | Infraction Score |
|---|---|---|---|---|
| Interfuser | C | 68.3 | 95.0 | - |
| ST-P3 | C | 11.5 | 83.2 | - |
| VAD | C | 30.3 | 75.2 | - |
| UniAD | C | 31.0 | 47.5 | 0.77 |
| MILE | C | 61.1 | 97.4 | 0.63 |
| DriveAdapter+TCP | C+L | 71.9 | 97.3 | 0.74 |
| ThinkTwice | C+L | 70.9 | 95.5 | 0.75 |
| DriveMLM | C+L | 76.1 | 98.1 | 0.78 |
| VADv2 | C | 85.1 | 98.4 | 0.87 |
VADv2 只用相机在 Drive Score 上比用相机+激光雷达的 DriveMLM 高 9 分(+11.8%),比纯相机方案 Interfuser 高 16.8 分。Route Completion 达到 98.4%,几乎在所有路线上都能跑完全程。Infraction Score 0.87 也是最优。
更关键的是:VADv2 不需要规则后处理。此前几乎所有方法都要在模型输出后面挂一套 hand-crafted 规则来修正碰撞和偏离——用规则判断轨迹是否安全、再用优化方法调整。VADv2 直接在模型内部学了约束,端到端全程神经网络搞定。
Bench2Drive 基准:同样领先
在最新提出的 Bench2Drive 基准上,VADv2 的 Drive Score 达到 76.15,同样以显著优势领先所有方法。Bench2Drive 比 Town05 的路线更复杂、包含更多交互场景,VADv2 的领先证明了概率规划的泛化能力。
NAVSIM 和 3DGS 基准:真实世界的闭环验证
NAVSIM(open-loop):VADv2 在 open-loop 设定上也达到 SOTA,证明概率分布学到的是场景的通用映射规律,不只是在 CARLA 里过拟合。
3DGS 真实场景闭环:作者构建了一个非常扎实的验证基准——用 337 个 3DGS 重建的真实环境做闭环测试,所有数据来自 2000 小时真实驾驶采集。在这个基准上:
- VADv2 碰撞率 0.270,比 TransFuser(0.320)降低 15.6%
- 偏离率 0.243,接近最优
这证明了 VADv2 不只是仿真环境里的"高分玩家",在真实场景迁移上也有实质优势。
消融实验:词表大小与多模态推理
| 词表大小 | Town05 DS | 分析 |
|---|---|---|
| 256 | 70.2 | 容量严重不足,多样性受限 |
| 1024 | 78.1 | 离散化太粗,表达能力不足 |
| 4096 | 85.1 | 最佳平衡点 |
| 16384 | 84.5 | 词表过大引入稀疏噪声,收益饱和 |
4096 是 sweet spot——足够覆盖驾驶动作的多样性,又不至于让学习过于稀疏。有趣的是,当词表增加到 16384 时性能反而略有下降,作者分析是因为大量词条在训练中很少被激活,导致梯度信号稀疏。
另外,作者还做了一组重要的消融:概率分布 vs 确定性回归。在控制场景编码完全一致的条件下,把概率头换成回归头,Town05 DS 从 85.1 跌到 72.8——差了整整 12.3 分。这直接证明了概率建模的核心贡献。
🧠 个人思考:概率化是端到端驾驶的下一个范式
VADv2 让我最兴奋的不是它刷了多少分,而是它把自动驾驶的认知范式从"确定性"升级到了"概率性"。
回顾这条线的演进:
- UniAD(CVPR 2023 最佳论文)证明"以规划为中心做联合优化"可行,开创了端到端范式
- VAD(ICCV 2023)证明"向量化替代稠密栅格"效率更高,速度提升数倍
- VADv2(ICLR 2026)证明"概率分布替代确定性回归"更能应对真实世界的模糊性
这个思路和最近 GRPO/RL 方向的进展遥相呼应——AlphaDrive-GRPO 也是用群体相对策略优化搜索动作空间。两者共同的趋势是:不再假设一个场景只有一个最优解,而是承认多解性,再去学怎么从候选里挑出好的。
VADv2 的"规划词表 + 概率场"方案还有一个被低估的贡献:它让驾驶模型第一次有了"自知之明"。如果某个场景下分布特别均匀(熵很高),模型就知道"我不确定该怎么开"。这种不确定性估计对安全决策极其关键——低熵场景放心自车执行,高熵场景请求人类接管。这是通往 L4 的核心能力之一。
几个值得思考的局限和展望:
第一,VADv2 的词表需要预定义且大小固定(4096),这意味着它无法在推理中动态创建新的动作模式,上限受限于词表的覆盖范围。对于长尾场景中极端罕见的操作,词表可能没有覆盖。
第二,目前的高分还集中在仿真环境,虽然 3DGS 基准往前迈了一步,但离真正开放道路部署还有距离。从 CARLA 到真实世界的 domain gap 仍然是端到端方法的头号挑战。
第三,VADv2 的概率建模只覆盖了规划阶段。如果能把感知的不确定性也纳入概率框架——比如对遮挡区域的目标位置输出概率分布而不是单一检测框——整个系统的鲁棒性可能会再上一个台阶。这也许是"全概率端到端"的方向。
总的来说,VADv2 是一篇思路极清晰的工作。它在一个看似成熟的方向(端到端驾驶规划)上精准地找到了被忽略的痛点,用最优雅的方式(从 LLM 借来的分布建模)解决,而且刷出了有说服力的结果。概率化、结构化、实例化——这三化,将是端到端自动驾驶进化的主轴。