【技术实现步骤摘要】
基于带标签路网的高效最短路径索引动态维护方法
[0001]本专利技术属于计算机科学领域,具体涉及基于带标签路网的高效最短路径索引动态维护方法。
技术介绍
[0002]在图算法中,最短路径问题一直广泛关注,因为它有很多应用价值,随着互联网的迅速普及和应用,导航软件已经成为很多人出门必需的工具,通过导航软件可以获得两点间最短距离的路径、或所需时间最短的路径。当前已经提出了很多查询最短路径的算法,这些算法可以分为无索引的和基于索引的两类,无索引的包括传统的Dijkstra、Bellman、Floyd等。最近也提出了很多基于索引的算法,比如Hub Labeling(HL)通过减少最短路径上的点提升查找效率,基于HL的PLL和PSL。通过引入“捷径”这一概念,ContractionHierarchies(CH)可以减少查询最短路径过程的搜索和迭代,从而加速最短路径查询过程。
[0003]从2015年到2020年,手机地图用户数量从6.05亿增长到7.68亿,但是对于现实中很多实际应用场景,只考虑物理意义上的两点之间的最短路径是 ...
【技术保护点】
【技术特征摘要】
1.一种基于带标签路网的高效最短路径索引动态维护方法,其特征在于,该方法包括以下具体步骤:A1:构建好CHLR索引图,当索引图的一条边(q,v)发生变化,根据CHLR索引图给定的优先级,找出边(q,v)端点中优先级更小的点,假定是q;根据构建CHLR索引的方法,如果存在边(u,q)和边(q,v)产生的捷径(u,v),那么边(q,v)的变化会影响到捷径(u,v),将点q加入存储所有需要重新收缩的点的集合θ;A2:捷径(u,v)端点中优先级更小的点加入到集合θ,继续传递本次变化带来的影响;A3:对集合θ中的点重新进行构建CHLR索引中的收缩操作,得到更新后的CHLR索引图。2.一种基于带标签路网的高效最短路径索引动态维护方法,其特征在于,该方法包括以下具体步骤:B1:构建好CHLR索引图,如果索引图上的一条捷径边e=(u,v)是由边e
′
=(u,q)和e
″
=(q,v)收缩而得到的,那么e
′
和e
″
是e的父母,e是e
′
和e
″
的孩子,e
′
是e
″
的伴侣;一条边的变化等价于旧标签下的边权重变为无穷,新标签下的边权重变为新的权重,重新计算新旧标签下的捷径权重,即找出重新计算的边原图的边权重和它所有父母对边权重和的最小值;B2:创建优先队列Q,将发生变化的边根据边的优先级插入优先队列Q,边的优先级比较方法是,边的端点中优先级较小的点进行比较,点的优先级低的对应边的优先级低,如果这个值相等,则标签个数少的边优先级低;B3:维护发生变化的边的捷径域,对于同一起止点下的两条边e和e
′
,如果边e的边权小并且标签限制更少,即w(e)≤w(e
′
)并且则e覆盖e
′
,e
′
被删除;基于此,对变化的边e,查找是否有能覆盖e的边存在从而e无效;如果e增加,看原来能被e覆盖的边是否不再能被覆盖,如果e减小,看e是否能覆盖更多的边;其中,w是图上边的权重函数,l是将边和标签进行关联的函数;B4:对优先队列Q的边逐一处理,对当前元素e,找出e的所有伴侣和这对父母的孩子,如果e增加,需要重新计算孩子的捷径权重,如果e减小,直接计算是否会产生更短的孩子捷径,对于变化的捷径需要插入优先队列Q并维护变化的捷径的捷径域;处理完优先队列Q中全部边后,得到更新后的CHLR索引图。3.一种基于带标签路网的高效最短路径索引动态维护方法,其特征在于,该方法包括以下具体步骤:C1:构建好CHLR索引图,记录索引图上所有捷径的支持量,即支持当前捷径权重的父母对的数量;如果原图边权重等于捷径权重,支持量加1;C2:重新计算新、旧标签下对应边的新的权重,将原图上边的长度和这条边所有父母边权和的最小值作为新的权重;创建优先队列Q存储发生变化的边,如果新的边权重减小了,则直接更新,如果边权重增加,则暂不做更新,只插入优先队列Q,记录该边权重增加;维护捷径支持量,如果更新后边权重等于当前对应捷径权重,则支持量加1,如果捷径权重发生了变化,需要重新计算支持量,变化的边插入优先队列Q;C3:将发生变化的边根据边的优先级插入优先队列Q,边的优先级比较方法是,边的端点中优先级较小的点进行比较,点的优先级低的对应边的优先级低,如果这个值相等,则标签个数少的边优先级低;
C4:维护发生变化的边的捷径域,对于同一起止点下的两条边e和e
′
,如果边e的边权小并且标签限制更少,即w(e)≤w(e
′...
【专利技术属性】
技术研发人员:冯博,陈紫,袁龙,林学民,王丽苹,
申请(专利权)人:华东师范大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。