MDO formulations for a toy example in aerostructure

from __future__ import annotations

from gemseo import configure_logger
from gemseo import create_discipline
from gemseo import create_scenario
from gemseo import generate_n2_plot
from gemseo.problems.aerostructure.aerostructure_design_space import (
    AerostructureDesignSpace,
)

configure_logger()


algo_options = {
    "xtol_rel": 1e-8,
    "xtol_abs": 1e-8,
    "ftol_rel": 1e-8,
    "ftol_abs": 1e-8,
    "ineq_tolerance": 1e-5,
    "eq_tolerance": 1e-3,
}

Create discipline

First, we create disciplines (aero, structure, mission) with dummy formulas using the AnalyticDiscipline class.

aero_formulas = {
    "drag": "0.1*((sweep/360)**2 + 200 + thick_airfoils**2-thick_airfoils -4*displ)",
    "forces": "10*sweep + 0.2*thick_airfoils-0.2*displ",
    "lift": "(sweep + 0.2*thick_airfoils-2.*displ)/3000.",
}
aerodynamics = create_discipline(
    "AnalyticDiscipline", name="Aerodynamics", expressions=aero_formulas
)
struc_formulas = {
    "mass": "4000*(sweep/360)**3 + 200000 + 100*thick_panels +200.0*forces",
    "reserve_fact": "-3*sweep -6*thick_panels+0.1*forces+55",
    "displ": "2*sweep + 3*thick_panels-2.*forces",
}
structure = create_discipline(
    "AnalyticDiscipline", name="Structure", expressions=struc_formulas
)
mission_formulas = {"range": "8e11*lift/(mass*drag)"}
mission = create_discipline(
    "AnalyticDiscipline", name="Mission", expressions=mission_formulas
)

disciplines = [aerodynamics, structure, mission]

We can see that structure and aerodynamics are strongly coupled:

generate_n2_plot(disciplines, save=False, show=True)
plot aerostructure

Create an MDO scenario with MDF formulation

Then, we create an MDO scenario based on the MDF formulation

design_space = AerostructureDesignSpace()
scenario = create_scenario(
    disciplines,
    "MDF",
    "range",
    design_space,
    maximize_objective=True,
)
scenario.add_constraint("reserve_fact", constraint_type="ineq", value=0.5)
scenario.add_constraint("lift", value=0.5)
scenario.execute({"algo": "NLOPT_SLSQP", "max_iter": 10, "algo_options": algo_options})
scenario.post_process("OptHistoryView", save=False, show=True)
  • Evolution of the optimization variables
  • Evolution of the objective value
  • Distance to the optimum
  • Hessian diagonal approximation
  • Evolution of the inequality constraints
  • Evolution of the equality constraints
