Answers.Body: <p>There are many ideas to escape from local optima in GA. One solution is selecting the population for the next iteration based on the probability that is defined based on the individual score. In that case, you have a chance to select a bad score individual to escape from the local optima.</p>
  <p>Another efficient solution is playing with the mutation rate to get rid of local optima. In that way, you can increase the rate smoothly, to find a proper rate.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-05-28T03:07:57.060Z
Answers.Text: Thank you. The fitness selection for the next generation is using the roulette wheel selection method. With respect to the mutation rate, I've tried 0.1% all the way up to 5%. The mutation range is from a Gaussian distribution, and I've tried parameters from 5% of the range up to 30% of the range. The implementations that do not use elites will consistently find a better solution. When I add elitism, it always gets stuck several degrees of fitness below the previously recorded maximums and just sort of hangs there.
Answers.UserDisplayName: Pittsburgh DBA
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-05-28T19:05:09.463Z
Answers.Text: @PittsburghDBA So, you can play with the selection probability of individuals. Try to use a different distribution function based on the individuals' scores.
Answers.UserDisplayName: OmG
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-05-28T00:37:41.090Z
Answers.LastActivityDate: 2021-05-28T00:37:41.090Z
Answers.UserDisplayName: OmG
Body: <p>I have a genetic algorithm which is working fairly well. It's got all the standard operators, including initial random population, crossover ratio, mutation rate, degree of mutation, etc.</p>
  <p>This works fairly well, and I have tuned and optimized the hyperparameters as much as possible, including some adaptive variants. The one thing that ruins the results EVERY TIME is when I implement elitism. It does not seem to matter if I include 1 elite, or a certain percentage of elites. I have tried 1% through 10%, tried a decay variable so that elites would only survive a certain number of generations, and numerous other tactics. Every single time I add elitism, the solution gets stuck in a local optimum so deeply that there is no escape.</p>
  <p>Most of the literature recommends to have elites, but the elites ruin my GA every single time, without fail.</p>
  <p>Ideas?</p>
  
Tags: <machine-learning><genetic-algorithms><evolutionary-algorithms><convergence><elitism>
Title: Does elitism cause premature convergence in genetic algorithms?
UserDisplayName: Pittsburgh DBA
ThreadText: # Does elitism cause premature convergence in genetic algorithms?
  
  (Asked by: username_0 on 2021-05-27)
  
  I have a genetic algorithm which is working fairly well. It's got all the standard operators, including initial random population, crossover ratio, mutation rate, degree of mutation, etc.
  
  This works fairly well, and I have tuned and optimized the hyperparameters as much as possible, including some adaptive variants. The one thing that ruins the results EVERY TIME is when I implement elitism. It does not seem to matter if I include 1 elite, or a certain percentage of elites. I have tried 1% through 10%, tried a decay variable so that elites would only survive a certain number of generations, and numerous other tactics. Every single time I add elitism, the solution gets stuck in a local optimum so deeply that there is no escape.
  
  Most of the literature recommends to have elites, but the elites ruin my GA every single time, without fail.
  
  Ideas?
  
  **Tags:** machine-learning, genetic-algorithms, evolutionary-algorithms, convergence, elitism
  
  ---
  
  ## 1 answers
  
  ### Answer by username_1 on 2021-05-28. Score: 3
  
  There are many ideas to escape from local optima in GA. One solution is selecting the population for the next iteration based on the probability that is defined based on the individual score. In that case, you have a chance to select a bad score individual to escape from the local optima.
  
  Another efficient solution is playing with the mutation rate to get rid of local optima. In that way, you can increase the rate smoothly, to find a proper rate.
  
  > **Comments:**
  > **username_0**: Thank you. The fitness selection for the next generation is using the roulette wheel selection method. With respect to the mutation rate, I've tried 0.1% all the way up to 5%. The mutation range is from a Gaussian distribution, and I've tried parameters from 5% of the range up to 30% of the range. The implementations that do not use elites will consistently find a better solution. When I add elitism, it always gets stuck several degrees of fitness below the previously recorded maximums and just sort of hangs there.  
  > **username_1**: @PittsburghDBA So, you can play with the selection probability of individuals. Try to use a different distribution function based on the individuals' scores.  
  
  ---
  
  