📄 论文信息

  • 标题DiffusionDriveV2: Reinforcement Learning-Constrained Truncated Diffusion Modeling in End-to-End Autonomous Driving
  • 团队:华中科技大学(hustvl)× 地平线(Horizon Robotics)
  • arXiv:2512.07745(Dec 2025)
  • 代码:https://github.com/hustvl/DiffusionDriveV2
  • 关键词:截断扩散模型、GRPO、强化学习、多模态轨迹规划、端到端自动驾驶
  • 一句话总结用 RL 约束扩散生成的低质量模式,保留高多样性的同时大幅拉升整体轨迹质量下限——这是第一篇直面"多样性 vs 一致性质量"困境并提出完整解法的工作。

🤔 要解决什么问题:扩散规划的多样性-质量两难

扩散规划的困境

DiffusionDrive 通过锚定高斯混合先验(GMM prior)将轨迹空间按驾驶意图分区,成功让扩散模型生成高度多样化的多模态轨迹。但这个成功暴露了一个更深的矛盾:

模仿学习的监督不完备——训练时只优化离专家轨迹最近的正锚点模式,对其余负模式(占采样的绝大多数)没有任何约束。结果是"好的真好,差的真差":Top-1 轨迹质量极高,但大量候选(尤其 Top-5/10)夹杂着碰撞、偏离道路的低质量轨迹。

三种扩散规划范式对比:Vanilla Diffusion 崩溃到单模态,DiffusionDrive 多样但质量不均,DiffusionDriveV2 兼顾多样与高质量

图 1:三种扩散规划范式对比。(a) Vanilla Diffusion 陷入模式崩溃,所有候选归为一条保守轨迹。(b) DiffusionDrive 生成高度多样的候选,但红色圆圈标注了大量碰撞的低质量轨迹。(c) DiffusionDriveV2 用 RL 约束约束所有模式,在保持多模态的同时让每条轨迹都高质量。

为什么这很危险

这迫使系统过度依赖下游选择器(selector/classifier)来筛选低质量候选。但选择器通常参数量远小于生成器,OOD 场景下泛化能力不可靠——低质量轨迹稍有遗漏就是一起事故

GRPO 的引入契机

DeepSeek-R1 带火的 GRPO(Group Relative Policy Optimization)天然适合解决这个问题:它不依赖价值网络,在组内做相对优势评估,完美适配扩散规划的"每组候选 = 一个组的政策样本"设定。但直接把 GRPO 挪到锚定截断扩散模型上会碰上新问题——不同的锚(如左转 vs 直行)对应不同的驾驶意图,放在同一组里做相对优势比较会引发模式崩溃。


🧠 方法详解

1. 截断扩散生成器回顾

DiffusionDriveV2 继承了 DiffusionDrive 的锚定截断扩散框架。每个锚 $\mathbf{a}^k$ 对应一种驾驶意图(如变道、转弯、直行),轨迹分布建模为 GMM:

$$p(\tau^k \mid \mathbf{a}^k, z) = \mathcal{N}(\tau^k \mid \mathbf{a}^k + \mu^k(z), \Sigma^k(z))$$

整体分布为各锚分布的加权和:

$$p(\tau \mid z) = \sum_{k=1}^{N_{\text{anchor}}} s(\mathbf{a}^k \mid z) \, p(\tau^k \mid \mathbf{a}^k, z)$$

模仿学习 loss 只优化与专家最近的锚对应的正模式,负模式完全无约束——这正是 V2 要解决的核心问题。

2. 尺度自适应乘性探索噪声(Scale-Adaptive Multiplicative Noise)

RL 需要探索。标准做法是用 DDPM 的随机采样($\eta = 1$)引入加性高斯噪声,但轨迹的近端和远端尺度不一致,加性噪声会破坏轨迹的几何结构。

不同探索噪声策略对比:加性噪声破坏轨迹近端,乘性噪声保持整体几何结构

