1、本科毕业设计(论文)题目:复杂网络社团发现算法的研究姓名 学院 信息与通信工程专业班级 学号 班内序号 指导教师 2012年6月复杂网络社团发现算法的研究摘 要近些年,随着WS小世界网络模型和BA无标度网络模型的提出,国内外掀起了研究复杂网络的热潮。复杂网络是对于复杂系统的高度抽象,其中许多性质如小世界性质、无标度性质以及聚集性质等等已经得到了充分的研究。复杂网络的研究是以系统的观点来看待真实系统,如Internet网络、电力网、新陈代谢网络等。(大量的文献表明,)复杂网络通常会呈现出社区结构特性,而如何在实际网络中高效地发现社区结构是近年来复杂网络的研究热点之一。社团结构是复杂网络普遍存在的
2、拓扑特性之一,发现复杂网络中的社团结构也是复杂网络研究的基础性问题。在文章中讨论了一些复杂网络以及关于社区评估和确定方面的概念、理论、算法及应用等。同样的,文章中也讨论了一种可以应用于大型复杂网络的社团发现的random walk算法,并且显示了它和其他算法在社团划分上有相同的表现,同时拥有更低的复杂度。文章中将random walk算法应用于对已知社团结构的复杂网络的划分以及比较其划分的社团结构的结果。除此之外,文章中对于此类算法给出一定改进,使该算法在复杂网络的社团划分上拥有了更高的准确度以及较低的复杂度。关键词 复杂网络,社团发现算法,random walk,复杂度Verifying P
3、latform of Cognitive Radio NetworkABSTRACTIn recent years,as the WS small-world network model and BA scalefree network model was proposed,the study on complex networks is achieving a climax at home and abroad nowComplex network is the highly abstract of the complex system, many of the properties, su
4、ch as small world nature, scale-free property and gathered properties and so on, have got fully research. The study on complex networks treats the real systems such as the Internet,electricitynetworks and metabolic networks with the viewpoint of system science(Lots of literatures show that community
5、 structure exists in many real networksHow to find such communities effectively is one of focuses of many recent researches in the branch of complex networksCommunity structure is one of the common topological characteristics of complex networks. Community detection has become a fundamental problem
6、in the research field of complex networks.In the article, the author discusses some complex networks as well as the theory, method and application about the evaluating and identifying of the community. Similarly,in this context we also discuss the random walk algorithm that can be used in a large, c
7、omplex network to identify the community and show that it performs as well as other methods at the division of complex networks, but at lower computational complexity.In the article the algorithm is applied to the division of complex networks that has knowing the community structure and compare the
8、results of the classification of the community structure. In addition, the article gives certain improvement to such algorithm, so that the algorithm in the community division of complex network has the higher accuracy and lower complexity.KEYWORDS the complex network, community detection, random wa
9、lk, complexity目录第一章绪论11.1 复杂网络的研究背景11.1.1 从七桥问题开始11.1.2 复杂网络近代的研究21.2 复杂网络社团结构研究的现状31.3 本文的研究内容以及文章结构6第二章复杂网络的基本概念以及网络拓扑的基本模型72.1 复杂网络的基本概念72.1.1 网络的图表示72.1.2 平均路径长度82.1.3 聚类系数82.1.4 精准度92.1.5 复杂网络社团结构定义92.2 网络拓扑基本模型和性质102.2.1 小世界模型102.2.2 无标度网络模型112.2.3 模块性与等级网络12第三章 复杂网络中的社团结构 143.1 分级聚类143.1.1 凝聚
10、算法143.1.2 分裂算法153.2 迭代二分法153.2.1 Kernighan-Lin 算法153.2.2 谱平分法163.3 其他经典算法173.3.1 GN(Girvan-Newman)算法173.3.2 Newman快速算法173.3.3 Radicchi算法17第四章 基于随机游走的社团发现算法194.1 随机游走算法的基本原理194.1.1 随机游走算法的相似度矩阵获取194.1.2 随机游走算法的矩阵融合204.1.3 矩阵元素融合方式214.2 随机游走算法的代码编译过程224.2.1 随机游走算法的相似度矩阵的获取224.2.2 随机游走算法的相似度矩阵融合23第五章 随
11、机游走算法在社团划分中的应用255.1 随机游走算法对复杂网络的划分255.1.1 已知社团结构的复杂网络255.1.2 对复杂网络的划分265.2 随机游走算法的复杂度28第六章 基于随机游走算法的程序优化296.1 随机游走算法的复杂度的优化296.2 随机游走算法的应用于加权网络30第七章总结与展望317.1 总结317.2 对未来的展望31参考文献34致谢35II北京邮电大学本科毕业设计(论文)第一章 绪 论复杂网络一般指节点众多、连接关系复杂的网络。由于其灵活普适的描述能力, 能够广泛应用于各科学领域对复杂系统进行建模、分析, 近年来吸引了越来越多的人对其进行研究。随着研究的深入,
12、人们发现许多实际网络均具有社团结构,即整个网络由若干个社团组成, 社团之间的连接相对稀疏、社团内部的连接相对稠密。社团发现则是利用图拓扑结构中所蕴藏的信息从复杂网络中解析出其模块化的社团结构, 该问题的深入研究有助于以一种分而治之的方式研究整个网络的模块、功能及其演化, 更准确地理解复杂系统的组织原则、拓扑结构与动力学特性, 具有十分重要的意义。自2002 年Girvan 和Newman 基于边介数提出GN 算法以来, 国际上掀起一股社团发现的研究热潮, 来自生物、物理、计算机等各学科领域的研究者们带来了许多新颖的思想和算法, 并广泛应用于各个学科领域的具体问题中。1.1复杂网络研究背景1.1
13、.1 从七桥问题开始近年来复杂网络研究的兴起,使得人们开始广泛关注网络结构复杂性及其与网络行为之间的关系,要研究各种不同的复杂网络在结构上的共性,首先需要有一种描述网络的统一工具。这种工具在数学上成为图(graph).任何一个网络都可以看做是由一些节点按某种方式连接而构成的一个系统。具体网络的抽象图表示,就是用抽象的点表示具体网络中的节点,并用节点之间的连线表示具体网络中节点间的连接关系。实际网络的图表示法可以追溯到18世纪伟大的数学家欧拉(Euler)对著名的“Konigsberg 七桥问题”的研究。Konigsberg 是东普鲁士(现俄罗斯)的一个城镇,城中有一条横贯城区的河流,河中有两座
14、岛,两岸和两岛间共有七座桥,一个人能否在一次散步中走过所有的七座桥,而且每座桥只经过一次,最后返回原地?1736年,欧拉仔细的研究了这个问题。他用数学抽象法,将被河流分隔开的四块陆地抽象为四个点,分别用A、B、C和D表示,而将七座桥抽象为连接四个点的七条线,分别用a、b、c、d、e、f、g表示,这样就得到了四个点和七条线构成的一个图,如图(图1-1)所示。图1-1 七桥问题于是欧拉考虑如果一笔画出图1-1,则七桥问题迎刃而解。可以想象,能一笔画出的图形,一定只有一个起点和一个终点(这里要求起点和终点重合),中间经过的每一点总是包含进去的一条线和出去的一条线,这样除了终点和起点外,每一点都只能有
15、偶数条线与之相连。因此,如果要求起点和终点重合的话,那么能够一笔画出的图形中所有的点都必然有偶数条线与之相连。从图1-1中四个点看,每个点都是有三条或五条线通过,所以不能一笔画出这个图形,就是说不重复的一次走遍七座桥是据对不可能的。欧拉的七桥问题的抽象和论证思想,开创了数学中的一个分支-图论(graph theory)的研究。因此,欧拉被公认为图论只父,而图1-1被称为欧拉图。事实上,今天人们关于复杂网络的研究与欧拉当年关于七桥问题的研究在某种程度上是一脉相承的,即网络结构域网络心智密切相关。1.1.2 复杂网络近代的研究20世纪90年代以来,以Internet为代表的信息技术的迅猛发展使人类
16、社会大步迈入了网络时代。从Internet到WWW,从大型电力网络到全球交通网络,从生物体中的大脑到各种新陈代谢网络,从科研合作网络到各种经济、政治和社会关系网络等,可以说;人们已经生活在一个充满着各种各样的复杂网络的世界中。人类社会的网络化是一把“双刃剑”:它既给人类社会生产与生活带来了极大便利,提高了人类生产效率和生活质量,但也给人类社会生活带来了一定的负面冲击,如传染病和计算机病毒的快速传播以及大规模的停电事故等。因此,人类社会的日益网络化需要人类对各种人工和自然的复杂网络的行为有更好的认识。长期以来,通信网络、电力网络、生物网络、社会网络等分别是通信科学、电力科学、生命科学、社会学等不
17、同学科的研究对象,而复杂网络理论所要研究的则是各种看上去互不相同的复杂网络之间的共性和处理它们的普适方法。从20世纪末开始,复杂网络研究正渗透到数理学科、生命学科和工程学科等众多不同的领域,对复杂网络的定量与定性特征的科学理解,已成为网络时代科学研究的一个极其重要的挑战性课题,甚至被称为“网络的新科学(new science of networks)”1,2 。传欧拉七桥问题之后的近两百年中,数学家们一直致力于对简单的规则网络和随机网络进行抽象的数学研究。随着近年来计算机存储能力和处理数据能力的增强,以及一些大规模系统的数据库的建立,人们重新获得了真实网络的特征数据,发现大多数真实网络既不是规
18、则的,也不是随机的,而是呈现一定规律的复杂网络。复杂网络之所以复杂,不仅在于网络规模的巨大,网络结构的复杂而且网络在时间、空间上都具有动态的复杂性,网络行为也具有复杂性。许多真实系统都可以用网络的形式加以描述,一个典型的网络是由许多结点与连接结点之间的边组成的。结点代表系统中的个体,边则表示结点之间的作用关系。如WWW网络可以看成是网页之间通过超链接构成的网络;Internet网络可以看作不同的计算机通过光缆连接构成的网络;科学家合作网络可以看作不同的科学家合作关系构成的网络;基因调控网络可以看作是不同的基因通过调控与被调控关系构成的网络。这些真实网络的普遍存在,促使来自不同学科领域的科学家共
19、同致力于复杂网络的研究。这些学科领域包括复杂性科学、数学、物理、生物和计算机等。复杂网络的研究可以使人们更好地了解现实世界的复杂系统,为设计具有良好性能的网络提供依据。同时复杂网络的理论成果将会广泛地应用到生物、计算机等各个学科领域。复杂网络的研究大致可以描述为三个密切相关但又依次深入的方面:大量的真实网络的实证研究,分析真实网络的统计特性;构建符合真实网络统计性质的网络演化模型,研究网络的形成机制和内在机理;研究网络上的动力学行为,如网络的鲁棒性和同步能力,网络的拥塞及网络上的传播行为等。1967年,美国哈佛大学社会心里学家Milgram做了一个实验,在美国将一封信通过熟人找熟人的方式传递到
20、目标者,发现平均最短经过6人就可到达,这就是著名的“六度分离(six degree of separation)”现象,它揭示了社会网络的小世界特性。而在万维网中,平均只需点击19次超级链接,就可以从任意一个网页到达其它网页。近年来,随着大型数据库的建立和计算机存储与运算能力的迅速提高,复杂网络的研究进程大大加快。人们对社会系统、大型基础性设施和生物系统中大量的真实网络数据库进行了系统的分析,寻找呈现表象的内在机制和模式,试图发现支配和影响这些复杂系统的动力学和演化规律的内在本质。复杂网络的理论及实证研究的发展将会对网络安全、网络控制、疾病传播的控制与防御、社会中人的行为动力学的研究和生物网络
21、的演化机制研究等产生重要影响。1.2 复杂网络社团结构研究的现状随着对网络性质的物理意义和数学特性的深入研究,人们发现许多实际网络都具有一个共同性质,即社区结构。也就是说,整个网络是由若干个“社区或“组构成的。每个社区内部的结点间的连接相对非常紧密,但是各个社区之间的连接相对来说却比较稀疏。揭示网络的社区结构,对于深入了解网络结构与分析网络特性是很重要的。如社会网络中的社区代表根据兴趣和背景而形成的真实的社会团体;引文网络中的社区代表针对同一主题的相关论文;万维网中的社区就是讨论相关主题的若干网站;而生物化学网络或者电子电路中的网络社区可以是某一类功能单元。发现这些网络中的社区有助于我们更加有
22、效地理解和开发这些网络。在复杂网络社区结构划分的研究中,社区结构划分算法所要划分的网络大致可分为两类,一类是比较常见的网络,即仅包含正联系的网络(网络中边的权值为正实数);另一类是符号社会网络,即网络中既包含正向联系的边,也包含负向联系的边。因此划分网络中社区结构的算法相应分为两大类,而对于第一类网络又提出了许多不同的社区结构划分算法,划分第一类网络社区的传统算法可分为两大类,第一类是基于图论的算法,比如KL算法、谱平分法、随机游走算法和派系过滤等;第二类是层次聚类算法,比如基于相似度度量的凝聚算法和基于边介数度量的分裂算法等。最近几年从其他不同的角度又提出了许多划分第一类网络社区结构的算法,
23、大致可划分如下:基于电阻网络性质的算法、基于信息论的算法、基于PCA的算法和最大化模块度算法等。下面简要介绍一下几种具有代表性的算法。1970年,Kernighan和Lin提出一种试探优化法划分网络中的社区结构,简称K-L算法。它是一种基于贪婪算法原理将网络划分为两个大小已知的社区的二分法。其基本思想是为网络的划分引进一个增益函数Q,增益函数定义为两个社区内部的边数减去连接两个社区之间的边数,然后寻找使Q值最大的划分方法。1990年,Pothen等基于图的Laplace矩阵的谱特征提出一种将网络划分为两个社区的二分法瞻目。该算法的理论基础是不为零的特征值所对应的特征向量的各元素中,同一个社区内
24、的结点对应的元素是近似相等的。因此可以根据网络的Laplace矩阵的第二小特征值将其分为两个社区。2001年,Girvan和Newman提出了一种基于边介数的分裂算法,简称GN算法。该算法的基本思想是不断地从网络中移除介数最大的边。边介数定义为网络中经过每条边的最短路径数目。该算法的复杂度非常高,2003年Tyler等在GN算法的基础上提出了一种新的算法圆1,它可以显著提高计算速度,但也降低了计算的准确性。GN算法是以网络中的每一个结点i为源结点,来计算它到其他结点的最短路径,并以这些最短路径经过每条边的次数作为该边的介数。而Tyler等人提出,以网络中某个结点集内的结点为源结点来计算边的介数
25、也可以达到较好的效果。2004年,Newman把GN算法推广到了加权网络中。3 2003年,Wu和Huberman基于电阻网络的性质提出了W_H算法,其主要思路为将网络中每条边想象成电阻为单位值的导线,且在网络中任意选择的两个结点上加上单位值的电位差。Wu和Huberman认为,如果网络可以分解成两个社区,那么电位谱在连接两个社区的边的两端会产生一个较大的间隙。因此,首先确定电位谱的最大间隙处的某个电位值,然后根据每个结点处的电位是否大于该值而确定结点属于哪个社区。该算法的一个重要特点是可以用来确定包含指定结点的社区,而无须计算出所有的社区。2004年,Newman提出一种基于贪婪法思想的凝聚
26、算法,并称这种算法为快速算法。该算法是在使得模块度不断增加的基础上进行,即每次合并沿着使模块度增多最大和减小最少的方向进行。算法总的复杂度为O(m+n)n),对于稀疏网络则为O(),其中n为网络中结点的个数,m为网络中边的条数。在Newman快速算法的基础上,Clauset、Newman和Moore等人采用堆的数据结构来计算和更新网络的模块度,提出了一种新的贪婪算法,称为CNM算法。该算法的复杂度只有O(n),已接近线性复杂性,可用来分析大型复杂网络数据。同样为了最大化网络的模块度,2006年Newman基于模块度矩阵提出一种划分网络中社区结构的谱算法,并于2008年把该算法推广到有向网络中。
27、2005年,Pons和Latapy提出一种利用随机游走划分网络社区结构的算法,算法的初始条件为每个结点为一个单独的社区,然后逐步合并可使结点和它所在社区之间的平方距离均值达到最小的两个社区。每一步都要更新社区之间的距离,其中两个结点之间的距离对应于它们的相似度,即在一个离散的随机游走过程中,它们之间的方向转移概率。以上所述算法最终目的均是把网络划分为若干个相互分离的社区,但是现实中很多网络并不存在绝对的彼此独立的社区结构,相反它们是由许多彼此重叠且相互关联的社区构成。比如,每个人根据不同的分类方法都会属于多个不同的社区(如学校、家庭、不同的兴趣小组等)。在这种情况下,很难单独的将这些社区划分出
28、来。因此,Palla等人提出了一种派系过滤算法(clique Percolation Method)来分析这种互相重叠的社区结构。尽管复杂网络的社区发现问题得到了大量的研究,但还存在一些尚未解决的基本问题,如社区概念虽然大量使用,但却缺少严格的数学定义;大多数社区发现算法虽然性能优越,但所需计算量却很大。这说明复杂网络中社区发现的研究还需要付出大量的努力。1.3本文的研究内容以及文章结构本课题主要研究复杂网络中的社区结构划分。首先,针对无权的复杂网络,提出了随机游走的概念,在此基础上提出一种有效的划分社区结构的算法。实验结果表明该算法是可行且有效的。最后把这种算法推广到加权的大型复杂网络中,并
29、把算法应用实际的加权网络数据中,验证了推广算法的可行性和有效性。综上所述,本文主要研究内容共分为两个部分:第一部分提出了一种基于随机游走的复杂网络社区结构划分算法;第二部分把此算法推广到加权的复杂网络中。具体内容如下:第二章 介绍了一些复杂网络的图表示、度分布、平均最短路径和社区结构等基本概念和基本性质。介绍一些基本的网络拓扑模型及其性质,包括规则网络、随机图、小世界网络、无标度网络等。第三章 主要针对Internet 中的拓扑结构提出来一些模型。介绍复杂网络的社团结构及其搜索算法。大多数的实际网络都具有社团结构。也就是说,一个大的网络可以分成若干个字裙,在这些子群的内部的连接较为紧密,但是各
30、个子群间的连接却较为稀疏。找到并且分析这些子群,有助于我们更好地理解网络的全局行为第四章 主要提出了基于图论的随机游走(random walk)算法,研究随机游走算法的基本原理,以及对随机游走算法的编译。第五章 主要介绍了random walk 算法对已知社团结构的复杂网络进行社团结构的划分,并比较划分社团结构的准确度;同时给出算法的复杂度的分析。第六章 主要介绍了在random walk算法基础上的改进,使random walk算法能够实现:对有权的复杂网络的社团结构的划分;减少算法的复杂度。第二章 复杂网络的基本概念以及网络拓扑的基本模型2.1复杂网络的基本概念近年来,人们在刻画复杂网络的
31、统计特性上提出了许多概念和方法,其中有三个基本的概念:平均路径长度(average path length)、聚类系数(clustering coefficient)和度分布(degree distribution)。实际上,Watts和Strogatz提出小世界网络模型的初衷就是建立一个既具有类似于随机图的较少的平均路径长度,又具有类似于规则网络的较大的聚类系数的网络模型。另一方面,Barabasi和Albert 提出的无标度网络模型,则是基于许多实际网络的度分布具有幂律(power-law)形式的事实。在这里先介绍复杂网络的这几种性质,其他性质后面会陆续介绍。2.1.1网络的图表示一个具体
32、网络可以抽象为一个由点集V和边集E组成的图G =(V,E)。节点数记为N = | V |,边数记为M = | E |。E中每条边都有V种的一堆点与之相对应。如果任意点对(i,j)和(j,i)对应同一条边,则该网络称为无向网络(),否则称为有向网络。如果给没调表都赋予相应的权值,那么该网络就被称为加权网络(),否则为无权网络。当然无权网络也可以看做每条边权值都为1的等权网络。此外,一个网络中还可能包含多种不同类型的节点。图2-1给出了几种不同类型的网络的例子。在图论中,没有重边和自环的图称为简单图(simple graph)4 。图2-1 不同类型网络的例子(a) 单一类型节点和边的无向网络 (
33、b)不同类型节点和边的无向网络 (c)节点和边权重变化的无向网络 (d)有向网络2.1.2 平均路径长度网络研究中一般定义两节点i和j间的距离为连接两个节点的最短路径的边数,网络的直径为任意两点间的距离的最大值,记为D,即 (2-1)网络的平均路径长度L则定义为任意两个节点对之间距离的平均值,即 (2-2)其中N为网络节点数。网络的平均路径长度也成为网络的特征路径长度(characteristic path length)。它描述了网络中节点间的分离程度,即网络有多小。复杂网络研究中一个重要的发现是绝大多数大规模真实网络的平均路径长度比想象的小得多,称之为“小世界效应”这一提法来源于著名的Mi
34、lgram“小世界”试验4 。图2-2 一个简单网络的直径和平局路径长度2.1.3 聚类系数聚集系数C用来描述网络中节点的聚集情况,即网络有多紧密。比如在社会网络中,你朋友的朋友可能也是你的朋友或者你的两个朋友可能彼此也是朋友。一般的,假设网络中的一个节点i有条边将他和其他节点相连,这个节点就称为节点i的邻居。显然,在这个节点之间最多可能有(-1)/2条边。而这个节点间的实际存在的边数为和总的可能的边数(-1)/2之比就定义为节点i的聚类系数,即 (2-3)从几何特点上看,上式的一个等价定义为 (2-4)其中,与节点i相连的三元组是指包括节点i的三个节点,并且至少存在从节点i到其他两个节点的两
35、条边(图2-3)。5图2-3 以节点i为顶点之一的三元组的两种可能形式2.1.4 精准度精准度是用来粗略的衡量社团发现算法对于划分复杂网络的社团结构的准确度的参数。以上所述算法最终目的均是把网络划分为若干个相互分离的社区,但是现实中很多网络并不存在绝对的彼此独立的社区结构,相反它们是由许多彼此重叠且相互关联的社区构成。给定一个由n个节点组成的复杂网络,其中每个节点v都赋予一个真实的标签来表示其属于的社团。对于社团划分的准确的计算如下所示,假设一个复杂网络已经分成数个社团,对于每个社团i,遍历i中所有的节点并找出每个节点最常发生的真实的标签,这个标签便被称作社团中节点v的预期的标签。而精确度的公
36、式也如下所示: (2-6)其中 (2-7)2.1.5 复杂网络社团结构定义近几年来,复杂网络的研究正处于蓬勃发展的阶段,其思想已经充斥到科学和社会的每一个角落。随着对网络性质的物理意义和数学特性的深入研究,人们发现许多实际网络都具有一个共同性质社团结构。也就是说,网络是由若干个“群(Group)或“团(Cluster)”构成的。每个群内的结点之间的连接非常紧密,而群之间的连接却相对比较稀疏,如图2-4所示。图中的空手道俱乐部网络包含两个社团,分别对应图中不同节点形状的部分。在这些社区内部,结点之间的联系非常紧密,而社区之间的联系就稀疏的多。图2-4 空手道俱乐部复杂网络的社团结构2.2网络拓扑
37、基本模型和性质最简单的网络模型为规则网络,其特点是每个节点的近邻数目都相同,如一维链、二维晶格、完全图等。随机网络模型的提出是网络研究中的重大成果,但它仍不能很好的刻画实际网络的性质,人们又相继提出了一些新的网络模型。2.2.1 小世界模型实证结果表明,大多数的真实网络具有小世界性(较小的最短路径)和聚集性(相对较大的聚集系数)。然而,规则网络虽具有聚集性,平均最短路径却较大。随机图则正好相反,具有小世界性,但聚集系数却相当小。可见规则网络和随机网络并不能很好展现真实网络的性质,这说明现实世界既不是完全确定的也不是完全随机的。Watts和Strogatz在1998年提出了一个兼具小世界性和高聚
38、集性的网络模型6,它是复杂网络研究中的重大突破。他们通过将规则网络中的每条边以概率p随机连接到网络中的一个新节点上,构造出一种介于规则网络和随机网络之间的网络(简称WS网络),它同时具有较小的平均路径长度和较大的聚集系数,而规则网络和随机网络则分别是WS网络在p为0和1时的特例。模型构造过程如图2-5所示!图2-5 WS小世界模型随机化重连过程2.2.2 无标度网络模型尽管小世界模型能很好的刻画现实世界的小世界性和高聚集性,但对小世界模型的理论分析表明其节点的度分布仍为指数分布形式。实证结果却表明对于大多数大规模真实网络用幂率分布来描述它们的度分布更加精确。幂率分布相对于指数分布其图形没有峰值
39、,大多数节点仅有少量连接,而少数节点拥有大量连接,不存在随机网络中的特征标度,于是Barabasi等人称这种度分布具有幂率特征的网络为Scale-free网络。为解释Scale-free网络的形成机制,Barabasi和Albert提出了著名的BA模型6。他们认为以前的网络模型没有考虑真实网络的两个重要性质:增长性和择优连接性,前者意味着网络中不断有新的节点加入进来,后者则意味着新的节点进来后优先选择网络中度数大的节点进行连接。他们不仅给出了BA模型的生成算法并进行了模拟分析,而且还利用统计物理中的平均场方法给出了模型的解析解。结果表明:经过充分长时间的演化后BA网络的度分布不再随时间变化,度
40、分布稳定为指数为3的幂律分布。BA模型的提出是复杂网络研究中的又一重大突破,标志着人们对客观网络世界认识的深入。之后,许多学者对这一模型进行了改进,如非线性择优连接、加速增长、重绕边的局域事件、逐渐老化、适应性竞争等等。需要注意的是,绝大多数而不是所有的真实网络都是Scale-free网络。如有的真实网络度分布为指数分布截断形式等等。2.2.3 模块性和等级网络为了研究网络的模块性,我们需要相应的工具和度量以确定一个网络是否是模块化的,并且能够清晰的辨识一个给定的网络中的模块以及模块之间的关系。当然,模块便是并不是一件容易的事,因为无标度性质和模块性看起来似乎是矛盾的。模块式如何构成的呢?近期
41、研究表明,模体(motif)可能是复杂网络的基本模块7-9。网络的高聚类性表明网络在局部可能包含各种由高度连接节点组成的子图(subgraph)。子图描绘了从局部层次刻画一个给定网络的互联的特定模式。为理解这点,我们考虑了一个完全规则的放鸽子,他的子图报刊很多正方形而不是三角形(图2-6)。这些正方形子图反映了方格子的基本特征结构,而在有明显随机性连接的复杂网络中时难以找到这种明显的有序特征的。也就是说,复杂网络可能包含各种各样的子图,这些子图所占的比率明显高于同一网络的完全随机化形式中这些子图所占的比例。这些子图被称为模体。图2-6 子图和模体BA模型的提出是复杂网络研究中的又一重大突破,标
42、志着人们对客观网络世界认识的深入。之后,许多学者对这一模型进行了改进,如非线性择优连接、加速增长、重绕边的局域事件、逐渐老化、适应性竞争等等。需要注意的是,绝大多数而不是所有的真实网络都是Scale-free网络。如有的真实网络度分布为指数分布截断形式等等。接下来的问题是:一个网络中的不同模体之间是如何相互作用的?经验表明,特定的模体类型聚集在一起形成大的模体簇,这可能也是大多数实际网络中的一个通有特性10。为了说明许多实际系统中同时存在的模块性、局部聚类和无标度拓扑特性,需要哪家社模块以某种迭代的方式生成一个等级网络(hierarchical network)。研究表明,一些网络(如新陈代谢
43、网络)中的拓扑模块确实是按等级组织起来的。需要注意的是,ER随机图和BA无标度网络都不具有等级拓扑,在这两类网络中的节点系数C(k)与该节点的度k无关。这点并不奇怪,因为在这两类网络的构造过程中并未包含有利于模块涌现的机制。第三章 复杂网络中的社团结构网络社团结构的研究已经有很长的历史。它与计算机科学中的图形分割(graph partition)和社会学中的分级聚类(hierarchical clustering)有着密切的关系。,前者主要包括Kernighan-Lin算法和基于图的Laplace矩阵特征向量的谱平分法(Spectral Bisection Method);而后者则以著名的GN
44、(Girvan-Newman)算法为代表。3.1 分级聚类分级聚类是寻找社会网络中的社团结构的一类传统算法,它是基于各个节点之间连接的相似性或者强度,把网络自然地划分为各个子群。根据往网络中添加边还是移除边,该类算法又可以分为两类:凝聚算法(agglomerative method)和分裂算法(division method)11。3.1.1 凝聚算法凝聚算法的基本思想是用某种方法计算出各节点对之间的相似性,然后从相似性最高的节点对开始,往一个节点数位n而边的数目为0的原始空网络中添加边。这个过程可以中止与任何一点,此时这个网络的组成就认为是若干个社团。从空图到最终图的整个算法的流程也可以用世
45、系图或者树状图来表示,如图3-1所示。底部的各个圆代表了网络中的各个几点。当水平虚线从树的底端逐步上移,各个几点也逐步聚合称为更大的社团,当虚线移至顶部,即表示整个网络就总体的称为一个社团。在该树状图的任何一个位置用虚线断开,就对应着一种社团结构。图3-1 凝聚方法通常采用树状图来记录算法的结果基于一系列相似性度量标准额凝聚方法已经应用于许多不同的网络。一些网络本身就有很多相似性度量标准。比如,在电影演员合作网络中12-13,如果两个演员出现在同一部电影中,他们之间就有一条边相连,这样就可以用有多少电影演员同时出现在同一部电影中来度量节点的相似性14。而另外一些网络虽然其本身没有相似性的度量,
46、但是可以利用相关系数、路径长度或者一些矩阵的方法来设计一些适当的度量,本文涉及的随机游走算法便可以算得上一种凝聚算法。3.1.2 分裂算法相反的,在分裂算法中,一般是从所关注的网络着手,试图找到已连接的相似性最低的节点对,然后移除连接他们的边。重复这个过程,就逐步把整个网络分成越来越小的各个部分。同样的,可以在任何情况下终止,并且把此状态的网络看做若干网络社团的集合。与凝聚方法类似,利用树状图来表示分裂方法的流程,可以更好地描述整个网络逐步分解为若干个越来越小的子群这一连续过程。3.2 迭代二分法计算机科学中的一个典型问题,是将一个网络分解成若干结点数基本相等的子网,使得不同子网中的结点之间的连接数最少,称为图分割。图分割问题(GPP)可应用于并行计算机的处理器合理分配进程。实际应用中,大多数图分割方法均基于迭代二分法:首先将图按要求分割成2个子图,然后再分别对这2个子图进行分割,如此迭代下去直至获得所要求的子图个数。我们介绍两个最具代表性的迭代二分法:一是Kernighan-Lin算法,该算法使用贪婪策略对社区内以及社区间的边数进行优化,从而达到改进网络的初始分解的目的