The evolutionary process starts by selecting m individuals from
MP0. These m individuals are stored in MP1 and the number of MI
is less than or equal to m. The process continues with the
recombination of MP1 and subsequent mutation of MP2,
generating MP3. MP4 is produced by the application of the
replacement operator on MP0 and MP3 to select n MI from the two
populations. This operator maintains the number of MI constant
across generations. To reduce the number of copies in MP4 the
rescaling operator is applied and produces a new population
(MP0) for the iterative evolutionary process. MuGA uses a
specialized data structure called MiTree (multiset indexed tree)
[23] to store MIs that maintains a logarithmic complexity in the
common operations. This data structure increases the efficiency of
MuGA and speeds up the running time of the algorithm.