Therefore, we also tried another two-point crossover operator.
This operator works as follows. If, after having generated two children using standard two-point crossover,the child chromosomes happen to contain the same number
of zeros and ones as the parents, the crossover operation is finished.
If the number of ones (respectively zeros) in a child chromosome is larger than that of the parents, then bits with value one (respectively zero) are randomly selected and changed into a zero (respectively one) until the number of zeros and ones equals that of the parents.
In this way it is tried (i) to minimize the occurrence of randomness(mutation) by the crossover operator and (ii) to spread these(additional) mutations more uniformly.
We term this second crossover operator the two-point ‘bit equalizer’ crossover
operator.