BranchDrive: A Branch-Structured Dataset for Action-Conditioned Driving Prediction
Organizations: Department of Electrical and Computer Engineering, University of Michigan-Dearborn, 4901 Evergreen Rd, Dearborn, MI 48128, United States
Abstract
Most autonomous-driving datasets record only the action executed by a behavior policy and the single future that followed, providing limited supervision for comparing alternative ego decisions. We introduce BranchDrive, a branch-structured CARLA dataset and benchmark that pairs one canonical pre-decision history with one nominal expert future and twelve physically executed intervention futures spanning acceleration, braking, and left- and right-steering policies at three magnitudes. Each intervention lasts 2.5 s and is followed by expert recovery. Following control-compliance, modality-completeness, replay-fidelity, and action-leakage audits, the frozen benchmark contains 606 independent branch groups and 7,878 associated trajectories. We evaluate prediction of six continuous short-horizon outcomes and a ten-step ego trajectory using action-only, history-only, structured, visual, multimodal, and privileged bird's-eye-view models. On the held-out test split, the structured history-and-action model achieves a macro normalized mean absolute error of 0.5036 and an average displacement error of 2.2042 m, significantly outperforming both restricted baselines. In full-information offline evaluation, its outcome-derived selector increases balanced policy value from 0.5364 to 0.5704 and reduces normalized regret from 0.2674 to 0.1495 relative to the frozen action prior. However, a validation-calibrated minimum-separation guard rejects every intervention, showing that conservative execution remains unresolved. BranchDrive therefore supports action-conditioned short-horizon prediction and fixed-bank offline decision evaluation, but does not establish exact causal effects, binary safety prediction, or closed-loop safety improvement.
Figures & tables
| Policy family | Parameter | Steering command | Throttle command | Brake command |
| Nominal expert | — | |||
| Accelerate straight | ||||
| Brake | ||||
| Steer left | ||||
| Steer right |
| Stream | Rate | Track | Main contents |
| Six surround RGB views | 4 Hz | Sensor | Front, front-left, front-right, rear, rear-left, rear-right |
| Top-down RGB | 4 Hz | Debug | Collection visualization; excluded from sensor-oriented inputs |
| Semantic BEV | 4 Hz | Privileged | Road, lanes, traffic controls, actors, drivable area, and route |
| Ego and route state | 4 Hz | Mixed | Pose, motion, navigation, route-relative and target-point information |
| Actor and risk evidence | 4 Hz | Privileged | Actor distance, relative motion, projected TTC, lane and event evidence |
| Expert and applied controls | 20 Hz | Audit | Online expert, stored nominal expert, and applied steer/throttle/brake |
| Item | Frozen protocol |
| Statistical unit | One complete branch group containing 13 candidate futures |
| Population | 606 groups; 431/88/87 train/validation/test |
| Canonical history | 16 state frames at 4 Hz and 80 control ticks at 20 Hz |
| Candidate bank | Nominal expert plus 12 interventions in four families and three magnitudes per family |
| Action encoding | 29-D family, signed magnitude, duration, control semantics, and recovery |
| Prediction horizon | Ten saved frames over the 2.5-s intervention interval |
| Stage or population | Train | Validation | Test | Total groups | Traj. |
| Discovered branch-group identifiers | – | – | – | 2,467 | – |
| Exact thirteen-action banks | – | – | – | 1,751 | 22,763 |
| All-controls-valid banks | – | – | – | 649 | 8,437 |
| Integrity-complete banks | 444 | 95 | 95 | 634 | 8,242 |
| Core replay-valid | 431 | 88 | 87 | 606 | 7,878 |
| Extended replay-valid | 427 | 88 | 85 | 600 | 7,800 |
| Model | Input | Params. (M) | Macro NMAE | ADE (m) | FDE (m) | Heading ( ∘ ) | Speed (m/s) |
| M0 | Mean | 0 | 0.6976 | 5.8227 | 10.2097 | 15.0468 | 4.9206 |
| M1 | Action | 0.202 | 0.6085 | 4.8983 | 7.9022 | 8.9867 | 4.2353 |
| M2 | State/control history | 0.398 | 0.5826 | 4.2383 | 8.8550 | 14.7979 | 3.7647 |
| M3 | State/control + action | 0.553 | 0.5036 | 2.2042 | 4.3739 | 5.9238 | 2.3022 |
| M4 | RGB + action | 1.717 | 0.5495 | 3.5473 | 6.1814 | 8.4443 | 3.1534 |
| M5 | RGB + state/control + action | 2.333 | 0.5008 | 2.5346 | 4.6759 | 6.9289 | 2.4524 |
| Selector | Value | Nom. | NReg. | Pair | NDCG | Top-1 |
| Random | 0.4669 | 0.4659 | 0.5000 | 0.9309 | 0.0813 | |
| Nominal / ActionPrior | 0.5364 | 0.0000 | 0.2674 | 0.5263 | 0.9475 | 0.1264 |
| AlwaysBrake | 0.4255 | 0.6148 | 0.4820 | 0.9222 | 0.0115 | |
| O-M3 | 0.5704 | 0.1495 | 0.7340 | 0.9772 | 0.3946 | |
| O-M5 | 0.5594 | 0.1615 | 0.7435 | 0.9741 | 0.3602 | |
| O-M6 † | 0.5698 | 0.1441 | 0.7432 | 0.9764 | 0.4674 |