gemseo / core

Show inherited members

mdo_scenario module

A scenario whose driver is an optimization algorithm.

class gemseo.core.mdo_scenario.MDOScenario(disciplines, formulation, objective_name, design_space, name=None, grammar_type=GrammarType.JSON, maximize_objective=False, **formulation_options)[source]

Bases: Scenario

A multidisciplinary scenario to be executed by an optimizer.

an MDOScenario is a particular Scenario whose driver is an optimization algorithm. This algorithm must be implemented in an OptimizationLibrary.

Initialize self. See help(type(self)) for accurate signature.

Parameters:
  • disciplines (Sequence[MDODiscipline]) – The disciplines used to compute the objective, constraints and observables from the design variables.

  • formulation (str) – The class name of the MDOFormulation, e.g. "MDF", "IDF" or "BiLevel".

  • objective_name (str | Sequence[str]) – The name(s) of the discipline output(s) used as objective. If multiple names are passed, the objective will be a vector.

  • design_space (DesignSpace) – The search space including at least the design variables (some formulations requires additional variables, e.g. IDF with the coupling variables).

  • name (str | None) – The name to be given to this scenario. If None, use the name of the class.

  • grammar_type (MDODiscipline.GrammarType) –

    The grammar for the scenario and the MDO formulation.

    By default it is set to “JSONGrammar”.

  • maximize_objective (bool) –

    Whether to maximize the objective.

    By default it is set to False.

  • **formulation_options (Any) – The options of the MDOFormulation.

MAX_ITER = 'max_iter'
X_OPT = 'x_opt'
cache: AbstractCache | None

The cache containing one or several executions of the discipline according to the cache policy.

clear_history_before_run: bool

If True, clear history before run.

data_processor: DataProcessor

A tool to pre- and post-process discipline data.

exec_for_lin: bool

Whether the last execution was due to a linearization.

formulation: MDOFormulation

The MDO formulation.

formulation_name: str

The name of the MDO formulation.

input_grammar: BaseGrammar

The input grammar.

jac: MutableMapping[str, MutableMapping[str, ndarray | csr_array | JacobianOperator]]

The Jacobians of the outputs wrt inputs.

The structure is {output: {input: matrix}}.

name: str

The name of the discipline.

optimization_result: OptimizationResult | None

The optimization result if the scenario has been executed; otherwise None.

output_grammar: BaseGrammar

The output grammar.

re_exec_policy: ReExecutionPolicy

The policy to re-execute the same discipline.

residual_variables: dict[str, str]

The output variables mapping to their inputs, to be considered as residuals; they shall be equal to zero.

run_solves_residuals: bool

Whether the run method shall solve the residuals.

Examples using MDOScenario

Example for exterior penalty applied to the Sobieski test case.

Example for exterior penalty applied to the Sobieski test case.

Examples for constraint aggregation

Examples for constraint aggregation

Pareto front on the Binh and Korn problem using a BiLevel formulation

Pareto front on the Binh and Korn problem using a BiLevel formulation

Create an MDO Scenario

Create an MDO Scenario

Gantt Chart

Gantt Chart

Store observables

Store observables

A from scratch example on the Sellar problem

A from scratch example on the Sellar problem

Application: Sobieski’s Super-Sonic Business Jet (MDO)

Application: Sobieski's Super-Sonic Business Jet (MDO)

GEMSEO in 10 minutes

GEMSEO in 10 minutes

MDO formulations for a toy example in aerostructure

MDO formulations for a toy example in aerostructure

Post-processing

Post-processing

Multistart optimization

Multistart optimization

Parametric scalable MDO problem - MDF

Parametric scalable MDO problem - MDF

Scalable problem

Scalable problem

BiLevel-based DOE on the Sobieski SSBJ test case

BiLevel-based DOE on the Sobieski SSBJ test case

BiLevel-based MDO on the Sobieski SSBJ test case

BiLevel-based MDO on the Sobieski SSBJ test case

IDF-based MDO on the Sobieski SSBJ test case

IDF-based MDO on the Sobieski SSBJ test case

MDF-based MDO on the Sobieski SSBJ test case

MDF-based MDO on the Sobieski SSBJ test case

Plug a surrogate discipline in a Scenario

Plug a surrogate discipline in a Scenario

Solve a 2D L-shape topology optimization problem

Solve a 2D L-shape topology optimization problem

Solve a 2D MBB topology optimization problem

Solve a 2D MBB topology optimization problem

Solve a 2D short cantilever topology optimization problem

Solve a 2D short cantilever topology optimization problem

Basic history

Basic history

Constraints history

Constraints history

Correlations

Correlations

Gradient Sensitivity

Gradient Sensitivity

Objective and constraints history

Objective and constraints history

Optimization History View

Optimization History View

Parallel coordinates

Parallel coordinates

Pareto front

Pareto front

Quadratic approximations

Quadratic approximations

Radar chart

Radar chart

Robustness

Robustness

Variables influence

Variables influence