November 19, 2020 • 7 min read

Self-Driving Route Prediction and Guidance

Self-driving vehicles often take different routes than human drivers would, even when driving to the same destination. This introduces new fleet efficiency challenges which are not handled by most fleet management platforms. Dispatch decisions are challenging when route predictions are wrong, and individual vehicle performance suffers when vehicles are not guided by an intelligent traffic-aware routing engine. However, rideOS is able to offer both accurate route prediction and efficient route guidance, utilizing our extensive routing customizability and real-time traffic awareness. With these features, rideOS can improve both fleet efficiency and customer experience for self-driving vehicles.


Route Prediction


Fleet orchestration hinges upon the ability to match vehicles with tasks (e.g. rides, deliveries) for optimal dispatch assignments. The optimality of these assignments is dependent upon accurate answers to a few questions. For typical human-driven fleets, the answers are straightforward:


  1. Can the vehicle find a route to complete the task?
    Yes, we assume all human-driven vehicles can drive all routes. Therefore, any available vehicle can complete any task.
  2. What route will the vehicle drive to complete the task?
    The human driver will typically take the fastest route, adapting to real-time traffic via GPS navigation.
  3. How long will it take the vehicle to drive the route?
    The driver will likely match current traffic speeds along the fastest route, thus arriving as quickly as possible.


These answers respectively predict (1) route feasibility, (2) route path, and (3) route driving time (i.e. ETA).


route prediction 1

Human drivers can take the fastest routes to complete their assigned tasks


Self-driving vehicles typically behave differently. Their routes are limited to a specific operational domain (OD), which does not include every road used by human drivers. Sometimes this prevents taking the fastest possible route to complete a task. Also, the self-driving vehicle’s onboard routing system may optimize for something other than real-time traffic speeds. If the vehicle is not aware of traffic, it may do something simpler, like choosing the fastest route based on speed limits alone. It may also take other factors into account, such as minimization of safety risks. Such atypical decision making can further prevent the vehicle from taking the fastest route inside its OD.


These factors together give us very different answers for the prediction questions above, when dispatching to self-driving vehicles:


  1. Can the vehicle find a route to complete the task?
    It may or may not be able to complete the task, since some tasks are unreachable without leaving the OD.
  2. What route will the vehicle drive to complete the task?
    It will take the route that stays within the OD and optimizes for whatever factors the onboard routing system considers.
  3. How long will it take the vehicle to drive the route?
    It may drive at current traffic speeds along the chosen route, but it also may have a lower maximum speed than traffic flow.


route prediction 2

Self-driving vehicles must operate within their OD, but humans can do the rest


At rideOS, we support dispatch and fleet optimization that take into account the OD constraints and other custom decision factors which are required for accurate route prediction. With accurate feasibility predictions, we can avoid assigning tasks to vehicles which cannot complete them. With accurate path predictions, we can estimate driving time using traffic along the correct path. With accurate ETA predictions, we can assign vehicles which will actually perform the tasks most efficiently.


Naive dispatch solutions will produce suboptimal results, but our focus on the specific needs of self-driving vehicles eliminates unexpected cancellations and unnecessarily long wait times. By knowing exactly what the vehicles will do, we can make the best decisions for everyone, providing both better fleet efficiency and better customer experience.


We can support this in uniform fleets with only self-driving vehicles, and also in hybrid fleets where human drivers and self-driving vehicles are mixed together. Routing profiles can be assigned to entire fleets or individual vehicles, so dispatch can predict the different routes that different vehicles may take for the same tasks. Self-driving vehicles can complete tasks within their OD, while other tasks can fallback to unrestricted human drivers, creating seamless hybrid operations.


We can also support effective integrations of self-driving vehicles with third-party transportation network companies (TNCs), by delivering accurate ETA matrices for consideration in the TNC’s optimization algorithm. Fleet optimization can require quickly predicting hundreds or even thousands of possible routes for various assignments of vehicles to tasks. Our routing APIs can produce huge numbers of paths or ETAs at web scale, meeting the stringent performance requirements of a large optimization system, while still taking into account all the customizable options required to accurately predict routes.


Route Guidance


