[发明专利]基于层次凝聚的大规模图最短路径搜索方法有效
申请号: | 201711096546.1 | 申请日: | 2017-11-09 |
公开(公告)号: | CN108123827B | 公开(公告)日: | 2021-01-19 |
发明(设计)人: | 宦红伦;潘泽民 | 申请(专利权)人: | 浙江万里学院;浙江大学宁波理工学院 |
主分类号: | H04L12/24 | 分类号: | H04L12/24;G06Q10/04;H04L12/721 |
代理公司: | 杭州宇信知识产权代理事务所(普通合伙) 33231 | 代理人: | 张宇娟 |
地址: | 315100*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 层次 凝聚 大规模 图最短 路径 搜索 方法 | ||
1.一种基于层次凝聚的大规模图最短路径搜索方法,其特征在于:包括如下步骤:
S1,粗化网络:根据邻接关系,利用广度优先算法,将邻近节点凝聚形成超级节点,对初始大规模网络N0进行粗化处理,一次粗化得到一个网络N1,多次粗化得到节点数逐渐减少的多个网络,记为N1,N2,…,Nt;
S2,在粗化网络上搜索最短路径:
S21,令k=t;
S22,在粗化网络Nk上搜索源点s所属超级节点到终点e所属超级节点的最短路径Pk;
S23,在次级粗化网络Nk-1上找到该最短路径Pk所覆盖的次超级节点,形成网络Gk-1;
S24,将步骤S23中得到的网络Gk-1视为步骤S22中的粗化网络,即令Nk=Gk-1;
S25,令k=k-1,;
S26,循环执行步骤S22至步骤S25,直至k=0结束,得到最短路径P0,即为所搜索得到的最短路径,输出P0。
2.根据权利要求1所述基于层次凝聚的大规模图最短路径搜索方法,其特征在于:所述步骤S1中,网络Ni粗化的方法包括如下步骤,其中0≤i≤(t-1),i的初始值为0;
S11,在网络Ni中,按指定比例随机选定若干个凝聚点{v1,v2,…,vn};
S12,搜索凝聚集,直至搜索完所有节点,也即所有节点都被放在某个凝聚点的凝聚集内,包括如下步骤:
S12-1,依次对所有凝聚点v1,v2,…,vn,分别找出所有与凝聚点存在邻接关系的节点,标记为已搜索,并将其放入凝聚点对应的一阶凝聚集V11,V21,…,Vn1;
S12-2,依次对所有凝聚点vn,vn-1,…,v1,在未搜索过的节点中找出与一阶凝聚集中各点存在邻接关系的所有节点,标记为已搜索,并将其放入凝聚点对应的二阶凝聚集Vn2,V(n-1)2,…,V12;
S12-3,依次对所有凝聚点vn,vn-1,…,v1,在未搜索过的节点中找出与二阶凝聚集中各点存在邻接关系的所有节点,标记为已搜索,并将其放入凝聚点对应的三阶凝聚集Vn3,V(n-1)3,…,V13;
……
S12-m,依次对所有凝聚点vn,vn-1,…,v1,在未搜索过的节点中找出与(m-1)阶凝聚集中各点存在邻接关系的所有节点,标记为已搜索,并将其放入凝聚点对应的m阶凝聚集Vnm,V(n-1)m,…,V1m,此时所有节点均搜索完成,其中,m为大于等于1的正整数;
S13,令:V1=V11∪V12∪V13∪…∪V1m,
V2=V21∪V22∪V23∪…∪V2m,
……
Vn=Vn1∪Vn2∪Vn3∪…∪Vnm;
S14,检测凝聚集V1,V2,…,Vn之间的相邻关系,若有相邻节点位于两个不同凝聚集中,则两个凝聚集相邻;
S15,定义凝聚集的阶数为凝聚集中距离凝聚点最远的点到凝聚点的距离,若两个相邻的凝聚集的阶数之和小于所有凝聚集最大阶数,则合并两个相邻的凝聚集;
S16,将凝聚集视为超级节点,凝聚集相邻时超级节点之间有边相连,边的权重为两个凝聚集之间的最小边权,至此对网络Ni完成一次粗化,形成网络Ni的一级粗化网络Ni+1;
S17,令i=i+1,循环执行步骤S11至步骤S16,对初始大规模网络N0进行t次粗化处理,直至所得到的粗化网络的规模达到设定范围,得到节点数逐渐减少的多个网络N1,N2,…,Nt。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江万里学院;浙江大学宁波理工学院,未经浙江万里学院;浙江大学宁波理工学院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711096546.1/1.html,转载请声明来源钻瓜专利网。