# Options for MDO Formulation algorithms¶

## BiLevel¶

Here are the options available in GEMSEO:

Options
• **mda_options (Any)

The options passed to the MDA at construction.

• apply_cstr_to_system (bool)

Whether the add_constraint() method adds the constraint to the optimization problem of the system scenario.

By default it is set to True.

• apply_cstr_tosub_scenarios (bool)

Whether the add_constraint() method adds the constraint to the optimization problem of the sub-scenario capable of computing the constraint.

By default it is set to True.

• design_space (DesignSpace)

The design space.

• disciplines (Sequence[MDODiscipline])

The disciplines.

• grammar_type (str)

The type of the input and output grammars, either MDODiscipline.JSON_GRAMMAR_TYPE or MDODiscipline.SIMPLE_GRAMMAR_TYPE.

By default it is set to JSONGrammar.

• maximize_objective (bool)

If True, the objective function is maximized.

By default it is set to False.

• mda_name (str)

The name of the MDA class to be used.

By default it is set to MDAChain.

If True and parallel_scenarios=True, the sub-scenarios are run in parallel using multi-threading; if False and parallel_scenarios=True, multi-processing is used.

By default it is set to True.

• objective_name (str)

The name of the objective function.

• parallel_scenarios (bool)

Whether to run the sub-scenarios in parallel.

By default it is set to False.

• reset_x0_before_opt (bool)

Whether to restart the sub optimizations from the initial guesses, otherwise warm start them.

By default it is set to False.

## DisciplinaryOpt¶

Here are the options available in GEMSEO:

Options
• design_space (DesignSpace)

The design space.

• disciplines (Sequence[MDODiscipline])

The disciplines.

• grammar_type (str)

The type of the input and output grammars, either MDODiscipline.JSON_GRAMMAR_TYPE or MDODiscipline.SIMPLE_GRAMMAR_TYPE.

By default it is set to JSONGrammar.

• maximize_objective (bool)

If True, the objective function is maximized.

By default it is set to False.

• objective_name (str)

The name of the objective function.

## IDF¶

Here are the options available in GEMSEO:

Options
• design_space (DesignSpace)

The design space.

• disciplines (Sequence[MDODiscipline])

The disciplines.

• grammar_type (str)

The type of the input and output grammars, either MDODiscipline.JSON_GRAMMAR_TYPE or MDODiscipline.SIMPLE_GRAMMAR_TYPE.

By default it is set to JSONGrammar.

• maximize_objective (bool)

If True, the objective function is maximized.

By default it is set to False.

• normalize_constraints (bool)

If True, the outputs of the coupling consistency constraints are scaled.

By default it is set to True.

• objective_name (str)

The name of the objective function.

• parallel_exec (bool)

If True, all constraints and objectives are computed in parallel. At every iteration, all disciplines are executed in parallel. Otherwise, a separate constraint is created for each discipline with couplings.

By default it is set to False.

• start_at_equilibrium (bool)

If True, an MDA is used to initialize the coupling variables.

By default it is set to False.

If True and parallel_exec=True, the disciplines are run in parallel using multi-threading. If False and parallel_exec=True, multi-processing is used.

By default it is set to True.

## MDF¶

Here are the options available in GEMSEO:

Options
• **mda_options (Any)

The options passed to the MDA at construction.

• design_space (DesignSpace)

The design space.

• disciplines (Sequence[MDODiscipline])

The disciplines.

• grammar_type (str)

The type of the input and output grammars, either MDODiscipline.JSON_GRAMMAR_TYPE or MDODiscipline.SIMPLE_GRAMMAR_TYPE.

By default it is set to JSONGrammar.

• main_mda_class (str)

The name of the class used for the main MDA, typically the MDAChain, but one can force to use MDAGaussSeidel for instance.

By default it is set to MDAChain.

• maximize_objective (bool)

If True, the objective function is maximized.

By default it is set to False.

• objective_name (str)

The name of the objective function.

• sub_mda_class (str)

The name of the class used for the sub-MDA.

By default it is set to MDAJacobi.