图 2:探索噪声对比。 绿色为原始轨迹。加性高斯噪声(蓝虚线)在近端微小平移,远端剧烈抖动;尺度自适应乘性噪声(红虚线)在所有 waypoint 上保持一致的相对扰动,轨迹几何更加合理。

乘性噪声对每个 waypoint 施加与位移成比例的扰动:

$$\epsilon_{\text{mult}} = \left\{ \left( \epsilon_{x,n} \cdot \max(|x_n|, \sigma_{\min}),\, \epsilon_{y,n} \cdot \max(|y_n|, \sigma_{\min}) \right) \right\}_{n=1}^{N_f}$$

其中 $\sigma_{\min}$ 是防止近端点扰动消失的最小标准差。

3. Intra-Anchor GRPO(锚内 GRPO)

核心洞察:同一锚内的轨迹共享相同的驾驶意图,可以在组内做相对优势比较;不同锚的轨迹不可直接比较(左转 vs 直行没有优劣之分,只是选择不同)。

Intra-Anchor GRPO 和 Inter-Anchor Truncated GRPO 示意图

图 3:DiffusionDriveV2 整体架构。 先模仿学习 → 再 RL 微调。红色箭头表示用乘性噪声探索;在锚内做 GRPO;Inter-Anchor Truncated 修正跨锚互补信号。最终模式选择器挑选最优轨迹。

对每个锚 $k$,在该锚内部对 $G$ 条候选轨迹计算优势:

$$A^{k,i} = \frac{r^{k,i} - \text{mean}(\{r^{k,1}, \dots, r^{k,G}\})}{\text{std}(\{r^{k,1}, \dots, r^{k,G}\})}$$

RL loss 定义为:

$$L_{RL} = -\frac{1}{N_{\text{anchor}}} \sum_{k=1}^{N_{\text{anchor}}} \frac{1}{G} \sum_{i=1}^{G} \frac{1}{T_{\text{trunc}}} \sum_{t=1}^{T_{\text{trunc}}} \gamma_{t-1} \log \pi_\theta(\tau_{t-1}^{k,i} \mid \tau_t^{k,i}) A^{k,i}$$

加上模仿学习 loss 做正则:

$$L = L_{RL} + \lambda L_{IL}$$

4. Inter-Anchor Truncated GRPO(锚间截断 GRPO)

纯 Intra-Anchor GRPO 有一个隐患:某锚内最好的轨迹可能全局很差(比如全碰撞组里"最好"的那条仍有碰撞),而另一锚内最差的轨迹全局可能还好——但纯局部比较给不出这个信号。

解决方法极其优雅:奖励相对改进,只惩罚绝对失败

$$A_{\text{trunc}}^{k,i} = \begin{cases} -1 & \text{if collision,} \\ \max(0, A^{k,i}) & \text{otherwise.} \end{cases}$$
  • 碰撞轨迹 → 硬惩罚 -1(无论组内排名如何)
  • 非碰撞但组内为负优势 → 截断为 0(不鼓励也不惩罚)
  • 非碰撞且组内正优势 → 保留(鼓励朝向更优探索)

5. 模式选择器(Mode Selector)

两阶段粗到细选择器,配合 Margin-Rank loss:

$$\mathcal{L}_{\text{rank}} = \frac{1}{N} \sum_{i,j} \max(0, -\text{sign}(s_i - s_j) \cdot (\hat{s}_i - \hat{s}_j) + m)$$

这避免了直接回归连续分数值的困难,让模型学会比较轨迹的相对质量。


🏗️ 架构流程总览

推理阶段

步骤操作说明
稀疏感知骨干提取场景特征多相机图像 ➜ BEV 特征 + 智能体/地图 query
从 6 个锚中采样初始噪声每个锚对应一种驾驶意图
2 步截断去噪DDIM 确定性采样($\eta = 0$),生成 6 条候选轨迹
模式选择器打分排序粗选 top-k ➜ 精细评分
输出最优轨迹分数最高的一条下发控制

训练阶段

