Research Article

Decomposition-Based Multiobjective Evolutionary Algorithm for Community Detection in Dynamic Social Networks

Algorithm 1

Framework of the MOEA/D-based community detection algorithm.
Input:
 (i) The target dynamic network .
 (ii) : the number of time steps.
 (iii)   : number of sub problems.
 (iv)    : neighborhood size.
 (v)    Uniform spread of weight vectors ( ),…, ( .
 (vi)   The maximum number of generations, .
Output: Sequence of network partitions .
Step  1. Generate an initial clustering of the network
   by optimizing only the community quality objective.
Step  2. For to
 (1)Set   , , .
 (2)Initialization:
  (a) Generate an initial population randomly. For each individual ,
     each gene randomly takes one of its adjacent nodes of node .
  (b) Compute the Euclidean distance between each pair of weight vectors. Then, get the
     neighborhood for th sub problem, where are the closest
     weight vectors to (including itself).
  (c) Initialize the reference point , where is the best value found so far
     for objective .
 (3)Search for new solutions:
  (a) Assign each sub problem a unique representative .
  (b) Construct a subpopulation for th sub problem, where .
  (c) For each sub problem to do
     Randomly select a solution from the whole population, and two parents
     consist of and .
     Apply the crossover and mutation operators to and to generate for .
     Local search operator is employed in some subpopulations, which can be seen in
     Section 3.4 in details.
     Update , , IP and EP with .
 (4)Stopping Criteria: If gen ≥ genmax, then go to (5). Otherwise, gen = gen + 1, go to (3).
 (5)Choose an optimal individual from the EP for the user as shown in Section 3.5.
  Decode the optimal individual to generate the partition
  of the graph in connected components; Return the solution
   ;
Step  3.  Output the sequence of network partitions .