当前位置:首页>自动驾驶>DriveSuprim:面向端到端自动驾驶的精准轨迹选择

DriveSuprim:面向端到端自动驾驶的精准轨迹选择

  • 2026-09-07 04:49:41
DriveSuprim:面向端到端自动驾驶的精准轨迹选择

论文:DriveSuprim: Towards Precise Trajectory Selection for End-to-End Planning
作者:Wenhao Yao, Zhenxin Li, Shiyi Lan, Zi Wang, Xinglong Sun, Jose M. Alvarez, Zuxuan Wu
单位:复旦大学、NVIDIA
论文版本:2506.06659v3


1. 摘要

端到端自动驾驶通常有两类思路:

  1. Regression-based planning:直接从传感器输入回归一条未来轨迹;
  2. Selection-based planning:预先构造大量候选轨迹,然后让模型对候选轨迹进行打分,最终选择得分最高的一条。

DriveSuprim 关注第二类方法。

作者发现,selection-based planning 虽然能够显式利用碰撞风险、道路可行驶区域、交通规则等指标,但在面对大量候选轨迹时,模型很难准确区分那些“看起来都合理、但细节上存在安全差异”的轨迹。同时,现有数据集存在明显的方向分布偏差,直行轨迹远多于大角度转弯轨迹;此外,训练过程中使用的二值标签也容易造成过于硬的决策边界。

为了解决这些问题,DriveSuprim 提出了三个关键设计:

  • Coarse-to-Fine Trajectory Selection:先从大量候选轨迹中粗筛,再对 Top-K 候选进行精细打分;
  • Rotation-based Data Augmentation:通过旋转图像和对应轨迹,增加转弯场景的训练样本;
  • Self-Distillation with Soft Labels:利用 EMA Teacher 生成软标签,降低二值标签带来的优化困难。

最终,DriveSuprim 在 NAVSIM 和 Bench2Drive 上取得了较好的结果。在 NAVSIM v1 上达到 93.5 PDMS,在 NAVSIM v2 上达到 87.1 EPDMS,在 Bench2Drive 上达到 83.02 Driving Score 和 60.00 Success Rate,且没有引入额外训练数据。


2. 背景:为什么需要 Selection-based Planning?

2.1 Regression-based Planning 的问题

传统端到端规划可以表示为:

其中  是未来轨迹,可以表示为一系列车辆位置:

也可以表示为一系列控制动作:

Regression-based 方法通常直接学习 human expert trajectory。

问题在于:模型最终只输出一条轨迹,因此很难显式比较多个驾驶方案。

例如,在一个复杂路口中可能同时存在:

  • 直行;
  • 左转;
  • 右转;
  • 超车;
  • 减速等待。

这些方案可能在几何距离上都比较接近 expert trajectory,但在安全性、交通规则和驾驶效率上可能有很大差异。

因此,单纯进行轨迹回归并不能很好地表达:

“当前场景下,有多个可行方案,哪个方案最好?”


3. Selection-based Planning

Selection-based 方法的基本思想是提前建立一个 trajectory vocabulary:

其中  是第  条候选轨迹。

对于当前驾驶场景,模型分别计算每条轨迹的质量分数:

最终选择:

这种方法的优势是可以同时考虑:

  • 与 human trajectory 的距离;
  • 碰撞风险;
  • 可行驶区域;
  • 交通规则;
  • 车辆运动舒适性;
  • 车辆行驶进度。

因此,selection-based planning 已经成为端到端自动驾驶规划的重要范式。

但它也带来了新的问题:

候选轨迹太多时,模型如何精确地区分这些轨迹?


4. DriveSuprim 要解决的三个核心问题

DriveSuprim 主要针对三个问题。

4.1 Hard Negative:相似轨迹难以区分

假设 trajectory vocabulary 中存在 8192 条轨迹。

其中很多轨迹非常明显地不合理:

  • 撞墙;
  • 驶出道路;
  • 逆行;
  • 进入不可行驶区域。

这些属于 easy negatives

模型很容易学会:

“这些轨迹明显不好。”

真正困难的是:

但三条轨迹在终点、道路中心线、碰撞风险等方面存在细微差异。

例如:

  • :最终偏离道路中心;
  • :距离前车过近;
  • :能够安全完成超车。

这类轨迹就是 hard negatives

论文认为,传统 selection-based 方法对这些细微差异的辨别能力不足。


4.2 Directional Bias:训练数据中直行过多

论文统计发现,NAVSIM 中只有约 18% 的 ground-truth trajectories 转弯角超过 

因此数据分布大致类似:

直行              ████████████████████
小角度转弯        ████
大角度转弯        ██

模型很容易形成一个错误的先验:

“大多数情况下应该向前走。”

这会导致模型在:

  • 十字路口;
  • 急转弯;
  • T 字路口;
  • 复杂交互;
  • 导航关键场景

