- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
多目标遗传算法中文
一种在复杂网络中发现社区的多目标遗传算法
Clara Pizzuti
摘要——本文提出了一种揭示复杂网络社区结构的多目标遗传算法。该算法优化了两个目标函数,这些函数能够识别出组内节点密集连接,而组间连接稀疏。该方法能产生一系列不同等级的网络社区,其中解的等级越高,由更多的社区组成,被包含在社区较少的解中。社区的数量是通过目标函数更佳的折衷值自动确定的。对合成和真实网络的实验,结果表明算法成功地检测到了网络结构,并且能与最先进的方法相比较。
关键词:复杂网络,多目标聚类,多目标进化算法
简介
复杂网络构成了表示组成许多真实世界系统的对象之间关系的有效形式。协作网络、因特网、万维网、生物网络通信传输网络社交网络只是一些例子。[18], [28], [38], [39], [49], [51]聚集目标,虽然[8]中给出了分割图的一个方法,并且在[12]中描述了网络用户会议的一个图聚类算法。
本文中,一个多目标方法,名为用于网络的多目标遗传算法(MOGA-Net),通过利用提出的遗传算法发现网络中的社区。该方法优化了[32]和[44]中介绍的两个目标函数,它们已被证实在检测复杂网络中模块的有效性。第一个目标函数利用了community score的概念来衡量对一个网络进行社区划分的质量。community score值越高,聚类密度越高。第二个目标函数定义了模块中节点fitness的概念,并且反复迭代找到节点fitness总和最大的模块,以下将这个目标函数称为community fitness。当总和达到最大时,外部连接是最小。两个目标函数都有一个正实数参数控制社区的规模。参数值越大,找到的社区规模越小。MOGA-Net利用这两个函数的优点,通过有选择地探索搜寻空间获得网络中存在的社区,而不需要提前知道确切的社区数目。这个数目是通过两个目标之间的最佳折衷自动确定的。
多目标方法的一个有趣结果是它提供的不是一个单独的网络划分,而是一组解。这些解中的每一个都对应两个目标之间不同的折衷,并对应多种网络划分方式,即由许多不同簇组成。对合成网络和真实网络的实验表明,这一系列帕累托最优解揭示了网络的分层结构,其中簇的数目较多的解包含在社区数目较少的解中。多目标方法的这个特性提供了一个很好的机会分析不同层级的网络和研究不同模块化水平的社区。
本文组织如下,在下一节定义社区的概念,规范化社区检测问题。第三节描述社区检测的主要方法。第四节将社区检测问题公式化为一个多目标优化问题。第五节描述了该方法,采用基因表示,变异操作的使用。第六节给出该方法用于合成网络和真实网络的结果,以及与一些最先进方法的对比。最后,在第七节讨论多目标方法的优点,得出结论。
社区定义
一个网络N能被模型化为一个图G=(V,E),其中V是一系列客体,被称作节点或顶点,E是一系列连接,被称作边,这是连接了V中的两个元素。网络中的一个社区(也被称作簇或模块)是一组相互连接密度较高的顶点(即一个子图),并且组与组之间连接密度较低。社区的这个定义相当模糊,并且在密度这个概念上没有达成一致。[48]中介绍了一个更为正式的定义,通过考量一个一般的节点i的度ki,定义,这里A是G的邻接矩阵。如果节点i到节点j之间有一条边,那么矩阵A的(i,j)位置上为1,否则为0。假设,节点i属于G的子图S,i的度分成两部分,
这里,,是i与S中其他节点相连的边的数量。,是i与网络其余部分节点相连的边的数量。如果,则子图S称为强社团。如果,则子图S称为弱社团。
因此,在一个强社区中,每个节点在社区内与图中剩余部分相比,连接更多。在一个弱社区中,子图内节点内度的总和大于节点外度的总和。接下来,我们采用弱社区的概念,因此一个社区被看作一系列节点,它们的内部连接的数量高于不同簇之间外部连接的数量。
相关工作
来自不同领域例如物理学,统计学,数据挖掘,进化计算的许多不同算法已经被提出用来检测复杂网络中社区。被采用的这些方法可以被概括地归为三类:分层分裂方法,分层凝聚方法[31],以及优化方法。分层分裂方法从完整的网络开始,检测连接不同社区的边,并移除它们。这些方法的例子可以在[3],[25],[35],[41],[42]和[48]。分层凝聚方法将每个节点看成一个社区,然后递归地合并相同的社区,直到得到整个图[4],[34],[40],[45],[47],[58]。优化方法定义了一个目标函数将图划分为子图,并且尝试将这个目标最大化从而获得网络的最佳分割[1],[32],[53]。在这些优化方法中,有几种方法通过利用进化技术已经成熟。尤其[18],[20],[26],[29],[34],[44],[55]运用了遗传算法。许多其他的方法利用多目标进化算法在度量空间来分割图或者聚集对象[8], [12],[14], [17
文档评论(0)