System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种节点间最短路径获取方法技术_技高网

一种节点间最短路径获取方法技术

技术编号:40593551 阅读:6 留言:0更新日期:2024-03-12 21:55
本发明专利技术属于路径规划领域,具体涉及一种节点间最短路径获取方法。本发明专利技术的最短路径获取方法首先通过数次遍历,获取原始图上的各个割点集,并将割点集对应的割点集子图映射为高级节点形成高级树,通过高级树以割点集子图为最小单元进行预处理以及最短路径的并行查询,从而得到整体最短路径;该方法能够将对数量巨大且拓扑关系复杂的原始图节点进行的最短路径分析转化为针对割点集进行的最短路径分析,能够在获取最短路径时排除大量无用节点,省去相关的计算过程,降低计算量,从而达到提高最短路径获取速度的效果,并能够以割点集之间构成的子图为单位进行预处理,也避免了直接针对大范围子图的复杂拓扑结构获取最短路径时产生的计算较繁杂的问题。

【技术实现步骤摘要】

本专利技术属于路径规划领域,具体涉及一种节点间最短路径获取方法


技术介绍

1、最短路径问题是网络相关信息学的基本问题之一,它不仅具有重要的理论意义,而且具有重要的实用价值。最短路径问题有广泛的应用,比如在交通运输系统、应急救助系统、电子导航系统等研究领域,也可以引申为最快路径问题、最低费用问题等。例如对于交通网络,需要把货物从a点运输到b点,那么最快路径问题即如何规划交通网络中最短路线的问题,对于任意两个网络节点,如何选择传递信息的路径,也是一种最短路径问题。

2、传统的最短路径选取策略有两种,一是对图进行预处理,也就是说对原始图形进行预处理,得到额外的信息,然后根据信息快速计算出最短路径sp。预处理的方法大致可以分为两类:目标导向法和层次分析法,目标导向方法有alt和arc-flags等,对原始图进行预处理,以便识别和排除不在sp中的边,并快速识别和包括缩短路径长度到目标的边;层次分析法中有hh和hnr,他们通过从原始图中构建一个高级图,有助于加快sp搜索过程;另一种策略是基于并行化的加速。然而,这些最短路径选取方式均需要面对大量的原始图节点或边,计算过程复杂且计算量较大,因此选取sp的速度仍然较低,计算成本较高。


技术实现思路

1、本专利技术的目的在于提供一种节点间最短路径获取方法,用于解决现有技术中获取最短路径的速度较低且计算过程复杂的问题。

2、为了实现上述目的,本专利技术提供了一种节点间最短路径获取方法,步骤如下:

3、1)根据目标节点所在的网络的拓扑结构,抽象出拓扑网络图作为原始图,将目标节点对映射到原始图中;

4、2)对原始图进行一次深度遍历,在遍历过程中判断原始图中的每个节点是否属于割点,并获取各个割点集;

5、具体地,对任一节点的判断完成后,若该节点属于割点,则将该节点作为割点加入割点集,并继续判断该节点的其中一个未经过判断的邻居节点是否属于割点;若判定出割点时,割点集内的割点数量已经等于该割点集的容量,则新建另一割点集,将该判定出的割点加入该新建的割点集内;重复本步骤的过程,直到完成对原始图中每个节点的判断;

6、其中,每一个割点集的容量在设定容量范围内;

7、3)根据步骤2)中一次遍历获取的所有割点集,建立高级树,将每个割点集对应的割点集子图映射为高级树中的一个高级节点,并确定原始图中的每个节点与割点集的对应关系,获取割点集对应的割点集子图;

8、4)重复步骤2)-3)的过程,直到遍历次数满足设定值,将各次遍历建立的所有高级树进行合并,获取全局高级树;

9、5)通过最短路径算法对全局高级树中每个高级节点对应的割点集子图进行预处理,获取各个割点集子图中任意节点与对应割点集内割点之间的最短路径、相邻割点集之间的最短路径以及各个割点集内部割点之间的最短路径;

10、6)选择目标节点对中每个节点分别对应的全局高级树的高级节点,根据两个高级节点之间的唯一树路径,根据所述树路径上的各个高级节点对应的割点集以及步骤5)中获取的获取各个割点集子图中任意节点与对应割点集内割点之间的最短路径、相邻割点集之间的最短路径以及各个割点集内部割点之间的最短路径,获取目标节点对之间的最短路径。

11、该方法能够将对数量巨大且拓扑关系复杂的原始图节点进行的最短路径分析转化为针对割点集进行的最短路径分析,能够在获取最短路径时直接排除大量无用节点,省去与这些点相关的计算过程,降低计算量,从而达到提高最短路径获取速度的效果,并能够以割点集之间构成的子图为单位进行预处理,分别获取各个小范围子图的最短路径,也避免了直接针对大范围子图的复杂拓扑结构获取最短路径时产生的计算较繁杂的问题。

12、进一步地,步骤2)中,每一个割点集的设定容量范围为2~5。

13、由于割点集中的割点数量过多会导致分割出的子图仍然较为复杂,达不到很好的降低拓扑结构复杂程度的效果,而割点集容量越小,割点集的数量越多,则所分割出的子图就越多,相对又会增加计算量;因此,为平衡分割的子图的数量和最短路径问题计算的复杂度,需要选取适当的割点集容量,即每一个割点集的容量在2~5之间,从而兼顾子图总数量和子图本身的复杂程度,降低综合计算成本。

