[发明专利]改进迪杰斯特拉算法的两点间最短路径搜索方法有效
申请号: | 201611051320.5 | 申请日: | 2016-11-24 |
公开(公告)号: | CN107276896B | 公开(公告)日: | 2020-03-27 |
发明(设计)人: | 和敬涵;王紫琪;张大海;李文立;丁凡凡;张秋芳;张义志;任欣玉 | 申请(专利权)人: | 北京交通大学 |
主分类号: | H04L12/721 | 分类号: | H04L12/721 |
代理公司: | 北京鸿元知识产权代理有限公司 11327 | 代理人: | 陈英俊;杨桦 |
地址: | 100044*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 改进 迪杰斯特拉 算法 两点 间最短 路径 搜索 方法 | ||
1.一种改进迪杰斯特拉算法的两点间最短路径搜索方法,其特征在于:
包括有以下步骤:
1)引入了图论思想中的邻接矩阵,矩阵中第i行第j列元素表示顶点i和顶点j的连接关系,当顶点i可由拓扑结构图某一条边直接到达顶点j时,矩阵第i行第j列的元素为1;否则元素为0,
利用邻接矩阵对搜索过程进行辅助,即每次确定了某一顶点V到起始顶点的最短距离后,都查找邻接矩阵中,顶点V所对应的行中元素为1的列;
2)只对步骤1)元素为1的列所对应的且最短路径未知的顶点的距离值进行计算分析,有效降低计算量;
其中,确定某一顶点V到起始顶点的最短距离的过程包括:
选取某顶点V0作为起始顶点,V1作为终止顶点,以求取V0到V1之间的最短路径,
步骤1:取网络中所有节点形成顶点集V,连接这些顶点的线路构成集合E,由顶点集V和线路集E构成拓扑结构图,记为G(V,E),并建立邻接矩阵A:
步骤2:建立集合S和U,初始时,S只包含源点(起始顶点),即S={V0},V0的距离为0,U包含除V0外的其他顶点,即:U={其余顶点},查找矩阵A中V0所在行,若A中第V0行Vi列数值为1,则U中顶点Vi到V0距离值有权值,权值即为相连线路的长度;若A中第V0行Vi列数值为0,则Vi到V0距离值权值为∞;
步骤3:从U中选取一个距离权值最小的顶点Vk,把Vk加入S中,选定的距离Lk就是V0到Vk的最短路径长度;
步骤4:查找矩阵A中Vk所在行中元素为1的顶点,如果顶点Vm在集合U中,则以Vk为新考虑的中间点,修改Vm距离;设Vk与Vm连接线路的长度为Lkm,若从源点V0到Vm的距离Lm,经过顶点Vk,Lm=Lk+Lkm比原来距离短,则修改顶点Vm的距离值为较短的值;
步骤5:重复步骤3和4直到所有顶点都包含在S中,此时V0到V1的距离数值即为两点间最短路径长度;所述距离数值产生过程历经的节点及线路,即为两点间最短路径。
2.如权利要求1所述的一种改进迪杰斯特拉算法的两点间最短路径搜索方法,其特征在于:
所述图论思想中的邻接矩阵,即利用图论知识构造顶点之间的连接关系,定义图中顶点集合为V,边集合为E,建立邻接矩阵A,A可表示不同顶点之间的相邻关系;
对于有n个顶点的拓扑结构图来说,邻接矩阵A为一个n×n的方阵,行列均为顶点的排列,对应的第i行第j列元素表示顶点i和顶点j的连接关系,当顶点i可由某条边直接到达顶点j时,邻接矩阵A中对应位置的元素为1;否则邻接矩阵对应位置元素为0;即A中元素可表示为:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京交通大学,未经北京交通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611051320.5/1.html,转载请声明来源钻瓜专利网。