中的表现下降。


4.3 Hard Binary Labels:二值标签过于粗糙

传统方法通常根据阈值将轨迹分成:

例如:

如果阈值为 

但是  和  实际上非常接近。

二值标签却人为地制造了一个非常硬的 decision boundary,使模型可能对轨迹的微小变化过于敏感。


5. DriveSuprim 总体框架

DriveSuprim 的整体思想可以概括为:

                 Sensor Data
                     │
                     ▼
              Image Encoder
                     │
                     ▼
          8192 Candidate Trajectories
                     │
                     ▼
              Coarse Scoring
                     │
                     ▼
                  Top-K
                  (256)
                     │
                     ▼
             Fine Refinement
                     │
                     ▼
             Final Trajectory

训练阶段同时加入:

Original Data
      │
      ├───────────────┐
      │               │
      ▼               ▼
Original Training   Rotation Augmentation
      │               │
      └───────┬───────┘
              ▼
         Student Model
              ▲
              │
          Soft Labels
              │
           Teacher
              ▲
              │
             EMA

因此,DriveSuprim 的三个核心组件分别对应:

问题
方法
Hard negatives 难区分
Coarse-to-Fine
直行/转弯分布不平衡
Rotation Augmentation
Binary label 太硬
Self-Distillation

6. 核心方法一:Coarse-to-Fine Trajectory Selection

这是 DriveSuprim 最核心的设计。

6.1 为什么需要两阶段?

如果直接对 8192 条轨迹进行精确排序:

模型必须同时完成:

  1. 判断明显错误轨迹;
  2. 判断一般轨迹;
  3. 区分多个高质量轨迹;
  4. 找到最终最优轨迹。

这会让优化问题非常困难。

DriveSuprim 将其拆成两个阶段:

第一阶段负责:

“哪些轨迹值得进一步考虑?”

第二阶段负责:

“这 256 条中,到底哪一条最好?”


7. Coarse Filtering

首先使用 image encoder 提取图像特征:

对于第  条候选轨迹:

然后通过 Transformer Decoder 进行 cross-attention:

得到 trajectory-aware feature 

随后通过多个 prediction heads 计算轨迹相关指标:

其中:

  •  表示不同的 prediction head;
  •  是 sigmoid;
  • 不同 head 可以预测不同的 trajectory quality metrics。

其中包括与 human trajectory 的归一化 L2 距离以及 NAVSIM 中的规则相关指标。

最终根据 coarse score 对全部候选轨迹排序,并选择 Top-K:

论文默认:


8. Fine-grained Refinement

Coarse Filtering 后只剩下 256 条候选轨迹:

这些轨迹通常已经比较合理,因此第二阶段可以将计算能力集中到真正困难的候选上。

Refinement Decoder 会进一步进行 trajectory-image interaction,并产生更加精细的 trajectory scores。

论文采用 3-layer Transformer Refinement Decoder。

最终:

因此完整的推理过程为:


9. 为什么 Coarse-to-Fine 有效?

它本质上类似于信息检索系统中的:

Recall → Reranking

第一阶段追求:

不要漏掉好的轨迹。

第二阶段追求:

精确区分真正困难的轨迹。

如果把整个 trajectory vocabulary 看成:

8192 trajectories

├── 7000+ 明显错误

├── 700 条一般

├── 300 条较好

└── 若干 hard negatives

Coarse stage 主要负责清除大量明显错误轨迹。

Fine stage 则可以集中计算:

Good trajectory
Good trajectory
Hard negative
Hard negative
Very good trajectory

因此优化目标从:

“8192 分类/排序”

转变成:

“对 256 个困难候选进行精细 reranking”。


10. Ablation:提升不是来自单纯增加模型深度

论文进行了非常重要的消融实验。

简单地把 decoder layer 从 3 层增加到 6 层,只带来约 0.3% 的提升。

而加入:

  • layer-wise scoring;
  • trajectory filtering;

之后获得了更加明显的提升。

因此作者认为:

性能提升主要来自 coarse-to-fine mechanism,而不是单纯增加模型容量。

这是论文非常关键的实验结论。


11. 核心方法二:Rotation-based Data Augmentation

第二个核心问题是 trajectory directional bias。

11.1 基本思想

假设原始训练样本是:

Image
   ↓
Vehicle
   ↓
Forward trajectory

DriveSuprim 希望从同一场景中构造更多不同方向的训练样本。

因此它使用旋转增强。

首先构造更大的视野:

Left Camera
     +
Front Camera
     +
Right Camera

形成更宽的视野,然后随机改变 crop window。

旋转角度满足:

论文中:


12. 为什么必须同时旋转 Trajectory?

这是该 augmentation 的关键。

如果只旋转图像:

但 trajectory 不变:

那么 image 和 trajectory 就不再对应。

