PersonaDrive

Human-Style Retrieval-Augmented VLA Agents
for Closed-Loop Driving Simulation

University of California, Irvine
Pervasive Autonomy Lab

PersonaDrive conditions a vision-language-action (VLA) driving agent on demonstrations retrieved from people who were asked to drive in a given style. Changing the style changes which database is searched; one set of weights serves every style.

Same Weights, Different Style Database

Each pair is the same checkpoint on the same Bench2Drive route. The only difference is whether the retrieval head queries the aggressive or the conservative database of human demonstrations.

Overtaking a cyclist. The aggressive agent passes at the first gap in oncoming traffic and reaches 18.6 m/s. The conservative agent stays behind the cyclist and passes once the road is clear.

Cyclists blocking the lane. Both agents stop and wait to merge left. The aggressive agent takes the first gap behind a passing car; the conservative agent merges about 16 s later, once the lane is open.

Right turn with crossing traffic. The aggressive agent turns into the first gap. The conservative agent lets more cars pass and turns about 5 s later.

Abstract

Closed-loop driving simulators populate their environments with non-ego traffic agents that behave much the same way, whether from rule-based traffic managers or from learned models trained toward a single behavioral mode. Recent work introduces style variation through post-hoc labels or LLM-inferred reward weights, but these act as proxies for what a style should reward rather than demonstrations of humans explicitly asked to drive in that style.

We introduce PersonaDrive, a pipeline that conditions a vision-language-action (VLA) driving agent on retrieved demonstrations from a style-instructed dataset in which 15 participants drive CARLA Leaderboard routes under aggressive, neutral, and conservative instructions on a driver-in-the-loop rig. The pipeline mines behavioral triplets offline with a combined image-text similarity score, trains a lightweight retrieval head fusing frozen visual features with a small control encoder over per-style databases, and fine-tunes one VLA backbone to read retrieved context points as in-context demonstrations. Switching style at inference is a single database swap, so one set of weights serves every style with no per-style retraining.

On Bench2Drive, PersonaDrive (no style) improves the driving score by 4.6% over SimLingo and 2.5% over HiP-AD. Under style conditioning it attains the highest driving score in every style within a 2.1-point band (87.55–89.62), its weakest style surpassing the strongest baseline (DMW) by 5.8%, while average speed and acceleration rise by 19.8% and 24.9% from the conservative to the aggressive instruction. Each agent is evaluated individually as a driving policy.

Why Human-Style Traffic Agents?

What is missing in simulated traffic?
Rule-based traffic managers and learned traffic models produce agents that behave alike. Real traffic spans conservative, neutral and aggressive drivers, and those differences matter most at merges, unprotected turns and in dense urban traffic, where the ego policy has to react to the people around it.

Why not style labels or reward weights?
Existing personalization methods supervise style with post-hoc observational labels or with reward weights inferred by an LLM. Both approximate what a style should reward. Neither records what people actually do when they are asked to drive in that style.

What does PersonaDrive do instead?
We recorded people driving under explicit style instructions and store their frames in one database per style. At every tick, a retrieval head finds the most similar context points in the selected database, and the VLA backbone reads them as in-context demonstrations before predicting its own waypoints.

Contributions

  1. A controlled style driving dataset. 15 drivers drive CARLA Leaderboard routes under aggressive, neutral and conservative instructions on a driver-in-the-loop rig. The design is paired at the route level, which decouples style from driver identity (29,777 frames, 55 routes, 21 scenario types).
  2. A style-conditioned triplet-RAG architecture. We mine behavioral triplets (Stage 1), train a retrieval head over per-style databases (Stage 2), and fine-tune the VLA backbone to read retrieved context points as in-context demonstrations (Stage 3). Style control comes from retrieved human demonstrations, not from style tokens, proxy rewards or per-style fine-tuning.
  3. Closed-loop results on Bench2Drive. Without style, PersonaDrive improves the Driving Score by 4.6% over SimLingo (88.95 vs. 85.07) and 2.5% over HiP-AD (86.77). With style conditioning it has the highest Driving Score in every style, its weakest style still 5.8% above the strongest baseline (DMW), while speed and acceleration rise 19.8% and 24.9% from the conservative to the aggressive instruction with no per-style retraining. A retrieval-depth ablation shows open-loop and closed-loop accuracy moving together with the number of retrieved demonstrations on a fixed checkpoint.

Style-Instructed Driving Dataset

