Package org.opt4j.optimizers.ea
Provides the classes for a (Multi-Objective) Evolutionary Algorithm (MOEA).
-
Interface Summary Interface Description Coupler TheCoupler
determines couples that are used to create the offspring for a given set of possible parents.CrossoverRate TheCrossoverRate
is an interface for the crossover rate which is the probability of two individuals undergoing crossover.Mating TheMating
interface is used to create offspring from a given set of parents.Selector The interfaceSelector
is used to select a certain subset ofIndividual
s from aPopulation
by respecting certain metrics like their fitness. -
Class Summary Class Description BasicMatingModule ConstantCrossoverRate TheConstantCrossoverRate
represents a crossover rate that is constant during the whole optimization.CouplerDefault TheCouplerDefault
uses the pairs based on their index in the list:p0+p1,p2+p3,etc.
.CouplerDefaultModule Binds theCouplerDefault
as theCoupler
.CouplerModule Abstract module class for theCoupler
.CouplerRandom TheCouplerRandom
uses the set of parents and creates couples randomly from this set.CouplerRandomModule Binds theCouplerRandom
as theCoupler
.CouplerUnique TheCouplerUnique
uses the set of parents and creates couples randomly from this set.CouplerUniqueModule Binds theCouplerUnique
as theCoupler
.ElitismSelector TheElitismSelector
is a single objective elitism select.ElitismSelectorModule TheElitismSelectorModule
is the module that binds theElitismSelector
.EvolutionaryAlgorithm TheEvolutionaryAlgorithm
is an implementation of an Evolutionary Algorithm based on the operatorsCrossover
andMutate
.EvolutionaryAlgorithmModule TheEvolutionaryAlgorithmModule
configures theEvolutionaryAlgorithm
.Hypervolume TheHypervolume
, see "Zitzler, E., and Thiele, L. (1998): Multiobjective Optimization Using Evolutionary Algorithms - A Comparative Case Study.MatingCrossoverMutate TheMatingCrossoverMutate
creates offspring from a given set of parents by usingCrossover
andMutate
.MatingModule NonDominatedFronts TheNonDominatedFronts
sorts each evaluatedIndividual
into fronts based on the number of other individuals it is dominated by.Nsga2 Nsga2Module SelectorDefault The default selector is theNsga2
selector with thetournament
value 0.SelectorModule Abstract module class for theSelector
.SMSModule Module for the S-Metric Selection (Selector
) based on theHypervolume
contribution, see Emmerich et al. 2005.Spea2 TheSpea2
-Selector is a Java implementation of the SPEA2-MOEA, see "SPEA2: Improving the Strength Pareto Evolutionary Algorithm For Multiobjective Optimization, Eckart Zitzler, Marco Laumanns, and Lothar Thiele, In Evolutionary Methods for Design, Optimisation, and Control, pages 19–26, 2002.".Spea2Module TheSpea2Module
configures theSpea2
selector. -
Enum Summary Enum Description BasicMatingModule.CouplerType TheBasicMatingModule.CouplerType
determines the coupler operator to use.EvolutionaryAlgorithmModule.CrossoverRateType TheEvolutionaryAlgorithmModule.CrossoverRateType
allows to choose between different types of crossover rates.