This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.

Set Maximum Number of Generations

The Generations option in Stopping criteria determines the maximum number of generations the genetic algorithm runs for—see Stopping Conditions for the Algorithm. Increasing the Generations option often improves the final result.

As an example, change the settings in the Optimization app as follows:

  • Set Fitness function to @rastriginsfcn.

  • Set Number of variables to 10.

  • Select Best fitness in the Plot functions pane.

  • Set Generations to Inf.

  • Set Stall generations to Inf.

  • Set Stall time limit to Inf.

Run the genetic algorithm for approximately 300 generations and click Stop. The following figure shows the resulting best fitness plot after 300 generations.

Note that the algorithm stalls at approximately generation number 170—that is, there is no immediate improvement in the fitness function after generation 170. If you restore Stall generations to its default value of 50, the algorithm could terminate at approximately generation number 220. If the genetic algorithm stalls repeatedly with the current setting for Generations, you can try increasing both the Generations and Stall generations options to improve your results. However, changing other options might be more effective.


When Mutation function is set to Gaussian, increasing the value of Generations might actually worsen the final result. This can occur because the Gaussian mutation function decreases the average amount of mutation in each generation by a factor that depends on the value specified in Generations. Consequently, the setting for Generations affects the behavior of the algorithm.

Was this topic helpful?