论文部分内容阅读
复杂网络,其实就是复杂系统的一种抽象,复杂系统中的个体可以看成是网络中的节点,而系统中个体之间按照某种规则而自然形成或人为构造的一种关系就是节点之间的边。在现实世界中,复杂网络真的是处处可见。换言之,许多领域的系统都可以看作是复杂网络:从科技系统,如WWW和全球交通网络;到生物系统,如新陈代谢网络和生态网络;再到社会系统,如科学家合作网络和在线社区网络等等。而发现网络中的社区结构即社区发现技术是理解复杂网络过程中至关重要的一步,它不仅帮助我们了解该网络的结构,而且帮助我们分析该网络的特性。社区发现技术同时也广泛应用在生物学、物理学、计算机图形学和社会学等领域中。其不仅仅在理论研究方面具有很高的学术价值,在实际生活中也有着十分重大的实用价值。另外,社区还可以为用户提供一些可靠、及时并且有价值的信息。
本文首先介绍了现有的社区发现技术的一些理论知识,然后回顾了一些早期的经典社区发现算法如Kernighan-Lin算法、谱分析思想以及层次聚类方法中的GN分裂算法和Newman快速凝聚算法,同时还跟踪了一些近两三年提出的新算法如Zhenqing Ye等在2008年提出的适应性聚类算法、Andrea Lancichinetti等在2009提出的基于适应度函数的社区结构发现算法以及Rumi Ghosh等在2010年提出的使用全局影响力度量标准的社区发现算法。对于这些算法,我们分析了它们的优势,也指出了其不足,并且还分析了算法的复杂度以及适用范围等。在理解现有算法的基础上,我们在本文中提出了两个新的发现网络社区的有效方法:⑴基于社区紧密度的快速发现算法FHACC;⑵随机游走策略RMS。其中,FHACC算法的提出,是为了解决现有算法的“大计算量,高复杂度而导致的难以应用在大型社会网络中”的问题。FHACC算法不仅能够有效地发现社区,而且时间复杂度也很低(接近线性)。而RMS算法的提出,有以下几方面原因:①传统的社区结构发现算法,只能得到网络在某个单一层次下的社区结构,而不能完整地给出网络在多个层次下的社区划分状况;②使用这些算法来划分具有重叠社区结构的网络时,往往也会显得力不从心,并且所获得社区的质量也不是很高;③这些算法都没有对重叠社区中具有多重身份的节点进行定量地分析,这将隐藏一些重要的信息,并且经常导致划分不正确。我们引入的RMS算法不仅可以发现网络中的重叠社区,而且也能发现网络在不同层次下的社区结构。并且我们还引入了社区倾向性(Community Tendency,简称CT)的概念,使我们可以定量地描述重叠社区,进而发现网络中的一些隐藏的重要信息,并且得到合理的划分。简言之,RMS可以帮助我们从多个角度来分析和理解网络,从而得到该网络中关于社区结构方面的详细信息。我们的仿真实验结果也验证了这两个算法发现社区的有效性和高效性。