Tournament Selection

Tournament Selection is among the most widely used selection strategies in evolutionary algorithms. It works well for a wide range of problems, it can be implemented efficiently, and it is amenable to parallelisation.

At its simplest tournament selection involves randomly picking two individuals from the population and staging a tournament to determine which one gets selected. The "tournament" isn't much of a tournament at all, it just involves generating a random value between zero and one and comparing it to a pre-determined selection probability. If the random value is less than or equal to the selection probability, the fitter candidate is selected, otherwise the weaker candidate is chosen. The probability parameter provides a convenient mechanism for adjusting the selection pressure. In practise it is always set to be greater than 0.5 in order to favour fitter candidates. The tournament can be extended to involve more than two individuals if desired.