Tournament Selection is a Selection Strategy used for selecting the fittest candidates from the current generation in a Genetic Algorithm. These selected candidates are then passed on to the next generation. In a K-way tournament selection, we select k-individuals and run a tournament among them. Only the fittest candidate amongst those selected candidates is chosen and is passed on to the next generation. In this way many such tournaments take place and we have our final selection of candidates who move on to the next generation. It also has a parameter called the selection pressure which is a probabilistic measure of a candidate’s likelihood of participation in a tournament. If the tournament size is larger, weak candidates have a smaller chance of getting selected as it has to compete with a stronger candidate. The selection pressure parameter determines the rate of convergence of the GA. More the selection pressure more will be the Convergence rate. GAs are able to identify optimal or near-optimal solutions over a wide range of selection pressures. Tournament Selection also works for negative fitness values.
Algorithm -- 1.Select k individuals from the population and perform a tournament amongst them 2.Select the best individual from the k individuals 3. Repeat process 1 and 2 until you have the desired amount of population
Let us have a 3-way tournament selection and our desired population size is 6 and the initial population with their fitness scores is [1, 2, 3, 4, 5, 6]. Our first tournament will look something like this (see the diagram) and the winner candidate with fitness value 6 moves on to the next generation.
After the first tournament we have our selected population as .
After a few such tournaments, we might have a selected population as [6, 6, 6, 5, 4, 3]. It might even be [6, 6, 5, 4, 3, 2]. Hence the fittest candidate is more likely to be selected for the next generation.
If the best candidate is selected with probability p
then the next best candidate will be selected with a probability of p*(1-p)
and the next one with p*(1-p)2
and so on …
- Top 5 CyberSecurity Companies in 2020
- What is Search Engine and Google Page Ranking?
- Demur-rage currencies in Blockchain
- Role of Computers in Crime
- How does BlockChain support Crowdfunding ?
- Top 7 Free Keyword Research Tools in 2020
- What To Do After Engineering - MTech, MBA, MS or a Job?
- How to Create a Facebook Phishing Page ?
- Design Patterns: Understand The Importance With Real Life Examples
- V-Sync, FreeSync and G-Sync
- How To Become A Web Developer in 2020 - A Complete Guide
- Internet of Things and careers in IoT
- A simple understanding of Computer
- Dark Web Analytics and Interesting Facts Behind its Anonymity
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to email@example.com. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.