网络社区发现与进化单目标优化
1. 引言
网络社区发现是网络结构分析中的一个核心问题。通过引入模块度(modularity)和模块度密度(modularity density),网络社区发现可以被构造成一个单目标优化问题。优化的目标是最大化模块度或模块度密度,但这类问题是NP-hard的。本文将介绍几种基于进化单目标优化的社区发现算法,包括基础拟态算法(Memetic Algorithm, MA)、改进的拟态算法以及离散贪婪粒子群优化算法(Discrete Greedy Particle Swarm Optimization, DGPSO)。
2. 网络社区发现被表述为单目标优化问题
2.1 模块度与模块度密度
模块度(modularity)是由Newman和Girvan提出的,用于衡量网络中社区结构的质量。模块度的公式如下:
[ Q = \frac{1}{2m} \sum_{i,j} \left( A_{ij} - \frac{k_i k_j}{2m} \right) \delta(i, j) ]
其中:
- ( n ) 和 ( m ) 分别表示网络中的节点数和边数;
- ( A_{ij} ) 表示节点 ( i ) 和 ( j ) 之间的邻接矩阵元素;
- ( k_i ) 和 ( k_j ) 分别表示节点 ( i ) 和 ( j ) 的度;
- ( \delta(i, j) ) 表示节点 ( i ) 和 ( j ) 是否属于同一社区(1表示属于同一社区,0表示不属于)。
模块度密度(modularity density)是为了缓解模块度的分辨率限制而提