Other components

Note

Not all available components are compatible with each other. Refer to each component’s documentation for more details on required attributes.

Genetic operators

A genetic operator is a component used in genetic algorithms to generate offspring by using characteristics of parents solutions. In the framework, these operators are used in the component offspring_generator.

Abstract

moead_framework.core.genetic_operator.abstract_operator.GeneticOperator

Abstract class to implement a new genetic Operator

Offspring generator

The offspring generator is the component that manage all the process to generate new offspring by using components Parent Selector and Genetic operator for example.

moead_framework.core.offspring_generator.offspring_generator.OffspringGeneratorGeneric

Generate a new offspring by using 2 components: the parent selector and the genetic operator

moead_framework.core.offspring_generator.abstract_mating.OffspringGenerator

Abstract class to implement a new offspring generator

Parent Selector

The parent selector is the component used to select solutions in the neighborhood before to use genetic operators to generate new offspring.

moead_framework.core.parent_selector.one_random_and_current_parent_selector.OneRandomAndCurrentParentSelector

Select two parents: one random solution in the list of index available and the solution in the population linked to the current sub-problem visited.

moead_framework.core.parent_selector.two_random_and_current_parent_selector.TwoRandomAndCurrentParentSelector

Select three parents: two random solutions in the list of index and the solution in the population linked to the current sub-problem visited.

moead_framework.core.parent_selector.two_random_parent_selector.TwoRandomParentSelector

Select two parents randomly in the list of index

moead_framework.core.parent_selector.abstract_parent_selector.ParentSelector

Abstract class to implement a new parent selector

Mating Selector

The mating selector is the component used to select the set of solutions where we can find parents solutions.

moead_framework.core.selector.closest_neighbors_selector.ClosestNeighborsSelector

Return indexes of solutions in the neighborhood according to the current sub-problem visited.

moead_framework.core.selector.delta_selector.DeltaSelector

According to the probability delta (required attribute in the algorithm), the selector will select the neighborhood or the whole population.

moead_framework.core.selector.abstract_selector.MatingPoolSelector

Abstract class to implement a new mating-pool selector

Sub-problem selection strategy

The SPS Strategy [PDL+20a] is the component used to select sub-problems (or solutions of the population) that will be visited during the next generation of MOEA/D.

moead_framework.core.sps_strategy.sps_all.SpsAllSubproblems

The classic SPS Strategy, all sub-problems are visited at each generation

moead_framework.core.sps_strategy.sps_dra.SpsDra

The strategy used in MOEA/D-DRA.

moead_framework.core.sps_strategy.sps_random_and_boundaries.SpsRandomAndBoundaries

Select randomly lambda sub-problems at each generation with boundaries sub-problems

moead_framework.core.sps_strategy.abstract_sps.SpsStrategy

Abstract class to implement a new SPS Strategy

Termination criteria

The termination criteria is the component used to determine when the algorithm has to stop.

moead_framework.core.termination_criteria.max_evaluation.MaxEvaluation

Stop the algorithm with a criteria based on the number of solution evaluated.

moead_framework.core.termination_criteria.abstract_termination_criteria.TerminationCriteria

Abstract class to implement a new Termination Criteria