| Begin |
| Algorithmic parameters setting: |
| Population size = 50, |
| Maximum number of iterations G = 500, |
| Maximum immigration rate , |
| Maximum emigration rate , |
| Mutation probability , |
| Number of elites retained . |
| / Initialization / |
| Random generation of a set of initial habitats constitutes the initial population. |
| Calculate the fitness value of each habitat in the population. |
| / is the condition for the end of the iteration / |
| Sort the habitat in descending order according to the fitness value. |
| The immigration rate and emigration rate of each habitat were calculated according to formula (1). |
| / End of initialization/ |
| / Migration / |
| |
| Select according to the immigration probability |
| / is dimension / |
| |
Select according to the migration probability |
| Randomly select a characteristic variable from |
| Replace a random characteristic variable in with |
| else |
| Perform a local search on the characteristic variable |
| according to formula (6) can get . |
| Replace random characteristic variable in with . |
| end if |
| end for |
| end for |
| / End of migration / |
| / Mutation / |
| |
| Calculate the probability of mutation according to and |
| Selection of unmutated habitat based on |
| |
| |
| Replace with a randomly generated by formula (8) |
| |
| Replace with a randomly generated by (9) |
| end if |
| end if |
| end if |
| end for |
| / End of mutation / |
| Recalculate the habitat fitness values |
| end while |
| end |