Show/Hide Toolbars

RiverSoftAVG Products Help

Navigation: Code Documentation > GeneticAlgorithm > RSGeneticBase > Classes > TRSCustomGeneticComponent > Methods

TRSCustomGeneticComponent.Evolve(Integer) Method

Scroll Prev Top Next More

The Evolve method is the heart of the genetic component. The Evolve method is responsible for "breeding" the    Population towards an answer for your goal. Each generation, the Evolve method selects parents and then    Reproduces children for the new generation by using the genetic operations: first crossover, then mutation, and finally inversion. You can specify the number of generations to evolve or use the    FitnessCutoff,    GenerationLimit and    DiversityLimit properties to automatically stop the genetic process. Successive calls to the Evolve method continues the evolutionary process from where the Evolve method stopped (use    Initialize to reset the process). If this is your first call to Evolve, it automatically calls the Initialize method.

Specify the    Operations to control which operations are performed while evolving: crossover, mutation, and inversion operations. You can also specify the chances of each operation occurring every generation using the    CrossoverProbability,    MutationProbability, and    InversionProbability properties.

The    SelectionMethod property (or    OnSelection event) specifies how the genetic component selects individuals from the current generation to be used as parents of the next generation.

The FitnessCutoff property aborts the evolutionary process when any child meets or exceeds (if FitnessMethod is fmMaximize) or is less than (if FitnessMethod is fmMinimize) the cutoff value. The    UseFitnessCutoff property must be true to use the fitness cutoff.

The DiversityLimit property aborts the evolutionary process when the diversity of the children falls below the DiversityLimit, e.g., all the children are too alike to go any further. The    UseDiversityLimit property must be true to use the diversity limit.

The GenerationLimit property aborts the evolutionary process when the required number of generations have been evolved. The    UseGenerationLimit property must be true to use the generation limit.

Namespace: RSGeneticBase



Type: Integer

Return Value

Type: Integer

RiverSoftAVG Products Help © 1996-2016 Thomas G. Grubb