Style-instructed data collection overview
Participants drive CARLA Leaderboard scenarios three times, once under each instruction. Each pass records the front-view RGB image, ego state (speed, throttle, steering, command), GPS targets and waypoints; VQA and commentary annotations are added afterwards.
Driver-in-the-loop hardware rig

Data comes from 15 non-professional drivers with valid licenses on a driver-in-the-loop rig: a Next Level Racing GTrack seat, three 50-inch monitors covering about 130Β° and a Logitech G923 wheel and pedals. CARLA runs in synchronous mode at 20 Hz. The ego vehicle is the only human-controlled actor and TrafficManager drives the rest of the traffic. Each participant drives the routes in randomized order, once under each instruction.

Conservative

β€œTarget 10–15 mph on surface streets and 25–35 mph on the highway; yield to other vehicles whenever possible.”

Neutral

β€œFollow traffic laws, navigate safely, and drive at a reasonable speed.”

Aggressive

β€œDrive as fast as possible without crashing; engage in aggressive behaviors such as tailgating and cutting off merging vehicles.”

InstructionMean (mph)In motion (mph)Std. dev.Stopped (%)
Conservative9.811.57.614.6
Neutral13.215.610.815.7
Aggressive17.521.816.819.8

Speed statistics of the human data, route-matched over the 55 routes driven under all three instructions. Mean speed separates the instructions before any model is involved.

On Hugging Face, one zip per style (neutral, aggressive, conservative), plus the commentary and VQA annotations.

Method

PersonaDrive architecture
Offline, the frames of each style are stored in their own FAISS index. Online, the retrieval head encodes the current scene, queries the index of the selected style, and returns the K most similar context points. They are placed before the current observation in the prompt of the VLA backbone, whose waypoints the Route MLP decodes and a PID controller turns into steering, throttle and brake.

1 Triplet mining

Each frame is written out as a frame sentence (speed, steering, command, VQA annotation, commentary, GPS target and the executed waypoints). A combined score of SigLIP image similarity and BGE-M3 sentence similarity selects positives, easy negatives and hard negatives: frames that look alike but where the driver used a different command or speed.

2 Retrieval head

Frozen SigLIP features (768-d) are concatenated with a trained ControlEncoder over speed, throttle, steering and command (128-d) and projected to a 1024-d embedding. A weighted triplet loss trains it, with extra weight on hard negatives. One head serves all styles; only the queried index changes.

3 In-context SFT

The VLA backbone (InternVL2-1B, inherited from SimLingo) is fine-tuned with a rank-16 LoRA to read the K = 2 retrieved context points as few-shot examples. It receives no style label and has to infer the style from the demonstrations it is given.

Triplet mining and retrieval head training
Stage 1 mining and Stage 2 retrieval head training. Hard negatives are visually similar to the anchor but diverge in command or speed, so a head that relied on images alone would rank them as positives.
Mined triplets for the three styles
Mined triplets (anchor, positive, hard negative, easy negative) for each style.

Retrieval in Action

Retrieval without a style
No style. The query goes to the style-agnostic index, a 5% route-level subset of SimLingo's PDM-Lite data. Both context points come from the rule-based PDM-Lite expert, not from people.
Retrieval from the conservative and aggressive databases
Conservative vs. aggressive. The same Bench2Drive frame retrieves different human drivers. Both conservative drivers are still stopped at the junction; one aggressive driver is already moving at 3.0 m/s. Labels give the participant, scenario and town of each retrieved frame.

Closed-Loop Driving on Bench2Drive

These runs use no style, so the context points come from the style-agnostic PDM-Lite index. The black panel shows the model's prompt: the two retrieved context points (blue), the current scene, and the commentary PersonaDrive generates (gold).

Heavy rain. A parked car pulls out; PersonaDrive stops and lets it in. The retrieved context points on the right update as the car drives.

Night and fog. Cones and oncoming traffic narrow the road.

Unsignalized junction. PersonaDrive turns and matches the car ahead.

Stopping at a Red Light

PersonaDrive β€œFollow the route. Remain stopped due to the red traffic light.”
SimLingo β€œTurn right. Accelerate to reach the speed limit.”

On the same route, SimLingo turns right on red. PersonaDrive stays stopped for the whole red phase and turns when the light is green. Qualitative example.

Results

Closed-loop driving without style

