小编语
上期推送为大家带来了介绍更适合空间大数据分析的智能算法的教材《空间智能计算》。今天,小编为大家分享实验室的最新研究成果:适用于低采样频率浮动车数据和复杂道路网的轨迹还原算法。
引言
在地图匹配算法中,低采样率浮动车数据比高采样率更具挑战性。一些低采样率地图匹配算法缺乏足够的效率和精度,尤其是对于复杂的城市道路网络而言。
本文在几何地图匹配算法的基础上,提出了一种新的轨迹还原算法,以保证算法的效率和精度;通过采用改进的A*算法来减少最短路径函数调用次数,同时充分考虑路网拓扑结构和历史匹配点,提高了算法的精度。本文以北京市复杂的城市道路网为例,对浮动车数据的轨迹还原算法的效率和精度进行了检验。结果表明,该算法在恢复复杂城市道路网高采样率和低采样率的轨迹还原方面优于相关的方法,且算法结果连续性较强,大大提高了浮动车数据的利用率。
1
轨迹还原算法
01
算法考虑点
(1)充分考虑给GPS点的位置、行驶时间、朝向信息以及道路的拓扑和限速信息等。
(2)减少了每次循环计算中最短路径算法的调用次数,提高了轨迹恢复算法的效率。
(3)使轨迹恢复算法适用于变频(低频、高频混合)数据和复杂的城市道路网。
(4)最终结果获得高一致性和高精度的轨迹。
02
模块
轨迹还原算法包括以下几个模块:候选点筛选、地图匹配、最短路径查找和形状点填充。这些模块之间的具体逻辑关系如图1所示。
图1 算法模块流程图
首先,并不是所有的候选点都被用来进行轨迹还原,只需要从原始GPS点中筛选出一条轨迹的一些转点,其他候选点只需与还原后的轨迹匹配即可。假设点将首先经过地图匹配算法临时与道路匹配,它代表一辆车的大致的行驶方向。轨迹还原算法的核心思想是从确定点和匹配后的假设点之间做最短路径,然后将待匹配点根据位置和朝向信息匹配到最短路径上。最后,将已知点到最后一个匹配点的最短路径的匹配点和形状点添加到结果集中。也就是说,在每次计算循环中,只确定从已知点到最后匹配点的轨迹(参见图2)。在每一轮计算完成时,当前匹配的最后一个点,作为下一轮计算的确定点,假设点作为新的待匹配点,然后再按顺序取一个新点作为假设点,进入新的循环。特别地,当第一已知点未被确定时,对候选点执行地图匹配直到获得第一地图匹配结果,并且将该结果作为第一已知点。当最后一个候选点作为匹配点时,应将最短路径中的所有形状点和匹配点添加到结果集中。如果本轮计算中没有最短路径或没有匹配成功的点,则已知点保持不变,将假设点加到匹配点中,当前候选点的下一个点作为下一轮计算的假设点。
图2 轨迹还原算法每轮计算示意图
2
候选点筛选