Skip to main content
Uber logo

Start ordering with Uber Eats

Order nowOrder now

Start ordering with Uber Eats

Install the appInstall the app
Engineering

Rethinking GPS: Engineering Next-Gen Location at Uber

April 19, 2018 / Global
Featured image for Rethinking GPS: Engineering Next-Gen Location at Uber
Figure 1: The above GIF offers a comparison of standard GPS (red) against our improved location estimate (blue) for a pickup from Uber HQ in San Francisco. Our estimated location closely follows the true path taken by the rider, while GPS shows very large excursions.
Image
Figure 2: In this simplified interpretation of GPS receiver computation, spheres intersect at the center of known satellite locations.
Figure 3: Line-of-sight blockage and strong reflections can cause large GPS errors.
Figure 4: Satellite signal strengths, when combined with 3D maps, provide valuable location information.
Image
Figure 5: Ray tracing from one possible location to each satellite for probabilistic shadow matching. This is done for thousands of hypothesized locations.
Image
Figure 6. A location heat map computed based on satellite signal strengths can have many hotspots. In the above example, our improved location estimate (blue path, black uncertainty ellipse) follows ground truth (yellow path), whereas standard GPS (red path, gray uncertainty ellipse) is inaccurate.
Image
Figure 7: The location estimate obtained as the weighted centroid of the hotspot provided by the particle filter often corrects very large GPS errors. The uncertainty radius (white circle) for improved GPS is based on the spread of the particle set, and is often a more realistic measure than the small uncertainty radius (black circle) typically reported for raw GPS even when the actual position errors are large.
Image
Figure 8: Uber’s GPS improvement system is composed of a particle filter service, 3D map tile management service, a manager service, Uber HTTP API, and cloud storage, and integrates with other Uber services.
Figure 9: Red dot/blue dot comparison on our internal version of the rider app allows Uber employees to spot check our solution anywhere in the world.
Danny Iland

Danny Iland

Danny Iland is a senior software engineer on Uber’s Sensing, Inference, and Research team.

Andrew Irish

Andrew Irish

Andrew Irish is a senior software engineer on Uber’s Sensing, Inference, and Research team.

Brian Sandler

Brian Sandler

Brian Sandler was a summer intern on Uber’s Sensing, Inference, and Research team and is currently a Ph.D student with the University of Pennsylvania.

Posted by Danny Iland, Andrew Irish, Upamanyu Madhow, Brian Sandler

Category: