# MOO Algorithms¶

## Base Class¶

class `algorithm.moo.moo.``MOO`(problem, algo_cfg)[source]

Bases: `object`

Base class of MOO algorithm framework.

`__init__`(problem, algo_cfg)[source]

Initialize a MOO algorithm.

Parameters: problem (problem.Problem) – The original / real optimization problem. algo_cfg (dict) – Algorithm configurations.
`_solve`(pop)[source]

Solve for the offsprings given the parent population.

Parameters: pop (pymoo.model.population.Population) – The parent population. The offspring population. pymoo.model.population.Population
`solve`(X_init, Y_init)[source]

Solve the real multi-objective problem from initial data.

Parameters: X_init (np.array) – Initial design variables. Y_init (np.array) – Initial performance values. X_next (np.array) – Proposed design samples to evaluate next. Y_prediction (tuple) – (None, None) because there is no prediction in MOO algorithms.

## NSGA-II¶

class `algorithm.moo.algorithms.``NSGA2`(problem, algo_cfg)[source]

NSGA-II.

`__init__`(problem, algo_cfg)[source]

Initialize a MOO algorithm.

Parameters: problem (problem.Problem) – The original / real optimization problem. algo_cfg (dict) – Algorithm configurations.
`_solve`(pop)[source]

Solve for the offsprings given the parent population.

Parameters: pop (pymoo.model.population.Population) – The parent population. The offspring population. pymoo.model.population.Population

## MOEA/D¶

class `algorithm.moo.algorithms.``MOEAD`(problem, algo_cfg)[source]

MOEA/D.

`_solve`(pop)[source]

Solve for the offsprings given the parent population.

Parameters: pop (pymoo.model.population.Population) – The parent population. The offspring population. pymoo.model.population.Population