当前位置: 首页 > 专利查询>清华大学专利>正文

基于社区的节点介数中心度更新方法技术

技术编号:18398756 阅读:45 留言:0更新日期:2018-07-08 19:28
本发明专利技术公开一种基于社区的节点介数中心度更新方法,包括:利用非重叠社区发现算法将现有的网络划分成多个社区;计算出所有节点间最短距离和每个节点的介数中心度;计算出社区与节点、社区与社区的最短距离集合;过滤网络中所有的点对,找到网络更新后最短路径发生改变的点对;删去原有最短路径对节点介数中心度的影响,计算点对的新最短路径,并添加新最短路径对节点介数中心度的影响;更新社区与节点、社区与社区的最短距离集合。本发明专利技术在网络变化的过程中,不需要重新计算所有节点的介数中心度,而是采用过滤的思路,只需部分更新点对最短路径并得到介数中心度,效率较高,此外,本发明专利技术的算法同时适用于无向图和有向图。

【技术实现步骤摘要】
基于社区的节点介数中心度更新方法
本专利技术涉及计算机
,特别是涉及一种基于社区的节点介数中心度更新方法。
技术介绍
挖掘网络中的重要节点是图分析领域中的一个基础问题,有着广泛应用。例如在社交网络中,存在一些具有重要作用的成员节点,他们可能具有更大的影响力,或者更强的消息传播能力。社交网络中大量活动往往围绕这些重要节点展开,或者与这些节点具有密切的关系。因此,找到那些重要的用户节点可以更有效地认知网络情况,实现诸如“病毒营销”等实际任务。衡量一个节点自身重要性的标准有很多,比如:点度中心度(DegreeCentrality)、接近中心度(ClosenessCentrality)、特征向量中心度(EigenvectorCentrality)和介数中心度(BetweennessCentrality)等。其中,节点的介数中心度(BetweennessCentrality)量化了一个节点作为其他节点之间最短路径上桥梁的能力,刻画出了社会网络中一个用户对于其他用户之间交流的影响能力,是一种非常重要的度量指标。于是,节点介数中心度(本文以下简称为介数中心度)经常被应用于供应链管理、恐怖分子发现和艾滋病网络等诸多领域。介数中心度受所有点对的最短路径的影响,最朴素的计算方法当然是算出所有点对的最短路径,然后再计算节点的介数中心度,由于常用的计算所有点对最短路径的Floyd–Warshall算法的时间复杂度为Ο(n3),这导致基于Floyd–Warshall算法进行节点介数中心度计算的方法时间复杂度均不低于Ο(n3)。显然,这样的计算速度太慢。因此如何减少介数中心度所依赖的最短路径计算量,从而提高介数中心度的计算效率,也就成为了研究的重点。具体地,有如下两种基本的加速思路:第一种思路是计算介数中心度的近似值,而不追求其精确值,而本专利技术专注于精确值计算,故该类方法不展开讨论;第二种加速思路是减少冗余的计算量。Brandes等提出了一种基于改进的广度优先搜索和点对依赖的算法,大大减少了最短路径不必要的计算,这也是目前最常用的介数中心度计算方法;Sariyüce等提出了一种将图拆分压缩的策略,通过将复杂的网络图拆分成多个简单的子图,并将许多作用等价的节点合并,大大简化原有的网络,从而加快介数中心度的计算;Lee等提出了一种利用无向图中的环路的方法,过滤掉介数中心度不受边增减操作影响的节点,从而提高了更新效率。现有技术中关于介数中心度的精确计算上,至少存在以下方面的不足:一是Brandes和Sariyüce的算法,没有考虑到网络的变化情况,当网络发生改变时,这两种方法需要对全部网络节点进行重新计算,在实际应用中,网络整体往往是非常大的,而每次网络变化(如一条边的增减)所影响的范围其实是很小的,因此大量的计算会是重复的,会有大量的时间浪费;二是Lee的方法虽然考虑到了这个问题,但是其利用的是环路过滤的思路,适用于无向图,对于有向图来说,环路不明显,其算法的适用性也不高,在实际应用中,真实的网络图大多是带方向的,因此Lee算法的应用价值有限。因此,现有技术需要改进。
技术实现思路
本专利技术实施例所要解决的技术问题是提供一种基于社区的节点介数中心度更新方法,以解决现有技术存在的问题。为了解决上述问题,本专利技术公开了一种基于社区的节点介数中心度更新方法,包括:利用非重叠社区发现算法将现有的网络划分成多个社区;计算出所有节点间最短距离和每个节点的介数中心度;计算出社区与节点、社区与社区的最短距离集合;过滤网络中所有的点对,找到网络更新后最短路径发生改变的点对;删去原有最短路径对节点介数中心度的影响,计算点对的新最短路径,并添加新最短路径对节点介数中心度的影响;更新社区与节点、社区与社区的最短距离集合。在基于上述基于社区的节点介数中心度更新方法的另一个实施例中,所述社区与社区的最短距离集合表示为:dcc(c1,2)={d(v,u)|v∈c1,u∈c2}式中:cc(c1,c2)表示社区c1中所有节点到社区c2中所有节点的最短距离的集合,v表示社区c1的节点,u表示社区c2的节点。在基于上述基于社区的节点介数中心度更新方法的另一个实施例中,所述社区与节点的最短距离集合表示为:dcv(c,u)={d(v,u)|v∈c}dvc(u,c)={d(u,v)|v∈c}式中:dcv(c,u)表示社区c中所有节点到节点u的最短距离的集合;dvc(u,c)表示节点u到社区c中所有节点的最短距离的集合。在基于上述基于社区的节点介数中心度更新方法的另一个实施例中,所述计算点对的最短路径数采用深度优先搜索的遍历方法,所述深度优先搜索的遍历方法包括:对给定点对依次访问源节点所有的邻居节点;由最短距离判断邻居节点是否出现在给定点对的最短路径中;如果是,则将给定点对的最短路径数量转化为其邻居节点到目标节点的最短路径数目之和;如果否,则返回。在基于上述基于社区的节点介数中心度更新方法的另一个实施例中,所述过滤网络中所有的点对,找到最短路径发生改变的点对,其输入参数为社区到社区的最短距离集合的最大值、社区与节点的最短距离集合的最小值和网络变化增删的边。在基于上述基于社区的节点介数中心度更新方法的另一个实施例中,所述过滤网络中所有的点对,找到最短路径发生改变的点对包括:输入社区与节点、社区与社区的最短距离信息,输入网络变化增删的边信息;利用社区与节点、社区与社区的最短距离集合和边信息,对社区对进行过滤,找到内部节点对最短路径可能变化的社区对;对于找到的社区对,利用节点最短距离信息,过滤其内部所有点对,找到最短路径改变的点对。在基于上述基于社区的节点介数中心度更新方法的另一个实施例中,还包括:边的添加操作后的介数中心度更新和边的删除操作后的介数中心度更新。在基于上述基于社区的节点介数中心度更新方法的另一个实施例中,所述边的添加操作后的介数中心度更新包括:通过社区与社区、社区与节点的最短距离集合进行过滤,找到最短路径发生变化的点对,并计算出新的最短距离和最短路径数;计算出待更新点对在更新前的最短路径产生的点对依赖,并在介数中心度中删除这些点对依赖;更新最短距离和最短路径数;计算待更新点对间新的最短路径产生的点对依赖,并在介数中心度中增加这些点对依赖;更新社区与社区、社区与节点的最短距离集合。在基于上述基于社区的节点介数中心度更新方法的另一个实施例中,所述边的删除操作后的介数中心度更新包括:通过社区与社区、社区与节点的最短距离集合进行过滤,找到最短路径发生变化的点对;计算出待更新点对在更新前的最短路径产生的点对依赖,并在介数中心度中删除这些点对依赖;判断待更新点对间是否有更新前的最短路径不经过被删除的边;如果是,则该路径仍是最短路径,该点对的最短距离不变;如果否,则计算待更新点对新的最短路径和最短距离;计算待更新点对间新的最短路径产生的点对依赖,并在介数中心度中增加这些点对依赖;更新社区与社区、社区与节点的最短距离集合。在基于上述基于社区的节点介数中心度更新方法的另一个实施例中,所述社区与社区、社区与节点的最短距离集合进行过滤的规则为:若社区对的最短距离集合最大值小于两个社区到增删的边的两个节点的最短距离集合最小值与增删的边的长度之和,则该社区对内点对最短路径不变。在基于上本文档来自技高网
...

