Package org.opt4j.optimizers.ea
Class Nsga2
- java.lang.Object
-
- org.opt4j.optimizers.ea.Nsga2
-
- All Implemented Interfaces:
Selector
- Direct Known Subclasses:
SelectorDefault
public class Nsga2 extends java.lang.Object implements Selector
TheNsga2
Selector
, see "A Fast Elitist Non-Dominated Sorting Genetic Algorithm for Multi-Objective Optimization: NSGA-II, K. Deb, Samir Agrawal, Amrit Pratap, and T. Meyarivan, Parallel MockProblem Solving from Nature, 2000".- See Also:
Nsga2Module
-
-
Field Summary
Fields Modifier and Type Field Description protected org.opt4j.core.common.archive.FrontDensityIndicator
indicator
protected java.util.Random
random
protected int
tournament
-
Constructor Summary
Constructors Constructor Description Nsga2(org.opt4j.core.common.random.Rand random, int tournament, org.opt4j.core.common.archive.FrontDensityIndicator indicator)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.Collection<org.opt4j.core.Individual>
getLames(int size, java.util.Collection<org.opt4j.core.Individual> population)
Selects a subset oflambda
Individual
s and returns it as a newCollection
.java.util.Collection<org.opt4j.core.Individual>
getParents(int mu, java.util.Collection<org.opt4j.core.Individual> population)
Selects a subset ofIndividual
s and returns it as a newCollection
.protected java.util.Map<org.opt4j.core.Individual,java.lang.Integer>
getRank(NonDominatedFronts fronts)
Determine the ranks of fronts.void
init(int maxsize)
Sets the maximal number ofIndividual
s.
-
-
-
Method Detail
-
init
public void init(int maxsize)
Description copied from interface:Selector
Sets the maximal number ofIndividual
s.
-
getParents
public java.util.Collection<org.opt4j.core.Individual> getParents(int mu, java.util.Collection<org.opt4j.core.Individual> population)
Description copied from interface:Selector
Selects a subset ofIndividual
s and returns it as a newCollection
. These so called parents can be used to form the next generation.- Specified by:
getParents
in interfaceSelector
- Parameters:
mu
- the number of parents to selectpopulation
- the list of individuals- Returns:
- the parents
-
getLames
public java.util.Collection<org.opt4j.core.Individual> getLames(int size, java.util.Collection<org.opt4j.core.Individual> population)
Description copied from interface:Selector
Selects a subset oflambda
Individual
s and returns it as a newCollection
. These individuals can be erased in the next generation.
-
getRank
protected java.util.Map<org.opt4j.core.Individual,java.lang.Integer> getRank(NonDominatedFronts fronts)
Determine the ranks of fronts.- Parameters:
fronts
- the fronts- Returns:
- the ranks
-
-