Input: Adjacent matrix of network |

Parameters: population size (*popsize*), max generations (*gen*), crossover probability (*pc*), |

mutation probability (*pm*), initial probability of adaptive strategy (*p*) |

Output: Optimal solution of the current iteration |

*Step 1*. Initialization |

(1.1) Initialize each individual by label propagation mechanism (see Algorithm 2). |

(1.2) Calculate objective function using formula (1). |

*Step 2*. Self-adaptive learning |

For each individual, select a strategy from hybrid evolutionary strategy pool (see Section 3.1.3) |

using roulette wheel selection according to the selected probability, |

then update the selected probability of each strategy by self-adaptive learning framework (see Section 3.1.4). |

*Step 3*. Local search |

Apply hill-climbing search (see Section 3.1.5) to the individual with highest value in the current population for local search. |

Once a better individual is generated, the new individual will replace the chosen one. |

Repeat until no more better individual is get or the number of search reaches the maximum, |

then the individual is the current best solution of the population. |

*Step 4*. Stopping criteria: |

If (iterations < gen), iterations ++, and go to Step ; otherwise, stop the algorithm and output. |