因此作者同时对 trajectory 做二维旋转。

设轨迹点为:

二维旋转矩阵为:

则旋转后的轨迹为:

于是训练样本保持一致:


13. Rotation Augmentation 解决什么问题?

原始 trajectory distribution:

Forward        ███████████████
Left           ███
Right          ███
Sharp Turn     █

增强后:

Forward        █████████
Left           ███████
Right          ███████
Sharp Turn     █████

论文的实验显示,增强后不同方向的 trajectory frequency 更加均衡。

更重要的是,性能提升主要出现在 turning scenarios。


14. Turning Scenario 实验

作者把 NAVSIM 测试集划分为:

  • NAVTESTl:左转超过 
  • NAVTESTf:接近直行;
  • NAVTESTr:右转超过 

结果:

Dataset Split
Hydra-MDP++
DriveSuprim
Improvement
NAVTESTl
68.7
71.6
+2.9
NAVTESTf
87.2
88.1
+0.9
NAVTESTr
77.7
79.7
+2.0

可以看到:

也就是说,Rotation Augmentation 确实主要改善了转弯能力。


15. 核心方法三:Self-Distillation

第三个问题是 binary label。

DriveSuprim 使用 Teacher-Student self-distillation。

15.1 Teacher / Student

模型分为:

  • Student;
  • Teacher。

Student 通过正常 gradient descent 更新。

Teacher 不直接通过 gradient 更新,而是通过 Student 的参数进行 EMA 更新:

其中:

  • :Teacher 参数;
  • :Student 参数;
  • :EMA 系数。

16. Soft Label

传统方法:

DriveSuprim 使用 Teacher 的预测生成更加平滑的目标。

可以理解为:

其中:

  •  是原始 ground-truth;
  •  是 Teacher prediction;
  •  是 soft-label clipping threshold。

论文默认:

这样可以避免 Teacher 对 ground truth 进行过大的偏移。


17. 为什么 Soft Label 更合理?

考虑两个轨迹:

Binary label:

这会人为地让两条几乎一样的轨迹拥有完全不同的监督信号。

Soft label 则允许:

这样模型能够学习:

“B 稍微好一点。”

而不是:

“A 完全错误,B 完全正确。”

这更符合 trajectory ranking 的实际性质。


18. Soft Imitation Learning

DriveSuprim 不仅对分类/评分标签进行 softening,还对 imitation loss 进行调整。

论文允许 human trajectory 向 Teacher trajectory 移动最多 1 meter,并使用这个调整后的 trajectory 计算 imitation loss。

因此整体 Student loss 为:

其中:

  • :原始数据上的训练损失;
  • :rotation augmented data 上的训练损失;
  • :Teacher 提供的 soft supervision。

19. Self-Distillation 的消融实验

作者将三种 smoothing 方法进行比较:

Smoothing Method
EPDMS
Label Smoothing
82.5
Temperature-scaled CE
82.7
Self-Distillation83.1

因此在该实验中:

说明 self-distillation 比普通 label smoothing 和 temperature-scaled cross entropy 更有效。


20. 完整训练目标

因此,DriveSuprim 的训练可以理解为:

训练数据同时包含:

Teacher 则通过 EMA 持续更新。

最终形成:

Original Data ────────────┐
                          │
Rotated Data ─────────────┤
                          ▼
                     Student
                       ▲
                       │
                  Soft Labels
                       │
                     Teacher
                       ▲
                       │
                      EMA

21. 实验设置

论文主要在:

  • NAVSIM;
  • Bench2Drive

上进行实验。

NAVSIM v1 使用:

  • No Collision;
  • Drivable Area Compliance;
  • Ego Progress;
  • Time-to-Collision;
  • Comfort。

得到:

NAVSIM v2 在此基础上加入:

  • Driving Direction Compliance;
  • Traffic Light Compliance;
  • Lane Keeping;
  • Extended Comfort。

得到:

Bench2Drive 则是在 CARLA v2 中进行 closed-loop evaluation。


22. 模型配置

论文主要配置如下:

Component
Setting
Trajectory Vocabulary
8192
Coarse Top-K
256
Trajectory Encoder
2-layer MLP
Trajectory Decoder
3-layer Transformer
Refinement Decoder
3-layer Transformer
Hidden Dimension
256
Camera
3-camera
Rotation Boundary
Soft Label Threshold
0.15

实验还测试了:

  • ResNet34;
  • VoVNet;
  • ViT-Large。

23. 主要实验结果

23.1 NAVSIM v1

DriveSuprim 在 ViT-Large backbone 下:

相比 Hydra-MDP++ 的:

提升:


23.2 NAVSIM v2

DriveSuprim:

Hydra-MDP++:

提升:


23.3 Bench2Drive

DriveSuprim:

Metric
Result
Driving Score
83.02
Success Rate
60.00