【技术保护点】
1.一种基于社区的节点介数中心度更新方法,其特征在于,包括:利用非重叠社区发现算法将现有的网络划分成多个社区;计算出所有节点间最短距离和每个节点的介数中心度;计算出社区与节点、社区与社区的最短距离集合;过滤网络中所有的点对,找到网络更新后最短路径发生改变的点对;删去原有最短路径对节点介数中心度的影响,计算点对的新最短路径,并添加新最短路径对节点介数中心度的影响;更新社区与节点、社区与社区的最短距离集合。

【技术特征摘要】
1.一种基于社区的节点介数中心度更新方法,其特征在于,包括:利用非重叠社区发现算法将现有的网络划分成多个社区;计算出所有节点间最短距离和每个节点的介数中心度;计算出社区与节点、社区与社区的最短距离集合;过滤网络中所有的点对,找到网络更新后最短路径发生改变的点对;删去原有最短路径对节点介数中心度的影响,计算点对的新最短路径,并添加新最短路径对节点介数中心度的影响;更新社区与节点、社区与社区的最短距离集合。2.根据权利要求1所述的基于社区的节点介数中心度更新方法,其特征在于,所述社区与社区的最短距离集合表示为:dcc(c1,c2)={d(v,u)|v∈c1,u∈c2}(1)式中:dcc(c1,c2)表示社区c1中所有节点到社区c2中所有节点的最短距离的集合,v表示社区c1的节点,u表示社区c2的节点。3.根据权利要求1所述的基于社区的节点介数中心度更新方法,其特征在于,所述社区与节点的最短距离集合表示为:dcv(c,u)={d(v,u)|v∈c}(2)dvc(u,c)={d(u,v)|v∈c}(3)式中:dcv(c,u)表示社区c中所有节点到节点u的最短距离的集合;dvc(u,c)表示节点u到社区c中所有节点的最短距离的集合。4.根据权利要求1所述的基于社区的节点介数中心度更新方法,其特征在于,所述计算点对的最短路径数采用深度优先搜索的遍历方法,所述深度优先搜索的遍历方法包括:对给定点对依次访问源节点所有的邻居节点;由最短距离判断邻居节点是否出现在给定点对的最短路径中;如果是,则将给定点对的最短路径数量转化为其邻居节点到目标节点的最短路径数目之和;如果否,则返回。5.根据权利要求1所述的基于社区的节点介数中心度更新方法,其特征在于,所述过滤网络中所有的点对,找到最短路径发生改变的点对的方法,其输入参数为社区到社区的最短距离集合的最大值、社区与节点的最短距离集合的最小值和网络变化增删的边。6.根据权利要求1或5所述的基于社区的节点介数中心度更新方法,其特征在于,所述过滤网络中所有的点...

【专利技术属性】
技术研发人员:王朝坤钱珺郭高扬
申请(专利权)人:清华大学
类型:发明
国别省市:北京,11

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

1