阶段Loss教师信号说明
Stage 1 (IL 预训练)$\mathcal{L}_{\text{diff}}$人类专家轨迹继承 DiffusionDrive 预训练权重
Stage 2 (RL 微调)$L = L_{RL} + \lambda L_{IL}$NAVSIM 闭环奖励乘性噪声探索 + Intra-Anchor GRPO + Inter-Anchor Truncated
Stage 3 (选择器)$\mathcal{L}{\text{BCE}} + \mathcal{L}{\text{rank}}$PDM 分数标签粗到细两阶段,数据增强 + GTRS 词汇采样

🖼️ 图片解析

架构与机制

图 1:三种扩散规划范式对比,来源:arXiv 2512.07745 Figure 1

粗体图 1:三种扩散模型对比——从模式崩溃到多样性困境再到 RL 约束的高质量多模态。 左侧 Vanilla Diffusion 的所有候选轨迹挤在一起,完全丧失多样性。中间 DiffusionDrive 虽然锚定到左转、直行、右转等不同意图(用蓝、绿、红线表示),大量轨迹却冲向路肩或与障碍物重叠(红色圆圈标注)。右侧 DiffusionDriveV2 的轨迹不仅保持了多意图覆盖,更在所有候选上都避免了碰撞和偏离道路。注意 V2 的候选轨迹"收束"到安全区域内的程度远超 V1——这正是 RL 约束的作用。

图 2:DiffusionDriveV2 整体架构与 GRPO 流程,来源:arXiv 2512.07745 Figure 2

粗体图 2:DiffusionDriveV2 架构全景。 截断扩散解码器在模仿学习约束下生成的轨迹"好坏参半"(好的直行、差的超车/右转)。乘性探索噪声推动模型探索附近的动作空间。Anchored Truncated GRPO 在锚内进行组间优势评估:直行锚内比较各条直行候选,右转锚内比较各条右转候选——绝不跨锚比较。Inter-Anchor Truncation 进一步对碰撞轨迹施以 -1 硬惩罚,对非碰撞负优势截断为 0。最终模式选择器从精修后的全高质量候选集中挑选最优轨迹。

图 3:加性 vs 乘性探索噪声对比,来源:arXiv 2512.07745 Figure 3

粗体图 3:探索噪声类型对比。 绿色为原始轨迹,蓝色虚线为加性噪声扰动后的轨迹,红色虚线为乘性噪声扰动后的轨迹。加性噪声在各 waypoint 施加固定方差的扰动,导致远端 waypoint(位移大)的抖动在视觉上比近端 waypoint(位移小)剧烈得多——这是尺度不一致的体现。乘性噪声使扰动幅度与位移成正比,在整体轨迹几何上保持一致的相对扰动,生成更合理的探索轨迹。

定性结果

下图展示了 Vanilla Diffusion(上)、DiffusionDrive(中)、DiffusionDriveV2(下)在 NAVSIM navtest 上的定性对比。每种方法生成 20 条候选轨迹(浅色),突出显示 Top-1(深色实线)和 Top-10(深色虚线)。

直行场景定性对比,来源:arXiv 2512.07745 Figure 4(a)

粗体图 4(a):直行场景 1。 Vanilla Diffusion 所有候选几乎重合,只能输出一条"无聊"的直行轨迹。DiffusionDrive 候选覆盖很宽,但出现了大量向左偏离车道的碰撞轨迹(红圈)。DiffusionDriveV2 的候选全部集中在车道内,Top-1 和 Top-10 都保持安全和高效。

直行场景定性对比 2,来源:arXiv 2512.07745 Figure 4(b)

粗体图 4(b):直行场景 2。 DiffusionDrive 的 Top-1 轨迹表现良好,但 Top-10 和一些候选出现了显著偏移;V2 的所有候选都紧密贴合本车道,体现了 RL 约束对全体模式的提升效果。

直行场景定性对比 3,来源:arXiv 2512.07745 Figure 5

