Multistart optimization

Runs simple optimization problem with multiple starting points Nests a MDOScenario in a DOEScenario using a MDOScenarioAdapter.

from gemseo.api import configure_logger
from gemseo.api import create_design_space
from gemseo.api import create_discipline
from gemseo.api import create_scenario
from gemseo.disciplines.scenario_adapter import MDOScenarioAdapter
from matplotlib import pyplot as plt

configure_logger()

Out:

<RootLogger root (INFO)>

Create the disciplines

objective = create_discipline("AnalyticDiscipline", expressions={"obj": "x**3-x+1"})
constraint = create_discipline(
    "AnalyticDiscipline", expressions={"cstr": "x**2+obj**2-1.5"}
)

Create the design space

design_space = create_design_space()
design_space.add_variable("x", 1, l_b=-1.5, u_b=1.5, value=1.5)

Create the MDO scenario

scenario = create_scenario(
    [objective, constraint],
    formulation="DisciplinaryOpt",
    objective_name="obj",
    design_space=design_space,
)
scenario.default_inputs = {"algo": "SLSQP", "max_iter": 10}
scenario.add_constraint("cstr", "ineq")

Create the scenario adapter

dv_names = scenario.formulation.opt_problem.design_space.variables_names
adapter = MDOScenarioAdapter(
    scenario, dv_names, ["obj", "cstr"], set_x0_before_opt=True
)

Create the DOE scenario

scenario_doe = create_scenario(
    adapter,
    formulation="DisciplinaryOpt",
    objective_name="obj",
    design_space=design_space,
    scenario_type="DOE",
)
scenario_doe.add_constraint("cstr", "ineq")
run_inputs = {"n_samples": 10, "algo": "fullfact"}
scenario_doe.execute(run_inputs)