MethodDS ↑SR (%) ↑Eff. ↑Comf. ↑
TCP-traj59.9030.0076.5418.08
ThinkTwice62.4431.2369.3316.22
DriveAdapter64.2233.0870.2216.01
UniAD-Base45.8116.36129.2143.58
VAD42.3515.00157.9446.01
HiP-AD86.7769.09203.1219.36
SimLingo-BASE85.9466.82244.1825.49
SimLingo85.07 Β± 0.9567.27 Β± 2.11259.23 Β± 5.5933.67 Β± 5.72
PersonaDrive (no style)88.9572.29255.1528.09

Bench2Drive, 220 routes (subset of Table 1 in the paper). Driving Score (DS) is route completion reduced by a penalty for each infraction or collision. PersonaDrive queries the style-agnostic index.

Where the gain comes from

MethodFine-tuned on PersonaDrive dataRetrievalDS ↑SR (%) ↑
SimLingo––85.07 Β± 0.9567.27 Β± 2.11
SimLingo, fine-tuned without retrievalβœ“β€“85.0866.36
PersonaDrive (no style)βœ“βœ“88.9572.29

Style-conditioned closed-loop driving

MethodStyleDS ↑SR (%) ↑Eff. ↑Comf. ↑Speed (m/s)Accel. (m/sΒ²)
SimLingo (style prompt)Conservative78.1865.56238.7726.997.215.29
Neutral78.1565.85241.4424.677.375.22
Aggressive78.5665.83247.6018.617.665.39
StyleDriveConservative77.0261.96242.1823.676.825.39
Neutral76.2662.13249.0721.356.985.43
Aggressive75.6860.89256.7116.797.235.59
DMWConservative82.7271.56237.0634.626.185.26
Neutral82.0370.95244.9828.676.345.43
Aggressive79.5067.36281.5621.627.726.01
PersonaDriveConservative89.6273.57258.4433.055.053.17
Neutral87.5569.50264.8331.205.523.51
Aggressive88.6972.56269.2027.856.053.96

Baselines follow the comparison protocol of Drive My Way (DMW). PersonaDrive's speed rises 19.8% and its acceleration 24.9% from conservative to aggressive, in order; SimLingo prompted with the style name changes speed by 6.2% and its acceleration is not ordered.

Retrieval depth

MetricK = 0K = 1K = 2K = 3K = 4
ADE (m) ↓0.8200.8800.7950.7930.791
FDE (m) ↓1.7871.9611.6991.6501.648
DS ↑85.0781.5588.9589.1689.30
SR (%) ↑67.2762.1772.2972.3573.10
Tokens ↓5471292203027693507
Latency (ms) ↓480.3509.6557.7599.4649.7

K = 0 is the SimLingo backbone with retrieval disabled; K β‰₯ 1 use the same PersonaDrive checkpoint. We operate at K = 2, which adds 77.4 ms per tick over SimLingo.

Bench2Drive leaderboard, LLM/VLA methods

MethodVLA backboneDriving styleDS ↑
LinkVLAInternVL2-1B–91.01
SteerVLAInternVL2-1B–91.00
FIVE-VLAFastVLM (0.64B)–90.95
BLUESimLingo (1B) + gate–90.58
RoG-DAggerSimLingo (1B)–90.34
TakeVLAInternViT + Qwen2-0.5B–89.72
PersonaDrive (conservative style)InternVL2-1Bβœ“89.62
AutoMoTQwen3-VL-4B–89.42
VLADriver-RAG50M decoder + CLIP–89.12
PersonaDrive (no style)InternVL2-1Bβœ“88.95
SimLingoInternVL2-1B–85.07

Self-reported scores from the Bench2Drive Leaderboard (updated 24 Sep 2026), LLM/VLA entries at or above SimLingo. The conservative-style row is our result from the paper (Table 3); the no-style row is the listed entry. PersonaDrive is the only method in this list that can change its driving style at inference.

Demo Video

BibTeX

@article{srewa2026personadrive,
  title   = {PersonaDrive: Human-Style Retrieval-Augmented VLA Agents for Closed-Loop Driving Simulation},
  author  = {Srewa, Mahmoud and Iddamsetty, Praneetsai Vasu and Al Faruque, Mohammad Abdullah and Elmalaki, Salma},
  journal = {arXiv preprint arXiv:2606.12616},
  year    = {2026}
}

Acknowledgements

This work is supported by the U.S. National Science Foundation (NSF) under grant number 2339266 and is partially supported by the UCI ProperAI Institute, an Engineering+Society Institute funded as part of a generous gift from Susan and Henry Samueli.