← Back to Blog
Code Checkpoints

Research  · 

Driving Made Simple: A Fully Open Recipe from Public Data

Open-weight models are advancing the capabilities of autonomous systems over a broad set of domains[1][2]. In the LLM and robotics communities, open-weight models have helped accelerate progress by enabling researchers to build on shared foundations, setting an encouraging example for autonomous driving[3], where model weights have traditionally remained closed. However, even with open weights, high data and compute costs as well as closed training recipes limit reproducibility, slowing down the community's efforts to address a model's limitations.

NVIDIA's Alpamayo 1, for example, releases weights and inference code, but neither its 80,000 hours of curated proprietary training data, likely selected from more than a million hours of driving, nor its training recipe[3]. In contrast, fully open models with open recipe releases, which include data, code, models, and evaluations, are playing an important role in enabling research progress[4][5][6]. Unfortunately, in driving, existing fully open models have a different limitation: they are specialists, models which either only use a single benchmark or require independently tuned weights for each benchmark[7][8]. Today, we change this. We are releasing our first fully open recipe for end-to-end driving:

  • General and fully open pipeline: Developed with minimal assumptions about the model architecture or the target benchmarks, our three-stage training pipeline effectively tackles two key challenges in training driving policies, the copycat problem[9][10] and the target point bias[11][12].
  • Efficient infrastructure: The complete training runs on a single 8×H100 node in under a day. One command evaluates a checkpoint on six different driving benchmarks.
  • The experiments behind the release: We share an open research log of more than 50 experiments. Importantly, we also include the experiments that failed.
  • A strong, reproducible baseline: Trained exclusively on public data and evaluated on six benchmarks, our baseline model achieves competitive performance across all of them (Figure 1, details in Appendix A).
Overview Alpamayo 1 (NVIDIA) py123d_garage (ours) Parameters 10B 0.068B Training data 80,000 h internal, curated 1,800 h public Training compute Undisclosed 21 h one 8×H100 node Training code Fine-tuning only Full recipe Weights Open Open Evaluation AlpaSim 6 Benchmarks Benchmark results Baseline Latent TransFuser (ours) 0 25 50 75 100 AlpaSim Physical AI public validation, local 78.4 56.0 Alpamayo 1 AlpaSim Physical AI hidden test, leaderboard 63.2 56.0 Alpamayo 1 AlpaSim nuPlan public validation, local 90.3 88.5 SimScale GTRS-Dense AlpaSim nuPlan hidden test, leaderboard 92.2 77.8 SimScale DiffusionDrive Odyssey non-reactive traffic 43.3 44.4 SafeDrive Odyssey reactive traffic 43.3 48.9 SafeDrive HUGSIM 38.5 38.1 DrivoR-Scale NAVSIM v1 87.9 91.0 ReDrive NAVSIM v2 34.9 37.6 SimWAM
Figure 1. A single open model, trained on public data in under a day, performs on par with the best published policies trained under the same conditions (only imitation of human driving, without closed-loop fine-tuning or benchmark-specific tuning) across six benchmarks. Left: our recipe release in py123d_garage v0.2 compared with NVIDIA’s Alpamayo 1. Right: our policy, with the same weights on every benchmark, against the best such policy per benchmark, each on its own metric, 0 to 100, higher is better. Details in Table 1.

A training recipe against shortcut learning

Central to our experiments is a camera-only Latent TransFuser[13] with a diffusion transformer as motion planner (Figure 2). As input, the policy receives the front camera of the current timestep and one second earlier, the ego speed and, optionally, target points 40 m, 60 m and 80 m ahead on the intended route. We train on about 1,800 hours of public driving data (Table 13): the Physical AI AV dataset[14] (about 1,650 hours), the camera subset of nuPlan[15] (about 124 hours) and the NuRec training scenes of AlpaSim (about 7 hours).

