Berkeley Driver: one stack for every vehicle
Project
TL;DR
Berkeley Driver is the software that every AV@B vehicle runs. It covers the whole path from raw sensor data to steering and braking, and all four divisions work in it.
Keeping one codebase means a fix made for a race car also reaches the golf cart, and a method from Research can be tried on real hardware without a rewrite.
The layers
The stack runs top to bottom, from sensors to the vehicle.
| Sensors | Cameras, lidar, radar, IMU, GPS |
|---|---|
| Perception | Detection, segmentation, depth, bird's-eye view, occupancy |
| World model | Scene representation, prediction, multi-agent reasoning |
| Localization | Where the vehicle is on the map |
| Planning | Behavior planning, motion planning, learned policies |
| Control | MPC, vehicle dynamics, low-level control |
| Vehicle | Robots, the golf cart, race cars |
Why one codebase
AV@B is four divisions, but they share this one platform. Research develops new approaches in it. Racing pushes those approaches to their limits. Mobility deploys them on vehicles people ride in. Applied takes the same skills to outside teams.
Because the code is shared, improvements flow back from every division into the same stack.
Working on it
Most members start by owning one piece of one layer. Prior autonomy experience is not required.