论文研读 | 路网中多样top-k路径推荐

本篇论文是是2022年发表在数据库领域顶级会议VLDB上的一篇文章,作者为香港科技大学团队。论文提出了一种兼顾完整性和效率的多样路径规划算法,并且在真实的城市路网中进行了效果评估。能够有效指导在实践中的应用。

路网中多样top-k路径推荐 (Diversified Top-𝑘 Route Planning in Road Network)

1. 背景及问题

路线规划无处不在,对我们的日常生活有着深刻的影响。多样化的top-k最短路径(D𝑘SP)计算是路网中重要的路线规划任务。给定一个OD对,相似度阈值,以及路径数量,它的目的是找到一个路径集,使得其中任何一对路径的相似度为𝑃中任何一对路径之间的相似度都不大于阈值,并且路径的总长度是最小的。然而,目前的解决方案都依赖于复杂的图遍历,在实践中应用起来太慢。

因此,本文提出了一种基于路径偏离和串联的枚举方法,以避免复杂的遍历搜索。具体来说,新的路径是通过连接最短路径树(SPT)中的前几条子路径而逐步形成的。由于每条新路径都是通过连接操作产生,而不是通过遍历图而产生,因此路径列举的效率提高了几个数量级,这有助于快速找到多样化的路径。

本文主要贡献

  • 从路由结果的角度来缓解交通拥堵,并提出了一种边缘偏离和基于连接的路径枚举方法来有效处理D𝑘SP查询。

  • 分析了路径关系,并提出了恒定时间的高效路径相似性计算方法。

  • 提出了面向完整性和效率的解决方案,以进一步提高效率。

  • 进行了全面的评估,证明了该方法与最先进的算法相比的优越性。

2. 方法介绍

2.1 多元化的Top-k最短路径

(1) 最短路径树SPT

如图2所示,本文将图的边分为两种类型: 存在于SPT中的树边 ,以及其余的偏差边,称为偏离成本。用Dijkstra的方法可以在时间内构造SPT,而偏差成本可以在时间内得到。

可以利用SPT和偏差边,从当前路径生成新的次短路径。显然,新的路径是以下三个部分的串联(⊕)结果:1)SPT部分:是中从𝑠到𝑣的最短路径;2)偏差边:;3)Parent部分:是从到的子路径。

而新路径的长度可以直接由计算得到:

(2) 多样化k-路径枚举

第2最短路径。 如果我们能找到中每个子类的局部最短路径,那么第2最短路径就是它们中最短的。具体来说,对于任何子类𝐶,它与邻边的最短距离可以通过将它们的偏差成本与相加而在恒定时间内检索出来。偏差成本最小的那个就是𝐶的下一个最短路径。如果在的所有邻边中选择最小的一条,那么我们就能保证找到的下一条最短路径,这也是全局最短的。

第3最短路径。 假设生成了第二最短路径,通过连接 。因此,必须引入另一组具有相同固定部分的路径类,并称它们为,因为它们是由生成。图3-(b)中是一个例子。现在,和已经覆盖了整个路径空间,所以下一条最短的路径存在于中,可以从和中找到下一条最短路径。

第j+1最短路径。 假设我们得到了𝑗+1最短路径,如图3-(c)所示。在生成过程中,我们有一个路径类,并为每个路径类找到了下一个最短路径。在这些下一个最短路径中,假设有一组路径类,下一个最短路径是其中最短的一个。可以把这些路径类分为三类: 1) ,最新的一组类,它们还没有派生出任何新的路径;2) ,刚刚用作为下一条最短路径的类,还没有找到它的下一条路径;3)其余已生成最短路径的所有类,但在上一轮中没有被选中。因此,我们只需要从和中找到最短路径,以确保所有路径类都有其最短路径生成。

循环检测。 最后,每次通过偏离边连接到SPT时,SPT和路径固定部分之间的位置关系是不可控的,有时可能会产生循环。如图4-(b)所示,根据SPT的位置,SPT分支可以只分为三类:1)无循环分支:源于的SPT部分的SPT分支(灰色);2)固定循环分支:的固定部分上的顶点;3)非固定分支:从的固定部分偏离的SPT分支(红色)。然后根据偏离边连接到哪个分支,有以下的路径类型:1)无环路径:如果偏离边连接到无环分支,那么生成的路径就没有循环,所以可以安全地作为候选路径;2)固定循环路径:如果偏离边连接到固定环路分支,则生成的路径有一个环路,而且这个环路存在于固定部分。因为固定部分不会被改变,这个循环将存在于它生成的所有路径中。因此,它不能成为候选路径,也不能用来生成新的路径;3)非固定循环路径:如果偏离边连接到非固定循环分支,则生成的路径有一个循环,但该循环不在固定部分。它不能成为候选,但仍有机会生成无环路径。

2.2 路径相似性计算框架

由上可知,每个新生成的路径由两部分组成: SPT部分和固定部分(偏差边+Parent部分)。那么,可以将路径相交的计算分成这两部分分别进行。

