flickr - Ethan Hein

Selecting chromosomes from population

After we generated a new population from the previous one, the remaining question is how we can select the offsprings base on their levels of fitness. From here, we will focus on three ways of selection that are often used.

The first one is roulette wheel selection. In this case, parents are selected according to their fitness. That is the better the chromosomes are, the more chances to be selected they will have. Imagine a roulette wheel where are placed all chromosomes in the population, a group of similar chromosomes will has its proportional slice accordingly to its fitness function, like the one below -


The probability of one particular chromosome is chosen is proportional to its fitness level.

The previous selection will have problems when the fitnesses differs significantly. If the best chromosome owns a large percentage of the entire roulette wheel then the others will have very few chances to be selected. Therefore we introduce the second way, which is called the rank selection, to select chromosomes -


Before ranking                After ranking

      

Rank selection first ranks the population and then every chromosome receives fitness from this ranking. All the most similar chromosomes will group together to form the largest proportion with scaled down to 40%, then a group with few member which is scaled up to 30%, similar to the 20% and 10% case. The idea is to make the selection get more chances to select different member from different groups.

The third method of selection is elitism. It is simply copying the best one or more chromosomes to the new population without any modifications to it such as crossover or mutation. Elitism can very rapidly increase the performance of GA, because it prevents losing the best found solution and discard the unwanted. Also in consequence, elitism avoids rejecting solutions that are already optimal.