desdeo_emo.selection.IOPIS_APD
¶
Module Contents¶
Classes¶
The selection operator for the IOPIS/RVEA algorithm. |
-
class
desdeo_emo.selection.IOPIS_APD.
IOPIS_APD_Select
(time_penalty_function: Callable, scalarization_methods: List, alpha: float = 2)[source]¶ Bases:
desdeo_emo.selection.SelectionBase.SelectionBase
The selection operator for the IOPIS/RVEA algorithm.
- Parameters
pop (Population) – The population instance
time_penalty_function (Callable) – A function that returns the time component in the penalty function.
alpha (float, optional) – The RVEA alpha parameter, by default 2
-
do
(self, pop: desdeo_emo.population.Population.Population, vectors: desdeo_emo.utilities.ReferenceVectors.ReferenceVectors, reference_point: numpy.ndarray) → List[int][source]¶ Select individuals for mating on basis of Angle penalized distance.
- Parameters
pop (Population) – The current population.
vectors (ReferenceVectors) – Class instance containing reference vectors.
- Returns
List of indices of the selected individuals
- Return type
List[int]
-
_partial_penalty_factor
(self) → float[source]¶ - Calculate and return the partial penalty factor for APD calculation.
This calculation does not include the angle related terms, hence the name. If the calculated penalty is outside [0, 1], it will round it up/down to 0/1
- Returns
The partial penalty value
- Return type
float