| Parameters |
|
t: the number of iteration Iter_Max: the maximum number of iteration |
|
n: the maximum number of species size: the size of population |
|
rand: the random number in [0,1] Vi: the mixed hybrid operator |
|
MaxXi: the maximum individual MinXi: the minimum individual |
|
C: the probability of mutation F: difference operator |
| 1 /* Parameter setup */ |
| 2 /* Initialize population Pi */ |
| 3 /* Compute the fitness function Fi of each habitat, sort Fi */ |
| 4
|
| 5 /* Obtain elitist population */ |
| 6 /* Initialize probability of population in habitat */ |
| 7 FOR
t < Iter_Max DO
|
| 8 IF
t is odd THEN
|
| 9 /* Compute the number of population k */ |
| 10 /* Compute the rate of immigration λi and emigration μi for each habitat */ |
| 11 ;
|
| 12 /* Normalize the immigration rate λscale */ |
| 13
|
| 14 /* Operation of migration */ |
| 15 Transform new information to habitat i
|
| 16 ELSE
|
| 17 FOR
i = 1:size
|
| 18 Choose indexes r1 ≠ r2 ≠ i
|
| 19 /* Generate difference operator */ |
| 20
|
| 21 IF
rand ≤ C
THEN
|
| 22 /* Mutation operation */ |
| 23
|
| 24 END IF
|
| 25 END FOR
|
| 26 END IF
|
| 27 END FOR
|
| 28 /* Deassign for samples beyond the range */ |
| 29 /* Deassign for the same sample */ |
| 30 /* Compute fitness Fi for new population and sort Fi */ |
| 31 Obtain optimal solution |
| 32 Postprocess results and visualization |