/home/docs/checkouts/readthedocs.org/user_builds/gemseo/envs/5.3.0/lib/python3.9/site-packages/gemseo/algos/design_space.py:467: ComplexWarning: Casting complex values to real discards the imaginary part
  self.__current_value[name] = array_value.astype(
    INFO - 13:54:52: Variable reserve_fact was removed from the Design Space, it is not an input of any discipline.
    INFO - 13:54:52:
    INFO - 13:54:52: *** Start MDOScenario execution ***
    INFO - 13:54:52: MDOScenario
    INFO - 13:54:52:    Disciplines: Aerodynamics Mission Structure
    INFO - 13:54:52:    MDO formulation: MDF
    INFO - 13:54:52: Optimization problem:
    INFO - 13:54:52:    minimize -range(thick_airfoils, thick_panels, sweep)
    INFO - 13:54:52:    with respect to sweep, thick_airfoils, thick_panels
    INFO - 13:54:52:    subject to constraints:
    INFO - 13:54:52:       reserve_fact(thick_airfoils, thick_panels, sweep) <= 0.5
    INFO - 13:54:52:       lift(thick_airfoils, thick_panels, sweep) == 0.5
    INFO - 13:54:52:    over the design space:
    INFO - 13:54:52:       +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:52:       | Name           | Lower bound | Value | Upper bound | Type  |
    INFO - 13:54:52:       +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:52:       | thick_airfoils |      5      |   15  |      25     | float |
    INFO - 13:54:52:       | thick_panels   |      1      |   3   |      20     | float |
    INFO - 13:54:52:       | sweep          |      10     |   25  |      35     | float |
    INFO - 13:54:52:       +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:52: Solving optimization problem with algorithm NLOPT_SLSQP:
    INFO - 13:54:52:     10%|█         | 1/10 [00:00<00:00, 32.56 it/sec, obj=-4.25e+3]
    INFO - 13:54:52:     20%|██        | 2/10 [00:00<00:00, 12.26 it/sec, obj=-4.51e+3]
    INFO - 13:54:52:     30%|███       | 3/10 [00:00<00:00, 14.26 it/sec, obj=-4.51e+3]
    INFO - 13:54:52:     40%|████      | 4/10 [00:00<00:00, 18.93 it/sec, obj=Not evaluated]
    INFO - 13:54:52: Optimization result:
    INFO - 13:54:52:    Optimizer info:
    INFO - 13:54:52:       Status: None
    INFO - 13:54:52:       Message: Successive iterates of the design variables are closer than xtol_rel or xtol_abs. GEMSEO Stopped the driver
    INFO - 13:54:52:       Number of calls to the objective function by the optimizer: 4
    INFO - 13:54:52:    Solution:
    INFO - 13:54:52:       The solution is feasible.
    INFO - 13:54:52:       Objective: -4509.505446993421
    INFO - 13:54:52:       Standardized constraints:
    INFO - 13:54:52:          [lift-0.5] = 8.926193117986259e-14
    INFO - 13:54:52:          [reserve_fact-0.5] = 6.522076034798374e-08
    INFO - 13:54:52:       Design space:
    INFO - 13:54:52:          +----------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:52:          | Name           | Lower bound |       Value       | Upper bound | Type  |
    INFO - 13:54:52:          +----------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:52:          | thick_airfoils |      5      |         5         |      25     | float |
    INFO - 13:54:52:          | thick_panels   |      1      |  3.22558921528402 |      20     | float |
    INFO - 13:54:52:          | sweep          |      10     | 24.99326599158099 |      35     | float |
    INFO - 13:54:52:          +----------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:52: *** End MDOScenario execution (time: 0:00:00.227515) ***

<gemseo.post.opt_history_view.OptHistoryView object at 0x7f28db53b2e0>

Create an MDO scenario with bilevel formulation

Then, we create an MDO scenario based on the bilevel formulation

sub_scenario_options = {
    "max_iter": 5,
    "algo": "NLOPT_SLSQP",
    "algo_options": algo_options,
}
design_space_ref = AerostructureDesignSpace()
/home/docs/checkouts/readthedocs.org/user_builds/gemseo/envs/5.3.0/lib/python3.9/site-packages/gemseo/algos/design_space.py:467: ComplexWarning: Casting complex values to real discards the imaginary part
  self.__current_value[name] = array_value.astype(

Create the aeronautics sub-scenario

For this purpose, we create a first sub-scenario to maximize the range with respect to the thick airfoils, based on the aerodynamics discipline.

aero_scenario = create_scenario(
    [aerodynamics, mission],
    "DisciplinaryOpt",
    "range",
    design_space_ref.filter(["thick_airfoils"], copy=True),
    maximize_objective=True,
)
aero_scenario.default_inputs = sub_scenario_options

Create the structure sub-scenario

We create a second sub-scenario to maximize the range with respect to the thick panels, based on the structure discipline.

struct_scenario = create_scenario(
    [structure, mission],
    "DisciplinaryOpt",
    "range",
    design_space_ref.filter(["thick_panels"], copy=True),
    maximize_objective=True,
)
struct_scenario.default_inputs = sub_scenario_options

Create the system scenario

Lastly, we build a system scenario to maximize the range with respect to the sweep, which is a shared variable, based on the previous sub-scenarios.

design_space_system = design_space_ref.filter(["sweep"], copy=True)
system_scenario = create_scenario(
    [aero_scenario, struct_scenario, mission],
    "BiLevel",
    "range",
    design_space_system,
    maximize_objective=True,
    inner_mda_name="MDAJacobi",
    tolerance=1e-8,
)
system_scenario.add_constraint("reserve_fact", constraint_type="ineq", value=0.5)
system_scenario.add_constraint("lift", value=0.5)
system_scenario.execute({
    "algo": "NLOPT_COBYLA",
    "max_iter": 7,
    "algo_options": algo_options,
})
system_scenario.post_process("OptHistoryView", save=False, show=True)
  • Evolution of the optimization variables
  • Evolution of the objective value
  • Distance to the optimum
  • Evolution of the inequality constraints
  • Evolution of the equality constraints
    INFO - 13:54:53:
    INFO - 13:54:53: *** Start MDOScenario execution ***
    INFO - 13:54:53: MDOScenario
    INFO - 13:54:53:    Disciplines: MDOScenario MDOScenario Mission
    INFO - 13:54:53:    MDO formulation: BiLevel
    INFO - 13:54:53: Optimization problem:
    INFO - 13:54:53:    minimize -range(sweep)
    INFO - 13:54:53:    with respect to sweep
    INFO - 13:54:53:    subject to constraints:
    INFO - 13:54:53:       reserve_fact(sweep) <= 0.5
    INFO - 13:54:53:       lift(sweep) == 0.5
    INFO - 13:54:53:    over the design space:
    INFO - 13:54:53:       +-------+-------------+-------+-------------+-------+
    INFO - 13:54:53:       | Name  | Lower bound | Value | Upper bound | Type  |
    INFO - 13:54:53:       +-------+-------------+-------+-------------+-------+
    INFO - 13:54:53:       | sweep |      10     |   25  |      35     | float |
    INFO - 13:54:53:       +-------+-------------+-------+-------------+-------+
    INFO - 13:54:53: Solving optimization problem with algorithm NLOPT_COBYLA:
    INFO - 13:54:53:
    INFO - 13:54:53: *** Start MDOScenario execution ***
    INFO - 13:54:53: MDOScenario
    INFO - 13:54:53:    Disciplines: Aerodynamics Mission
    INFO - 13:54:53:    MDO formulation: DisciplinaryOpt
    INFO - 13:54:53: Optimization problem:
    INFO - 13:54:53:    minimize -range(thick_airfoils)
    INFO - 13:54:53:    with respect to thick_airfoils
    INFO - 13:54:53:    subject to constraints:
    INFO - 13:54:53:       lift(thick_airfoils) == 0.5
    INFO - 13:54:53:    over the design space:
    INFO - 13:54:53:       +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53:       | Name           | Lower bound | Value | Upper bound | Type  |
    INFO - 13:54:53:       +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53:       | thick_airfoils |      5      |   15  |      25     | float |
    INFO - 13:54:53:       +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53: Solving optimization problem with algorithm NLOPT_SLSQP:
    INFO - 13:54:53:     20%|██        | 1/5 [00:00<00:00, 164.25 it/sec, obj=-4.27e+3]
 WARNING - 13:54:53: Optimization found no feasible point !  The least infeasible point is selected.
    INFO - 13:54:53:     40%|████      | 2/5 [00:00<00:00, 167.07 it/sec, obj=-4.51e+3]
    INFO - 13:54:53: Optimization result:
    INFO - 13:54:53:    Optimizer info:
    INFO - 13:54:53:       Status: 5
    INFO - 13:54:53:       Message: NLOPT_MAXEVAL_REACHED: Optimization stopped because maxeval (above) was reached
    INFO - 13:54:53:       Number of calls to the objective function by the optimizer: 8
    INFO - 13:54:53:    Solution:
 WARNING - 13:54:53:       The solution is not feasible.
    INFO - 13:54:53:       Objective: -4513.429203824652
    INFO - 13:54:53:       Standardized constraints:
    INFO - 13:54:53:          [lift-0.5] = 0.008666666666666822
    INFO - 13:54:53:       Design space:
    INFO - 13:54:53:          +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53:          | Name           | Lower bound | Value | Upper bound | Type  |
    INFO - 13:54:53:          +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53:          | thick_airfoils |      5      |   5   |      25     | float |
    INFO - 13:54:53:          +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53: *** End MDOScenario execution (time: 0:00:00.026274) ***
    INFO - 13:54:53:
    INFO - 13:54:53: *** Start MDOScenario execution ***
    INFO - 13:54:53: MDOScenario
    INFO - 13:54:53:    Disciplines: Mission Structure
    INFO - 13:54:53:    MDO formulation: DisciplinaryOpt
    INFO - 13:54:53: Optimization problem:
    INFO - 13:54:53:    minimize -range(thick_panels)
    INFO - 13:54:53:    with respect to thick_panels
    INFO - 13:54:53:    subject to constraints:
    INFO - 13:54:53:       reserve_fact(thick_panels) <= 0.5
    INFO - 13:54:53:    over the design space:
    INFO - 13:54:53:       +--------------+-------------+-------+-------------+-------+
    INFO - 13:54:53:       | Name         | Lower bound | Value | Upper bound | Type  |
    INFO - 13:54:53:       +--------------+-------------+-------+-------------+-------+
    INFO - 13:54:53:       | thick_panels |      1      |   3   |      20     | float |
    INFO - 13:54:53:       +--------------+-------------+-------+-------------+-------+
    INFO - 13:54:53: Solving optimization problem with algorithm NLOPT_SLSQP:
    INFO - 13:54:53:     20%|██        | 1/5 [00:00<00:00, 194.88 it/sec, obj=-4.51e+3]
   ERROR - 13:54:53: NLopt run failed: NLopt roundoff-limited, RoundoffLimited
Traceback (most recent call last):
  File "/home/docs/checkouts/readthedocs.org/user_builds/gemseo/envs/5.3.0/lib/python3.9/site-packages/gemseo/algos/opt/lib_nlopt.py", line 498, in _run
    nlopt_problem.optimize(x_0.real)
  File "/home/docs/checkouts/readthedocs.org/user_builds/gemseo/envs/5.3.0/lib/python3.9/site-packages/nlopt/nlopt.py", line 335, in optimize
    return _nlopt.opt_optimize(self, *args)
nlopt.RoundoffLimited: NLopt roundoff-limited
    INFO - 13:54:53:     40%|████      | 2/5 [00:00<00:00, 187.11 it/sec, obj=-4.5e+3]
    INFO - 13:54:53: Optimization result:
    INFO - 13:54:53:    Optimizer info:
    INFO - 13:54:53:       Status: None
    INFO - 13:54:53:       Message:  GEMSEO Stopped the driver
    INFO - 13:54:53:       Number of calls to the objective function by the optimizer: 3
    INFO - 13:54:53:    Solution:
    INFO - 13:54:53:       The solution is feasible.
    INFO - 13:54:53:       Objective: -4504.955637332531
    INFO - 13:54:53:       Standardized constraints:
    INFO - 13:54:53:          [reserve_fact-0.5] = 1.062133492268913e-09
    INFO - 13:54:53:       Design space:
    INFO - 13:54:53:          +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53:          | Name         | Lower bound |       Value       | Upper bound | Type  |
    INFO - 13:54:53:          +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53:          | thick_panels |      1      | 3.266666666489645 |      20     | float |
    INFO - 13:54:53:          +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53: *** End MDOScenario execution (time: 0:00:00.024578) ***
    INFO - 13:54:53:     14%|█▍        | 1/7 [00:00<00:00,  8.90 it/sec, obj=-4.51e+3]
    INFO - 13:54:53:
    INFO - 13:54:53: *** Start MDOScenario execution ***
    INFO - 13:54:53: MDOScenario
    INFO - 13:54:53:    Disciplines: Aerodynamics Mission
    INFO - 13:54:53:    MDO formulation: DisciplinaryOpt
    INFO - 13:54:53: Optimization problem:
    INFO - 13:54:53:    minimize -range(thick_airfoils)
    INFO - 13:54:53:    with respect to thick_airfoils
    INFO - 13:54:53:    subject to constraints:
    INFO - 13:54:53:       lift(thick_airfoils) == 0.5
    INFO - 13:54:53:    over the design space:
    INFO - 13:54:53:       +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53:       | Name           | Lower bound | Value | Upper bound | Type  |
    INFO - 13:54:53:       +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53:       | thick_airfoils |      5      |   5   |      25     | float |
    INFO - 13:54:53:       +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53: Solving optimization problem with algorithm NLOPT_SLSQP:
    INFO - 13:54:53:     20%|██        | 1/5 [00:00<00:00, 961.56 it/sec, obj=-4.27e+3]
 WARNING - 13:54:53: Optimization found no feasible point !  The least infeasible point is selected.
    INFO - 13:54:53: Optimization result:
    INFO - 13:54:53:    Optimizer info:
    INFO - 13:54:53:       Status: 5
    INFO - 13:54:53:       Message: NLOPT_MAXEVAL_REACHED: Optimization stopped because maxeval (above) was reached
    INFO - 13:54:53:       Number of calls to the objective function by the optimizer: 8
    INFO - 13:54:53:    Solution:
 WARNING - 13:54:53:       The solution is not feasible.
    INFO - 13:54:53:       Objective: -4267.910320106268
    INFO - 13:54:53:       Standardized constraints:
    INFO - 13:54:53:          [lift-0.5] = 0.12708333333392374
    INFO - 13:54:53:       Design space:
    INFO - 13:54:53:          +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53:          | Name           | Lower bound | Value | Upper bound | Type  |
    INFO - 13:54:53:          +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53:          | thick_airfoils |      5      |   5   |      25     | float |
    INFO - 13:54:53:          +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53: *** End MDOScenario execution (time: 0:00:00.016449) ***
    INFO - 13:54:53:
    INFO - 13:54:53: *** Start MDOScenario execution ***
    INFO - 13:54:53: MDOScenario
    INFO - 13:54:53:    Disciplines: Mission Structure
    INFO - 13:54:53:    MDO formulation: DisciplinaryOpt
    INFO - 13:54:53: Optimization problem:
    INFO - 13:54:53:    minimize -range(thick_panels)
    INFO - 13:54:53:    with respect to thick_panels
    INFO - 13:54:53:    subject to constraints:
    INFO - 13:54:53:       reserve_fact(thick_panels) <= 0.5
    INFO - 13:54:53:    over the design space:
    INFO - 13:54:53:       +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53:       | Name         | Lower bound |       Value       | Upper bound | Type  |
    INFO - 13:54:53:       +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53:       | thick_panels |      1      | 3.266666666489645 |      20     | float |
    INFO - 13:54:53:       +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53: Solving optimization problem with algorithm NLOPT_SLSQP:
    INFO - 13:54:53:     20%|██        | 1/5 [00:00<00:00, 1127.80 it/sec, obj=-4.27e+3]
   ERROR - 13:54:53: NLopt run failed: NLopt roundoff-limited, RoundoffLimited
Traceback (most recent call last):
  File "/home/docs/checkouts/readthedocs.org/user_builds/gemseo/envs/5.3.0/lib/python3.9/site-packages/gemseo/algos/opt/lib_nlopt.py", line 498, in _run
    nlopt_problem.optimize(x_0.real)
  File "/home/docs/checkouts/readthedocs.org/user_builds/gemseo/envs/5.3.0/lib/python3.9/site-packages/nlopt/nlopt.py", line 335, in optimize
    return _nlopt.opt_optimize(self, *args)
nlopt.RoundoffLimited: NLopt roundoff-limited
    INFO - 13:54:53:     40%|████      | 2/5 [00:00<00:00, 348.91 it/sec, obj=-4.27e+3]
    INFO - 13:54:53: Optimization result:
    INFO - 13:54:53:    Optimizer info:
    INFO - 13:54:53:       Status: None
    INFO - 13:54:53:       Message:  GEMSEO Stopped the driver
    INFO - 13:54:53:       Number of calls to the objective function by the optimizer: 3
    INFO - 13:54:53:    Solution:
    INFO - 13:54:53:       The solution is feasible.
    INFO - 13:54:53:       Objective: -4270.047650043281
    INFO - 13:54:53:       Standardized constraints:
    INFO - 13:54:53:          [reserve_fact-0.5] = 3.0379254667423083e-10
    INFO - 13:54:53:       Design space:
    INFO - 13:54:53:          +--------------+-------------+------------------+-------------+-------+
    INFO - 13:54:53:          | Name         | Lower bound |      Value       | Upper bound | Type  |
    INFO - 13:54:53:          +--------------+-------------+------------------+-------------+-------+
    INFO - 13:54:53:          | thick_panels |      1      | 1.76499999995232 |      20     | float |
    INFO - 13:54:53:          +--------------+-------------+------------------+-------------+-------+
    INFO - 13:54:53: *** End MDOScenario execution (time: 0:00:00.017746) ***
    INFO - 13:54:53:     29%|██▊       | 2/7 [00:00<00:00, 12.24 it/sec, obj=-4.27e+3]
    INFO - 13:54:53:
    INFO - 13:54:53: *** Start MDOScenario execution ***
    INFO - 13:54:53: MDOScenario
    INFO - 13:54:53:    Disciplines: Aerodynamics Mission
    INFO - 13:54:53:    MDO formulation: DisciplinaryOpt
    INFO - 13:54:53: Optimization problem:
    INFO - 13:54:53:    minimize -range(thick_airfoils)
    INFO - 13:54:53:    with respect to thick_airfoils
    INFO - 13:54:53:    subject to constraints:
    INFO - 13:54:53:       lift(thick_airfoils) == 0.5
    INFO - 13:54:53:    over the design space:
    INFO - 13:54:53:       +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53:       | Name           | Lower bound | Value | Upper bound | Type  |
    INFO - 13:54:53:       +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53:       | thick_airfoils |      5      |   5   |      25     | float |
    INFO - 13:54:53:       +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53: Solving optimization problem with algorithm NLOPT_SLSQP:
    INFO - 13:54:53:     20%|██        | 1/5 [00:00<00:00, 905.90 it/sec, obj=-4.53e+3]
    INFO - 13:54:53:     40%|████      | 2/5 [00:00<00:00, 310.84 it/sec, obj=-3.83e+3]
    INFO - 13:54:53:     60%|██████    | 3/5 [00:00<00:00, 449.36 it/sec, obj=-4.43e+3]
    INFO - 13:54:53:     80%|████████  | 4/5 [00:00<00:00, 479.40 it/sec, obj=-4.5e+3]
    INFO - 13:54:53:    100%|██████████| 5/5 [00:00<00:00, 501.42 it/sec, obj=-4.51e+3]
 WARNING - 13:54:53: Optimization found no feasible point !  The least infeasible point is selected.
    INFO - 13:54:53: Optimization result:
    INFO - 13:54:53:    Optimizer info:
    INFO - 13:54:53:       Status: None
    INFO - 13:54:53:       Message: Maximum number of iterations reached. GEMSEO Stopped the driver
    INFO - 13:54:53:       Number of calls to the objective function by the optimizer: 7
    INFO - 13:54:53:    Solution:
 WARNING - 13:54:53:       The solution is not feasible.
    INFO - 13:54:53:       Objective: -3831.807218266315
    INFO - 13:54:53:       Standardized constraints:
    INFO - 13:54:53:          [lift-0.5] = -0.0023374064679561046
    INFO - 13:54:53:       Design space:
    INFO - 13:54:53:          +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53:          | Name           | Lower bound | Value | Upper bound | Type  |
    INFO - 13:54:53:          +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53:          | thick_airfoils |      5      |   25  |      25     | float |
    INFO - 13:54:53:          +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53: *** End MDOScenario execution (time: 0:00:00.022765) ***
    INFO - 13:54:53:
    INFO - 13:54:53: *** Start MDOScenario execution ***
    INFO - 13:54:53: MDOScenario
    INFO - 13:54:53:    Disciplines: Mission Structure
    INFO - 13:54:53:    MDO formulation: DisciplinaryOpt
    INFO - 13:54:53: Optimization problem:
    INFO - 13:54:53:    minimize -range(thick_panels)
    INFO - 13:54:53:    with respect to thick_panels
    INFO - 13:54:53:    subject to constraints:
    INFO - 13:54:53:       reserve_fact(thick_panels) <= 0.5
    INFO - 13:54:53:    over the design space:
    INFO - 13:54:53:       +--------------+-------------+------------------+-------------+-------+
    INFO - 13:54:53:       | Name         | Lower bound |      Value       | Upper bound | Type  |
    INFO - 13:54:53:       +--------------+-------------+------------------+-------------+-------+
    INFO - 13:54:53:       | thick_panels |      1      | 1.76499999995232 |      20     | float |
    INFO - 13:54:53:       +--------------+-------------+------------------+-------------+-------+
    INFO - 13:54:53: Solving optimization problem with algorithm NLOPT_SLSQP:
    INFO - 13:54:53:     20%|██        | 1/5 [00:00<00:00, 868.03 it/sec, obj=-3.82e+3]
    INFO - 13:54:53:     40%|████      | 2/5 [00:00<00:00, 287.05 it/sec, obj=-3.82e+3]
    INFO - 13:54:53:     60%|██████    | 3/5 [00:00<00:00, 317.27 it/sec, obj=-3.82e+3]
    INFO - 13:54:53:     80%|████████  | 4/5 [00:00<00:00, 412.66 it/sec, obj=-3.82e+3]
    INFO - 13:54:53: Optimization result:
    INFO - 13:54:53:    Optimizer info:
    INFO - 13:54:53:       Status: None
    INFO - 13:54:53:       Message: Successive iterates of the objective function are closer than ftol_rel or ftol_abs. GEMSEO Stopped the driver
    INFO - 13:54:53:       Number of calls to the objective function by the optimizer: 5
    INFO - 13:54:53:    Solution:
    INFO - 13:54:53:       The solution is feasible.
    INFO - 13:54:53:       Objective: -3818.5902855979184
    INFO - 13:54:53:       Standardized constraints:
    INFO - 13:54:53:          [reserve_fact-0.5] = 3.0950531026974204e-09
    INFO - 13:54:53:       Design space:
    INFO - 13:54:53:          +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53:          | Name         | Lower bound |       Value       | Upper bound | Type  |
    INFO - 13:54:53:          +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53:          | thick_panels |      1      | 3.414591822343108 |      20     | float |
    INFO - 13:54:53:          +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53: *** End MDOScenario execution (time: 0:00:00.022347) ***
    INFO - 13:54:53:     43%|████▎     | 3/7 [00:00<00:00, 13.20 it/sec, obj=-3.82e+3]
    INFO - 13:54:53:
    INFO - 13:54:53: *** Start MDOScenario execution ***
    INFO - 13:54:53: MDOScenario
    INFO - 13:54:53:    Disciplines: Aerodynamics Mission
    INFO - 13:54:53:    MDO formulation: DisciplinaryOpt
    INFO - 13:54:53: Optimization problem:
    INFO - 13:54:53:    minimize -range(thick_airfoils)
    INFO - 13:54:53:    with respect to thick_airfoils
    INFO - 13:54:53:    subject to constraints:
    INFO - 13:54:53:       lift(thick_airfoils) == 0.5
    INFO - 13:54:53:    over the design space:
    INFO - 13:54:53:       +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53:       | Name           | Lower bound | Value | Upper bound | Type  |
    INFO - 13:54:53:       +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53:       | thick_airfoils |      5      |   25  |      25     | float |
    INFO - 13:54:53:       +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53: Solving optimization problem with algorithm NLOPT_SLSQP:
    INFO - 13:54:53:     20%|██        | 1/5 [00:00<00:00, 896.22 it/sec, obj=-3.82e+3]
 WARNING - 13:54:53: Optimization found no feasible point !  The least infeasible point is selected.
    INFO - 13:54:53:     40%|████      | 2/5 [00:00<00:00, 313.44 it/sec, obj=-4.49e+3]
    INFO - 13:54:53: Optimization result:
    INFO - 13:54:53:    Optimizer info:
    INFO - 13:54:53:       Status: 5
    INFO - 13:54:53:       Message: NLOPT_MAXEVAL_REACHED: Optimization stopped because maxeval (above) was reached
    INFO - 13:54:53:       Number of calls to the objective function by the optimizer: 8
    INFO - 13:54:53:    Solution:
 WARNING - 13:54:53:       The solution is not feasible.
    INFO - 13:54:53:       Objective: -4490.540174494246
    INFO - 13:54:53:       Standardized constraints:
    INFO - 13:54:53:          [lift-0.5] = 0.00918103190667341
    INFO - 13:54:53:       Design space:
    INFO - 13:54:53:          +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53:          | Name           | Lower bound | Value | Upper bound | Type  |
    INFO - 13:54:53:          +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53:          | thick_airfoils |      5      |   5   |      25     | float |
    INFO - 13:54:53:          +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53: *** End MDOScenario execution (time: 0:00:00.018633) ***
    INFO - 13:54:53:
    INFO - 13:54:53: *** Start MDOScenario execution ***
    INFO - 13:54:53: MDOScenario
    INFO - 13:54:53:    Disciplines: Mission Structure
    INFO - 13:54:53:    MDO formulation: DisciplinaryOpt
    INFO - 13:54:53: Optimization problem:
    INFO - 13:54:53:    minimize -range(thick_panels)
    INFO - 13:54:53:    with respect to thick_panels
    INFO - 13:54:53:    subject to constraints:
    INFO - 13:54:53:       reserve_fact(thick_panels) <= 0.5
    INFO - 13:54:53:    over the design space:
    INFO - 13:54:53:       +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53:       | Name         | Lower bound |       Value       | Upper bound | Type  |
    INFO - 13:54:53:       +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53:       | thick_panels |      1      | 3.414591822343108 |      20     | float |
    INFO - 13:54:53:       +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53: Solving optimization problem with algorithm NLOPT_SLSQP:
    INFO - 13:54:53:     20%|██        | 1/5 [00:00<00:00, 883.76 it/sec, obj=-4.5e+3]
    INFO - 13:54:53:     40%|████      | 2/5 [00:00<00:00, 291.54 it/sec, obj=-4.5e+3]
    INFO - 13:54:53:     60%|██████    | 3/5 [00:00<00:00, 321.23 it/sec, obj=-4.5e+3]
    INFO - 13:54:53:     80%|████████  | 4/5 [00:00<00:00, 417.68 it/sec, obj=-4.5e+3]
    INFO - 13:54:53: Optimization result:
    INFO - 13:54:53:    Optimizer info:
    INFO - 13:54:53:       Status: None
    INFO - 13:54:53:       Message: Successive iterates of the objective function are closer than ftol_rel or ftol_abs. GEMSEO Stopped the driver
    INFO - 13:54:53:       Number of calls to the objective function by the optimizer: 5
    INFO - 13:54:53:    Solution:
    INFO - 13:54:53:       The solution is feasible.
    INFO - 13:54:53:       Objective: -4503.594576639364
    INFO - 13:54:53:       Standardized constraints:
    INFO - 13:54:53:          [reserve_fact-0.5] = 2.4330390147042635e-08
    INFO - 13:54:53:       Design space:
    INFO - 13:54:53:          +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53:          | Name         | Lower bound |       Value       | Upper bound | Type  |
    INFO - 13:54:53:          +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53:          | thick_panels |      1      | 3.256301554313449 |      20     | float |
    INFO - 13:54:53:          +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53: *** End MDOScenario execution (time: 0:00:00.021841) ***
    INFO - 13:54:53:     57%|█████▋    | 4/7 [00:00<00:00, 14.01 it/sec, obj=-4.51e+3]
    INFO - 13:54:53:
    INFO - 13:54:53: *** Start MDOScenario execution ***
    INFO - 13:54:53: MDOScenario
    INFO - 13:54:53:    Disciplines: Aerodynamics Mission
    INFO - 13:54:53:    MDO formulation: DisciplinaryOpt
    INFO - 13:54:53: Optimization problem:
    INFO - 13:54:53:    minimize -range(thick_airfoils)
    INFO - 13:54:53:    with respect to thick_airfoils
    INFO - 13:54:53:    subject to constraints:
    INFO - 13:54:53:       lift(thick_airfoils) == 0.5
    INFO - 13:54:53:    over the design space:
    INFO - 13:54:53:       +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53:       | Name           | Lower bound | Value | Upper bound | Type  |
    INFO - 13:54:53:       +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53:       | thick_airfoils |      5      |   5   |      25     | float |
    INFO - 13:54:53:       +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53: Solving optimization problem with algorithm NLOPT_SLSQP:
    INFO - 13:54:53:     20%|██        | 1/5 [00:00<00:00, 921.22 it/sec, obj=-4.51e+3]
    INFO - 13:54:53:     40%|████      | 2/5 [00:00<00:00, 315.74 it/sec, obj=-3.85e+3]
    INFO - 13:54:53:     60%|██████    | 3/5 [00:00<00:00, 456.33 it/sec, obj=-4.48e+3]
    INFO - 13:54:53:     80%|████████  | 4/5 [00:00<00:00, 466.71 it/sec, obj=-4.51e+3]
    INFO - 13:54:53:    100%|██████████| 5/5 [00:00<00:00, 469.62 it/sec, obj=-4.51e+3]
    INFO - 13:54:53: Optimization result:
    INFO - 13:54:53:    Optimizer info:
    INFO - 13:54:53:       Status: None
    INFO - 13:54:53:       Message: Maximum number of iterations reached. GEMSEO Stopped the driver
    INFO - 13:54:53:       Number of calls to the objective function by the optimizer: 7
    INFO - 13:54:53:    Solution:
    INFO - 13:54:53:       The solution is feasible.
    INFO - 13:54:53:       Objective: -3854.082002804953
    INFO - 13:54:53:       Standardized constraints:
    INFO - 13:54:53:          [lift-0.5] = 0.0
    INFO - 13:54:53:       Design space:
    INFO - 13:54:53:          +----------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53:          | Name           | Lower bound |       Value       | Upper bound | Type  |
    INFO - 13:54:53:          +----------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53:          | thick_airfoils |      5      | 24.35677013380293 |      25     | float |
    INFO - 13:54:53:          +----------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53: *** End MDOScenario execution (time: 0:00:00.024352) ***
    INFO - 13:54:53:
    INFO - 13:54:53: *** Start MDOScenario execution ***
    INFO - 13:54:53: MDOScenario
    INFO - 13:54:53:    Disciplines: Mission Structure
    INFO - 13:54:53:    MDO formulation: DisciplinaryOpt
    INFO - 13:54:53: Optimization problem:
    INFO - 13:54:53:    minimize -range(thick_panels)
    INFO - 13:54:53:    with respect to thick_panels
    INFO - 13:54:53:    subject to constraints:
    INFO - 13:54:53:       reserve_fact(thick_panels) <= 0.5
    INFO - 13:54:53:    over the design space:
    INFO - 13:54:53:       +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53:       | Name         | Lower bound |       Value       | Upper bound | Type  |
    INFO - 13:54:53:       +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53:       | thick_panels |      1      | 3.256301554313449 |      20     | float |
    INFO - 13:54:53:       +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53: Solving optimization problem with algorithm NLOPT_SLSQP:
    INFO - 13:54:53:     20%|██        | 1/5 [00:00<00:00, 823.70 it/sec, obj=-3.84e+3]
    INFO - 13:54:53:     40%|████      | 2/5 [00:00<00:00, 272.18 it/sec, obj=-3.84e+3]
    INFO - 13:54:53:     60%|██████    | 3/5 [00:00<00:00, 303.86 it/sec, obj=-3.84e+3]
    INFO - 13:54:53:     80%|████████  | 4/5 [00:00<00:00, 395.49 it/sec, obj=-3.84e+3]
    INFO - 13:54:53: Optimization result:
    INFO - 13:54:53:    Optimizer info:
    INFO - 13:54:53:       Status: None
    INFO - 13:54:53:       Message: Successive iterates of the objective function are closer than ftol_rel or ftol_abs. GEMSEO Stopped the driver
    INFO - 13:54:53:       Number of calls to the objective function by the optimizer: 5
    INFO - 13:54:53:    Solution:
    INFO - 13:54:53:       The solution is feasible.
    INFO - 13:54:53:       Objective: -3843.3820355127323
    INFO - 13:54:53:       Standardized constraints:
    INFO - 13:54:53:          [reserve_fact-0.5] = 4.908429218630772e-10
    INFO - 13:54:53:       Design space:
    INFO - 13:54:53:          +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53:          | Name         | Lower bound |       Value       | Upper bound | Type  |
    INFO - 13:54:53:          +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53:          | thick_panels |      1      | 3.303233589970119 |      20     | float |
    INFO - 13:54:53:          +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53: *** End MDOScenario execution (time: 0:00:00.023197) ***
    INFO - 13:54:53:     71%|███████▏  | 5/7 [00:00<00:00, 14.17 it/sec, obj=-3.85e+3]
    INFO - 13:54:53:
    INFO - 13:54:53: *** Start MDOScenario execution ***
    INFO - 13:54:53: MDOScenario
    INFO - 13:54:53:    Disciplines: Aerodynamics Mission
    INFO - 13:54:53:    MDO formulation: DisciplinaryOpt
    INFO - 13:54:53: Optimization problem:
    INFO - 13:54:53:    minimize -range(thick_airfoils)
    INFO - 13:54:53:    with respect to thick_airfoils
    INFO - 13:54:53:    subject to constraints:
    INFO - 13:54:53:       lift(thick_airfoils) == 0.5
    INFO - 13:54:53:    over the design space:
    INFO - 13:54:53:       +----------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53:       | Name           | Lower bound |       Value       | Upper bound | Type  |
    INFO - 13:54:53:       +----------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53:       | thick_airfoils |      5      | 24.35677013380293 |      25     | float |
    INFO - 13:54:53:       +----------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53: Solving optimization problem with algorithm NLOPT_SLSQP:
    INFO - 13:54:53:     20%|██        | 1/5 [00:00<00:00, 791.23 it/sec, obj=-3.85e+3]
 WARNING - 13:54:53: Optimization found no feasible point !  The least infeasible point is selected.
    INFO - 13:54:53:     40%|████      | 2/5 [00:00<00:00, 306.32 it/sec, obj=-4.49e+3]
    INFO - 13:54:53: Optimization result:
    INFO - 13:54:53:    Optimizer info:
    INFO - 13:54:53:       Status: 5
    INFO - 13:54:53:       Message: NLOPT_MAXEVAL_REACHED: Optimization stopped because maxeval (above) was reached
    INFO - 13:54:53:       Number of calls to the objective function by the optimizer: 8
    INFO - 13:54:53:    Solution:
 WARNING - 13:54:53:       The solution is not feasible.
    INFO - 13:54:53:       Objective: -4492.389207173914
    INFO - 13:54:53:       Standardized constraints:
    INFO - 13:54:53:          [lift-0.5] = 0.008585873120765197
    INFO - 13:54:53:       Design space:
    INFO - 13:54:53:          +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53:          | Name           | Lower bound | Value | Upper bound | Type  |
    INFO - 13:54:53:          +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53:          | thick_airfoils |      5      |   5   |      25     | float |
    INFO - 13:54:53:          +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53: *** End MDOScenario execution (time: 0:00:00.018602) ***
    INFO - 13:54:53:
    INFO - 13:54:53: *** Start MDOScenario execution ***
    INFO - 13:54:53: MDOScenario
    INFO - 13:54:53:    Disciplines: Mission Structure
    INFO - 13:54:53:    MDO formulation: DisciplinaryOpt
    INFO - 13:54:53: Optimization problem:
    INFO - 13:54:53:    minimize -range(thick_panels)
    INFO - 13:54:53:    with respect to thick_panels
    INFO - 13:54:53:    subject to constraints:
    INFO - 13:54:53:       reserve_fact(thick_panels) <= 0.5
    INFO - 13:54:53:    over the design space:
    INFO - 13:54:53:       +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53:       | Name         | Lower bound |       Value       | Upper bound | Type  |
    INFO - 13:54:53:       +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53:       | thick_panels |      1      | 3.303233589970119 |      20     | float |
    INFO - 13:54:53:       +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53: Solving optimization problem with algorithm NLOPT_SLSQP:
    INFO - 13:54:53:     20%|██        | 1/5 [00:00<00:00, 799.37 it/sec, obj=-4.5e+3]
    INFO - 13:54:53:     40%|████      | 2/5 [00:00<00:00, 287.00 it/sec, obj=-4.5e+3]
    INFO - 13:54:53:     60%|██████    | 3/5 [00:00<00:00, 317.80 it/sec, obj=-4.5e+3]
    INFO - 13:54:53:     80%|████████  | 4/5 [00:00<00:00, 413.18 it/sec, obj=-4.5e+3]
    INFO - 13:54:53: Optimization result:
    INFO - 13:54:53:    Optimizer info:
    INFO - 13:54:53:       Status: None
    INFO - 13:54:53:       Message: Successive iterates of the objective function are closer than ftol_rel or ftol_abs. GEMSEO Stopped the driver
    INFO - 13:54:53:       Number of calls to the objective function by the optimizer: 5
    INFO - 13:54:53:    Solution:
    INFO - 13:54:53:       The solution is feasible.
    INFO - 13:54:53:       Objective: -4504.850158526424
    INFO - 13:54:53:       Standardized constraints:
    INFO - 13:54:53:          [reserve_fact-0.5] = 1.7025072907017602e-08
    INFO - 13:54:53:       Design space:
    INFO - 13:54:53:          +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53:          | Name         | Lower bound |       Value       | Upper bound | Type  |
    INFO - 13:54:53:          +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53:          | thick_panels |      1      | 3.264536832389204 |      20     | float |
    INFO - 13:54:53:          +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53: *** End MDOScenario execution (time: 0:00:00.022657) ***
    INFO - 13:54:53:     86%|████████▌ | 6/7 [00:00<00:00, 14.51 it/sec, obj=-4.51e+3]
    INFO - 13:54:53:
    INFO - 13:54:53: *** Start MDOScenario execution ***
    INFO - 13:54:53: MDOScenario
    INFO - 13:54:53:    Disciplines: Aerodynamics Mission
    INFO - 13:54:53:    MDO formulation: DisciplinaryOpt
    INFO - 13:54:53: Optimization problem:
    INFO - 13:54:53:    minimize -range(thick_airfoils)
    INFO - 13:54:53:    with respect to thick_airfoils
    INFO - 13:54:53:    subject to constraints:
    INFO - 13:54:53:       lift(thick_airfoils) == 0.5
    INFO - 13:54:53:    over the design space:
    INFO - 13:54:53:       +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53:       | Name           | Lower bound | Value | Upper bound | Type  |
    INFO - 13:54:53:       +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53:       | thick_airfoils |      5      |   5   |      25     | float |
    INFO - 13:54:53:       +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53: Solving optimization problem with algorithm NLOPT_SLSQP:
    INFO - 13:54:53:     20%|██        | 1/5 [00:00<00:00, 889.57 it/sec, obj=-4.51e+3]
    INFO - 13:54:53:     40%|████      | 2/5 [00:00<00:00, 311.05 it/sec, obj=-4.48e+3]
    INFO - 13:54:53:     60%|██████    | 3/5 [00:00<00:00, 449.52 it/sec, obj=-4.51e+3]
    INFO - 13:54:53:     80%|████████  | 4/5 [00:00<00:00, 462.34 it/sec, obj=-4.51e+3]
    INFO - 13:54:53:    100%|██████████| 5/5 [00:00<00:00, 470.95 it/sec, obj=-4.51e+3]
    INFO - 13:54:53: Optimization result:
    INFO - 13:54:53:    Optimizer info:
    INFO - 13:54:53:       Status: None
    INFO - 13:54:53:       Message: Maximum number of iterations reached. GEMSEO Stopped the driver
    INFO - 13:54:53:       Number of calls to the objective function by the optimizer: 7
    INFO - 13:54:53:    Solution:
    INFO - 13:54:53:       The solution is feasible.
    INFO - 13:54:53:       Objective: -4509.519641910645
    INFO - 13:54:53:       Standardized constraints:
    INFO - 13:54:53:          [lift-0.5] = -0.0001369125128627413
    INFO - 13:54:53:       Design space:
    INFO - 13:54:53:          +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53:          | Name           | Lower bound | Value | Upper bound | Type  |
    INFO - 13:54:53:          +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53:          | thick_airfoils |      5      |   5   |      25     | float |
    INFO - 13:54:53:          +----------------+-------------+-------+-------------+-------+
    INFO - 13:54:53: *** End MDOScenario execution (time: 0:00:00.025297) ***
    INFO - 13:54:53:
    INFO - 13:54:53: *** Start MDOScenario execution ***
    INFO - 13:54:53: MDOScenario
    INFO - 13:54:53:    Disciplines: Mission Structure
    INFO - 13:54:53:    MDO formulation: DisciplinaryOpt
    INFO - 13:54:53: Optimization problem:
    INFO - 13:54:53:    minimize -range(thick_panels)
    INFO - 13:54:53:    with respect to thick_panels
    INFO - 13:54:53:    subject to constraints:
    INFO - 13:54:53:       reserve_fact(thick_panels) <= 0.5
    INFO - 13:54:53:    over the design space:
    INFO - 13:54:53:       +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53:       | Name         | Lower bound |       Value       | Upper bound | Type  |
    INFO - 13:54:53:       +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53:       | thick_panels |      1      | 3.264536832389204 |      20     | float |
    INFO - 13:54:53:       +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:53: Solving optimization problem with algorithm NLOPT_SLSQP:
    INFO - 13:54:53:     20%|██        | 1/5 [00:00<00:00, 1239.09 it/sec, obj=-4.51e+3]
    INFO - 13:54:54:     40%|████      | 2/5 [00:00<00:00, 303.30 it/sec, obj=-4.51e+3]
    INFO - 13:54:54:     60%|██████    | 3/5 [00:00<00:00, 315.80 it/sec, obj=-4.51e+3]
    INFO - 13:54:54:     80%|████████  | 4/5 [00:00<00:00, 390.59 it/sec, obj=Not evaluated]
    INFO - 13:54:54: Optimization result:
    INFO - 13:54:54:    Optimizer info:
    INFO - 13:54:54:       Status: None
    INFO - 13:54:54:       Message: Successive iterates of the design variables are closer than xtol_rel or xtol_abs. GEMSEO Stopped the driver
    INFO - 13:54:54:       Number of calls to the objective function by the optimizer: 4
    INFO - 13:54:54:    Solution:
    INFO - 13:54:54:       The solution is feasible.
    INFO - 13:54:54:       Objective: -4509.583287341628
    INFO - 13:54:54:       Standardized constraints:
    INFO - 13:54:54:          [reserve_fact-0.5] = 3.397815362404799e-11
    INFO - 13:54:54:       Design space:
    INFO - 13:54:54:          +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:54:          | Name         | Lower bound |       Value       | Upper bound | Type  |
    INFO - 13:54:54:          +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:54:          | thick_panels |      1      | 3.225021426833141 |      20     | float |
    INFO - 13:54:54:          +--------------+-------------+-------------------+-------------+-------+
    INFO - 13:54:54: *** End MDOScenario execution (time: 0:00:00.022101) ***
    INFO - 13:54:54:    100%|██████████| 7/7 [00:00<00:00, 14.56 it/sec, obj=-4.51e+3]
    INFO - 13:54:54: Optimization result:
    INFO - 13:54:54:    Optimizer info:
    INFO - 13:54:54:       Status: None
    INFO - 13:54:54:       Message: Maximum number of iterations reached. GEMSEO Stopped the driver
    INFO - 13:54:54:       Number of calls to the objective function by the optimizer: 9
    INFO - 13:54:54:    Solution:
    INFO - 13:54:54:       The solution is feasible.
    INFO - 13:54:54:       Objective: -4509.243708600623
    INFO - 13:54:54:       Standardized constraints:
    INFO - 13:54:54:          [lift-0.5] = 5.903055821931957e-13
    INFO - 13:54:54:          [reserve_fact-0.5] = -0.2599999989201578
    INFO - 13:54:54:       Design space:
    INFO - 13:54:54:          +-------+-------------+-------+-------------+-------+
    INFO - 13:54:54:          | Name  | Lower bound | Value | Upper bound | Type  |
    INFO - 13:54:54:          +-------+-------------+-------+-------------+-------+
    INFO - 13:54:54:          | sweep |      10     |   25  |      35     | float |
    INFO - 13:54:54:          +-------+-------------+-------+-------------+-------+
    INFO - 13:54:54: *** End MDOScenario execution (time: 0:00:00.497294) ***

<gemseo.post.opt_history_view.OptHistoryView object at 0x7f28dafa5670>

Total running time of the script: (0 minutes 3.186 seconds)

Gallery generated by Sphinx-Gallery