Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Genetic Algorithm - what is steady state selection?

I'm doing a final year project on genetic algorithms - specifically of the Dawkins Weasel type. I've done roulette selection and tournament selection, still to do steady state selection, but I'm not sure exactly what it is and references I find online are all pretty vague.

Does anyone know how it should be implemented? Any pointers would be great.

Many thanks.

like image 719
user522944 Avatar asked Jan 22 '11 13:01

user522944


People also ask

What is a steady state evolutionary algorithm?

Typically, the run of a genetic algorithm is divided into generations - each generation your selection and reproduction process replaces all (or at least most) of the population. In a steady state genetic algorithm you only replace a few individuals at a time.

What are the types of selection in genetic algorithm?

In this research I compared the runtime of the different selection types known as fitness proportionate selection, stochastic selection, tournament selection, and truncation selection. In order to do this, I created three different problems for a genetic algorithm to solve.

Which selection method is best in genetic algorithm?

1. The best selection method in this experiment is Roulette Whell because this selection method has small fitness values and is stable. 2. Fitness value which has been generated in each process in the genetic algorithm shows the index value of fruit.

What is elitist selection in genetic algorithm?

Elitist selection is a selection strategy where a limited number of individuals with the best fitness values are chosen to pass to the next generation, avoiding the crossover and mutation operators. Elitism prevents the random destruction by crossover or mutation operators of individuals with good genetics.


1 Answers

Typically, the run of a genetic algorithm is divided into generations - each generation your selection and reproduction process replaces all (or at least most) of the population. In a steady state genetic algorithm you only replace a few individuals at a time.

Use a standard selection technique to pick parents to produce these few offspring. Then randomly select the same number of individuals, kill them off, and replace them with the offspring (you could select unfit individuals for death, but that may wipe out population diversity in a non-trivial problem).

You should only evaluate fitness once per individual - after you evaluate the fitness, save it and then reuse that number in the future. Protip: when a new individual is created, flag it as being unevaluated, and then evaluate it the first time it's needed (this way, if an individual is created and then randomly selected for death before being used, you don't consume time evaluating its fitness).

A basic implementation should be fairly simple, but you can check out Essentials of Metaheuristics (pages 45-46, ebook available free).

like image 82
Joel Rein Avatar answered Oct 13 '22 15:10

Joel Rein