Latent TransFuser architecture: a camera branch and a BEV branch of learned queries fused by transformers at four resolutions, an output of 64 BEV tokens, and the decoders for perception and motion planning
Figure 2. Latent TransFuser. The current and the past front-camera frame are stacked into one image. The model also supports LiDAR input, but we do not use it here, because not all six benchmarks provide LiDAR and one policy should run on all of them. The BEV (bird's-eye view) branch starts from learned queries, and the encoder outputs 64 BEV tokens. The motion planner reads them, the ego speed and the optional target points.

Training a driving policy end-to-end is notoriously difficult, and much of the difficulty comes from shortcut learning[16]. A policy takes the easiest path to minimizing its training loss, and unless this is done carefully, the policy can lean on cues that are unreliable at test time. In driving, two cues make shortcut learning highly likely. The first is the target points: following them is easier than interpreting the sensory inputs, so the policy steers toward them even when a point lies off the road, a phenomenon studied thoroughly in our prior work[11][12]. The second is the ego speed: driving data consists mostly of nominal driving, where extrapolating the current speed explains most of the future speed. A policy that learns this keeps its speed instead of reacting to the scene, and brakes too late when the car ahead slows down. This is typically referred to as the inertia or copycat problem, and has been observed consistently since the pioneering research on end-to-end driving policies[10].

To tackle these two shortcuts, we decompose training into three stages (Figure 3). The two inputs that enable these shortcuts, the ego speed and the target points, are added only in later stages, after the network has learned to perform the perception and driving without them. In pretraining, the network focuses on learning robust perception features, making the policy interpret its sensory inputs. In midtraining, a planning decoder with access to the current vehicle speed is attached to the output of the pretrained encoder, and the policy learns general driving without target points to follow. In the final posttraining stage, target points are provided to the planner, so the policy learns to follow an instruction in addition to the driving capability it already has.

The three training stages side by side. Pretrain learns perception from BEV segmentation and boxes, midtrain picks a branch of the fork from the scene alone, posttrain follows target points with the backbone frozen. Trained parts carry a flame, the frozen backbone a snowflake.
Figure 3. The three training stages, each initialized with the weights of the previous stage.

Four elements are central to our recipe, as evidenced by our experiments (Figure 4, details in Appendix B):

  • Diffusion planning loss. A regression loss averages its output when several outputs are correct. Without target points in midtraining, this ambiguity arises at intersections and forks, where the human driver could take several different paths, and the averaged path runs between the lanes. A diffusion transformer trained with flow matching[17] can in principle learn all of them in training and commit to one at test time. This makes the policy mode-seeking instead of mean-seeking.
  • Three training stages. Training the planner first without target points (midtraining) and only afterward with them (posttraining) works better than providing target points to the planner from the start (same compute budget).
  • Target point dropout. During posttraining, we drop each target point with a probability of 91 %, so 75 % of the training samples contain no target point and the planner still has to drive from the sensory inputs alone. The target points thereby remain an auxiliary cue that resolves ambiguities such as forks, rather than a signal the policy can directly copy.
  • Temporal input. A single frame carries no motion information. Hence, the planner can only infer the dynamics of the scene from the ego speed, which reinforces the inertia shortcut. Stacking the front-camera frame from one second earlier exposes the relative motion of surrounding traffic and reduces collisions.
Contribution of each ingredient AlpaSim Physical AI AlpaSim nuPlan −4 −2 0 +2 +4 +6 +8 +10 +12 Diffusion planning loss vs regression loss AlpaSim Physical AI: +5.4 ± 1.3 +5.4 AlpaSim nuPlan: −0.7 ± 1.3 −0.7 Three training stages vs two stages AlpaSim Physical AI: +3.0 ± 0.9 +3.0 AlpaSim nuPlan: +1.8 ± 0.2 +1.8 Target point dropout vs no dropout AlpaSim Physical AI: +3.1 ± 2.4 +3.1 AlpaSim nuPlan: +9.5 ± 0.6 +9.5 Temporal input vs static input AlpaSim Physical AI: +7.3 ± 0.8 +7.3 AlpaSim nuPlan: +1.8 ± 1.0 +1.8
Figure 4. Gain of each recipe choice in AlpaSim score points over the alternative, mean of three seeds. Error bars: standard deviation over the three seeds. Details in Appendix B.

Real progress should hold across benchmarks

The hidden test sets of the AlpaSim challenge[18], which we co-organize with NVIDIA and OpenDriveLab, are unseen by policies trained only on public data. The challenge offers two tracks, nuPlan and Physical AI, with two different private test datasets. Their scenes are not released to participants, including us as co-organizers, and submissions are scored by the challenge server. A strong baseline on the Physical AI test set is Alpamayo 1[3], NVIDIA’s 10B parameter policy trained on 80,000 hours of internal driving data, far more than is publicly available and recorded by the same fleet as the test scenes. Our 68M parameter policy is trained on 1,800 hours of public driving data.

During the development of our policies, we observed that checkpoints that did well on the validation scenes of only one of the two AlpaSim tracks underperformed Alpamayo 1 on the hidden test set of the Physical AI track. Only after combining all four elements of the training recipe (Figure 4) did we obtain a policy that does well on the public validation scenes of both nuPlan and Physical AI at the same time, and achieves a higher score than Alpamayo 1 on the hidden Physical AI test set (Figure 5).

Validation scores and leaderboard score of three submissions 20 30 40 50 60 Leaderboard score Leaderboard (hidden test set): 46.4 (-9.6 vs Alpamayo 1) 46.4 Strong on nuPlan validation Physical AI validation: 63.0 63.0 ✗ nuPlan validation: 88.1 88.1 ✓ Leaderboard (hidden test set): 47.7 (-8.3 vs Alpamayo 1) 47.7 Strong on Physical AI validation Physical AI validation: 70.8 70.8 ✓ nuPlan validation: 78.0 78.0 ✗ Leaderboard (hidden test set): 60.5 (+4.5 vs Alpamayo 1) 60.5 Strong on both validation sets Physical AI validation: 76.1 76.1 ✓ nuPlan validation: 89.2 89.2 ✓ Physical AI validation nuPlan validation Alpamayo 1: 56.0
Figure 5. Three submissions to the Physical AI track of the official AlpaSim challenge leaderboard (hidden test set), one seed each. Validation scores are computed locally on the public validation scenes, in our development setting of the time. All scores are scene scores, 0 to 100.

The general lesson: a policy that drives well only on one benchmark may just have specialized to that benchmark’s metrics. Most prior work evaluates one architecture on a single or a small set of benchmarks and retrains or tunes it for each. In contrast, we evaluate one checkpoint, unchanged, on six independent benchmarks: both AlpaSim tracks, Odyssey[19], HUGSIM[20], and NAVSIM[21] v1 and v2[22] (Figure 1, right; per-benchmark results in Table 1). Our policy scores higher than the best published policy trained under the same conditions (trained only to imitate human driving, without closed-loop fine-tuning or benchmark-specific tuning) on both AlpaSim tracks, on par on HUGSIM, and lower on Odyssey and NAVSIM.

Gains that hold across all six benchmarks are more likely to reflect better driving. This is the premise of the common task framework behind the AlpaSim challenge, and we will extend our evaluation as further independent benchmarks with held-out test sets become available.

Learning to drive in a day

Our training code allows others to reproduce our numbers and build on them without a large compute budget. The full recipe trains three seeds in 21 hours on one node with eight H100 GPUs. Two techniques, with minimal assumptions about the underlying architecture, make this affordable:

Three seeds in one training session. A 68M parameter model cannot utilize a GPU like the H100 at its full potential. This is in particular a problem since, in our experience, driving policies have always had trouble scaling with batch size under the limited scale and diversity of public driving datasets. Our release tackles this issue by fitting three seeds into one training session (Figure 6). Multiple seeds are essential for reliable conclusions: closed-loop scores vary by about 3 points from seed to seed on the Physical AI track, and now and then one seed converges to a lower score than the others, so every number in this post, except the leaderboard submissions, is a mean of three training seeds.

GPU timeline of one training step: with one seed the GPU waits between operations, with three seeds the operations of the other seeds fill the idle time at the same wall time per step
Figure 6. One training step, schematic. The three seeds share the GPU but nothing else: each has its own weights and its own third of every batch, so it trains exactly as it would alone.

Combining compact logs with lightweight training caches. py123D[23] stores cameras as MP4 streams. At 1,800 hours of driving this is a necessity rather than a convenience: compressed video keeps the logs small enough to store, copy and share. Policy training, however, samples individual frames in random order, and reading one frame from an MP4 requires decoding every frame since the last keyframe. Our release therefore introduces a flexible cache system, built on LMDB[24], that allows random-access training from a lightweight cache (Figure 7). It scales with the logs: one store per log lets the cache build in parallel, and one file per log instead of millions of small ones avoids hitting the file system’s limit on the number of files.

Two rows, drawn to scale. Top: the MP4 logs, marked compact at 4K and free of small files but without random access; a detailed 4K camera frame with the Full HD frame outlined inside it, the decode chain from the keyframe to the one wanted frame, and a GPU timeline that is idle while frames decode. Bottom: the LMDB cache, marked lightweight, free of small files and with fast random access; a grid of small 352 by 512 pixel JPEG samples, one of them read directly, and a GPU timeline that is busy throughout
Figure 7. The training cache is built once and shared by all three training stages. Each sample is copied from the shared network storage to the local disk of the node on its first read, so all later reads come from the local disk.

Conclusion

Two lessons stood out while building this release:

  • Shortcut learning. As in our previous work in CARLA[11][12], a strong policy does not need a fundamentally new architecture as a first step. Most of our improvements came from a careful treatment of shortcut learning in a well-known architecture: we add the target points and the ego speed only in later training stages, and we drop the target points in most posttraining samples.
  • Cross-benchmark evaluation. Drawing conclusions in closed-loop driving research, which often rests on noisy results, requires strong evidence. As policies become more capable, a good test set has to be large, diverse and truly held out, like the hidden test sets of the AlpaSim challenge. For academic labs, building such a test set is rarely possible. Evaluating on several independent benchmarks is an alternative. Equally important is training several independent seeds, which measures how robust a result is to the data order and initialization. Both practices become even more important as closed-loop training in simulators gains traction[25], where a policy can easily overfit to the reconstructed scenes and lead to misleading conclusions.

We see the release as a starting point for research questions that need many affordable training runs:

  1. On-policy training. AlpaSim enables training a policy on the consequences of its own actions, beyond imitating recorded drives, a direction that recent work on closed-loop fine-tuning explores[26].
  2. Beyond TransFuser. TransFuser was designed in 2021 for about 30 hours of driving data. Its architectural assumptions may limit how much it benefits from 1,800 hours. We are working on architectures that remove these assumptions while staying efficient and performant.

Next, we are excited to take the policy out of the simulator and onto the road with our research vehicle.

Citation

@article{Dauner2026ARXIV,
  title={123D: Unifying Multi-Modal Autonomous Driving Data at Scale},
  author={Dauner, Daniel and Charraut, Valentin and Berle, Bastian and Li, Tianyu and Nguyen, Long and Wang, Jiabao and Jing, Changhui and Igl, Maximilian and Caesar, Holger and Ivanovic, Boris and Geiger, Andreas and Chitta, Kashyap},
  journal={arXiv preprint arXiv:2605.08084},
  year={2026}
}

@inproceedings{Nguyen2026CVPR,
  title={LEAD: Minimizing Learner-Expert Asymmetry in End-to-End Driving},
  author={Long Nguyen and Micha Fauth and Bernhard Jaeger and Daniel Dauner and Maximilian Igl and Andreas Geiger and Kashyap Chitta},
  booktitle={Conference on Computer Vision and Pattern Recognition (CVPR)},
  year={2026}
}

References

  1. Mistral AI. “Mistral Large 4.” Model card, Hugging Face, 2026.
  2. Physical Intelligence et al. “π0.5: a Vision-Language-Action Model with Open-World Generalization.” arXiv:2504.16054, 2025.
  3. Y. Wang et al. “Alpamayo-R1: Bridging Reasoning and Action Prediction for Generalizable Autonomous Driving in the Long Tail.” arXiv:2511.00088, 2025.
  4. D. Groeneveld et al. “OLMo: Accelerating the Science of Language Models.” arXiv:2402.00838, 2024.
  5. J. Marrie, P. Pacaud, A. Ramanana Rahary, S. Chen, M. Böhle. “REKI: Registering Knowledge in VLAs.” arXiv:2610.22178, 2026.
  6. F. Bartoccioni et al. “VaViM and VaVAM: Autonomous Driving through Video Generative Modeling.” arXiv:2502.15672, 2025.
  7. B. Liao et al. “DiffusionDrive: Truncated Diffusion Model for End-to-End Autonomous Driving.” CVPR, 2025.
  8. E. Kirby et al. “Driving on Registers.” arXiv:2601.05083, 2026.
  9. C. Wen, J. Lin, T. Darrell, D. Jayaraman, Y. Gao. “Fighting Copycat Agents in Behavioral Cloning from Observation Histories.” NeurIPS, 2020.
  10. F. Codevilla, E. Santana, A. M. López, A. Gaidon. “Exploring the Limitations of Behavior Cloning for Autonomous Driving.” ICCV, 2019.
  11. B. Jaeger, K. Chitta, A. Geiger. “Hidden Biases of End-to-End Driving Models.” ICCV, 2023.
  12. L. Nguyen, M. Fauth, B. Jaeger, D. Dauner, M. Igl, A. Geiger, K. Chitta. “LEAD: Minimizing Learner-Expert Asymmetry in End-to-End Driving.” CVPR, 2026.
  13. K. Chitta, A. Prakash, B. Jaeger, Z. Yu, K. Renz, A. Geiger. “TransFuser: Imitation with Transformer-Based Sensor Fusion for Autonomous Driving.” IEEE TPAMI, 2023.
  14. NVIDIA. “Physical AI Autonomous Vehicles Dataset.” Hugging Face.
  15. N. Karnchanachari et al. “Towards Learning-Based Planning: The nuPlan Benchmark for Real-World Autonomous Driving.” ICRA, 2024.
  16. R. Geirhos et al. “Shortcut Learning in Deep Neural Networks.” Nature Machine Intelligence, 2020.
  17. Y. Lipman, R. T. Q. Chen, H. Ben-Hamu, M. Nickel, M. Le. “Flow Matching for Generative Modeling.” ICLR, 2023.
  18. NVIDIA. “AlpaSim End-to-End Closed-Loop Challenge.” Hugging Face, 2026.
  19. J. Kim et al. “Odyssey: A Closed-Loop Benchmark for Long-Horizon Real-World Driving with Explicit Navigation Routes.” arXiv:2610.06469, 2026.
  20. H. Zhou, L. Lin, J. Wang, Y. Lu, D. Bai, B. Liu, Y. Wang, A. Geiger, Y. Liao. “HUGSIM: A Real-Time, Photo-Realistic and Closed-Loop Simulator for Autonomous Driving.” arXiv:2412.01718, 2024.
  21. D. Dauner et al. “NAVSIM: Data-Driven Non-Reactive Autonomous Vehicle Simulation and Benchmarking.” NeurIPS, 2024.
  22. W. Cao et al. “Pseudo-Simulation for Autonomous Driving.” CoRL, 2025.
  23. D. Dauner et al. “123D: Unifying Multi-Modal Autonomous Driving Data at Scale.” arXiv:2605.08084, 2026.
  24. D. Wilson and N. Watson. “lmdb documentation.” Version 3.0.0, Read the Docs, 2026.
  25. P. Karkus, M. Igl et al. “Beyond Behavior Cloning in Autonomous Driving: a Survey of Closed-Loop Training Techniques.” 2025.
  26. T. Li, L. Chen, C. Wang et al. “World Engine: Towards the Era of Post-Training for Autonomous Driving.” arXiv:2606.19836, 2026.
  27. H. Tian et al. “SimScale: Learning to Drive via Real-World Simulation at Scale.” CVPR, 2026.
  28. Z. Li et al. “Generalized Trajectory Scoring for End-to-end Multimodal Planning.” arXiv:2506.06664, 2025.
  29. J. Kim, J. Oh, S. Yu, H. Shin, D. Kwak, J. W. Choi. “SafeDrive: Fine-Grained Safety Reasoning for End-to-End Driving in a Sparse World.” CVPR, 2026.
  30. Y. Zhu et al. “ReDrive: Shaping Representations with World Modeling for End-to-End Driving.” arXiv:2609.33854, 2026.
  31. Z. Zhao et al. “SimWAM: A Simple World Action Model for End-to-End Autonomous Driving.” arXiv:2608.07468, 2026.
  32. Y. Li et al. “ReCogDrive: A Reinforced Cognitive Framework for End-to-End Autonomous Driving.” ICLR, 2026.
  33. B. Jiang et al. “VAD: Vectorized Scene Representation for Efficient Autonomous Driving.” ICCV, 2023.
  34. Y. Hu et al. “Planning-oriented Autonomous Driving.” CVPR, 2023.
  35. Z. Li, N. Chang, W. Yao et al. “Zero-Human Demonstration End-to-end Autonomous Driving with Trajectory Scorer.” arXiv:2510.24108, 2025.
  36. L. Rowe et al. “Scaling Self-Play for End-to-End Driving.” arXiv:2606.19641, 2026.
  37. H. He, C. Hu, Z. Su et al. “DriveZero: End-to-End Driving Beyond Human Demonstrations.” arXiv:2609.06055, 2026.
  38. Z. Xiong et al. “TerraTransfer++: Demonstration-Free End-to-End Planner.” arXiv:2610.30319, 2026.
  39. X. Weng, B. Ivanovic, Y. Wang, Y. Wang, M. Pavone. “PARA-Drive: Parallelized Architecture for Real-Time Autonomous Driving.” CVPR, 2024.
  40. S. Wang et al. “ForeDrive: Foresight-Guided End-to-End Autonomous Driving with a Planning-Relevant Latent World Model.” arXiv:2609.26299, 2026.
  41. Y. Yuan et al. “SUV: Future Scene Understanding as Video Generation for End-to-End Driving.” arXiv:2608.03084, 2026.
  42. J. Fu, Y. Yuan, M. Tian et al. “4D-WAM: 4D Consistent World Modeling for Autonomous Driving.” arXiv:2608.10107, 2026.
  43. Z. Zhang et al. “Do Better Visual Representations Always Lead to Better End-to-End Autonomous Driving?” arXiv:2610.09695, 2026.
  44. L. Feng et al. “RAP: 3D Rasterization Augmented End-to-End Planning.” ICLR, 2026.
  45. NVIDIA. “Physical AI Autonomous Vehicles NuRec Dataset.” Hugging Face.
  46. Q. Wu, J. Martinez Esturo, A. Mirzaei, N. Moenne-Loccoz, Z. Gojcic. “3DGUT: Enabling Distorted Cameras and Secondary Rays in Gaussian Splatting.” CVPR, 2025.
  47. O. Siméoni et al. “DINOv3.” arXiv:2508.10104, 2025.
  48. I. Radosavovic, R. P. Kosaraju, R. Girshick, K. He, P. Dollár. “Designing Network Design Spaces.” CVPR, 2020.
  49. K. He, X. Zhang, S. Ren, J. Sun. “Deep Residual Learning for Image Recognition.” CVPR, 2016.
  50. J. Deng, W. Dong, R. Socher, L.-J. Li, K. Li, L. Fei-Fei. “ImageNet: A Large-Scale Hierarchical Image Database.” CVPR, 2009.
  51. Z. Liu, H. Mao, C.-Y. Wu, C. Feichtenhofer, T. Darrell, S. Xie. “A ConvNet for the 2020s.” CVPR, 2022.
  52. R. Wightman. “PyTorch Image Models.” GitHub, 2019.

Thumbnail photo: Glenwood Canyon I-70 by Patrick Pelster, CC BY-SA 3.0 DE, via Wikimedia Commons; cropped, darkened and overlaid with text.

Appendix A: benchmark results

This appendix lists the results summarized in Figure 1. Table 1 compares our policy on each benchmark with the best published policy trained under the same conditions. Tables 2 to 9 list all baselines for each benchmark.

BenchmarkSettingFeedbackMetricOursBest baseline, same conditionsGap
PolicyScore
AlpaSim Physical AI[18][14]public validationclosed loopAlpaSim score78.4 ± 0.7Alpamayo 1[3]56.0+22.4
hidden testclosed loopAlpaSim score63.2Alpamayo 1[3]56.0+7.2
AlpaSim nuPlan[18][15]public validationclosed loopAlpaSim score90.3 ± 0.5SimScale GTRS-Dense[27][28]88.5+1.8
hidden testclosed loopAlpaSim score92.2SimScale DiffusionDrive[27][7]77.8+14.4
Odyssey[19]non-reactive trafficclosed loopRouteDS43.3 ± 3.5SafeDrive[29]44.4−1.1
reactive trafficclosed loopRouteDS43.3 ± 3.6SafeDrive[29]48.9−5.6
HUGSIM[20]pre-challengeclosed loopHD-Score38.5 ± 1.3DrivoR-Scale[8]38.1+0.4
NAVSIM v1[21]navtestopen loopPDMS87.9 ± 0.1ReDrive[30]91.0−3.1
NAVSIM v2[22]navhardopen loopEPDMS34.9 ± 0.4SimWAM[31]37.6−2.7
Table 1. Results on all benchmarks with the released checkpoint ltf-base-joint32-68M. Mean ± standard deviation over three seeds; the hidden test rows show the single seed submitted to the challenge leaderboard. AlpaSim scores are scaled to 0 to 100. Gap: our score minus the baseline score.

We compare our policy only with baselines that are trained under the same conditions. Each benchmark is only a proxy for driving in the real world. If a baseline is trained on quantities that the benchmark measures, a higher score is less informative about how well the baseline would drive on real roads. We therefore exclude two types of baselines from Table 1:

  • Metric training. The baseline is trained to predict the metric of the benchmark, or it uses such predictions to select its plan at test time. This mainly affects NAVSIM, where many baselines learn to predict the PDM score or its sub-scores and select the plan with the highest predicted score. We exclude such a baseline only on the benchmark whose metric it is trained on. DrivoR and DrivoR-Scale, for example, are trained on the PDM score of NAVSIM, so we exclude them on NAVSIM but not on HUGSIM.
  • Distillation from reinforcement learning. The baseline imitates a teacher that is trained with reinforcement learning in closed-loop simulation. This mainly affects HUGSIM, where GigaPixel, DriveZero, DriveZero-Scale and TerraTransfer++ are trained in this way. The rewards of such teachers typically penalize collisions and reward progress, which the benchmarks also measure. We exclude these baselines on all benchmarks.

Tables 7 to 9 show the excluded baselines as gray rows. A high NAVSIM score obtained with metric training does not necessarily carry over to the closed-loop benchmarks. GTRS-Dense, ZTRS and DrivoR score 45.3, 48.1 and 54.5 EPDMS on navhard (Table 9), 10.4 to 19.6 points higher than our policy and higher than every policy without metric training. On HUGSIM (Table 7), the same three methods score 28.2, 32.9 and 35.7 HD-Score, 2.8 to 10.3 points lower than our policy. SimScale GTRS-Dense scores 48.0 EPDMS on navhard but 76.2 on the hidden test set of the AlpaSim nuPlan track (Table 5), 16.0 points lower than our policy.

Closed loop

AlpaSim, Physical AI track
PolicyNavigation conditioningScore ↑km per incident ↑Off-road ↓Collision ↓Corridor ↓Progress ↑
Alpamayo 1[3]×56.0 ± 1.00.9610.3 %5.4 %24.3 %75.3
Alpamayo 1.5[3]×55.3 ± 0.70.9411.3 %5.2 %25.4 %76.3
Latent TransFuser (ours)×64.2 ± 0.41.286.3 %7.3 %15.2 %79.3
✓78.4 ± 0.71.445.8 %7.0 %3.3 %84.6
Table 2. AlpaSim Physical AI track, 441 public validation scenes, mean ± standard deviation over three seeds. Alpamayo: native setting with four cameras at 10 Hz and three sampled rollouts. Ours: the checkpoint of Table 1 with the front camera, without (×) and with (✓) target points. km per incident: driven kilometers per at-fault incident. Off-road, Collision, Corridor: share of scenes that end in this failure. Progress: mean progress along the recorded drive. AlpaSim commit e121e59.
AlpaSim, nuPlan track
PolicyNavigation conditioningScore ↑km per incident ↑Off-road ↓Collision ↓Corridor ↓Progress ↑
SimScale DiffusionDrive[27][7]Command83.40.257.7 %0.7 %4.9 %81.2
SimScale Latent TransFuser[27][13]Command86.30.325.7 %1.4 %3.4 %82.6
SimScale GTRS-Dense[27][28]Command88.50.353.7 %0.9 %2.5 %82.9
Latent TransFuser (ours)×89.6 ± 0.30.633.8 %0.4 %1.0 %79.3
✓90.3 ± 0.50.723.3 %0.5 %0.8 %79.6
Table 3. AlpaSim nuPlan track, 1,485 navtest scenes, mean ± standard deviation over three seeds. Checkpoint and columns as in Table 2. The SimScale baselines receive the driving command (left, straight or right).
AlpaSim leaderboard, Physical AI track
PolicyScene score ↑km per incident ↑Dist. to GT ↓
Host: go straight with delay17.50.142.16
Host: Alpamayo 1[3]56.00.572.29
Latent TransFuser (ours)63.20.651.09
Table 4. AlpaSim E2E Challenge leaderboard[18], Physical AI track, hidden test set, as of November 2, 2026 (161 entries from 47 teams): the reference entries of the host and our submission (ltf-base-joint32-68M, seed 2). Scene score: AlpaSim score, 0 to 100. km per incident: as in Table 2. Dist. to GT: mean distance to the recorded trajectory in m.
AlpaSim leaderboard, nuPlan track
PolicyScene score ↑km per incident ↑Dist. to GT ↓
OpenDriveLab: SimScale Latent TransFuser[27][13]74.10.272.27
OpenDriveLab: SimScale GTRS-Dense[27][28]76.20.412.17
OpenDriveLab: SimScale DiffusionDrive[27][7]77.80.272.16
Latent TransFuser (ours)92.20.680.63
Table 5. AlpaSim E2E Challenge leaderboard, nuPlan track, hidden test set, as of November 2, 2026 (153 entries from 49 teams): the reference entries of OpenDriveLab and our submission (the seed of Table 4). Columns as in Table 4.
Odyssey
PolicyNavigation conditioningNon-reactiveReactive
RouteDS ↑SDC ↑PLCA ↑PLCS ↑Eff.Comf. ↑RouteDS ↑SDC ↑PLCA ↑PLCS ↑Eff.Comf. ↑
Latent TransFuser[13][21]×16.25166.050.363.910016.35463.549.176.199
SD route20.19557.156.168.29623.09353.652.678.093
ReCogDrive (VLA)[32]×15.47175.759.076.910020.36277.158.793.799
SD route21.58374.455.859.39826.38475.656.775.598
DiffusionDrive[7]×25.65978.863.761.410024.25977.063.175.7100
SD route35.910082.080.563.49941.010081.280.271.599
DrivoR[8]×20.65075.562.8104.74425.55376.662.8133.447
SD route36.59072.866.084.56041.48971.866.0107.464
Latent TransFuser (ours)SD route43.3 ± 3.58783.767.578.06743.3 ± 3.68684.367.887.471
SafeDrive[29]×27.54179.363.769.44730.44578.862.886.340
SD route44.48275.069.868.34448.97973.869.581.349
Table 6. Odyssey[19], 100 scenes, mean over three seeds; ± standard deviation for RouteDS only. Ours receives target points on the SD route. Baseline results from the Odyssey authors. RouteDS: route driving score. SDC: SD-route compliance. PLCA, PLCS: pre-lane-change accuracy and score. Eff.: median efficiency, 100 is the speed of the surrounding traffic. Comf.: share of episodes within all comfort limits. Odyssey commit 8c4a902.
HUGSIM
PolicyNavigation conditioningRL teacherHD-Score ↑RC ↑
Avg.EMHXAvg.EMHX
VAD[33]Command×13.436.39.58.011.531.451.331.125.326.5
Latent TransFuser[13][21]××23.758.918.09.825.938.967.835.126.240.5
GTRS-Dense[28]Command×28.257.835.216.25.834.562.040.523.913.7
UniAD[34]Command×32.764.945.820.66.645.978.460.533.617.8
ZTRS[35]Command×32.966.937.921.19.842.074.846.131.620.0
DrivoR[8]××35.773.334.618.832.549.880.950.533.847.1
DrivoR-Scale[8]××38.164.850.316.825.846.470.454.428.239.2
GigaPixel[36]Command✓38.567.451.919.121.650.178.660.732.735.4
Latent TransFuser (ours)××38.5 ± 1.373.154.623.39.746.779.861.831.420.6
DriveZero[37]Command✓39.478.547.216.028.753.985.563.731.743.3
DriveZero-Scale[37]Command✓46.681.960.524.727.654.587.564.934.639.8
TerraTransfer++[38]Goal✓51.8–––––––––
Table 7. HUGSIM[20], 345 pre-challenge scenarios, mean over three seeds; ± standard deviation for the average HD-Score only. Ours receives no navigation input. VAD, Latent TransFuser, UniAD, DrivoR: reruns with corrected HUGSIM code from the DrivoR paper. TerraTransfer++ reports only the average and trains on frames from the evaluation scenes. Gray rows imitate a teacher trained with reinforcement learning in closed loop. HD-Score: HUGSIM score times route completion. RC: route completion. E, M, H, X: easy, medium, hard, extreme. HUGSIM_garage commit c18814c.

Open loop

On NAVSIM, our policy receives no navigation input. The baselines receive the driving command of NAVSIM (left, straight or right). Our policy has no input for this command, only for target points on the route, which contain more information than the command. To keep the scores comparable, we remove the target points, and the policy drives from the camera frames and the ego speed alone.

NAVSIM v1, navtest
PolicyNavigation conditioningMetric trainingPDMS ↑NC ↑DAC ↑TTC ↑Comf. ↑EP ↑
UniAD[34]Command×83.497.891.992.910078.8
PARA-Drive[39]Command×84.097.992.493.099.879.3
Latent TransFuser v6[12]Command×86.497.595.493.810080.9
Latent TransFuser (ours)××87.9 ± 0.198.396.695.210081.2
DiffusionDrive[7]Command×88.198.296.294.710082.2
ForeDrive[40]Command×89.998.697.695.610083.8
SimWAM[31]Command×90.398.698.095.8–84.0
SUV[41]Command×90.899.197.896.710084.6
4D-WAM[42]Command×90.999.197.996.610084.6
ReDrive[30]Command×91.099.197.997.210084.3
DrivoR[8]Command✓93.198.998.396.210089.1
DrivoR-Scale[8]Command✓94.699.199.296.910091.6
DriveZero-Scale[37]Command✓95.399.299.497.399.992.5
TerraTransfer++[38]Goal✓95.598.999.592.299.996.9
Table 8. NAVSIM v1.1[21], official devkit, mean over three seeds; ± standard deviation for PDMS only. Ours receives no navigation input. SimWAM: before its reinforcement learning stage; comfort not reported. SimWAM and SUV: 5B-parameter video models. Latent TransFuser v6: LEAD-LTFv6 leaderboard entry, one seed. Gray rows train on the PDM score or its sub-scores. PDMS: PDM score. NC: no at-fault collision. DAC: drivable area compliance. TTC: time to collision. Comf.: comfort. EP: ego progress.
NAVSIM v2, navhard two-stage
PolicyNavigation conditioningMetric trainingEPDMS ↑Stage 1Stage 2
NCDACDDCTLCEPTTCLKHCECNCDACDDCTLCEPTTCLKHCEC
CV[21][22]××11.488.842.870.699.377.587.378.697.160.483.259.176.598.071.381.147.997.161.9
MLP[21][22]Command×14.193.255.786.699.381.292.283.597.577.777.251.974.498.277.175.040.897.879.8
Latent TransFuser[13][21]Command×25.196.279.599.199.584.195.194.297.579.177.770.284.298.085.175.645.495.775.9
DiffusionDrive[7]Command×27.596.886.098.899.384.095.896.797.679.680.172.884.498.485.976.646.496.372.8
SimScale Latent TransFuser[27][13]Command✓30.296.185.399.499.384.794.793.697.677.385.566.991.699.193.081.158.395.142.9
Latent TransFuser v6[12]Command×31.996.586.699.299.584.495.194.497.776.479.875.586.297.889.576.050.095.266.7
SimScale DiffusionDrive[27][7]Command✓32.697.288.799.399.382.896.998.097.359.682.472.192.998.592.180.660.895.431.9
ReDrive[30]Command×34.497.993.699.499.684.296.997.897.873.382.275.884.398.287.377.947.895.954.2
Latent TransFuser (ours)××34.9 ± 0.497.290.798.399.683.196.396.697.672.782.677.787.498.486.978.849.396.558.7
DiffusionDrive-ViRA[7][43]Command×35.896.487.899.299.398.595.396.497.678.780.574.186.498.497.577.247.695.871.3
4D-WAM[42]Command×35.992.889.699.799.398.691.686.997.181.382.671.886.998.297.678.849.095.871.6
SUV[41]Command×36.996.994.299.399.684.195.696.797.879.682.774.285.998.486.078.947.295.969.1
SimWAM[31]Command×37.698.092.099.799.683.896.297.397.871.681.878.687.398.486.378.649.596.369.9
RAP[44]Command✓39.697.194.498.799.783.896.894.696.466.283.283.887.398.086.880.352.295.152.4
GTRS-Dense[28]Command✓45.398.998.299.899.673.998.995.397.340.091.590.894.798.570.890.155.497.254.2
SimScale GTRS-Dense[27][28]Command✓48.099.397.699.4100.071.599.696.095.830.794.994.394.599.379.092.657.893.430.9
ZTRS[35]Command✓48.198.897.5100.0100.066.698.896.296.644.091.190.495.799.063.589.760.497.666.0
GigaPixel[36]Command✓50.199.495.899.499.868.199.691.897.649.893.792.996.098.962.690.760.298.258.8
SimScale[27]Command✓53.299.599.199.8100.069.699.595.795.528.494.594.295.799.275.892.860.096.043.2
DrivoR[8]Command✓54.599.198.299.399.775.498.694.897.570.292.391.697.399.075.790.556.098.444.7
DriveZero-Scale[37]Command✓57.198.799.3100.099.376.598.495.397.144.494.695.697.798.476.292.759.996.144.0
TerraTransfer++[38]Goal✓59.498.9100.0100.099.684.998.497.897.870.294.090.293.698.085.287.262.595.453.8
Table 9. NAVSIM v2.2[22], official devkit, mean over three seeds; ± standard deviation for EPDMS only. Ours receives no navigation input. GigaPixel: the variant with a PDM-score head. GTRS-Dense: the ViT-L model. SimScale models: trained on simulated scenes whose PDM-Closed expert trajectories are selected with the EPDMS sub-scores, which we count as metric training. DiffusionDrive-ViRA: DiffusionDrive with ViRA representation alignment. SimWAM and Latent TransFuser v6 as in Table 8. EPDMS: extended PDM score on real frames (stage 1) and on the synthetic frames that follow them (stage 2). CV: constant velocity. MLP: ego status MLP. DDC: driving direction compliance. TLC: traffic light compliance. LK: lane keeping. HC, EC: history and extended comfort. Other columns as in Table 8.

Appendix B: recipe ablations and training data

This appendix reports the experiments summarized in Figure 4, one section for each element of the recipe, and the training data. All results are the mean ± standard deviation over three seeds on the 441 Physical AI and 1,485 nuPlan scenes of AlpaSim. The experiments were run in different phases of development, with different settings and bug fixes. Their scores can therefore be compared within a table or within a block of a table, but not across tables or with Tables 2 and 3. Appendix C reports further experiments that are not discussed in the main text.

Diffusion planning loss

We compare the L1 regression head of TransFuser with a diffusion transformer trained with flow matching (Table 10). The diffusion transformer scores 5.4 points higher on the Physical AI track and has fewer at-fault collisions. On nuPlan, the two differ by less than one standard deviation.

PlannerPhysical AInuPlan
Score ↑At-fault collisions ↓Corridor exits ↓Score ↑At-fault collisions ↓Corridor exits ↓
L1 regression52.9 ± 1.4785984.8 ± 0.5718
Diffusion transformer, flow matching58.3 ± 1.3494984.0 ± 1.3520
Table 10. Midtrained policy without target points. Collisions and corridor exits: scenes per seed.

Training stages and target point dropout

In our experiments, the target points are the shortcut that reduces the closed-loop score the most. Adding them only in posttraining, after the policy has learned to drive from the camera, improves both scores (Table 11, upper block). Without dropout, however, the policy loses much of this driving ability during posttraining and relies on the target points instead. We therefore drop the target points in a share of the posttraining samples and replace them with a learned placeholder token. Both scores increase with the share of samples without target points, up to the 75 % used for the released policy (Table 11, lower block), and the number of off-road scenes falls from 175 to 68 per seed. Dropout does not remove the target point bias. It only controls how strongly the policy relies on the target points, and the best rate depends on the model configuration, for example on the length of the predicted path (Appendix C). A method that makes the policy use the route only where the scene is ambiguous remains an open problem.

TrainingPhysical AI score ↑nuPlan score ↑
Development phase A
Baseline: two stages, target point from the start58.4 ± 1.275.5 ± 0.1
Three stages, target point only in posttraining61.4 ± 0.977.3 ± 0.2
Development phase B
Baseline: three stages, no dropout71.3 ± 2.877.6 ± 0.8
No target point in 25 % of samples71.8 ± 1.179.7 ± 0.7
No target point in 50 % of samples72.6 ± 2.881.8 ± 1.0
No target point in 75 % of samples74.4 ± 2.487.1 ± 0.6
Table 11. Each experiment shares pretraining, data and schedule with the baseline of its block. The two blocks come from different phases of development.

Temporal input

A single frame does not show whether the car ahead is braking, so a policy that sees only the current frame relies on the ego speed instead. In our earlier experiments in CARLA, temporal input rarely improved policies trained by imitation. On AlpaSim, it does. Stacking the front-camera frame from 1 s earlier with the current frame adds 7.3 points on the Physical AI track and reduces the at-fault collisions from 61 to 25 per seed (Table 12). On nuPlan, it adds 1.8 points.

Camera inputPhysical AInuPlan
Score ↑At-fault collisions ↓Corridor exits ↓Score ↑At-fault collisions ↓Corridor exits ↓
Current frame only54.7 ± 1.1616586.6 ± 0.3923
Current and 1 s past frame62.0 ± 0.8257388.4 ± 0.2624
Table 12. Midtrained policy without target points, front camera only. Collisions and corridor exits: scenes per seed.

Training data

The released policy is trained on three public datasets, and all three training stages use the same data (Table 13). Training samples are drawn at a fixed frequency along each log. This frequency differs between datasets, so the share of samples from a dataset differs from its share of hours.

DatasetSplits usedHoursSample frequency
Physical AI AV[14]train, val, test, except NuRec[45][46] clipsabout 1,6500.5 Hz
nuPlan[15], logs with camera data onlytrain, valabout 1245 Hz
NuRec (AlpaSim)train, otherabout 710 Hz
Totalabout 1,800
Table 13. Training data of the released checkpoints. Hours are the duration of the camera logs.

Appendix C: further experiments

This appendix reports experiments that are not discussed in the main text: further temporal and speed inputs, the image encoder, the development of the flow-matching planner and the target point dropout for a longer path. The setup is the same as in Appendix B, and scores can only be compared within a table. The research log lists all experiments, including those not shown here.

Past frames and ego history

A second past frame at 0.5 s does not improve the scores (Table 14). On nuPlan, the vehicle remains stationary in more rollouts, likely because the first plans of a rollout are computed before the oldest frame is available.

Camera inputPhysical AInuPlan
Score ↑At-fault collisions ↓Corridor exits ↓Score ↑At-fault collisions ↓Corridor exits ↓
Current and 1 s past frame (Table 12)62.0 ± 0.8257388.4 ± 0.2624
Current, 0.5 s and 1 s past frames59.0 ± 0.9308488.5 ± 0.3627
Table 14. Midtrained policy without target points, front camera only. Collisions and corridor exits: scenes per seed.

We also replaced the current speed with a token that encodes the past ego motion (Table 15). This raises the nuPlan score by about 4 points but reduces the Physical AI score by 7 to 17 points, with more off-road scenes and corridor exits for longer histories. A policy optimized only for the nuPlan track should therefore receive the past ego motion. Since we aim for one policy that drives well across benchmarks and data sources, the released policy receives only the current speed.

Ego inputPhysical AI score ↑nuPlan score ↑
Current speed only60.9 ± 1.879.6
Ego history of 0.1 s53.5 ± 1.083.9
Ego history of 0.2 s53.7 ± 2.384.0
Ego history of 0.5 s43.6 ± 0.284.1
Table 15. Physical AI: trained on all three datasets, mean ± standard deviation over three seeds. nuPlan: trained on nuPlan only, one seed.

Speed input

Since the ego speed enables the inertia shortcut, we removed the speed input in a share of the training samples (Table 16). Dropout rates of 25 to 75 % do not reduce the number of front collisions on the Physical AI track and reduce the nuPlan score by up to 2 points. Without any speed input, the Physical AI score decreases from 63.4 to 40.1.

Speed dropoutPhysical AInuPlan
Score ↑Front collisions ↓Score ↑
0 %63.4 ± 2.22289.5 ± 0.7
25 %63.1 ± 2.02088.9 ± 1.1
50 %65.6 ± 2.42288.2 ± 1.0
75 %63.4 ± 4.52287.5 ± 0.4
100 %, no speed input40.11983.5 ± 0.5
Table 16. Midtrained policy without target points. Speed dropout: share of training samples without the speed input. Front collisions: scenes per seed. The policy without speed input was evaluated with one seed on the Physical AI track.

Image encoder

Replacing the ResNet34 by a ConvNeXt-T pretrained on ImageNet-12k reduces the perception losses of pretraining by 10 to 24 %, but does not improve the closed-loop scores (Table 17). In our setting, the closed-loop score therefore appears to be limited by factors other than the perception quality that these losses measure. DINOv3[47] weights and the RegNetY-3.2GF[48] of the original TransFuser do not improve the scores either.

Image encoderPretraining perception lossesPhysical AI score ↑nuPlan score ↑
ResNet34[49], ImageNet[50]reference63.4 ± 2.289.5 ± 0.7
ConvNeXt-T[51], ImageNet-12k[50][52]−10 to −24 %61.9 ± 0.689.3 ± 0.4
Table 17. Midtrained policy without target points. Perception losses: BEV semantic segmentation and the heatmap, size, heading and velocity of the boxes, relative to ResNet34.

Development of the flow-matching planner

Table 18 lists the steps from the first flow-matching planner to the released one. The most important step was deterministic sampling. Sampling can be made deterministic in two ways: with a fixed random seed or with zero temperature. A fixed seed reuses the same noise sample at every replanning step. With the seed we used, this noise sample biased every plan toward acceleration. Zero temperature starts every plan from the mean of the noise distribution and does not have this bias. With zero temperature, replacing the MSE loss on the flow field with an L1 loss on the denoised trajectory brings the planner to the same score as the regression planner. A horizon of 6.4 s and QK normalization in the attention (QK-norm) raise its score above that of the regression planner.

PlannerPhysical AI score ↑nuPlan score ↑
Baseline: L1 regression (Table 10)52.9 ± 1.484.8 ± 0.5
Flow matching, MSE loss on the flow field (noise-to-trajectory direction)
Same seed at every replanning step, temperature 134.8 ± 1.587.2 ± 0.6
Same seed at every replanning step, temperature 0.540.2 ± 2.086.5 ± 0.3
Mean of 16 plans, each from new noise45.8 ± 0.386.8 ± 0.8
Temperature 0 (zero noise)47.7 ± 0.785.0 ± 0.9
Flow matching, temperature 0
L1 loss on the denoised trajectory, in meters53.8 ± 0.384.3 ± 0.4
+ 6.4 s horizon and QK-norm58.3 ± 1.384.0 ± 1.3
Table 18. Development of the flow-matching planner. Midtrained policy without target points.

Path output and target point dropout

In addition to the waypoints, the planner predicts the path ahead as points 1 m apart, and actions derived from inverse kinematics. These additional outputs improve the scores slightly. The path is supervised with the recorded route, so a longer path can copy more of its shape from the target points instead of inferring it from the camera. A longer path therefore requires more target point dropout (Table 19). With a 64 m path, the policy trained with 75 % of the samples without target points has about twice as many off-road scenes on the Physical AI track as the policy trained with 95 % (55 compared with 27 per seed). The released checkpoint ltf-base-joint32-68M therefore uses a 32 m path with 75 %, and ltf-base-joint64-68M uses a 64 m path with 95 %.

Samples without target pointPhysical AInuPlan
Score ↑Off-road ↓Score ↑Off-road ↓
75 %68.3 ± 2.25588.3 ± 1.779
85 %74.6 ± 1.63190.8 ± 0.149
95 %74.6 ± 2.42791.2 ± 0.749
Table 19. Policy with a 64 m path, posttrained with different shares of samples without target points. Off-road: scenes per seed.