说明方法不仅在 open-loop NAVSIM 上有效,在 closed-loop CARLA benchmark 上也有较好的规划表现。


24. Ablation:三个模块分别贡献多少?

论文的消融实验非常清楚:

Coarse-to-Fine
Rotation Aug.
Self-Distillation
EPDMS
81.4
82.4
82.7
83.1

因此:

Coarse-to-Fine

提升:

Rotation Augmentation

提升:

Self-Distillation

提升:

所以三个模块中:

Coarse-to-Fine 是最主要的性能来源。


25. Top-K 为什么选择 256?

实验:

Top-K
EPDMS
64
81.8
25683.1
512
82.9
1024
83.0

Top-K 太小:

Coarse stage 可能误删真正优秀的轨迹。

Top-K 太大:

Fine stage 又需要面对大量候选,计算和优化难度增加。

因此:

在实验中取得最佳结果。


26. Camera 数量实验

论文还比较了不同 FOV 设置。

使用:

  • 1 camera;
  • 3 cameras;
  • 5 cameras。

结果显示:

5-camera setting 最好。

但不同 camera setting 之间的提升并没有特别巨大。

这说明 DriveSuprim 的核心性能提升并不是简单依赖更多视觉信息,而主要来自 trajectory selection 本身。


27. 推理效率

DriveSuprim 相比 Hydra-MDP++ 只增加约 7M 参数。

例如 ResNet34:

Model
Params
FPS
Hydra-MDP++
53M
32.0
DriveSuprim
61M
27.2

ViT-Large:

Model
Params
FPS
Hydra-MDP++
337M
14.4
DriveSuprim
345M
12.5

因此,虽然加入 refinement stage 会增加计算量,但仍保持实时 planning 能力。


28. Qualitative Analysis

论文展示了多个 hard-negative 场景。

一个典型场景是:

前车
  ↓
十字路口
  ↓
需要完成超车

Hydra-MDP++ 错误地选择了左转轨迹,而 DriveSuprim 能够选择更合理的超车轨迹。

另一些场景中,两种方法生成的轨迹整体形状非常相似,但 Hydra-MDP++ 在终点附近偏离道路中心,而 DriveSuprim 更接近 human expert trajectory。

这说明 DriveSuprim 的优势主要体现在:

细微轨迹差异的辨别能力。


29. 论文最终结论

DriveSuprim 证明了一个重要观点:

对于 selection-based end-to-end planning,问题不一定是候选轨迹数量不够,而可能是模型无法精确地从大量候选中区分 hard negatives。

论文通过三个方向解决这个问题:

分别解决:

最终获得:

以及:

在 Bench2Drive 上。


30. 对端到端驾驶 / VLA 的启发

这篇论文最值得借鉴的并不是具体的 Transformer 层数,而是它对 trajectory prediction 的重新思考。

传统思路:

DriveSuprim 的思路:

因此,它实际上把 trajectory prediction 转化成了:

Candidate Generation + Ranking + Reranking

这与搜索系统中的:

具有很强的相似性。


31. 对 VLA / 机器人导航的潜在启发

这一思想也可以自然迁移到机器人和 VLA。

例如给机器人一个指令:

“走到那棵树旁边。”

可以构造:

然后:

VLM / Vision Encoder
        ↓
Scene Understanding
        ↓
Candidate Trajectories
        ↓
Coarse Scoring
        ↓
Top-K
        ↓
Fine Scoring
        ↓
Best Trajectory
        ↓
Action

这样可以把:

  • goal distance;
  • collision;
  • obstacle avoidance;
  • trajectory smoothness;
  • progress;
  • semantic goal consistency;

统一放到 trajectory scoring 中。

因此,DriveSuprim 的核心思想可以概括成:

不要强迫模型一次性生成“唯一正确的轨迹”,而是让模型先保留多个可能方案,再逐步缩小候选空间并进行精细比较。


32. 论文的局限与未来方向

论文也指出,进一步增加 refinement stages 并没有持续带来性能提升。

因此:

作者提出未来可以进一步研究:

  • multi-stage refinement;
  • reinforcement learning。

这说明 coarse-to-fine 虽然有效,但并不是简单地增加 stage 数量就能无限获得收益。


33. 总结

如果把整篇论文压缩成一个公式:

训练过程中再加入:

最终解决:

而整篇论文最核心的一句话是:

DriveSuprim 的关键不是生成更多轨迹,而是让模型更准确地从已有候选轨迹中选择最优轨迹。


参考文献

Yao, W., Li, Z., Lan, S., Wang, Z., Sun, X., Alvarez, J. M., & Wu, Z.
DriveSuprim: Towards Precise Trajectory Selection for End-to-End Planning.
AAAI 2026.

论文代码:
https://github.com/William-Yao-2000/DriveSuprim

最新文章

随机文章