基于枢纽的道路网络最短路径标签算法
1 引言
在道路网络中计算最短路径是一个重要的问题,本文介绍了一种基于枢纽的标签算法(HL),旨在提高最短路径查询的效率。实验在配备两个英特尔至强 X5680 处理器和 96GB DDR3 - 1333 RAM 的机器上进行,运行 Windows 2008R2 服务器。使用了两个来自第 9 届 DIMACS 实现挑战的输入图,分别是代表西欧的欧洲实例(1800 万个顶点和 4400 万条弧)和美国道路网络(2400 万个顶点和 5800 万条弧),弧成本为 32 位整数表示的旅行时间,默认使用欧洲实例。
2 HL 概述
2.1 预处理
Geisberger 等人建议通过预计算和存储一组源点的正向 CH 搜索顶点集和一组目标点的反向 CH 搜索顶点集以及相应的距离估计来实现多对多查询,通过交集进行源到目标的查询。但该方法对于点对点查询不太实用,例如欧洲实例存储所有标签需约 154GB(平均大小 536),不过时间估计较乐观,计算所有标签需 321 秒,查询时间为 3 微秒。
CH 访问的集合不是严格标签,可通过消除距离估计错误的条目来有效修剪标签。基于 stall - on - demand 的简单启发式方法可将标签大小减少到约 133,结合理论算法的思想可使标签平均条目少于 85。
2.2 查询
正向标签 Lf(v) 由三部分组成:
1. 32 位整数 Nv,表示标签中的顶点数。
2. 零基数组 Iv,包含标签中所有顶点的 32 位 ID,按升序排列。
3. 数组 Dv,包含从 v 到标签中每个顶点的 32 位距离。
超级会员免费看
订阅专栏 解锁全文
43

被折叠的 条评论
为什么被折叠?



