Module io.jenetics.ext
Package io.jenetics.ext.moea
Class NSGA2Selector<G extends Gene<?,G>,C extends Comparable<? super C>>
java.lang.Object
io.jenetics.ext.moea.NSGA2Selector<G,C>
- All Implemented Interfaces:
Selector<G,
C>
public class NSGA2Selector<G extends Gene<?,G>,C extends Comparable<? super C>>
extends Object
implements Selector<G,C>
This selector selects the first
count
elements of the population,
which has been sorted by the Crowded-Comparison Operator, as
described in
A Fast and Elitist Multiobjective Genetic Algorithm: NSGA-II
Reference: K. Deb, A. Pratap, S. Agarwal, and T. Meyarivan. 2002. A fast and elitist multiobjective genetic algorithm: NSGA-II. Trans. Evol. Comp 6, 2 (April 2002), 182-197. DOI= 10.1109/4235.996017
- Since:
- 4.1
- Version:
- 4.1
-
Constructor Summary
ConstructorDescriptionNSGA2Selector
(Comparator<? super C> dominance, ElementComparator<? super C> comparator, ElementDistance<? super C> distance, ToIntFunction<? super C> dimension) Creates a newNSGA2Selector
with the functions needed for handling the multi-objective result typeC
. -
Method Summary
-
Constructor Details
-
NSGA2Selector
public NSGA2Selector(Comparator<? super C> dominance, ElementComparator<? super C> comparator, ElementDistance<? super C> distance, ToIntFunction<? super C> dimension) Creates a newNSGA2Selector
with the functions needed for handling the multi-objective result typeC
. For theVec
classes, a selector is created like in the following example:new NSGA2Selector<>( Vec<T>::dominance, Vec<T>::compare, Vec<T>::distance, Vec<T>::length );
- Parameters:
dominance
- the pareto dominance comparatorcomparator
- the vector element comparatordistance
- the vector element distancedimension
- the dimensionality of vector typeC
- See Also:
-
-
Method Details
-
select
Description copied from interface:Selector
Select phenotypes from the Population.- Specified by:
select
in interfaceSelector<G extends Gene<?,
G>, C extends Comparable<? super C>> - Parameters:
population
- The population to select from.count
- The number of phenotypes to select.opt
- Determines whether the individuals with higher fitness values or lower fitness values must be selected. This parameter determines whether the GA maximizes or minimizes the fitness function.- Returns:
- The selected phenotypes (a new Population).
-
ofVec
Return a new selector for the given result typeV
. This method is a shortcut fornew NSGA2Selector<>( Vec<T>::dominance, Vec<T>::compare, Vec<T>::distance, Vec<T>::length );
- Type Parameters:
G
- the gene typeT
- the array type, e.g.double[]
V
- the multi object result type vector- Returns:
- a new selector for the given result type
V
-