desdeo_emo.selection.NSGAIII_select

Module Contents

Classes

NSGAIII_select

The NSGA-III selection operator. Code is heavily based on the version of nsga3 in

class desdeo_emo.selection.NSGAIII_select.NSGAIII_select(pop: desdeo_emo.population.Population.Population, n_survive: int = None, selection_type: str = None)[source]

Bases: desdeo_emo.selection.SelectionBase.InteractiveDecompositionSelectionBase

The NSGA-III selection operator. Code is heavily based on the version of nsga3 in

the pymoo package by msu-coinlab.

Parameters:
  • pop (Population) – [description]

  • n_survive (int, optional) – [description], by default None

do(pop: desdeo_emo.population.Population.Population) List[int][source]

Select individuals for mating for NSGA-III.

Parameters:

pop (Population) – The current population.

Returns:

List of indices of the selected individuals

Return type:

List[int]

get_extreme_points_c(F, ideal_point, extreme_points=None)[source]

Taken from pymoo

get_nadir_point(extreme_points, ideal_point, worst_point, worst_of_front, worst_of_population)[source]
niching(F, n_remaining, niche_count, niche_of_individuals, dist_to_niche)[source]
associate_to_niches(F, ref_dirs, ideal_point, nadir_point, utopian_epsilon=0.0)[source]
calc_niche_count(n_niches, niche_of_individuals)[source]
calc_perpendicular_distance(N, ref_dirs)[source]
_calculate_fitness(pop) numpy.ndarray[source]