粗体图 5:直行场景 3。 这是更具挑战性的弯道直行场景。DiffusionDrive 的轨迹分散且部分冲出道路边界。DiffusionDriveV2 的候选轨迹均保持在高概率区域,展示了更好的道路自适应能力。

转弯场景定性对比,来源:arXiv 2512.07745 Figure 6(a)

粗体图 6(a):转弯场景 1。 交叉口右转场景。Vanilla Diffusion 再次崩溃到单条轨迹。DiffusionDrive 虽然 Top-1 勉强完成了右转,但 Top-10 轨迹出现"转弯过迟"从而导致碰撞。V2 的候选轨迹全部平滑完成右转,且没有碰撞风险。

转弯场景定性对比 2,来源:arXiv 2512.07745 Figure 7(a)

粗体图 7(a):转弯场景 2——弯道超车。 这是证明 V2 多样性保持能力的绝佳示例:Top-1 轨迹选择了保守跟车(缓弯),Top-10 轨迹选择了激进的弯道超车——两者都安全且高质量。这说明 RL 约束并没有抹杀多样性,只是抬高了质量底线。

转弯场景定性对比 3,来源:arXiv 2512.07745 Figure 7(b)

粗体图 7(b):转弯场景 3。 另一个交叉口场景。V2 再次在所有候选上保持安全,而 DiffusionDrive 仍有候选冲出路沿。

多模态场景定性对比 1,来源:arXiv 2512.07745 Figure 8(a)

粗体图 8(a):多模态场景 1——交叉口选道。 在此场景中,车辆可以直行也可以右转(多模态选择)。Vanilla Diffusion 无法给出这两种选择。DiffusionDrive 提供了直行和右转两种轨迹,但右转候选中有碰撞风险。V2 同样提供两种意图,且所有候选都保持安全。

多模态场景定性对比 2,来源:arXiv 2512.07745 Figure 8(b)

粗体图 8(b):多模态场景 2。 另一个复杂的交叉口场景。V2 的左转和直行候选都严格遵守车道和路权,展示了在真正多模态场景下同时保持多样性和高质量的能力。


🔬 实验与结果

MethodBackbonePDMS $\uparrow$
VADv2ResNet-3480.9
UniADResNet-3483.4
TransfuserResNet-3484.0
PARA-DriveResNet-3484.0
DRAMAResNet-3485.5
GoalFlow*ResNet-3485.7
Hydra-MDP*ResNet-3486.5
Hydra-MDP++*ResNet-3486.6
ARTEMISResNet-3487.0
DiffusionDriveResNet-3488.1
WoTEResNet-3488.3
DIVERResNet-3488.3
DriveSuprimResNet-3489.9
DiffusionDriveV2 (Ours)ResNet-3491.2

*带 * 为官方分数(与其原 backbone 一致)。

MethodBackboneEPDMS $\uparrow$
Ego Status MLPResNet-3464.0
TransfuserResNet-3476.7
Hydra-MDP++ResNet-3481.4
DriveSuprimResNet-3483.1
ARTEMISResNet-3483.1
DiffusionDriveV2 (Ours)ResNet-3485.5

多样性与质量权衡

Method$Div.$ $\uparrow$PDMS@1 $\uparrow$PDMS@5 $\uparrow$PDMS@10 $\uparrow$
Transfuser$_{\text{TD}}$0.185.785.785.7
DiffusionDrive42.393.584.375.3
DiffusionDriveV230.394.991.184.4

关键发现:DiffusionDrive 多样性极高(42.3),但 Top-10 PDMS 暴跌到 75.3(大量低质量候选拉低均值)。DiffusionDriveV2 多样性适中(30.3),但 Top-1 和 Top-10 的差距极小(94.9 → 84.4),说明 RL 约束成功抬升了整体的质量下限。

消融实验

消融项VariantPDMS $\uparrow$
探索噪声类型加性89.7
探索噪声类型乘性90.1
Intra-Anchor GRPO89.2
Intra-Anchor GRPO90.1
Inter-Anchor Truncated89.5
Inter-Anchor Truncated90.1

