Source-linked AI summary
Self-Driving Cars: A Survey
Claudine Badue, Rânik Guidolini, Raphael Vivacqua Carneiro, Pedro Azevedo, Vinicius Brito Cardoso, Avelino Forechi, Luan Jesus, Rodrigo Berriel, Thiago Paixão, Filipe Mutz, Lucas Veronese, Thiago Oliveira-Santos, Alberto Ferreira De Souza
TL;DR
Self-driving-car research spans complex perception and decision-making architectures, creating a need for synthesis. This survey organizes those architectures and methods, finding substantial progress since the DARPA challenges but continued work toward SAE level 5.
Problem
Self-driving-car research spans numerous perception and decision-making subsystems, motivating synthesis of their typical architecture and relevant methods.
Method
The paper surveys real-world-tested self-driving-car research, reviews perception and decision-making methods, and describes typical architectures and the UFES IARA platform.
Results
The survey finds that research since the DARPA challenges has contributed substantially to current self-driving-car technology.
Takeaways & Limitations
SAE level 5 self-driving cars are not yet available to the public, and substantial work remains toward that goal.
Takeaways & Limitations
GPS positioning is unreliable in urban environments because tall trees, buildings, and tunnels cause interference, so it alone is insufficient for proper localization.
Abstract
from arXiv · showhide
We survey research on self-driving cars published in the literature focusing on autonomous cars developed since the DARPA challenges, which are equipped with an autonomy system that can be categorized as SAE level 3 or higher. The architecture of the autonomy system of self-driving cars is typically organized into the perception system and the decision-making system. The perception system is generally divided into many subsystems responsible for tasks such as self-driving-car localization, static obstacles mapping, moving obstacles detection and tracking, road mapping, traffic signalization detection and recognition, among others. The decision-making system is commonly partitioned as well into many subsystems responsible for tasks such as route planning, path planning, behavior selection, motion planning, and control. In this survey, we present the typical architecture of the autonomy system of self-driving cars. We also review research on relevant methods for perception and decision making. Furthermore, we present a detailed description of the architecture of the autonomy system of the self-driving car developed at the Universidade Federal do Espírito Santo (UFES), named Intelligent Autonomous Robotics Automobile (IARA). Finally, we list prominent self-driving car research platforms developed by academia and technology companies, and reported in the media.
1. Introduction
This survey reviews self-driving-car research since the DARPA challenges, focusing on autonomy systems organized into perception and decision-making. It presents the typical architecture, reviews relevant methods, and describes the paper’s structure around these topics.
- Research background: Self-driving cars have been studied and developed worldwide by universities, research centers, car companies, and other industries since the mid-1980s.Examples include Navlab, ARGO, VaMoRs, and VaMP.
- DARPA challenges: The DARPA challenges were major milestones: four cars completed the 132-mile 2005 route, while six completed the 60-mile 2007 urban route.The 2004 challenge required a 142-mile desert course, but all competitors failed within the first few miles.
- Research platforms: Research on self-driving cars extends beyond the United States, Europe, and Asia to countries including China and Brazil, with platforms such as UFMG’s CADU and USP’s CARINA.Many self-driving-car competitions and trials have also been conducted since the DARPA challenges.
- Autonomy architecture: The autonomy architecture is typically divided into perception and decision-making systems, each containing subsystems for sensing, mapping, planning, behavior selection, and control.Perception includes localization, obstacle mapping, road mapping, moving-object tracking, and traffic-signal recognition; decision making includes route, path, behavior, motion, and control tasks.
- Survey contributions: The survey presents the typical autonomy architecture and reviews relevant methods for perception and decision making.The paper subsequently organizes these methods into an overview of architecture and research on perception-system methods.
2. Typical Architecture of Self-Driving Cars
The typical self-driving-car architecture is organized into perception and decision-making systems, each composed of subsystems with distinct responsibilities. Perception estimates the vehicle state and represents the environment, while decision making uses these outputs and traffic information to plan and execute motion.
- Overall Architecture: The architecture comprises Perception and Decision Making systems, presented as collections of specialized subsystems.The survey introduces their responsibilities and subsystem variants as the organizing structure for the section.
- Perception System: Perception estimates the car’s State and creates an internal environment representation from onboard sensor data.Its subsystems include localization, mapping, moving-object tracking, and traffic-signalization detection and recognition.
- Decision-Making System: Decision making uses state, environment, and traffic information for route planning, path planning, behavior selection, motion planning, obstacle avoidance, and control.The resulting controller commands the steering, throttle, and brakes so the vehicle executes the modified trajectory.
- Perception System: The Localizer combines Offline Maps, sensor data, and odometry to compute the car’s State, while GPS alone is unreliable in urban environments.Tall trees, buildings, tunnels, and similar interferences can make GPS positioning insufficient for proper localization.
- Decision-Making System: The Controller sends actuator effort commands to execute the Motion Planner’s trajectory, after any collision-avoidance modification by the Obstacle Avoider.The Motion Planner must follow the selected path, satisfy kinematic and dynamic constraints, and provide passenger comfort.
3. Self-Driving Cars’ Perception · 3.1. Localization
The perception system of self-driving cars includes localization, obstacle mapping and tracking, road mapping, and traffic-signal detection and recognition. Localization estimates vehicle pose relative to a map or road, with research spanning LIDAR-, LIDAR-plus-camera-, and camera-based methods because GPS is unreliable in many urban environments.
- 3. Self-Driving Cars’ Perception: The perception system covers localization, offline obstacle mapping, road mapping, moving-obstacle tracking, and traffic-signal detection and recognition.
- 3.1. Localization: Localization estimates the car’s position and orientation relative to a map or road, while GPS-based systems can fail under trees, in urban canyons, and in tunnels.
- 3.1. Localization: Localization methods are categorized as LIDAR-based, LIDAR plus camera-based, or camera-based, reflecting trade-offs among accuracy, processing ease, cost, precision, and reliability.LIDAR offers measurement accuracy and processing ease but remains expensive; camera-based methods are cheaper and convenient but typically less precise or reliable.
- 3.1.1. LIDAR-Based Localization: LIDAR-based methods localize vehicles by matching sensor-derived maps or features, including remission intensity, aerial maps, curbs, road markings, occupancy grids, and Gaussian-mixture maps.Examples use MCL, map matching, multilayer adaptive Monte Carlo Localization, or EKF registration of 3D point clouds.
- 3.1.2. LIDAR plus Camera-Based Localization: LIDAR-plus-camera methods use LIDAR to construct maps and cameras to estimate localization by matching stereo or panoramic visual representations with mapped or satellite imagery.Reported approaches match stereo depth and intensity images to 3D point-cloud maps or align ground panoramic images with satellite images across seasons.
- 3.1.3. Camera-Based Localization: Camera-based localization uses visual odometry, road maps, visual features, textual landmarks, pole-like landmarks, or neural maps to infer vehicle position.Methods include graph-based Bayesian filtering, point- and lane-feature localization, MCL integration of text observations, and learned image–global-position representations.
- 3.1.3. Camera-Based Localization: A textual-feature camera method reported location estimation errors between 1 m and 25 m on real-world data.
3.2. O
Environment mapping for self-driving cars uses topological or metric representations, with metric maps—especially Occupancy Grid Maps—most common because of their higher spatial resolution. Offline maps support localization, while online maps handle moving obstacles, although several richer metric representations remain slower or computationally intensive for large-scale real-time operation.
- Representations of the environment: Topological maps represent environments as graphs of significant places and relationships, whereas metric maps divide space into regularly spaced cells with generally higher spatial resolution.Metric decompositions do not depend on feature location or shape and are therefore the most common space representation.
- Metric representations: Occupancy Grid Maps discretize space into fixed-size cells whose occupation probabilities are updated independently from sensor data, often after projecting 3D measurements onto a 2D ground plane.OGMs typically use cells on the order of centimeters and represent each cell’s probability of occupation.
- Mapping algorithms: GraphSLAM builds globally consistent maps and robot trajectories from sparse sensor constraints, while FastSLAM performs online mapping using particle filters for the car’s path and occupancy probabilities.GraphSLAM has been used with odometry, 3D LIDAR, IMU, and GPS to build OGMs and correct systematic odometry errors.
- Offline and online mapping: Self-driving cars require offline maps for localization and may require online maps when environments contain moving obstacles; merging both maps can improve operational safety.IARA computes instantaneous online OGMs from a single LIDAR point cloud and consolidated offline OGMs from multiple sensors.
- Alternative metric representations: Octree, hybrid, Gaussian Process, Hilbert, and Discrete Cosine Transform maps offer alternative metric representations, but continuous representations remain slower than OGMs for large-scale real-time self-driving scenarios.OctoMaps are memory efficient but computationally intensive, while hybrid maps improve efficiency through higher resolution near the sensor and lower resolution farther away.
3.3. Road Mapping
Road mapping supports autonomous operation on roads and highways by representing road and lane information, with methods spanning metric grids, waypoint sequences, and graph-like topological maps. Research also addresses automated map generation from aerial imagery and detailed lane-level mapping, including a lanelet map successfully tested over 103 km.
- Road-map purpose: Road maps encode roads and lanes needed for autonomous operation on roads and highways governed by markings and traffic signalization.The Road Mapper subsystem manages this information and makes it available in maps.
- Automated generation: Manual road-map creation from aerial images is costly at scale, motivating automated generation methods such as Road Tracer, which achieved an average error of 5% across 24 km2 of aerial imagery.Road Tracer iteratively constructs a graph by adding road segments and using a CNN to select the next segment.
- Metric representations: Grid maps discretize roads into fixed-size cells but can waste memory and processing because most operating environments are not roads.Carneiro et al.’s metric map uses 0.2 m × 0.2 m cells and stores only non-zero cells in compacted form.
- Topological representations: Waypoint sequences provide simple topological maps, while graph-like models represent places and relationships and support multiple lanes, crossings, and mergers.DARPA’s RDDF specified waypoint coordinates and associated information, whereas RNDF represented road segments in a topological map.
- Detailed lane maps: Lanelet maps combine geometric and topological road-network features through interconnected drivable segments bounded by point polylines.Bertha’s manually annotated lanelet map was tested throughout an autonomous journey of 103 km on the Bertha Benz Memorial Route.
3.4. Moving Objects Tracking · 3.5. Traffic Signalization Detection
Moving-object tracking supports collision-avoiding behavior through methods spanning six methodological classes, while traffic-signalization detection enables decisions compliant with traffic law. The reviewed signalization tasks cover traffic lights, traffic signs, and pavement markings.
- 3.4. Moving Objects Tracking: The Moving Objects Tracker detects and tracks moving-obstacle poses, enabling behavior decisions that avoid collisions with vehicles, pedestrians, and other potentially moving objects.It is also known as Detector and Tracker of Moving Obstacles (DATMO).
- 3.4. Moving Objects Tracking: Moving-object positions are estimated from LIDAR, RADAR, stereo, or monocular cameras, with monocular appearance cues and Bayes filters addressing hypothesis quality and measurement uncertainty.Examples of Bayes filters include Kalman and particle filters.
- 3.4.1. Traditional Based MOT: Traditional MOT uses segmentation, data association, and filtering, while monocular imagery can filter irrelevant 3D LIDAR points before feature-based segment matching.Multiple Hypothesis Tracking mitigates association errors.
- 3.4.2. Model Based MOT: Model-based MOT directly uses physical sensor and geometric object models with non-parametric filters, eliminating separate segmentation and association steps.Hierarchical association matches observations to dynamic or static targets and updates obstacle boundary points.
- 3.4.3. Stereo Vision Based MOT: Stereo-vision MOT uses color and depth from synchronized stereo images, including SVM-based obstacle detection and tracking from pedestrian and car detector outputs.The cited method uses only forward-looking stereo video.
- 3.4.4. Grid Map Based MOT: Grid-map MOT builds a dynamic occupancy map, then segments, associates, and filters it to obtain object representations; stereo-derived 3D points support IMM tracking.An inverse sensor model estimates cell occupancy probabilities, followed by hierarchical segmentation.
- 3.4.5. Sensor Fusion Based MOT: Sensor-fusion MOT combines LIDAR, RADAR, and camera data to exploit complementary characteristics, using feature association and Kalman filtering or multi-sensor track merging.Reported sensors include RADARs, 2D LIDARs, and a 3D LIDAR.
- 3.4.6. Deep Learning Based MOT: Deep-learning MOT uses neural networks to detect obstacle positions and geometries and predict future states from camera data, including Overfeat CNN monocular vehicle detection.The Overfeat CNN predicts cars’ location and range distance (depth).
traffic light detection and recognition
Traffic-light detection and recognition evolved from model-based methods using hand-crafted color and shape features toward learning-based classifiers and deep general-object detectors. However, deep detectors often detect traffic lights without recognizing their states, and little is known about the methods used by research self-driving cars.
- Model-based approaches: Model-based methods used hand-crafted color and shape features, but they were not robust when their assumptions were not strictly observed.Combining different features was explored to improve robustness.
- Learning-based approaches: Learning-based approaches replaced rule-based detection or recognition with classifiers while still relying on hand-crafted features.Investigated combinations included HoG and Gabor features with SVM, AdaBoost, and JointBoost classifiers.
- Deep detectors: State-of-the-art general object detectors were successfully applied to traffic-light detection, often without recognizing traffic-light states.These deep detectors do not provide a breakdown of performance for the combined traffic-light detection and recognition task.
- Research self-driving cars: Little is known about the traffic-light methods used by research self-driving cars, partly because the 2007 DARPA Urban Challenge had no traffic lights.The passage identifies this lack of traffic lights as a possible main reason for limited knowledge of deployed research approaches.
4. Self-Driving Cars’ Decision Making
This section surveys reported techniques for self-driving cars’ decision-making systems, covering route planning, behavior selection, motion planning, and control.
- The decision-making system includes route planning for selecting routes.
- It includes behavior selection and motion planning for determining driving actions and trajectories.
- It also includes control as a subsystem within the decision-making system.
4.1. Route Planning
Route planning computes a waypoint route through a road network from the user-defined initial position to the final position. The surveyed techniques trade query speed, preprocessing time, space usage, and robustness across four combinable algorithmic classes.
- Route-planning function: The Route Planner computes a route W, a sequence of coordinate-pair waypoints, through an offline-map road network between user-specified positions.The road network can be represented as a weighted directed graph whose vertices are waypoints and whose edges connect waypoint pairs.
- Algorithmic trade-offs: Modern road-network algorithms can compute driving directions in milliseconds or less, including at continental scales.
- Algorithmic trade-offs: Route-planning methods trade query time, preprocessing time, space usage, and robustness to input changes, and fall into four combinable classes.The classes are goal-directed, separator-based, hierarchical, and bounded-hop.
- Goal-directed techniques: Goal-directed methods prune searches toward the target, with A∗ using lower-bound distances and Arc Flags pruning arcs based on partition-cell flags.A∗ query performance and correctness depend on landmark selection, while Arc Flags computes flags during preprocessing from shortest-path trees rooted at cell boundaries.
- Other technique classes: Separator-based, hierarchical, and bounded-hop methods accelerate queries using overlays or shortcuts, network hierarchy, reach values, labels, or transit-node distance tables.Examples include Customizable Route Planning, Contraction Hierarchies, REACH, Hub Labeling, and Transit Node Routing.
4.2. Path Planning
The Path Planner generates candidate pose sequences from the current route, vehicle state, environment representation, and traffic rules. Reviewed path-planning methods fall mainly into graph-search and interpolating-curve classes.
- 4.2. Path Planning: The Path Planner computes paths beginning at the car’s current pose and extending tens or hundreds of poses through the mapped environment.Each pose contains position and orientation, represented as (x_i, y_i, θ_i).
- 4.2. Path Planning: Path-planning methods are mainly categorized as graph-search based or interpolating-curve based.
- Graph search based techniques: Graph-search techniques discretize an occupancy-grid state space and search for a path between the current state and a goal pose near a route waypoint.Common methods include Dijkstra, A-star, and A-star variants.
- Graph search based techniques: Dijkstra finds shortest graph paths and was used to plan Verdino’s route and path, Odin’s parking maneuver, and simulated paths for another vehicle.It repeatedly expands the closest unexamined node until reaching the goal.
- Graph search based techniques: A-star accelerates graph search with heuristic node costs, while anytime D-star and hybrid-state A-star extend graph-based planning for Boss and Junior.
- Interpolating curve based techniques: Interpolating-curve methods generate smooth paths from known points, commonly using splines that are computationally inexpensive but may not satisfy road constraints optimally.Spline behavior is defined by knots or control points, with smoothness constraints at sub-segment junctions.
4.3. Behavior Selection
Behavior selection chooses a goal pose and velocity for the current driving behavior while avoiding collisions within a decision horizon. Research spans rule-based, knowledge-based, and uncertainty-aware approaches, with IARA using scenario-specific finite-state machines.
- Behavior Selection: The Behavior Selector chooses a path pose and associated velocity as a goal for behaviors such as lane keeping, intersection handling, and traffic-light handling.The estimated time from the current state to the goal defines the decision horizon.
- Behavior Selection: Within the decision horizon, the selector chooses a goal while avoiding collisions with static and moving obstacles.
- Finite-State Machines: Finite-state-machine methods use discrete perception-derived rules to select actions, but they struggle to model uncertainty and complex urban traffic scenarios.In IARA, a separate FSM handles each scenario using map, vehicle-state, path, perception, and map-annotation inputs.
- Alternative Approaches: Behavior-selection research also includes ontology-based knowledge bases, POMDPs, and other models for traffic reasoning under uncertainty.POMDP methods address uncertainty in both action transitions and perception, while ontology-based systems represent traffic regulations and sensor data.
- Alternative Approaches: 1/20∼1/10 of the previous Knowledge Base increased system performance to almost 10 times faster in Zhao et al.’s improved approach.
4.4. Motion Planning
Motion planning computes a safe, comfortable trajectory from the car’s current state to its goal, following the behavior-selected path while satisfying kinematic and dynamic constraints. On-road trajectory-planning methods are categorized into graph search, sampling, interpolating curve, and numerical optimization approaches.
- Motion Planning: The Motion Planner computes a trajectory from the current state to the goal that follows the selected path while satisfying kinematic and dynamic constraints and providing safety and comfort.Trajectories may be represented as sequences of commands or other forms defined by the planner.
- Motion Planning: On-road motion planning focuses on trajectories that follow lanes and routes, unlike unstructured motion planning, where trajectories are less constrained.The reviewed techniques were experimentally evaluated using real-world self-driving cars.
- Motion Planning: Motion-planning methods fall into four classes: graph search based, sampling based, interpolating curve based, and numerical optimization based.These categories organize the survey’s review of trajectory-planning techniques for self-driving cars.
- Graph Search Based: Graph-search trajectory planning includes state lattices, Elastic Band, and A-star, extending path-planning methods to specify how the car’s state evolves over time.Elastic Band balances obstacle-generated repulsive forces against contractive forces from neighboring vertices.
- Sampling Based: Sampling-based methods, especially RRT, build search trees from the current state using random state samples and control commands to generate candidate trajectories.Variants bias samples toward the path, select promising controls, discard non-promising states, and reuse part of the previous trajectory.
- Interpolating and Numerical Optimization Based: Interpolating curves smooth known poses while considering vehicle constraints, whereas numerical optimization minimizes constrained objectives or predicts future states to produce feasible control commands.Clothoid curves provide linearly varying curvature; optimization methods include function optimization and model-predictive methods.
4.5. Obstacle Avoidance
Obstacle avoidance modifies motion-planned trajectories when needed to prevent collisions, but the literature on dedicated obstacle-avoider methods remains limited. Reported approaches include trajectory simulation with velocity reduction, RADAR-based time-to-collision assessment, and hierarchical emergency path planning.
- Obstacle Avoidance: The Obstacle Avoider receives a motion-planned trajectory and typically reduces velocity when necessary to avoid collisions.The subsystem operates after motion planning and changes the trajectory to prevent crashes.
- Obstacle Avoidance: Guidolini et al. simulate the planned trajectory using an online map and the car’s current state, reducing linear velocity if a crash is predicted.Inputs include the online map, current vehicle state, and motion-planner trajectory.
- Obstacle Avoidance: Cao et al. use RADAR to estimate obstacle distance, calculate time to collision, and trigger behavior decisions based on a distance threshold.Available behaviors include lane keeping, lane changing, speeding up, adaptive following, and emergency braking.
- Obstacle Avoidance: He et al. combine dynamic threat assessment with constrained path planning to calculate a collision-free emergency path.The hierarchical architecture includes a decision-making layer that continuously analyzes collision risk and a path planner considering vehicle kinematics and dynamics.
4.6. Control
The Controller subsystem converts motion-planning trajectories into actuator efforts for steering, throttle, and brakes. Control methods divide into direct hardware actuation and path tracking, including feedback, PID, pure pursuit, and MPC approaches.
- Controller architecture: The Controller subsystem receives a motion-planning trajectory, possibly modified by obstacle avoidance, and sends effort commands to steering, throttle, and brake actuators.
- Controller architecture: Controller implementations are classified as direct hardware actuation methods when receiving T_c trajectories and path tracking methods when receiving T_s trajectories.
- Direct hardware actuation: Direct hardware actuation methods compute steering, throttle, and brake efforts from motion-planner trajectories, while feedback control corrects errors by observing velocity v and steering angle ϕ.
- Direct hardware actuation: PID control specifies desired hardware inputs and computes actuator efforts from an error measure, while MPC anticipates steering delays by optimizing future efforts over a prediction horizon.
- Direct hardware actuation: For IARA, the PID controller worked up to 25 km/h, whereas neural-model MPC reduced steering-delay effects at higher speeds.
- Path tracking: Path tracking reduces motion-plan execution error; pure pursuit is widely used for simple implementation, while MPC uses a motion model to optimize commands over a future horizon.
5. Architecture of the UFES’s Car, IARA
IARA is a UFES research self-driving car whose software follows the typical architecture of perception and decision-making systems. Its implementation combines vehicle adaptations, diverse sensors, and modules for localization, mapping, traffic understanding, planning, and system operation.
- System architecture: IARA was developed at UFES’s Laboratory of High Performance Computing and follows the typical self-driving-car architecture.The architecture is organized into perception and decision-making systems, with each subsystem implemented as one or more software modules.
- Vehicle platform: The adapted 2011 Ford Escape Hybrid supports autonomous actuation while retaining selectable connections to the original vehicle controls.Modified steering, throttle, brake, and gear interfaces allow the autonomy system or original controls to operate the vehicle.
- Hardware architecture: IARA’s computer and sensor suite includes two LIDARs, three cameras, an IMU, and dual RTK GPS alongside a high-performance workstation.The workstation uses two six-core Xeon X5690 processors and an NVIDIA GeForce GTX-1030; the dual RTK GPS provides centimeter accuracy and yaw estimation.
- Perception system: Perception modules process GNSS, orientation, LIDAR, and camera data for localization, mapping, moving-object detection, lane detection, and traffic-sign recognition.The GNSS module transforms latitude and longitude into UTM coordinates and synchronizes them with yaw, while camera modules identify lane markings and traffic signs.
- Decision-making system: Decision-making modules select goals, compute paths, and support motion planning and control for autonomous operation.The Behavior Selector establishes a goal and suggests a path, while the Path Planner computes a list of (x, y, yaw) tuples from IARA’s position to that goal.
6. Self-Driving Cars under Development in the Industry
The industry landscape includes automakers, technology companies, suppliers, and ride-hailing firms developing self-driving vehicles, autonomy software, sensing and computing hardware, and supporting services. Prominent efforts range from open-source full-stack platforms and sensor-fusion systems to commercial vehicles targeting SAE levels 3 through 5.
- Industry landscape: Prominent industry efforts span vehicle manufacturing, sensing and computing hardware, autonomous-driving software, entertainment, and in-car advertising.The surveyed companies pursued self-driving technologies or investments supporting and profiting from them.
- Technology companies: Waymo’s vehicle combines LIDARs for detailed environmental mapping, RADARs for distant-object detection and velocity estimation, and high-resolution cameras for visual information.Google’s project became the independent company Waymo in 2016, under Alphabet.
- Technology companies: Baidu’s open-source Apollo project provides modules for moving-obstacle detection and tracking, traffic-light recognition, HD mapping, localization, planning, and control.Apollo’s source code is available on GitHub and has partners including TomTom, Velodyne, Bosch, Intel, Daimler, Ford, and others.
- Technology companies: NVIDIA develops self-driving hardware and software using artificial intelligence and deep learning, with capabilities for sensor fusion, HD-map localization, and planning.Its solutions extend beyond general-purpose high-performance computing hardware.
7. Conclusion
The paper surveys real-world-tested self-driving-car research since the DARPA challenges and concludes that substantial work remains before SAE level 5 vehicles are widely available.
- 7. Conclusion: The survey focuses on self-driving-car research tested in the real world since the 2004, 2005, and 2007 DARPA challenges.This research has contributed substantially to the current state of self-driving-car technology.
- 7. Conclusion: Substantial work remains before SAE level 5 self-driving cars become available to the public at large.