gemseo / algos / opt / core

An adapter from .OptimizationProblem to a pSeven ProblemGeneric.

Classes:

 CostType(value) The evaluation cost type of pSeven functions. PSevenProblem(problem[, ...]) Adapter of OptimizationProblem to da.p7core.gtopt.ProblemGeneric.

Bases: enum.Enum

The evaluation cost type of pSeven functions.

Attributes:

CHEAP = 'Cheap'
EXPENSIVE = 'Expensive'
class gemseo.algos.opt.core.pseven_problem_adapter.PSevenProblem(problem, evaluation_cost_type=None, expensive_evaluations=None, lower_bounds=None, upper_bounds=None, initial_point=None)[source]

Bases: da.p7core.gtopt.ProblemGeneric

The methods prepare_problem() and evaluate() are defined according to pSeven’s requirements. Refer to the API documentation of pSeven Core for more information.

Parameters
• problem (OptimizationProblem) – The optimization problem to be adapted to pSeven.

• evaluation_cost_type (Optional[Mapping[str, CostType]]) –

The evaluation cost type of each function of the problem. If None, the evaluation cost types default to “Cheap”.

By default it is set to None.

• expensive_evaluations (Optional[Mapping[str, int]]) –

The maximal number of expensive evaluations for each function of the problem. If None, this number is set automatically by pSeven.

By default it is set to None.

• lower_bounds (Optional[ndarray]) –

The lower bounds on the design variables. If None, the lower bounds are read from the design space.

By default it is set to None.

• upper_bounds (Optional[ndarray]) –

The upper bounds on the design variables. If None, the upper bounds are read from the design space.

By default it is set to None.

• initial_point (Optional[ndarray]) –

The initial values of the design variables. If None, the initial values are read from the design space.

By default it is set to None.

Return type

None

Methods:

 evaluate(queryx, querymask) Compute the values of the objectives and the constraints for pSeven. Initialize the problem for pSeven.

Compute the values of the objectives and the constraints for pSeven.

Parameters
• queryx (numpy.ndarray) – The points to evaluate. (2D-array where each row is a point.)

Returns

The evaluation result. (2D-array-like with one row per point.), The evaluation masks. (Idem.)

Raises

p7core.UserTerminated – If a termination criterion is reached.

Return type

Tuple[List[List[float]], List[numpy.ndarray]]

prepare_problem()[source]

Initialize the problem for pSeven.

Return type

None