Out:

    INFO - 07:18:03:
    INFO - 07:18:03: *** Start DOEScenario execution ***
    INFO - 07:18:03: DOEScenario
    INFO - 07:18:03:    Disciplines: MDOScenario_adapter
    INFO - 07:18:03:    MDO formulation: DisciplinaryOpt
    INFO - 07:18:03: Optimization problem:
    INFO - 07:18:03:    minimize obj(x)
    INFO - 07:18:03:    with respect to x
    INFO - 07:18:03:    subject to constraints:
    INFO - 07:18:03:       cstr(x) <= 0.0
    INFO - 07:18:03:    over the design space:
    INFO - 07:18:03:    +------+-------------+-------+-------------+-------+
    INFO - 07:18:03:    | name | lower_bound | value | upper_bound | type  |
    INFO - 07:18:03:    +------+-------------+-------+-------------+-------+
    INFO - 07:18:03:    | x    |     -1.5    |  1.5  |     1.5     | float |
    INFO - 07:18:03:    +------+-------------+-------+-------------+-------+
    INFO - 07:18:03: Solving optimization problem with algorithm fullfact:
    INFO - 07:18:03: Full factorial design required. Number of samples along each direction for a design vector of size 1 with 10 samples: 10
    INFO - 07:18:03: Final number of samples for DOE = 10 vs 10 requested
    INFO - 07:18:03: ...   0%|          | 0/10 [00:00<?, ?it]
    INFO - 07:18:03:
    INFO - 07:18:03: *** Start MDOScenario execution ***
    INFO - 07:18:03: MDOScenario
    INFO - 07:18:03:    Disciplines: AnalyticDiscipline AnalyticDiscipline
    INFO - 07:18:03:    MDO formulation: DisciplinaryOpt
    INFO - 07:18:03: Optimization problem:
    INFO - 07:18:03:    minimize obj(x)
    INFO - 07:18:03:    with respect to x
    INFO - 07:18:03:    subject to constraints:
    INFO - 07:18:03:       cstr(x) <= 0.0
    INFO - 07:18:03:    over the design space:
    INFO - 07:18:03:    +------+-------------+-------+-------------+-------+
    INFO - 07:18:03:    | name | lower_bound | value | upper_bound | type  |
    INFO - 07:18:03:    +------+-------------+-------+-------------+-------+
    INFO - 07:18:03:    | x    |     -1.5    |  -1.5 |     1.5     | float |
    INFO - 07:18:03:    +------+-------------+-------+-------------+-------+
    INFO - 07:18:03: Solving optimization problem with algorithm SLSQP:
    INFO - 07:18:03: ...   0%|          | 0/10 [00:00<?, ?it]
    INFO - 07:18:03:
 WARNING - 07:18:03: Optimization found no feasible point !  The least infeasible point is selected.
    INFO - 07:18:03: ... 100%|██████████| 10/10 [00:00<00:00, 381.19 it/sec, obj=1.25]
    INFO - 07:18:03: Optimization result:
    INFO - 07:18:03:    Optimizer info:
    INFO - 07:18:03:       Status: None
    INFO - 07:18:03:       Message: Maximum number of iterations reached. GEMSEO Stopped the driver
    INFO - 07:18:03:       Number of calls to the objective function by the optimizer: 12
    INFO - 07:18:03:    Solution:
 WARNING - 07:18:03:       The solution is not feasible.
    INFO - 07:18:03:       Objective: 0.2888129873625884
    INFO - 07:18:03:       Standardized constraints:
    INFO - 07:18:03:          cstr = 0.1513713660745195
    INFO - 07:18:03:       Design space:
    INFO - 07:18:03:       +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:03:       | name | lower_bound |       value        | upper_bound | type  |
    INFO - 07:18:03:       +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:03:       | x    |     -1.5    | -1.252181466244097 |     1.5     | float |
    INFO - 07:18:03:       +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:03: *** End MDOScenario execution (time: 0:00:00.033660) ***
    INFO - 07:18:03:
    INFO - 07:18:03: *** Start MDOScenario execution ***
    INFO - 07:18:03: MDOScenario
    INFO - 07:18:03:    Disciplines: AnalyticDiscipline AnalyticDiscipline
    INFO - 07:18:03:    MDO formulation: DisciplinaryOpt
    INFO - 07:18:03: Optimization problem:
    INFO - 07:18:03:    minimize obj(x)
    INFO - 07:18:03:    with respect to x
    INFO - 07:18:03:    subject to constraints:
    INFO - 07:18:03:       cstr(x) <= 0.0
    INFO - 07:18:03:    over the design space:
    INFO - 07:18:03:    +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:03:    | name | lower_bound |       value        | upper_bound | type  |
    INFO - 07:18:03:    +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:03:    | x    |     -1.5    | -1.166666666666667 |     1.5     | float |
    INFO - 07:18:03:    +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:03: Solving optimization problem with algorithm SLSQP:
    INFO - 07:18:03: ...   0%|          | 0/10 [00:00<?, ?it]
    INFO - 07:18:03:
 WARNING - 07:18:03: Optimization found no feasible point !  The least infeasible point is selected.
    INFO - 07:18:03: ... 100%|██████████| 10/10 [00:00<00:00, 471.48 it/sec, obj=0.288]
    INFO - 07:18:03: Optimization result:
    INFO - 07:18:03:    Optimizer info:
    INFO - 07:18:03:       Status: None
    INFO - 07:18:03:       Message: Maximum number of iterations reached. GEMSEO Stopped the driver
    INFO - 07:18:03:       Number of calls to the objective function by the optimizer: 12
    INFO - 07:18:03:    Solution:
 WARNING - 07:18:03:       The solution is not feasible.
    INFO - 07:18:03:       Objective: 0.28811314244670916
    INFO - 07:18:03:       Standardized constraints:
    INFO - 07:18:03:          cstr = 0.15144075010172386
    INFO - 07:18:03:       Design space:
    INFO - 07:18:03:       +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:03:       | name | lower_bound |       value        | upper_bound | type  |
    INFO - 07:18:03:       +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:03:       | x    |     -1.5    | -1.252370379421043 |     1.5     | float |
    INFO - 07:18:03:       +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:03: *** End MDOScenario execution (time: 0:00:00.024295) ***
    INFO - 07:18:03:
    INFO - 07:18:03: *** Start MDOScenario execution ***
    INFO - 07:18:03: MDOScenario
    INFO - 07:18:03:    Disciplines: AnalyticDiscipline AnalyticDiscipline
    INFO - 07:18:03:    MDO formulation: DisciplinaryOpt
    INFO - 07:18:03: Optimization problem:
    INFO - 07:18:03:    minimize obj(x)
    INFO - 07:18:03:    with respect to x
    INFO - 07:18:03:    subject to constraints:
    INFO - 07:18:03:       cstr(x) <= 0.0
    INFO - 07:18:03:    over the design space:
    INFO - 07:18:03:    +------+-------------+---------------------+-------------+-------+
    INFO - 07:18:03:    | name | lower_bound |        value        | upper_bound | type  |
    INFO - 07:18:03:    +------+-------------+---------------------+-------------+-------+
    INFO - 07:18:03:    | x    |     -1.5    | -0.8333333333333334 |     1.5     | float |
    INFO - 07:18:03:    +------+-------------+---------------------+-------------+-------+
    INFO - 07:18:03: Solving optimization problem with algorithm SLSQP:
    INFO - 07:18:03: ...   0%|          | 0/10 [00:00<?, ?it]
    INFO - 07:18:03:
 WARNING - 07:18:04: Optimization found no feasible point !  The least infeasible point is selected.
    INFO - 07:18:04: ... 100%|██████████| 10/10 [00:00<00:00, 490.85 it/sec, obj=-.875]
    INFO - 07:18:04: Optimization result:
    INFO - 07:18:04:    Optimizer info:
    INFO - 07:18:04:       Status: None
    INFO - 07:18:04:       Message: Maximum number of iterations reached. GEMSEO Stopped the driver
    INFO - 07:18:04:       Number of calls to the objective function by the optimizer: 12
    INFO - 07:18:04:    Solution:
 WARNING - 07:18:04:       The solution is not feasible.
    INFO - 07:18:04:       Objective: 0.5837798748832244
    INFO - 07:18:04:       Standardized constraints:
    INFO - 07:18:04:          cstr = 0.19806414473664136
    INFO - 07:18:04:       Design space:
    INFO - 07:18:04:       +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:04:       | name | lower_bound |       value        | upper_bound | type  |
    INFO - 07:18:04:       +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:04:       | x    |     -1.5    | -1.165017254128868 |     1.5     | float |
    INFO - 07:18:04:       +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:04: *** End MDOScenario execution (time: 0:00:00.023397) ***
    INFO - 07:18:04:
    INFO - 07:18:04: *** Start MDOScenario execution ***
    INFO - 07:18:04: MDOScenario
    INFO - 07:18:04:    Disciplines: AnalyticDiscipline AnalyticDiscipline
    INFO - 07:18:04:    MDO formulation: DisciplinaryOpt
    INFO - 07:18:04: Optimization problem:
    INFO - 07:18:04:    minimize obj(x)
    INFO - 07:18:04:    with respect to x
    INFO - 07:18:04:    subject to constraints:
    INFO - 07:18:04:       cstr(x) <= 0.0
    INFO - 07:18:04:    over the design space:
    INFO - 07:18:04:    +------+-------------+-------+-------------+-------+
    INFO - 07:18:04:    | name | lower_bound | value | upper_bound | type  |
    INFO - 07:18:04:    +------+-------------+-------+-------------+-------+
    INFO - 07:18:04:    | x    |     -1.5    |  -0.5 |     1.5     | float |
    INFO - 07:18:04:    +------+-------------+-------+-------------+-------+
    INFO - 07:18:04: Solving optimization problem with algorithm SLSQP:
    INFO - 07:18:04: ...   0%|          | 0/10 [00:00<?, ?it]
    INFO - 07:18:04:
    INFO - 07:18:04: ... 100%|██████████| 10/10 [00:00<00:00, 394.87 it/sec, obj=0.615]
    INFO - 07:18:04: Optimization result:
    INFO - 07:18:04:    Optimizer info:
    INFO - 07:18:04:       Status: None
    INFO - 07:18:04:       Message: Maximum number of iterations reached. GEMSEO Stopped the driver
    INFO - 07:18:04:       Number of calls to the objective function by the optimizer: 13
    INFO - 07:18:04:    Solution:
    INFO - 07:18:04:       The solution is feasible.
    INFO - 07:18:04:       Objective: 0.6150998219543254
    INFO - 07:18:04:       Standardized constraints:
    INFO - 07:18:04:          cstr = -0.788285881879476
    INFO - 07:18:04:       Design space:
    INFO - 07:18:04:       +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:04:       | name | lower_bound |       value        | upper_bound | type  |
    INFO - 07:18:04:       +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:04:       | x    |     -1.5    | 0.5773788419679762 |     1.5     | float |
    INFO - 07:18:04:       +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:04: *** End MDOScenario execution (time: 0:00:00.028400) ***
    INFO - 07:18:04: ...  40%|████      | 4/10 [00:00<00:00, 83.96 it/sec]
    INFO - 07:18:04:
    INFO - 07:18:04: *** Start MDOScenario execution ***
    INFO - 07:18:04: MDOScenario
    INFO - 07:18:04:    Disciplines: AnalyticDiscipline AnalyticDiscipline
    INFO - 07:18:04:    MDO formulation: DisciplinaryOpt
    INFO - 07:18:04: Optimization problem:
    INFO - 07:18:04:    minimize obj(x)
    INFO - 07:18:04:    with respect to x
    INFO - 07:18:04:    subject to constraints:
    INFO - 07:18:04:       cstr(x) <= 0.0
    INFO - 07:18:04:    over the design space:
    INFO - 07:18:04:    +------+-------------+---------------------+-------------+-------+
    INFO - 07:18:04:    | name | lower_bound |        value        | upper_bound | type  |
    INFO - 07:18:04:    +------+-------------+---------------------+-------------+-------+
    INFO - 07:18:04:    | x    |     -1.5    | -0.1666666666666667 |     1.5     | float |
    INFO - 07:18:04:    +------+-------------+---------------------+-------------+-------+
    INFO - 07:18:04: Solving optimization problem with algorithm SLSQP:
    INFO - 07:18:04: ...   0%|          | 0/10 [00:00<?, ?it]
    INFO - 07:18:04:
    INFO - 07:18:04: ... 100%|██████████| 10/10 [00:00<00:00, 385.05 it/sec, obj=0.615]
    INFO - 07:18:04: Optimization result:
    INFO - 07:18:04:    Optimizer info:
    INFO - 07:18:04:       Status: None
    INFO - 07:18:04:       Message: Maximum number of iterations reached. GEMSEO Stopped the driver
    INFO - 07:18:04:       Number of calls to the objective function by the optimizer: 12
    INFO - 07:18:04:    Solution:
    INFO - 07:18:04:       The solution is feasible.
    INFO - 07:18:04:       Objective: 0.6150998205402495
    INFO - 07:18:04:       Standardized constraints:
    INFO - 07:18:04:          cstr = -0.7883188793606977
    INFO - 07:18:04:       Design space:
    INFO - 07:18:04:       +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:04:       | name | lower_bound |       value        | upper_bound | type  |
    INFO - 07:18:04:       +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:04:       | x    |     -1.5    | 0.5773502675245377 |     1.5     | float |
    INFO - 07:18:04:       +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:04: *** End MDOScenario execution (time: 0:00:00.029104) ***
    INFO - 07:18:04:
    INFO - 07:18:04: *** Start MDOScenario execution ***
    INFO - 07:18:04: MDOScenario
    INFO - 07:18:04:    Disciplines: AnalyticDiscipline AnalyticDiscipline
    INFO - 07:18:04:    MDO formulation: DisciplinaryOpt
    INFO - 07:18:04: Optimization problem:
    INFO - 07:18:04:    minimize obj(x)
    INFO - 07:18:04:    with respect to x
    INFO - 07:18:04:    subject to constraints:
    INFO - 07:18:04:       cstr(x) <= 0.0
    INFO - 07:18:04:    over the design space:
    INFO - 07:18:04:    +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:04:    | name | lower_bound |       value        | upper_bound | type  |
    INFO - 07:18:04:    +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:04:    | x    |     -1.5    | 0.1666666666666667 |     1.5     | float |
    INFO - 07:18:04:    +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:04: Solving optimization problem with algorithm SLSQP:
    INFO - 07:18:04: ...   0%|          | 0/10 [00:00<?, ?it]
    INFO - 07:18:04:
    INFO - 07:18:04: ...  90%|█████████ | 9/10 [00:00<00:00, 444.00 it/sec, obj=0.615]
    INFO - 07:18:04: Optimization result:
    INFO - 07:18:04:    Optimizer info:
    INFO - 07:18:04:       Status: None
    INFO - 07:18:04:       Message: Successive iterates of the objective function are closer than ftol_rel or ftol_abs. GEMSEO Stopped the driver
    INFO - 07:18:04:       Number of calls to the objective function by the optimizer: 10
    INFO - 07:18:04:    Solution:
    INFO - 07:18:04:       The solution is feasible.
    INFO - 07:18:04:       Objective: 0.6150998205402508
    INFO - 07:18:04:       Standardized constraints:
    INFO - 07:18:04:          cstr = -0.7883189092934597
    INFO - 07:18:04:       Design space:
    INFO - 07:18:04:       +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:04:       | name | lower_bound |       value        | upper_bound | type  |
    INFO - 07:18:04:       +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:04:       | x    |     -1.5    | 0.5773502416020033 |     1.5     | float |
    INFO - 07:18:04:       +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:04: *** End MDOScenario execution (time: 0:00:00.025666) ***
    INFO - 07:18:04:
    INFO - 07:18:04: *** Start MDOScenario execution ***
    INFO - 07:18:04: MDOScenario
    INFO - 07:18:04:    Disciplines: AnalyticDiscipline AnalyticDiscipline
    INFO - 07:18:04:    MDO formulation: DisciplinaryOpt
    INFO - 07:18:04: Optimization problem:
    INFO - 07:18:04:    minimize obj(x)
    INFO - 07:18:04:    with respect to x
    INFO - 07:18:04:    subject to constraints:
    INFO - 07:18:04:       cstr(x) <= 0.0
    INFO - 07:18:04:    over the design space:
    INFO - 07:18:04:    +------+-------------+-------+-------------+-------+
    INFO - 07:18:04:    | name | lower_bound | value | upper_bound | type  |
    INFO - 07:18:04:    +------+-------------+-------+-------------+-------+
    INFO - 07:18:04:    | x    |     -1.5    |  0.5  |     1.5     | float |
    INFO - 07:18:04:    +------+-------------+-------+-------------+-------+
    INFO - 07:18:04: Solving optimization problem with algorithm SLSQP:
    INFO - 07:18:04: ...   0%|          | 0/10 [00:00<?, ?it]
    INFO - 07:18:04:
    INFO - 07:18:04: ...  70%|███████   | 7/10 [00:00<00:00, 573.59 it/sec, obj=0.615]
    INFO - 07:18:04: Optimization result:
    INFO - 07:18:04:    Optimizer info:
    INFO - 07:18:04:       Status: None
    INFO - 07:18:04:       Message: Successive iterates of the objective function are closer than ftol_rel or ftol_abs. GEMSEO Stopped the driver
    INFO - 07:18:04:       Number of calls to the objective function by the optimizer: 8
    INFO - 07:18:04:    Solution:
    INFO - 07:18:04:       The solution is feasible.
    INFO - 07:18:04:       Objective: 0.6150998205402526
    INFO - 07:18:04:       Standardized constraints:
    INFO - 07:18:04:          cstr = -0.7883188285028959
    INFO - 07:18:04:       Design space:
    INFO - 07:18:04:       +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:04:       | name | lower_bound |       value        | upper_bound | type  |
    INFO - 07:18:04:       +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:04:       | x    |     -1.5    | 0.5773503115686811 |     1.5     | float |
    INFO - 07:18:04:       +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:04: *** End MDOScenario execution (time: 0:00:00.020634) ***
    INFO - 07:18:04:
    INFO - 07:18:04: *** Start MDOScenario execution ***
    INFO - 07:18:04: MDOScenario
    INFO - 07:18:04:    Disciplines: AnalyticDiscipline AnalyticDiscipline
    INFO - 07:18:04:    MDO formulation: DisciplinaryOpt
    INFO - 07:18:04: Optimization problem:
    INFO - 07:18:04:    minimize obj(x)
    INFO - 07:18:04:    with respect to x
    INFO - 07:18:04:    subject to constraints:
    INFO - 07:18:04:       cstr(x) <= 0.0
    INFO - 07:18:04:    over the design space:
    INFO - 07:18:04:    +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:04:    | name | lower_bound |       value        | upper_bound | type  |
    INFO - 07:18:04:    +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:04:    | x    |     -1.5    | 0.8333333333333335 |     1.5     | float |
    INFO - 07:18:04:    +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:04: Solving optimization problem with algorithm SLSQP:
    INFO - 07:18:04: ...   0%|          | 0/10 [00:00<?, ?it]
    INFO - 07:18:04:
    INFO - 07:18:04: ... 100%|██████████| 10/10 [00:00<00:00, 466.51 it/sec, obj=0.288]
    INFO - 07:18:04: Optimization result:
    INFO - 07:18:04:    Optimizer info:
    INFO - 07:18:04:       Status: None
    INFO - 07:18:04:       Message: Maximum number of iterations reached. GEMSEO Stopped the driver
    INFO - 07:18:04:       Number of calls to the objective function by the optimizer: 12
    INFO - 07:18:04:    Solution:
    INFO - 07:18:04:       The solution is feasible.
    INFO - 07:18:04:       Objective: 0.7453703703703706
    INFO - 07:18:04:       Standardized constraints:
    INFO - 07:18:04:          cstr = -0.2499785665294918
    INFO - 07:18:04:       Design space:
    INFO - 07:18:04:       +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:04:       | name | lower_bound |       value        | upper_bound | type  |
    INFO - 07:18:04:       +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:04:       | x    |     -1.5    | 0.8333333333333335 |     1.5     | float |
    INFO - 07:18:04:       +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:04: *** End MDOScenario execution (time: 0:00:00.024622) ***
    INFO - 07:18:04: ...  80%|████████  | 8/10 [00:00<00:00, 44.31 it/sec]
    INFO - 07:18:04:
    INFO - 07:18:04: *** Start MDOScenario execution ***
    INFO - 07:18:04: MDOScenario
    INFO - 07:18:04:    Disciplines: AnalyticDiscipline AnalyticDiscipline
    INFO - 07:18:04:    MDO formulation: DisciplinaryOpt
    INFO - 07:18:04: Optimization problem:
    INFO - 07:18:04:    minimize obj(x)
    INFO - 07:18:04:    with respect to x
    INFO - 07:18:04:    subject to constraints:
    INFO - 07:18:04:       cstr(x) <= 0.0
    INFO - 07:18:04:    over the design space:
    INFO - 07:18:04:    +------+-------------+-------------------+-------------+-------+
    INFO - 07:18:04:    | name | lower_bound |       value       | upper_bound | type  |
    INFO - 07:18:04:    +------+-------------+-------------------+-------------+-------+
    INFO - 07:18:04:    | x    |     -1.5    | 1.166666666666667 |     1.5     | float |
    INFO - 07:18:04:    +------+-------------+-------------------+-------------+-------+
    INFO - 07:18:04: Solving optimization problem with algorithm SLSQP:
    INFO - 07:18:04: ...   0%|          | 0/10 [00:00<?, ?it]
    INFO - 07:18:04:
 WARNING - 07:18:04: Optimization found no feasible point !  The least infeasible point is selected.
    INFO - 07:18:04: ... 100%|██████████| 10/10 [00:00<00:00, 455.20 it/sec, obj=0.288]
    INFO - 07:18:04: Optimization result:
    INFO - 07:18:04:    Optimizer info:
    INFO - 07:18:04:       Status: None
    INFO - 07:18:04:       Message: Maximum number of iterations reached. GEMSEO Stopped the driver
    INFO - 07:18:04:       Number of calls to the objective function by the optimizer: 12
    INFO - 07:18:04:    Solution:
 WARNING - 07:18:04:       The solution is not feasible.
    INFO - 07:18:04:       Objective: 0.28811314244698893
    INFO - 07:18:04:       Standardized constraints:
    INFO - 07:18:04:          cstr = 0.1514407501016959
    INFO - 07:18:04:       Design space:
    INFO - 07:18:04:       +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:04:       | name | lower_bound |       value        | upper_bound | type  |
    INFO - 07:18:04:       +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:04:       | x    |     -1.5    | -1.252370379420967 |     1.5     | float |
    INFO - 07:18:04:       +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:04: *** End MDOScenario execution (time: 0:00:00.025054) ***
    INFO - 07:18:04:
    INFO - 07:18:04: *** Start MDOScenario execution ***
    INFO - 07:18:04: MDOScenario
    INFO - 07:18:04:    Disciplines: AnalyticDiscipline AnalyticDiscipline
    INFO - 07:18:04:    MDO formulation: DisciplinaryOpt
    INFO - 07:18:04: Optimization problem:
    INFO - 07:18:04:    minimize obj(x)
    INFO - 07:18:04:    with respect to x
    INFO - 07:18:04:    subject to constraints:
    INFO - 07:18:04:       cstr(x) <= 0.0
    INFO - 07:18:04:    over the design space:
    INFO - 07:18:04:    +------+-------------+-------+-------------+-------+
    INFO - 07:18:04:    | name | lower_bound | value | upper_bound | type  |
    INFO - 07:18:04:    +------+-------------+-------+-------------+-------+
    INFO - 07:18:04:    | x    |     -1.5    |  1.5  |     1.5     | float |
    INFO - 07:18:04:    +------+-------------+-------+-------------+-------+
    INFO - 07:18:04: Solving optimization problem with algorithm SLSQP:
    INFO - 07:18:04: ...   0%|          | 0/10 [00:00<?, ?it]
    INFO - 07:18:04:
 WARNING - 07:18:04: Optimization found no feasible point !  The least infeasible point is selected.
    INFO - 07:18:04: ... 100%|██████████| 10/10 [00:00<00:00, 465.74 it/sec, obj=0.288]
    INFO - 07:18:04: Optimization result:
    INFO - 07:18:04:    Optimizer info:
    INFO - 07:18:04:       Status: None
    INFO - 07:18:04:       Message: Maximum number of iterations reached. GEMSEO Stopped the driver
    INFO - 07:18:04:       Number of calls to the objective function by the optimizer: 12
    INFO - 07:18:04:    Solution:
 WARNING - 07:18:04:       The solution is not feasible.
    INFO - 07:18:04:       Objective: 0.28811314244587316
    INFO - 07:18:04:       Standardized constraints:
    INFO - 07:18:04:          cstr = 0.15144075010180735
    INFO - 07:18:04:       Design space:
    INFO - 07:18:04:       +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:04:       | name | lower_bound |       value        | upper_bound | type  |
    INFO - 07:18:04:       +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:04:       | x    |     -1.5    | -1.252370379421268 |     1.5     | float |
    INFO - 07:18:04:       +------+-------------+--------------------+-------------+-------+
    INFO - 07:18:04: *** End MDOScenario execution (time: 0:00:00.024596) ***
    INFO - 07:18:04: ... 100%|██████████| 10/10 [00:00<00:00, 35.99 it/sec]
    INFO - 07:18:04: Optimization result:
    INFO - 07:18:04:    Optimizer info:
    INFO - 07:18:04:       Status: None
    INFO - 07:18:04:       Message: None
    INFO - 07:18:04:       Number of calls to the objective function by the optimizer: 10
    INFO - 07:18:04:    Solution:
    INFO - 07:18:04:       The solution is feasible.
    INFO - 07:18:04:       Objective: 0.6150998205402495
    INFO - 07:18:04:       Standardized constraints:
    INFO - 07:18:04:          cstr = -0.7883188793606977
    INFO - 07:18:04:       Design space:
    INFO - 07:18:04:       +------+-------------+---------------------+-------------+-------+
    INFO - 07:18:04:       | name | lower_bound |        value        | upper_bound | type  |
    INFO - 07:18:04:       +------+-------------+---------------------+-------------+-------+
    INFO - 07:18:04:       | x    |     -1.5    | -0.1666666666666667 |     1.5     | float |
    INFO - 07:18:04:       +------+-------------+---------------------+-------------+-------+
    INFO - 07:18:04: *** End DOEScenario execution (time: 0:00:00.286195) ***

{'eval_jac': False, 'algo': 'fullfact', 'n_samples': 10}

Plot the optimum objective for different x0

scenario_doe.post_process(
    "BasicHistory", variable_names=["obj"], save=False, show=False
)
# Workaround for HTML rendering, instead of ``show=True``
plt.show()
History plot

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

Gallery generated by Sphinx-Gallery