早上用了高德地图导航,发现过去提供了三条路径的选择,今天只给了两条,昨天使用的那条没有提供。心想是不是系统有了什么状况?不管了,先奔昨天的路口再说,高德会自动切换路线。结果刚一到路口,吓呆。那条街堵死了,车流纹丝不动。这才想起高德提供的选项是多么的明智。它直接规避了极其拥堵的路线。立马掉头离开,换条路径躲过去了。

但是,高德是如何统计计算,并得出路况信息的呢?虽然我不做这个应用,但是多思考实际问题、寻找解决方案是有益的。路况信息的实时性要求比较高,属于迟了就价值下降甚至变成错误选项的问题。我推测是几点,但没有跟开发商的人讨论过,纯属自行思考。

高德与交管部门合作,通过路口监控,获取部分路况信息,根据位置、时间,加入计算。每一个使用软件的用户,实时上传位置、速度信息,汇总统计出当前路段的交通情况。使用的用户越多,理论上的计算结果就越准确。如果得知,不少用户通过某路径的速度在警戒线之上,就标记通畅,提供给导航经过的车使用。反之,很多用户在某区域速度很慢,说明堵上了,导航路径要提醒或者直接规避。

这里面要考虑细节问题:多少用户的数据算数,需要有个阈值。因为有的用户可能就临时停车办点事,你不能计算成拥堵。恐怕还要考虑,多用户之间的间距情况。此外,考虑下时间。某个区域此刻正拥堵,不代表15分钟后还如此,也许就畅通了。正在规划的路径也可能突然出了状况,拥堵了。所以还要实时的反馈下计算结果,在时机合适 – 比如用户接近路口的时候提示下,让用户知道状态。但是直接让司机操作容易引起安全隐患,语音提示,让司机在合理的时候查看更为理想。

如果各家服务商,可以共享数据,那么会大大提升系统数据的准确度和及时度。因为你不能保证一条路上有几个高德用户正在使用软件,但是使用各家导航系统的车,综合起来恐怕不少。

你还有什么好的导航策略么?

自己编译构建Redis Desktop Manager for Ubuntu Linux客户端
给苹果机换固态硬盘要注意的事情