ScenePilot: Controllable Boundary-Driven Critical Scenario Generation for Autonomous Driving

Qiyu Ruan, Yuxuan Wang, He Li, Zhenning Li, Cheng-zhong Xu
5/20/2026
cs.AI

Official code: QiyuRuan/ScenePilot (7 stars, last commit 2026-05-20).

Abstract

Safety-critical scenarios are central to evaluating autonomous driving systems, yet their rarity in naturalistic logs makes simulation-based stress testing indispensable. Most scenario generation methods treat surrounding agents as adversaries, but they either (i) induce failures without explicitly modeling vehicle-road physical limits, yielding visually extreme yet physically unsolvable crashes, or (ii) enforce physical feasibility or policy feasibility in isolation, which can over-focus on aggressive maneuvers or remain tied to a controller-dependent capability boundary. We propose ScenePilot, a feasibility-guided, boundary-driven framework that targets the boundary band: scenarios that are physically solvable in principle yet still cause the deployed autonomy stack to fail. We formulate generation as constrained multi-objective reinforcement learning, combining an RSS-derived physical-feasibility score $σ$ with an online-learned AV-risk predictor $Φ$, and introduce step-level feasibility-aware shielding to keep exploration near the feasibility boundary while avoiding infeasible artifacts. Experiments on SafeBench with multiple planners show that ScenePilot yields substantially higher collision rates (+6.2 percentage points) while preserving physical validity, and that adversarial fine-tuning on these boundary-band scenarios consistently reduces downstream crash rates. The code is available at https://github.com/QiyuRuan/ScenePilot.

View on arXivView PDF

Code Implementations(1)

70May 13, 20265 months ago

Similar Papers

Cite this paper

@article{ruan2026scenepilot,
  title  = {ScenePilot: Controllable Boundary-Driven Critical Scenario Generation for Autonomous Driving},
  author = {Qiyu Ruan and Yuxuan Wang and He Li and Zhenning Li and Cheng-zhong Xu},
  year   = {2026},
  eprint = {2605.21168},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2605.21168v1}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2605.21168.svg)](https://codeofpaper.com/paper/2605.21168)

Discussion