iwopy.interfaces.pymoo.problem.MultiObjProblem

class iwopy.interfaces.pymoo.problem.MultiObjProblem[source]

Bases: SingleObjProblem

Wrapper around the pymoo problem for a multiple objectives.

At the moment this interface only supports pure int or pure float problems (not mixed).

Parameters:
  • problem (iwopy.core.Problem) – The iwopy problem to solve

  • vectorize (bool, optional) – Switch for vectorized calculations, wrt population individuals

problem

The iwopy problem to solve

Type:

iwopy.core.Problem

vectorize

Switch for vectorized calculations, wrt population individuals

Type:

bool

is_intprob

Flag for integer problems

Type:

bool

__init__(problem, vectorize)[source]
Parameters:
  • n_var (int) – Number of Variables

  • n_obj (int) – Number of Objectives

  • n_ieq_constr (int) – Number of Inequality Constraints

  • n_eq_constr (int) – Number of Equality Constraints

  • xl (np.array, float, int) – Lower bounds for the variables. if integer all lower bounds are equal.

  • xu (np.array, float, int) – Upper bounds for the variable. if integer all upper bounds are equal.

  • vtype (type) – The variable type. So far, just used as a type hint.

Methods

__init__(problem, vectorize)

param n_var:

Number of Variables

bounds()

do(X, return_values_of, *args, **kwargs)

evaluate(X, *args[, return_values_of, ...])

finalize(pymoo_results[, verbosity])

Finalize the problem.

has_bounds()

has_constraints()

ideal_point(*args[, use_cache, set_cache])

nadir_point(*args[, use_cache, set_cache])

name()

pareto_front(*args[, use_cache, set_cache])

pareto_set(*args[, use_cache, set_cache])

Attributes

n_constr

__init__(problem, vectorize)[source]
Parameters:
  • n_var (int) – Number of Variables

  • n_obj (int) – Number of Objectives

  • n_ieq_constr (int) – Number of Inequality Constraints

  • n_eq_constr (int) – Number of Equality Constraints

  • xl (np.array, float, int) – Lower bounds for the variables. if integer all lower bounds are equal.

  • xu (np.array, float, int) – Upper bounds for the variable. if integer all upper bounds are equal.

  • vtype (type) – The variable type. So far, just used as a type hint.

finalize(pymoo_results, verbosity=1)[source]

Finalize the problem.

Parameters:
  • pymoo_results (pymoo.Results) – The results from the solver

  • verbosity (int) – The verbosity level, 0 = silent

Returns:

results – The optimization results object

Return type:

iwopy.SingleObjOptResults