具体来说,每当生成一条新的路径时,通过一条偏离边连接到一个新的SPT分支,这个SPT分支就是的SPT部分。然后,下一次从生成路径时,通过另一条偏离边从的SPT部分偏离,连接到另一个SPT分支,这个分支就是的SPT部分。

因此,路径枚举算法产生的路径是由一系列的SPT段组成的,由非SPT(偏离)边连接。因为SPT部分的交集总是在SPT上,与偏差边无关,所以只需要用SPT的信息在时间内计算交集。

2.3 完整性和效率导向的解决方案

本文提出了两个启发式方法,Dynamic Similarity Relaxation(动态相似性放松)和Congestion Edges Blocking(拥堵边屏蔽)。目的是解决有时k条路径生成不足和查询时间过长的情况。

详细的启发式算法逻辑参见原文第6节

3. 实验和结果

数据集。本文在四个真实世界的道路网络上进行测试: 1)曼哈顿(MH):基于网格的城市,有4,590个顶点和25,395条边;2)天津(TJ):基于环形网络的城市,有31,002个顶点和86,584条边;3)纽约(NY):有264,246个顶点和733,846条边;4)科罗拉多(COL):有435,666顶点和1,057,066条边。

查询集。对于每个数据集,随机生成四组OD对到,并查询1000次。具体来说,首先估计每个网络的直径,代表距离范围。例如,存储OD对的距离范围为。

方法。本文实现并比较了以下算法:1)D𝑘SP:本文提出的方法,具有高效的相似性比较能力;2)D𝑘SP-DS和D𝑘SP-EB:本文提出的方法加上两种启发式算法;3):基于迭代边界修剪搜索的方法; 4) : 的单程算法; 5) -和-:和的完备性版本。

3.1 相似性比较

相似性函数影响

图9展示了不同的相似性函数对查询效率(运行时间)和查询结果质量(平均长度)的影响,以及它们相关的标准偏差。具体来说,和在到的不同相似性函数下具有相似的性能和最佳的查询质量。是所有算法中最慢和最不稳定的,但具相似的质量,因为它们共享相同的枚举框架(由于长度路径顺序相同,略有不同)。基线启发式方法对于较难的查询速度更快,但长度较长且质量不稳定,但-除外,因为它牺牲了相似性。最后,由于所有算法在上表现最佳,运行时间和平均长度最快,因此在剩余的实验中使用作为默认相似度函数。

相似性计算

本文验证了与线性相似度计算相比,SPT相似性计算的有效性。如图10 所示,该方法比线性相似度计算花费的时间更少(约1/3)。这是因为大约 70% 的比较具有祖先-后代关系,并避免了线性扫描。此外,具有不同相似度函数的相似度计算也各不相同:和的计算量最大,而的计算量最少。

3.2 DkSP表现

查询距离。 如图11-(a)至(d)所示,当OD对之间的距离变长时,所有的算法在寻找多样化路径时都需要更长的时间。此外,在大多数情况下,在非启发式方法中具有最好的性能。至于启发式方法,-通常比其他长度较短的方法快。-不像-那样稳定和有效。

相似性阈值。 从图11-(e)到(h)可以看出,运行时间随着的降低而增加。这是因为需要生成更多、更长的候选路径来满足更严格的阈值,这也导致候选路径选择的计算量增加。方法在大多数相应的精确和启发式实例中都有最佳表现。虽然-和-的速度很快,但它们的结果较长,特别是当较小时。-的效率相似,但长度较短。

路径数量。 如图11-(i)至(l)所示,所有的方法都需要较长的时间来寻找更多的结果路径。随着𝑘的增加,找到下一个结果就更难了,因为1)需要更长的路径,而且随着长度的增加,候选路径的数量也会增加;2)当前结果中更多的路径使得新的路径更难满足相似性要求。总的来说,在所有的参数组合下,总是比表现得更好,因为1)在路径生成方面,避免了和中复杂的图搜索;2)在路径相似度计算方面,-也比线性比较减少了查询时间。在启发式方法方面,-的长度和运行都随着𝑘的增加而急剧上升。-也会增加,-在长度较短的情况下仍然很快。

相似性质量。图13显示了以0.8为阈值的结果的平均最大/最小相似度。这三种搜索方法具有相似的性能,它们的结果几乎相同。-的相似度最低,代价是长度较长。在其他启发式方法中,-已经略微超过了阈值,因为它牺牲了相似度来换取更快的计算和更短的长度。因此,即使以0.8作为阈值,本文提出的方法仍然可以达到较低的平均相似度。

实验总结:本文提出的D𝑘SP可以在与基线精确方法相同的质量下更快地生成结果

4. 结论

现有的路径规划解决方案都依赖于图的遍历搜索,复杂性过大,所以它们在现实生活中是不实用的。因此,本文提出了一种高效的多样化top-𝑘路径算法。通过在四个真实世界的道路网络上的验证,该解决方案比最先进的解决方案快了几百倍,这表明D𝑘SP首次在技术上可以实际使用。

更多内容,敬请关注同名微信公众号:时空大数据兴趣小组。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值