方法对比总览

方法生成方式多样性质量一致性RL 训练锚定机制NAVSIM v1 (PDMS)
DiffusionDrive截断扩散88.1
DIVER标准扩散GRPO88.3
Hydra-MDP词表采样86.5
DriveSuprim词表采样 + score89.9
GoalFlowFlow Matching85.7
DiffusionDriveV2截断扩散 + RLIntra/Inter GRPO91.2

💡 个人思考

1. “多样性 vs 质量"是一个被长期低估的自动驾驶规划核心矛盾。 DiffusionDrive 展示了多模态扩散规划的潜力,但也暴露了模仿学习的根本局限:它只保证"正模式"拟合得好,对"负模式"毫无约束。V2 的工作提醒我们,在多候选规划框架中,候选集的整体质量比 Top-1 质量更重要——因为下游选择器总会犯错,如果候选集里全是"好"轨迹,选错也不至于差到哪里去;反之如果候选是"好+差"混杂,选错一次就是事故。

2. Intra-Anchor GRPO 是"锚定架构 + GRPO"天作之合的完美体现。 不同驾驶意图(左转、直行、右转)的轨迹之间做优势比较就像比较苹果和橘子——没有意义且会破坏多样性。在锚内部做 GRPO 既保留了锚定机制意图分区的好处,又引入了组内相对优势的 RL 信号,两者完美互补。这是对 GRPO 在非 LLM 领域最聪明的适配之一。

3. Inter-Anchor Truncated 的思路值得在其他 RL 场景推广。 “奖励相对改进,只惩罚绝对失败”——这个简单规则解决了锚间比较的困局,本质上是一种全局安全硬约束 + 局部相对优化的混合范式。很多多智能体/多任务 RL 场景中,不同任务之间也有类似"不可直接比较但需要全局安全线"的需求。

4. 乘性噪声的设计体现工程直觉。 轨迹的近端和远端位移尺度差了一个数量级,加性噪声要么近了噪声太小、要么远了噪声太暴力。乘性噪声让扰动幅度与位移成比例,这种"各向异性尺度自适应"的设计在 trajectory-level 的 RL 探索中近乎标准——每个 waypoint 的噪声方差正比于其长度,天然保持几何结构。

5. 两阶段训练(IL → RL)是生成式驾驶规划的黄金范式。 DiffusionDriveV2 先用模仿学习获得基本能力(冷启动),再用 RL 在闭环奖励上微调提升。这种"先学得像,再学得好"的路线和 LLM 的 SFT → RLHF 如出一辙。可以预见,未来绝大多数端到端规划器都会走这个路线。

6. 给未来工作的清晰路标。 V2 证明了 RL 可以解决扩散规划的核心矛盾,但依赖 NAVSIM 的 PDM 分数做奖励。更强大的奖励模型(如基于世界模型的 reward model)和探索策略(如纳入交通参与者交互的联合探索)是下一个层次的问题。此外,把这套框架搬到真车上需要解决奖励设计的安全泛化——仿真里的"完美安全"在真实世界中可能并不完美。


一点质疑:论文在表 9 中展示了 DiffusionDrive 换上 V2 的选择器后 PDMS 从 88.1 升至 89.1(+1.0),而 V2 比 V1 高 3.1 PDMS。作者以此论证增益主要来自生成器的 RL 改进而非选择器提升。这个结论基本站得住,但值得注意:选择器的 1.0 提升是在 V1 生成器上测的,V2 生成器产生的轨迹质量更高、分布与 V1 不同,选择器在 V2 上的实际增益可能也不同。一个更严格的消融应该是把 V2 的选择器换成 V1 的 classifier,看掉多少分——虽然推测掉分幅度不会很大。


📖 这是论文精读系列的第 40 篇。扩散规划 + 强化学习的结合正在成为端到端驾驶的新范式,你怎么看这个方向?欢迎留言讨论。