14、进一步地,步骤3)中,确定原始图中的每个节点与割点集的对应关系,获取割点集对应的割点集子图的具体方式为:

15、按照原始图节点的遍历顺序,遍历查找割点集a的头节点以及在该头节点后遍历的其他原始图节点,将这些节点划分为割点集a对应的节点,直到遍历到另一割点集b的头节点为止,将另一割点集b的头节点划分为割点集b对应的节点,继续遍历查找在该头节点后遍历的其他原始图节点;重复上述步骤直至确定出原始图中的每个节点与割点集的对应关系,将割点集对应的所有节点以及节点之间的边构成的子图作为割点集对应的割点集子图;

16、所述割点集的头节点指的是按照原始图节点的遍历顺序,割点集中第一个被遍历到的割点。

17、进一步地,为保证全局高级树的通用性,步骤4)中,将各次遍历建立的所有高级树进行合并的具体方法为:

18、若遍历次数为c,则首先从c棵树中选择一棵树作为初始的全局最大树,然后从叶子结点开始向上直至根节点,分别将剩下c-1棵树中的每一棵树的高级节点对应的割点集子图与全局最大树的高级节点对应的割点集子图比较,如果发现该树的某个高级节点对应的割点集子图被完全包含在全局最大树中的某个高级节点h对应的割点集子图中,那么把这棵树的这个节点作为全局最大树中对应节点h的候选子节点;若节点h仅存在一个候选子节点,则将该候选子节点作为节点h新的子节点;若节点h存在多个候选子节点,则在割点集子图有重叠部分的候选子节点中选择一个作为节点h新的子节点,将割点集子图不重叠的候选子节点都作为节点h新的子节点;更新节点h的子节点后,从节点h对应的割点集子图去除节点h新的子节点对应的割点集子图,更新节点h对应的割点集子图;

19、所有高级节点比较完成后,得到更新的全局最大树,直到所有c-1棵子树均经过上述过程后,得到最终的全局高级树。

20、进一步地,获取目标节点对之间的最短路径的具体方式为:沿树路径确定两个高级节点之间路径上的所有割点集,针对所述路径上的所有割点集,并行查询相邻割点集之间的最短路径,将相邻割点集之间的最短路径两端对应的割点作为连接割点,并行查询各个割点集内部的连接割点之间的最短路径以及目标节点与目标节点所在割点集内的连接割点之间的最短路径,将路径上的所有割点集中各个相邻割点集之间的最短路径、各个割点集内部的连接割点之间的最短路径以及目标节点与目标节点所在割点集内的连接割点之间的最短路径进行求和,得到最终的目标节点之间的最短路径。

21、进一步地,步骤5)中所述最短路径算法为弧标志法、中转节点路由法、高速节点路由法、公路等级法、公路等级标记法以及搜索、地标和三角不等式法。

本文档来自技高网...

【技术保护点】

1.一种节点间最短路径获取方法,其特征在于,步骤如下:

2.根据权利要求1所述的节点间最短路径获取方法,其特征在于,步骤2)中,每一个割点集的设定容量范围为2~5。

3.根据权利要求1所述的节点间最短路径获取方法,其特征在于,步骤3)中,确定原始图中的每个节点与割点集的对应关系,获取割点集对应的割点集子图的具体方式为:

4.根据权利要求1-3任一项所述的节点间最短路径获取方法,其特征在于,步骤4)中,将各次遍历建立的所有高级树进行合并的具体方法为:

5.根据权利要求1-3任一项所述的节点间最短路径获取方法,其特征在于,获取目标节点对之间的最短路径的具体方式为:沿树路径确定两个高级节点之间路径上的所有割点集,针对所述路径上的所有割点集,并行查询相邻割点集之间的最短路径,将相邻割点集之间的最短路径两端对应的割点作为连接割点,并行查询各个割点集内部的连接割点之间的最短路径以及目标节点与目标节点所在割点集内的连接割点之间的最短路径,将路径上的所有割点集中各个相邻割点集之间的最短路径、各个割点集内部的连接割点之间的最短路径以及目标节点与目标节点所在割点集内的连接割点之间的最短路径进行求和,得到最终的目标节点之间的最短路径。

6.根据权利要求1-3任一项所述的节点间最短路径获取方法,其特征在于,步骤5)中所述最短路径算法为弧标志法、中转节点路由法、高速节点路由法、公路等级法、公路等级标记法以及搜索、地标和三角不等式法。

...

【技术特征摘要】

1.一种节点间最短路径获取方法,其特征在于,步骤如下:

2.根据权利要求1所述的节点间最短路径获取方法,其特征在于,步骤2)中,每一个割点集的设定容量范围为2~5。

3.根据权利要求1所述的节点间最短路径获取方法,其特征在于,步骤3)中,确定原始图中的每个节点与割点集的对应关系,获取割点集对应的割点集子图的具体方式为:

4.根据权利要求1-3任一项所述的节点间最短路径获取方法,其特征在于,步骤4)中,将各次遍历建立的所有高级树进行合并的具体方法为:

5.根据权利要求1-3任一项所述的节点间最短路径获取方法,其特征在于,获取目标节点对之间的最短路径的具体方式为:沿树路径确定两个高级节点之间路...

【专利技术属性】
技术研发人员:魏蔚汪鹏鹏范中山杨卫东张伟伟许德刚
申请(专利权)人:河南工业大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1