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 . |