A physics simulation and statistical study of lateral intrusion detection gaps in production ADAS sensor architectures at highway speeds
Phase 2 of the ADAS Validation Gap Research Series
Overview · Research Journey · Key Findings · Methodology · Results · Validation · How to Run · Citation · About
From left: CARLA simulation confirms MC is visible but undetected → sensor architecture explains why → Monte Carlo quantifies 99.6% failure rate → counterfactual maps the solution space
| Baseline collision rate 100,000 scenarios |
All sensors detect 0.01 s after departure |
AEB activates TTC = 3.43 s threshold |
Reaction window left Insufficient at 80 km/h |
| Corner radar improvement 99.6% → 77.4% |
Physics-limited floor Unavoidable even with perfect detection |
Real-world severe injury 1.53M German records 2.37× national baseline |
Euro NCAP AEB protocol status for this scenario |
Modern AEB systems are designed and certified for longitudinal threats — vehicles braking ahead of you. Euro NCAP tests rear stationary, rear moving, pedestrian, and cyclist scenarios. Every single one is from the front. In a straight line.
None test a vehicle hitting you from the side.
This study asks one question:
If a motorcycle loses control and crosses into your lane laterally at highway speed — can current production AEB detect and respond in time?
No manufacturer demonstrates this scenario. No Euro NCAP protocol tests it. This study builds the physics simulation, runs 100,000 randomised scenarios, and finds the answer is no — at two independent architectural levels.
This is not a standalone simulation. It is the direct continuation of a question that started with 1.53 million crash records.
╔══════════════════════════════════════════════════════════════════════╗
║ PHASE 1 — adas-validation-gap-analysis ║
║ github.com/TejasManjunath/adas-validation-gap-analysis ║
╠══════════════════════════════════════════════════════════════════════╣
║ ║
║ Data: 1,539,249 German crash records, 2019–2024 ║
║ (2019 = pre-COVID baseline · 2020 = pandemic traffic ║
║ reduction captured · 2024 = last full year available) ║
║ ║
║ Method: Logistic regression severity model + SRPI ranking ║
║ Cross-referenced against Euro NCAP AEB protocol documents ║
║ ║
║ Finding: Motorcycle leaving-carriageway = 44.1% severe injury rate ║
║ 2.37× the national baseline of 18.56% ║
║ Zero coverage in any Euro NCAP AEB test protocol ║
║ ║
╚══════════════════════════════════════════════════════════════════════╝
│
│ The gap is proven in crash data.
│ But can current hardware handle it?
│
▼
╔══════════════════════════════════════════════════════════════════════╗
║ PHASE 2 — aeb-blind-side-study (THIS REPOSITORY) ║
╠══════════════════════════════════════════════════════════════════════╣
║ ║
║ Tool: CARLA 0.9.16 physics simulation ║
║ Scale: 100,000 Monte Carlo scenarios · multi-seed validated ║
║ ║
║ Finding: Detection occurs at t = 5.01 s — 0.01 s after departure. ║
║ The system sees it. Then waits 3 more seconds. ║
║ AEB activates at t = 8.05 s — 1.1 s remains. ║
║ Not missing hardware. Architectural mismatch. ║
║ ║
╚══════════════════════════════════════════════════════════════════════╝
Phase 1 proved the gap is real using crash statistics. Phase 2 proves the gap is structural using physics simulation. Together: a complete evidence chain from injury data to root cause.
Figure 1 — Phase 1 finding from 1.53M German crash records: motorcycle leaving-carriageway scenarios show 44.1% severe injury rate — 2.37× the national baseline. Zero Euro NCAP AEB coverage. This is the gap Phase 2 investigates.
Figure 2 — At t = 5.0 s: motorcycle clearly visible at 3.5 m lateral separation. Forward radar (35°): NO DETECTION — structural FOV gap. Side radar (8 m): NON-ACTIONABLE — parking-assist spec (<10 km/h). Rear radar: NO DETECTION — geometry gap. AEB has no trigger pathway.
Figure 3 — Left: current production architecture — 35° forward FOV blind zone, parking-spec side radar. Right: corner radar enhancement (120° FOV, 50 m) restores lateral coverage. Collision rate: 99.6% → 77.4% (−22.1 pp).
Two independent architectural failures combine. Fixing one alone is not enough.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
LAYER 1 — SENSOR ARCHITECTURE (why the system cannot act in time)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Forward radar 35° FOV — MC is geometrically always outside
Side radar 8 m, <10 km/h spec — non-actionable at highway speed
Rear radar MC approaches laterally — first hit at t = 13.3 s
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
LAYER 2 — DECISION ARCHITECTURE (why detection alone is not enough)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
t = 5.01 s All sensors detect — 0.01 s after departure
The system is not blind. Detection is not the failure.
t = 5–8 s TTC threshold not crossed — AEB waits
TTC-based logic built for longitudinal threats
Lateral closing at 0.7 m/s drops TTC slowly
t = 8.05 s AEB activates — TTC = 3.43 s threshold finally met
t = 9.15 s Collision — only 1.1 s was available
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
CONCLUSION: Not missing hardware. A specification mismatch and a
decision architecture built for the wrong threat geometry.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
aeb-blind-side-study/
│
├── 📄 README.md
├── 📄 LICENSE
├── 📄 requirements.txt
├── 📄 .gitignore
│
├── 📁 simulation/
│ ├── s3_ego_mc.py ← CARLA S1: EGO + Motorcycle (Kawasaki Ninja)
│ ├── s3_ego_car.py ← CARLA S2: EGO + Passenger Car (Toyota Prius)
│ └── s4_analysis.py ← Detection window figures vs Euro NCAP
│
├── 📁 analysis/
│ └── monte_carlo_final.py ← Complete MC: baseline + CF + actuation sweep
│
├── 📁 figures/ ← All 23 publication figures
│ ├── hero_figure_RIGHT.png
│ ├── mc_headline.png
│ ├── 08_validation_story_visual.png
│ ├── figA_simulation_storyboard.png
│ ├── figB_sensor_gap_proof.png
│ ├── figC_overhead_sequence.png
│ ├── figD_car_storyboard.png
│ ├── figE_car_overhead.png
│ ├── figF_mc_vs_car_comparison.png
│ ├── figG_aeb_timeline.png
│ ├── sensor_architecture_RIGHT.png
│ ├── sensor_coverage_diagram.png
│ ├── annotated_scenario_forensic.png
│ ├── time_interaction_model_FINAL.png
│ ├── event_timeline__2_.png
│ ├── detection_window_chart.png
│ ├── detection_window_table.png
│ ├── failure_attribution.png
│ ├── cf_comparison.png
│ ├── mc_distribution.png
│ ├── mc_heatmap.png
│ ├── actuation_heatmap.png
│ └── impact_severity.png
│
├── 📁 frames/
│ ├── mc/ ← Selected CARLA frames — MC scenario
│ └── car/ ← Selected CARLA frames — Car scenario
│
└── 📁 data/
├── sensor_logs/
│ ├── mc_sensor_log.txt
│ ├── car_sensor_log.txt
│ ├── mc_sensor_raw.txt
│ └── car_sensor_raw.txt
└── outputs/
├── mc_results.csv
├── mc_tick_data.csv
├── cf_summary.csv
└── actuation_sweep.csv
The scenario replicates the crash topology found in Phase 1: a motorcycle departing laterally into an adjacent lane at motorway speed. Straight highway geometry was chosen deliberately to isolate sensor and decision architecture performance without curve confounds.
| Parameter | Value | Rationale |
|---|---|---|
| Simulator | CARLA 0.9.16 | Physics-validated, industry-standard |
| Map | Town04 — straight highway | Eliminates curve geometry confounds |
| Ego vehicle | BMW Grand Tourer | Representative mid-size passenger car |
| Threat S1 | Kawasaki Ninja | Phase 1 SRPI top-ranked scenario |
| Threat S2 | Toyota Prius | Target-independence validation |
| Speed — both | 80 km/h constant | Motorway speed at crash conditions |
| Lane gap | 3.50 m | Measured from Town04 road geometry |
| Lateral drift | 0.7 m/s | Representative departure rate |
| Collision window | 4.15 s (CARLA physics) | vs 5.0 s mathematical prediction |
| Correction factor | 0.83 | 4.15 / 5.0 — applied globally |
Figure 4 — Chase camera: stable travel t = 0–5 s (zero AEB trigger) → lateral departure t = 5–9 s (zero actionable detection) → unavoidable collision at t = 9.15 s. AEB was never activated.
| Sensor | H-FOV | Range | Production Spec | Finding |
|---|---|---|---|---|
| Forward radar | 35° | 150 m | Standard AEB | FOV gap — lateral targets always outside cone |
| Side radar | 120° | 8 m | Parking assist | Non-actionable — <10 km/h design threshold |
| Rear radar | 150° | 80 m | Blind spot | Geometry gap — first valid hit at t = 13.3 s |
| Corner radar | 120° | 50 m | Counterfactual | Restores coverage — −22.1 pp improvement |
Figure 5 — Radar coverage across stable phase (left) and departure phase (right). All four modalities fail during the 5.0 s departure window. Zero seconds detectable vs 1.5 seconds required minimum.
Figure 6 — Time-based collision model: collision when |t_lat − t_long| < 1.5 s. Red dot = CARLA S3 baseline (Δt = 0.6 s — confirmed collision). Validated against all 100,000 Monte Carlo scenarios.
Figure 7 — Event timeline: 5.0 s departure window with zero actionable detection. The protocol gap (Phase 1) and the physics gap (Phase 2) are the same gap seen from two angles.
Figure 8 — Departure trajectory outside the 35° forward FOV. Side radar non-actionable above 10 km/h. No AEB trigger pathway exists in current production architecture.
Developed progressively — 1,000 scenarios to validate the model, 10,000 for consistency, then 100,000 with full counterfactual configurations, sensitivity analysis, and actuation sweep. Multi-seed validation confirms result stability.
| Parameter | Distribution | Range | Noise | Note |
|---|---|---|---|---|
| Speed | Stratified (60% highway) | 60–100 km/h | — | Reflects real traffic mix |
| Lateral drift | Uniform | 0.3–1.2 m/s | ±10% | Departure variability |
| Lane gap | Uniform | 2.5–5.0 m | ±5% | EU highway widths |
| Long. offset | Uniform | ±10 m | — | True lateral geometry |
| Seeds | — | 42, 123, 999 | — | Std = 0.020% |
On the ±10 m offset: Wider ranges (−30 to +50 m) include cut-in scenarios that inflate AEB viability. Excluded by design. This study models pure lateral departure geometry only.
Figure 9 — Euro NCAP scenarios: 1.9–3.8 s detection windows, all viable. MC lateral intrusion: zero actionable window. Both radar modalities fail simultaneously. The Phase 1 protocol gap is confirmed as a Phase 2 physics gap.
Figure 10 — 53.2% of failures are detection-limited (sensor architecture — addressable). 46.8% are physics-limited (unavoidable even with perfect detection). Right: counterfactual upgrade pathway shows corner radar delivers the largest improvement at −22.1 pp.
Figure 11 — 99.6% of scenarios fall in the collision zone. The 0.4% AEB-viable window exists only at extreme slow-drift / large-gap parameters — unrealistic for real highway departures.
Figure 12 — Every scenario in drift × gap space. Realistic highway parameters (0.7–1.2 m/s, 3–5 m) fall entirely in the collision zone. Star = S3 CARLA baseline. AEB-viable scenarios exist only at the slow-drift boundary.
Figure 13 — Mean impact: 22.77 m/s (82 km/h) — near full-speed in almost every scenario. This directly explains the 44.1% severe injury rate found in Phase 1: no AEB intervention means no speed reduction at impact.
Figure 14 — Under perfect detection, best-case actuation (0.5 s, 10 m/s²) achieves 16.5%. The 46.6% physics floor confirms lateral kinematics at 80 km/h make a significant proportion of scenarios unavoidable regardless of sensor or decision architecture improvements.
| Configuration | Collision Rate | vs Baseline | What Changes |
|---|---|---|---|
| Baseline — current production | 99.6% | — | Side <10 km/h · fwd 35° FOV gap |
| Improved — highway-rated radar | 97.4% | −2.2 pp | Side radar threshold raised |
| Corner radar — 120° / 50 m | 77.4% | −22.1 pp | Front-corner sensors added |
| Perfect detection — physics floor | 46.6% | −52.9 pp | Detection always fires |
Figure 15 — Corner radar delivers 10× larger improvement than upgraded side radar alone (−22.1 pp vs −2.2 pp). The 46.6% physics floor confirms perfect detection cannot eliminate all scenarios given lateral kinematics at highway speed.
The passenger car scenario was added specifically to test whether the failure was radar cross-section dependent. A motorcycle (RCS ~1–3 m²) is far harder to detect than a car (~10–20 m²). If RCS were the cause, a larger target should produce a better outcome.
It does not.
Figure 16 — Identical parameters, two vehicle types. Both: detection t = 5.01 s · AEB t = 8.05 s · collision t = 9.15 s. Radar cross-section is not the cause. The failure is architectural — sensor specification and decision logic — confirmed target-independent.
Figure 17 — Both scenarios: detection t = 5.01 s · AEB t = 8.05 s · collision t = 9.15 s. The 1.1 s window is physically insufficient at 80 km/h regardless of target vehicle type.
Figure 18 — Passenger car: detection t = 5.01 s (fwd 14.6 m · side 2.6 m · rear 10.0 m) · AEB t = 8.05 s · collision t = 9.15 s. Identical to the motorcycle scenario in every critical metric.
Figure 19 — Overhead view confirms lane crossing. Side radar: 297 stable-phase hits then continuous departure detection. Detection was always present — the decision architecture makes collision unavoidable.
📎 Supplementary Figures
Figure 20 — MC lateral departures: 44.1% severe injury, 0s detection window, fail both AEB viability and Euro NCAP coverage simultaneously. Highest severity, zero protocol coverage.
| # | Assumption | Direction | Notes |
|---|---|---|---|
| 1 | Geometric FOV detection — no radar RCS modelled | Upper bound | Real MC detection would be harder (RCS ~1–3 m² vs car ~10–20 m²) |
| 2 | Single speed in CARLA (80 km/h) | Constrained | MC covers 60–100 km/h bands but no multi-speed physics runs |
| 3 | Uniform parameter distributions | Conservative | Standard in safety scenario analysis |
| 4 | Single correction factor (0.83) | Applied globally | Derived from one calibration point |
| 5 | Straight road only | Constrained | Isolates AEB braking cleanly — curves are future work |
| 6 | Constant lateral drift | Slightly conservative | Real loss-of-control may accelerate |
| 7 | No evasive steering | Constrained | Isolates braking intervention capability only |
pip install -r requirements.txtCARLA 0.9.16 server must be running on
localhost:2000See CARLA quickstart
# Scenario S1 — Motorcycle lateral departure
python simulation/s3_ego_mc.py
# Scenario S2 — Passenger car lateral departure
python simulation/s3_ego_car.pyOutput files per run
sensor_log.txt — departure onset, AEB timing, collision event
sensor_raw.txt — raw radar returns per sensor per tick
mc_baseline_metrics.csv — kinematic calibration data for Monte Carlo
mc_tick_data.csv — per-tick position, TTC, lateral separation
cam_chase_t*.png — chase camera frames
cam_overhead_t*.png — overhead frames at 18 m altitude
cam_side_t*.png — right-side camera frames
# Baseline + counterfactual + actuation sweep (~3–5 min)
python analysis/monte_carlo_final.pyExpected output — copy this to verify your run is correct:
── MULTI-SEED BASELINE VALIDATION ──
Seed 42: 99.57%
Seed 123: 99.59%
Seed 999: 99.54%
Mean: 99.57% Std: 0.020%
Target 99.6% ±0.5%: PASS ✓
Output files
cf_comparison.png — four-bar architecture comparison
cf_summary.csv — collision rates per configuration
actuation_heatmap.png — reaction time × deceleration sweep
actuation_sweep.csv — raw sweep data
mc_headline.png — 99.6% headline statistic
mc_distribution.png — crossing time histogram
mc_heatmap.png — drift × gap parameter space
failure_attribution.png — pie + bar failure attribution
impact_severity.png — impact speed distribution
python simulation/s4_analysis.py@misc{manjunath2026aeb,
author = {Tejas Manjunath},
title = {AEB Blind Side Study: Lateral Intrusion ADAS Gap —
Physics Simulation and Monte Carlo Analysis},
year = {2026},
publisher = {GitHub},
url = {https://github.com/TejasManjunath/aeb-blind-side-study},
doi = {10.5281/zenodo.XXXXXXX},
note = {Phase 2 of the ADAS Validation Gap Research Series}
}Phase 1 (prerequisite reading):
@misc{manjunath2026adas,
author = {Tejas Manjunath},
title = {ADAS Scenario Coverage Gap Analysis: Using 1.53M German
Crash Records to Identify Euro NCAP AEB Validation Blind Spots},
year = {2026},
publisher = {GitHub},
url = {https://github.com/TejasManjunath/adas-validation-gap-analysis}
}This study began with a dataset question, not a simulation idea.
An analysis of 1.53 million German crash records — spanning 2019 (pre-COVID baseline) through 2024 (latest full year from the Statistikportal) — found motorcycle leaving-carriageway events producing severe injury rates 2.37× the national average. A Scenario Risk Priority Index (SRPI) ranked them first. Cross-referencing against Euro NCAP AEB documentation confirmed they were entirely absent from any published validation framework.
That raised the question that became this project: not whether the scenario was tested — it was not — but whether current production AEB hardware could actually handle it if it were. No manufacturer demonstrates this. No simulation paper had investigated it from the sensor architecture perspective.
CARLA was used to build the scenario iteratively. The initial finding was unexpected: the sensors detected the motorcycle 0.01 seconds after departure. The system was not blind. The failure was that the TTC-based AEB decision logic took 3 more seconds to reach its threshold — by which point only 1.1 seconds remained.
Further investigation confirmed why: modern production vehicles run long-range forward sensors continuously on highways, but lateral sensors switch to blind-spot detection mode — a resource decision that makes complete sense for normal driving and catastrophically fails for lateral intrusion events.
Monte Carlo analysis was built progressively from 1,000 to 100,000 scenarios. A passenger car scenario was added to test RCS dependency. It confirmed the failure is architectural. Both phases were built independently by Tejas Manjunath between late 2025 and 2026. One laptop. No funding. No institutional support.
If you work in automotive safety and this is useful — that is why it was made public. If you use it, cite it. If you want to discuss or challenge the methodology, reach out.
Code: MIT — see LICENSE
Research content, figures, and methodology: © 2026 Tejas Manjunath
Attribution required for any use of figures or findings:
Tejas Manjunath (2026). AEB Blind Side Study — Lateral Intrusion ADAS Gap.
https://github.com/TejasManjunath/aeb-blind-side-study
Phase 2 of the ADAS Validation Gap Research Series
Built with CARLA 0.9.16 · Python 3.10 · NumPy · Matplotlib · Pillow
⭐ If this work is useful, please star the repository
adas · aeb · autonomous-driving · carla-simulator · lateral-collision · motorcycle-safety
monte-carlo · sensor-architecture · safety-simulation · euro-ncap · sotif · adas-validation ·
data-science · data-analysis · data-engineering · machine-learning