As mentioned above, self-driving vehicles often don’t drive the fastest routes to complete tasks. This can create a degraded customer experience due to excess wait times or extra long rides. While the novelty of a self-driving vehicle may make this worthwhile to some early adopters, it won’t be long before the customers just want to get where they’re going quickly or get their meal delivered while it’s still hot. Also, when operating on a third-party TNC network, a slow self-driving vehicle will be unable to compete with more efficient vehicles that could finish the same task faster and provide a better customer experience. Real-world deployments of self-driving vehicles require a solution that guides each individual vehicle along the fastest possible routes.


Some of the inefficiency of self-driving routes comes from the limitations of the OD. Fixing this would require adding more roads to the OD, which may entail major work to expand the capabilities of the self-driving software as needed to safely drive those roads. However, that is not the only limiting factor. Another issue is that most self-driving vehicles do not yet take real-time traffic into account. If the OD is big enough to offer many route options for the same task, it can be critical to understand the ever-changing traffic patterns on the included roads. No rider wants to get backed up behind construction at rush hour, when they could just take a few side roads to get home in half the time.


There are two ways that a self-driving software developer can alter their routes for traffic. They can integrate with either (1) real-time traffic data or (2) an intelligent routing engine. Integrating directly with traffic data is a major effort with big infrastructural challenges. For instance, an onboard router that uses onboard map data would need to bring traffic data onboard as well. Doing this in real-time would require frequently sending large bundles of traffic data over-the-air to every vehicle, consuming significant mobile data bandwidth. There would also need to be a continuous data pipeline that ingests the raw traffic data from a third party and associates it with the map before sending it to each vehicle. The onboard router would also have to be built to handle efficiently swapping dynamic routing costs on-the-fly. All of this work is outside the core competency of a self-driving vehicle developer which specializes in robotics. Mapping and routing companies like rideOS are highly focused on building best-in-class traffic-based routing. There’s no need for the whole self-driving industry to reinvent that wheel.


What if a self-driving vehicle were integrated with an intelligent external routing engine instead? This would be the equivalent of a human driver delegating their route guidance to a GPS navigation device. Humans don’t naturally know all of the real-time traffic events occurring along the possible routes to their destination. Instead of trying to figure this out from raw traffic data, they can simply ask their GPS for a traffic-aware route, then follow it with confidence that it is one of the fastest routes available. In order to follow the route, they match the visualization they see on their GPS with the real world they see in front of them.


drivers match displayed gps route

Drivers match displayed GPS route to the physical world they see


Replicating this behavior in self-driving software would require a new layer of artificial intelligence (AI) that can receive a generic description of a route (e.g. a series of global coordinates) and figure out how to follow it in the physical world. For the typical self-driving vehicle which routes on a high-definition map (HD map), this amounts to a map matching algorithm that identifies the roads from the route within the HD map. Once that matching is done, the vehicle can follow the route just as it would a route produced directly from the HD map. Inside that road-level route, it can make its own decisions about which specific lanes to drive. It can handle all of the on-road decision making, just like a human driver does when following the roads from a GPS route.


can match generic route coordinates

Self-driving vehicles can match generic route coordinates to their HD map 


This matching AI problem is more closely related to the core competencies of a self-driving vehicle developer, which has already built map-aware perception and motion planning algorithms. With this capability, the self-driving software could follow a route produced by any routing engine, so the developer could select whichever serves them best. Of course, if that routing engine ever produced a route that could not be followed, the self-driving software could fallback to basic onboard routing behavior based solely on the HD map.


A route produced by a typical mapping and routing company would often travel outside of the OD and be unfollowable. However, a route produced by rideOS with awareness of the vehicle’s unique OD constraints could be followed consistently. The route would fuse OD enforcement (which most mapping and routing companies cannot do) with traffic-aware optimization (which most self-driving onboard routers cannot do). With rideOS, you get the best of both worlds.




The unique requirements of self-driving vehicles present challenges to both route prediction for fleet efficiency and route guidance for individual vehicle efficiency. However, rideOS can solve both of these problems with a best-in-class routing engine that combines extensive routing customizability with real-time traffic awareness. Please reach out if you’d like to try our services for your self-driving vehicles.