使用客户端地图数据来提高实时定位能力
By Karina Goot, Tony Zhang, Burak Bostancioglu, Bobby Sudekum, Erik Kamp
作者:Karina Goot,Tony Zhang,Burak Bostancioglu,Bobby Sudekum,Erik Kamp
Introduction
简介
GPS signals are notoriously noisy and unreliable (figure 1). One of the primary challenges for the Mapping team at Lyft is to translate the noisy GPS signal from our driver and rider devices into accurate location tracking on the map. This helps power rider and driver matching, dispatch decisions, accurate ETA predictions, and much more! We call this process map matching.
GPS信号是出了名的嘈杂和不可靠(图1)。Lyft的绘图团队的主要挑战之一是将来自我们的司机和乘客设备的嘈杂的GPS信号转化为地图上的准确位置跟踪。这有助于为骑手和司机的匹配、调度决策、准确的ETA预测以及更多的事情提供动力!我们把这个过程称为地图匹配。我们把这个过程称为地图匹配。
Figure 1: example of noisy location data in a dense urban area and improvements after map matching
图1:密集城区的噪声位置数据的例子和地图匹配后的改进
Map data helps the map matching process because it can reduce the space of locations to just the roads. For this reason, historically, we ran our map matching algorithms on the server-side to utilize the underlying map data.
地图数据有助于地图匹配过程,因为它可以将地点的空间减少到只有道路。出于这个原因,在历史上,我们在服务器端运行我们的地图匹配算法,以利用底层地图数据。
For the past year, we have been building out an on-device localization system. Having localization capabilities on the client allows us to have more accurate sensor readings, reduce latency, localize drivers when they lose cell reception, and unlock new product use cases across the Lyft platform.
在过去的一年里,我们一直在建立一个设备上的本地化系统。在客户端拥有本地化功能,使我们能够获得更准确的传感器读数,减少延迟,在司机失去手机信号时对他们进行定位,并在Lyft平台上释放新的产品用例。
Unlike server-side localization systems, client localization is extremely constrained in both memory and latency requirements. As a result, we cannot efficiently utilize map data without impacting device memory (storing too much data will make the device run out of memory) or over-the-network cost (downloading maps while on cellular data is expensive).
与服务器端的定位系统不同,客户端的定位在内存和延迟要求上都受到极大限制。因此,我们无法在不影响设备内存(存储太多数据会使设备内存耗尽)或网络成本(使用蜂窝数据时下载地图很昂贵)的情况下有效利用地图数据。
These constraints drove us to design a system that supports map data in the client to unlock the ...