desdeo_emo.population.Population
Module Contents
Classes
Helper class that provides a standard way to create an ABC using 

Helper class that provides a standard way to create an ABC using 
 class desdeo_emo.population.Population.BasePopulation(problem: desdeo_problem.MOProblem, pop_size: int, pop_params: Dict = None)[source]
Bases:
abc.ABC
Helper class that provides a standard way to create an ABC using inheritance.
 abstract add(offsprings: List  numpy.ndarray) List [source]
Evaluate and add offspring to the population.
 Parameters:
offsprings (Union[List, np.ndarray]) – List or array of individuals to be evaluated and added to the population.
 Returns:
Indices of the evaluated individuals
 Return type:
List
 abstract keep(indices: List)[source]
 Save the population members given by the list of indices for the next
generation. Delete the rest.
 Parameters:
indices (List) –
 List of indices of the population members to be kept for the next
generation.
 abstract delete(indices: List)[source]
 Delete the population members given by the list of indices for the next
generation. Keep the rest.
 Parameters:
indices (List) – List of indices of the population members to be deleted.
 abstract mate(mating_individuals: List = None, params: Dict = None) List  numpy.ndarray [source]
Perform crossover and mutation over the population members.
 Parameters:
mating_individuals (List, optional) –
 List of individuals taking part in recombination. By default None, which
recombinated all individuals in random order.
params (Dict, optional) – Parameters for the mutation or crossover operator, by default None.
 Returns:
The offspring population
 Return type:
Union[List, np.ndarray]
 class desdeo_emo.population.Population.Population(problem: desdeo_problem.MOProblem, pop_size: int, pop_params: Dict = None, use_surrogates: bool = False)[source]
Bases:
BasePopulation
Helper class that provides a standard way to create an ABC using inheritance.
 add(offsprings: List  numpy.ndarray, use_surrogates: bool = False)[source]
Evaluate and add offspring to the population.
 Parameters:
offsprings (Union[List, np.ndarray]) – List or array of individuals to be evaluated and added to the population.
use_surrogates (bool) – If true, use surrogate models rather than true function evaluations.
use_surrogates – If true, use surrogate models rather than true function evaluations.
 Returns:
Results of evaluation.
 Return type:
Results
 keep(indices: List)[source]
 Save the population members given by the list of indices for the next
generation. Delete the rest.
 Parameters:
indices (List) –
 List of indices of the population members to be kept for the next
generation.
 delete(indices: List)[source]
 Delete the population members given by the list of indices for the next
generation. Keep the rest.
 Parameters:
indices (List) – List of indices of the population members to be deleted.
 mate(mating_individuals: List = None) List  numpy.ndarray [source]
Perform crossover and mutation over the population members.
 Parameters:
mating_individuals (List, optional) –
 List of individuals taking part in recombination. By default None, which
recombinated all individuals in random order.
params (Dict, optional) – Parameters for the mutation or crossover operator, by default None.
 Returns:
The offspring population
 Return type:
Union[List, np.ndarray]
 replace(indices: List, individual: numpy.ndarray, evaluation: tuple)[source]
 Replace the population members given by the list of indices by the given individual and its evaluation.
Keep the rest of the population unchanged.
 Parameters:
indices (List) – List of indices of the population members to be replaced.
individual (np.ndarray) – Decision variables of the individual that will replace the positions given in the list.
evaluation (tuple) – Result of the evaluation of the objective function, constraints, etc. obtained using the evaluate method.