//Step 1. Initialization |
Generalize a population of NP individuals in the search region randomly; |
Set the numbers of clusters G; Create the external archive EA; initial the current iteration iter = 1; |
//Step 2. Loop |
while stopping criteria are not satisfied do |
Calculate TI according to (26) |
Decide the number of clusters according to |
Partition the whole population based on -means clustering |
For all cluster |
Compute according to (24) |
Decide whether some clusters need to be removed according to |
Select individuals based on non-domination. |
End for |
For iter = 1 : TI |
Update the individuals’ position in each cluster according to (17) |
Update the external archive and update Num_Update |
iter = iter + 1; |
End for |
Calculate the number of individuals in each cluster needing to be regenerated, according to (27) |
Generate a certain number of the new individuals in every cluster; |
End while |