Core components of the PyMoo optimization model
mainPyMoo's optimization framework is built around several core classes that define the behavior of evolutionary algorithms. When building or extending algorithms, you will interact with these primary components:
Algorithm: The main class representing the optimization process.Sampling: Defines how the initial population is generated.Selection: Defines how individuals are chosen from a population for reproduction.Mutation: Defines how individuals are modified to maintain diversity.Crossover: Defines how offspring are created from parents.Survival: Defines how individuals are selected to survive to the next generation.Termination: Defines the criteria for stopping the optimization process.Indicator: Defines the quality metrics (e.g., hypervolume, Pareto front distance) used to evaluate populations.Population: A collection of individuals.Individual: A single candidate solution containing variables and objective values.Result: The object containing the output of the optimization process.