Self Driving Cars 101
← Back to Learn

How it works

End-to-End Self Driving

End-to-end self driving uses a single neural network that takes raw sensor data and outputs driving commands, the steering, accelerator and brake, learning to drive directly from examples. It contrasts with the modular approach, which breaks driving into separate perception, prediction, planning and control stages, many of them governed by hand-written rules.

What is end-to-end driving?

In an end-to-end system, one large model maps sensor input to vehicle controls with no hand-coded stages in between. The network learns the task by watching large amounts of driving, mostly human demonstrations, a method known as imitation learning, and increasingly by practicing in simulation.

The idea is old. In 1989 Carnegie Mellon's ALVINN steered a van using a small neural network fed by a camera. In April 2016 NVIDIA showed a modern, foundational version, a convolutional neural network called PilotNet, trained to map camera images directly to steering on public roads.

Read: Sensing: how the car sees the world

How is the modular, or distributed, approach different?

The modular approach splits driving into a pipeline of specialized parts: perception detects objects, localization places the car on a map, prediction guesses what others will do, planning chooses a path, and control turns that path into steering and pedal commands.

Each stage produces an output a human can inspect, and the stages are stitched together by explicit logic, often rule-based. This orchestration makes the system easier to test and to reason about, but it requires a great deal of hand engineering.

How do the two compare?

Neither approach is purely better. They trade interpretability and ease of verification against the ability to learn complex behavior straight from data.

DimensionEnd-to-end modelModular pipeline
How it is builtLearned from dataHand-built stages plus learned parts
InterpretabilityLow, a black boxHigh, each stage is inspectable
Safety caseHard to argueEasier to argue per stage
Rare situationsCan generalize if seen in dataNeeds new rules or cases
Main costHuge, well-labeled datasetsEngineering and maintenance

Which approach do real systems use?

The field is moving from fully modular toward more learning, and increasingly toward hybrids that keep some interpretable structure while letting a network do the heavy lifting.

Tesla rebuilt its city-driving software around an end-to-end approach in 2024, saying neural networks replaced large amounts of hand-written code. Wayve and comma.ai have long argued for learned, end-to-end driving. Waymo and most robotaxi operators began modular and have steadily added learned components.

Read: The SAE Levels of driving automation

Watch

Frequently asked

What is end-to-end self driving?
An approach where a single neural network takes raw sensor input and directly outputs driving commands, the steering, accelerator and brake, learning to drive from examples rather than from hand-written rules.
What is the difference between end-to-end and modular self driving?
A modular system splits driving into separate stages, perception, prediction, planning and control, joined by explicit logic. An end-to-end system replaces that pipeline with one model that learns the whole task from data.
Does Tesla use end-to-end driving?
Tesla rebuilt its Full Self-Driving city software around an end-to-end neural network in 2024, replacing much of the earlier hand-written code. Its earlier versions used a more modular design.
Is end-to-end better than the modular approach?
There is no consensus. End-to-end can learn complex behavior directly from data, but it is hard to interpret and to verify. Modular systems are easier to test but need heavy hand engineering. Many teams now blend the two.

Related