Note
Go to the end to download the full example code.
Batch sampling#
GEMSEO v6.2.0 added the option vectorize (default: False) to the DOE algorithms
to enable batch sampling of outputs of interest.
In other words,
GEMSEO can evaluate a multidisciplinary system at several points at the same time,
without the need for multiple processes
(see the DOE option n_processes for more information).
This can be particularly useful when evaluating such a system
in parallel is more expensive than evaluating it serially because
the disciplines are so inexpensive.
In this case, the batch sampling can be sequential.
This example illustrates this features, first for an evaluation problem, then for a scenario.
from __future__ import annotations
from typing import TYPE_CHECKING
from numpy import array
from numpy import newaxis
from pandas.testing import assert_frame_equal
from gemseo.algos.design_space import DesignSpace
from gemseo.algos.doe.scipy.scipy_doe import SciPyDOE
from gemseo.algos.doe.scipy.settings.mc import MC_Settings
from gemseo.algos.evaluation_problem import EvaluationProblem
from gemseo.core.discipline.discipline import Discipline
from gemseo.core.mdo_functions.mdo_function import MDOFunction
from gemseo.formulations.disciplinary_opt_settings import DisciplinaryOpt_Settings
from gemseo.formulations.mdf_settings import MDF_Settings
from gemseo.problems.mdo.sellar.sellar_1 import Sellar1
from gemseo.problems.mdo.sellar.sellar_2 import Sellar2
from gemseo.problems.mdo.sellar.sellar_design_space import SellarDesignSpace
from gemseo.problems.mdo.sellar.sellar_system import SellarSystem
from gemseo.scenarios.mdo_scenario import MDOScenario
from gemseo.utils.timer import Timer
if TYPE_CHECKING:
from gemseo.datasets.optimization_dataset import OptimizationDataset
from gemseo.typing import RealArray
from gemseo.typing import StrKeyMapping
For an evaluation problem#
First,
we illustrate this feature with an EvaluationProblem
consisting of calculating the area of several rectangles.
To do this, we define the design space
including the bounds of the length and width of such a rectangle:
design_space = DesignSpace()
design_space.add_variable("length", lower_bound=0.0, upper_bound=10.0)
design_space.add_variable("width", lower_bound=0.0, upper_bound=10.0)
Then,
we define a function to compute the area of a rectangle from an array.
The latter can contain either the values of the length and width of a rectangle,
i.e., array([length, width]),
or a collection of n pairs of length and width corresponding to n rectangles,
i.e., array([[length_1, width_1], ..., [length_n, width_n]]).
Note that the function includes dimension checks to support both cases.
class AreaFunction:
"""Compute the area of a rectangle."""
def __init__(self) -> None:
self.last_input_data = array([])
def __call__(self, input_data: RealArray) -> RealArray:
"""Compute the area of the rectangle.
Args:
input_data: The input data.
This 1D array is
shaped as ``(input_dimension,)`` or ``(n_samples, input_dimension)``.
Returns:
The output data.
This 1D array is
shaped as ``(output_dimension,)`` or ``(n_samples, output_dimension)``.
"""
is_1d = input_data.ndim == 1
if is_1d:
input_data = input_data[newaxis, :]
self.last_input_data = input_data
length = input_data[:, 0]
width = input_data[:, 1]
area = length * width
return area[0] if is_1d else area
function = AreaFunction()
We can verify that the function works correctly:
(
function(array([3.0, 6.0])),
function(array([2.0, 4.0])),
function(array([[3.0, 6.0], [2.0, 4.0]])),
)
(np.float64(18.0), np.float64(8.0), array([18., 8.]))
This function can be attached
to an EvaluationProblem using an MDOFunction
problem = EvaluationProblem(design_space)
problem.add_observable(MDOFunction(function, "area"))
Then, this problem can be sampled using a DOE algorithm, e.g., Monte Carlo. The default mode is sequential sampling; we use it to generate reference samples:
SciPyDOE("MC").execute(problem, settings_model=MC_Settings(n_samples=1000))
samples_ref = problem.to_dataset()
INFO - 16:17:32: Evaluation problem:
INFO - 16:17:32: Evaluate the functions: area
INFO - 16:17:32: over the design space:
INFO - 16:17:32: +--------+-------------+-------+-------------+-------+
INFO - 16:17:32: | Name | Lower bound | Value | Upper bound | Type |
INFO - 16:17:32: +--------+-------------+-------+-------------+-------+
INFO - 16:17:32: | length | 0 | None | 10 | float |
INFO - 16:17:32: | width | 0 | None | 10 | float |
INFO - 16:17:32: +--------+-------------+-------+-------------+-------+
INFO - 16:17:32: Running the algorithm MC:
INFO - 16:17:32: 1%| | 6/1000 [00:00<00:00, 7820.33 it/sec]
INFO - 16:17:32: 1%| | 7/1000 [00:00<00:00, 6650.09 it/sec]
INFO - 16:17:32: 1%| | 8/1000 [00:00<00:00, 5850.82 it/sec]
INFO - 16:17:32: 1%| | 9/1000 [00:00<00:00, 5368.14 it/sec]
INFO - 16:17:32: 1%| | 10/1000 [00:00<00:00, 5032.76 it/sec]
INFO - 16:17:32: 1%| | 11/1000 [00:00<00:00, 4835.69 it/sec]
INFO - 16:17:32: 1%| | 12/1000 [00:00<00:00, 4657.75 it/sec]
INFO - 16:17:32: 1%|▏ | 13/1000 [00:00<00:00, 4505.16 it/sec]
INFO - 16:17:32: 1%|▏ | 14/1000 [00:00<00:00, 4370.04 it/sec]
INFO - 16:17:32: 2%|▏ | 15/1000 [00:00<00:00, 4313.35 it/sec]
INFO - 16:17:32: 2%|▏ | 16/1000 [00:00<00:00, 4200.87 it/sec]
INFO - 16:17:32: 2%|▏ | 17/1000 [00:00<00:00, 4166.12 it/sec]
INFO - 16:17:32: 2%|▏ | 18/1000 [00:00<00:00, 4104.24 it/sec]
INFO - 16:17:32: 2%|▏ | 19/1000 [00:00<00:00, 4048.56 it/sec]
INFO - 16:17:32: 2%|▏ | 20/1000 [00:00<00:00, 4014.46 it/sec]
INFO - 16:17:32: 2%|▏ | 21/1000 [00:00<00:00, 3993.85 it/sec]
INFO - 16:17:32: 2%|▏ | 22/1000 [00:00<00:00, 3953.84 it/sec]
INFO - 16:17:32: 2%|▏ | 23/1000 [00:00<00:00, 3913.71 it/sec]
INFO - 16:17:32: 2%|▏ | 24/1000 [00:00<00:00, 3884.36 it/sec]
INFO - 16:17:32: 2%|▎ | 25/1000 [00:00<00:00, 3873.57 it/sec]
INFO - 16:17:32: 3%|▎ | 26/1000 [00:00<00:00, 3834.59 it/sec]
INFO - 16:17:32: 3%|▎ | 27/1000 [00:00<00:00, 3827.83 it/sec]
INFO - 16:17:32: 3%|▎ | 28/1000 [00:00<00:00, 3807.07 it/sec]
INFO - 16:17:32: 3%|▎ | 29/1000 [00:00<00:00, 3792.32 it/sec]
INFO - 16:17:32: 3%|▎ | 30/1000 [00:00<00:00, 3778.99 it/sec]
INFO - 16:17:32: 3%|▎ | 31/1000 [00:00<00:00, 3768.79 it/sec]
INFO - 16:17:32: 3%|▎ | 32/1000 [00:00<00:00, 3752.24 it/sec]
INFO - 16:17:32: 3%|▎ | 33/1000 [00:00<00:00, 3738.14 it/sec]
INFO - 16:17:32: 3%|▎ | 34/1000 [00:00<00:00, 3722.33 it/sec]
INFO - 16:17:32: 4%|▎ | 35/1000 [00:00<00:00, 3720.14 it/sec]
INFO - 16:17:32: 4%|▎ | 36/1000 [00:00<00:00, 3696.24 it/sec]
INFO - 16:17:32: 4%|▎ | 37/1000 [00:00<00:00, 3689.45 it/sec]
INFO - 16:17:32: 4%|▍ | 38/1000 [00:00<00:00, 3687.13 it/sec]
INFO - 16:17:32: 4%|▍ | 39/1000 [00:00<00:00, 3666.76 it/sec]
INFO - 16:17:32: 4%|▍ | 40/1000 [00:00<00:00, 3665.55 it/sec]
INFO - 16:17:32: 4%|▍ | 41/1000 [00:00<00:00, 3655.05 it/sec]
INFO - 16:17:32: 4%|▍ | 42/1000 [00:00<00:00, 3655.24 it/sec]
INFO - 16:17:32: 4%|▍ | 43/1000 [00:00<00:00, 3637.80 it/sec]
INFO - 16:17:32: 4%|▍ | 44/1000 [00:00<00:00, 3633.72 it/sec]
INFO - 16:17:32: 4%|▍ | 45/1000 [00:00<00:00, 3624.39 it/sec]
INFO - 16:17:32: 5%|▍ | 46/1000 [00:00<00:00, 3619.24 it/sec]
INFO - 16:17:32: 5%|▍ | 47/1000 [00:00<00:00, 3617.11 it/sec]
INFO - 16:17:32: 5%|▍ | 48/1000 [00:00<00:00, 3617.99 it/sec]
INFO - 16:17:32: 5%|▍ | 49/1000 [00:00<00:00, 3607.66 it/sec]
INFO - 16:17:32: 5%|▌ | 50/1000 [00:00<00:00, 3597.17 it/sec]
INFO - 16:17:32: 5%|▌ | 51/1000 [00:00<00:00, 3589.93 it/sec]
INFO - 16:17:32: 5%|▌ | 52/1000 [00:00<00:00, 3585.23 it/sec]
INFO - 16:17:32: 5%|▌ | 53/1000 [00:00<00:00, 3568.02 it/sec]
INFO - 16:17:32: 5%|▌ | 54/1000 [00:00<00:00, 3568.50 it/sec]
INFO - 16:17:32: 6%|▌ | 55/1000 [00:00<00:00, 3562.84 it/sec]
INFO - 16:17:32: 6%|▌ | 56/1000 [00:00<00:00, 3558.70 it/sec]
INFO - 16:17:32: 6%|▌ | 57/1000 [00:00<00:00, 3558.36 it/sec]
INFO - 16:17:32: 6%|▌ | 58/1000 [00:00<00:00, 3554.55 it/sec]
INFO - 16:17:32: 6%|▌ | 59/1000 [00:00<00:00, 3546.40 it/sec]
INFO - 16:17:32: 6%|▌ | 60/1000 [00:00<00:00, 3547.33 it/sec]
INFO - 16:17:32: 6%|▌ | 61/1000 [00:00<00:00, 3543.27 it/sec]
INFO - 16:17:32: 6%|▌ | 62/1000 [00:00<00:00, 3544.80 it/sec]
INFO - 16:17:32: 6%|▋ | 63/1000 [00:00<00:00, 3534.05 it/sec]
INFO - 16:17:32: 6%|▋ | 64/1000 [00:00<00:00, 3535.35 it/sec]
INFO - 16:17:32: 6%|▋ | 65/1000 [00:00<00:00, 3532.11 it/sec]
INFO - 16:17:32: 7%|▋ | 66/1000 [00:00<00:00, 3528.35 it/sec]
INFO - 16:17:32: 7%|▋ | 67/1000 [00:00<00:00, 3528.21 it/sec]
INFO - 16:17:32: 7%|▋ | 68/1000 [00:00<00:00, 3529.20 it/sec]
INFO - 16:17:32: 7%|▋ | 69/1000 [00:00<00:00, 3525.14 it/sec]
INFO - 16:17:32: 7%|▋ | 70/1000 [00:00<00:00, 3521.92 it/sec]
INFO - 16:17:32: 7%|▋ | 71/1000 [00:00<00:00, 3517.84 it/sec]
INFO - 16:17:32: 7%|▋ | 72/1000 [00:00<00:00, 3519.53 it/sec]
INFO - 16:17:32: 7%|▋ | 73/1000 [00:00<00:00, 3513.42 it/sec]
INFO - 16:17:32: 7%|▋ | 74/1000 [00:00<00:00, 3515.56 it/sec]
INFO - 16:17:32: 8%|▊ | 75/1000 [00:00<00:00, 3512.86 it/sec]
INFO - 16:17:32: 8%|▊ | 76/1000 [00:00<00:00, 3511.85 it/sec]
INFO - 16:17:32: 8%|▊ | 77/1000 [00:00<00:00, 3508.89 it/sec]
INFO - 16:17:32: 8%|▊ | 78/1000 [00:00<00:00, 3508.94 it/sec]
INFO - 16:17:32: 8%|▊ | 79/1000 [00:00<00:00, 3506.94 it/sec]
INFO - 16:17:32: 8%|▊ | 80/1000 [00:00<00:00, 3504.38 it/sec]
INFO - 16:17:32: 8%|▊ | 81/1000 [00:00<00:00, 3501.59 it/sec]
INFO - 16:17:32: 8%|▊ | 82/1000 [00:00<00:00, 3503.12 it/sec]
INFO - 16:17:32: 8%|▊ | 83/1000 [00:00<00:00, 3498.38 it/sec]
INFO - 16:17:32: 8%|▊ | 84/1000 [00:00<00:00, 3500.53 it/sec]
INFO - 16:17:32: 8%|▊ | 85/1000 [00:00<00:00, 3498.75 it/sec]
INFO - 16:17:32: 9%|▊ | 86/1000 [00:00<00:00, 3498.64 it/sec]
INFO - 16:17:32: 9%|▊ | 87/1000 [00:00<00:00, 3495.55 it/sec]
INFO - 16:17:32: 9%|▉ | 88/1000 [00:00<00:00, 3495.15 it/sec]
INFO - 16:17:32: 9%|▉ | 89/1000 [00:00<00:00, 3493.62 it/sec]
INFO - 16:17:32: 9%|▉ | 90/1000 [00:00<00:00, 3491.02 it/sec]
INFO - 16:17:32: 9%|▉ | 91/1000 [00:00<00:00, 3490.52 it/sec]
INFO - 16:17:32: 9%|▉ | 92/1000 [00:00<00:00, 3492.03 it/sec]
INFO - 16:17:32: 9%|▉ | 93/1000 [00:00<00:00, 3487.50 it/sec]
INFO - 16:17:32: 9%|▉ | 94/1000 [00:00<00:00, 3488.51 it/sec]
INFO - 16:17:32: 10%|▉ | 95/1000 [00:00<00:00, 3486.26 it/sec]
INFO - 16:17:32: 10%|▉ | 96/1000 [00:00<00:00, 3487.44 it/sec]
INFO - 16:17:32: 10%|▉ | 97/1000 [00:00<00:00, 3482.57 it/sec]
INFO - 16:17:32: 10%|▉ | 98/1000 [00:00<00:00, 3483.79 it/sec]
INFO - 16:17:32: 10%|▉ | 99/1000 [00:00<00:00, 3482.12 it/sec]
INFO - 16:17:32: 10%|█ | 100/1000 [00:00<00:00, 3481.27 it/sec]
INFO - 16:17:32: 10%|█ | 101/1000 [00:00<00:00, 3481.78 it/sec]
INFO - 16:17:32: 10%|█ | 102/1000 [00:00<00:00, 3481.12 it/sec]
INFO - 16:17:32: 10%|█ | 103/1000 [00:00<00:00, 3483.08 it/sec]
INFO - 16:17:32: 10%|█ | 104/1000 [00:00<00:00, 3479.11 it/sec]
INFO - 16:17:32: 10%|█ | 105/1000 [00:00<00:00, 3480.23 it/sec]
INFO - 16:17:32: 11%|█ | 106/1000 [00:00<00:00, 3477.92 it/sec]
INFO - 16:17:32: 11%|█ | 107/1000 [00:00<00:00, 3477.19 it/sec]
INFO - 16:17:32: 11%|█ | 108/1000 [00:00<00:00, 3476.10 it/sec]
INFO - 16:17:32: 11%|█ | 109/1000 [00:00<00:00, 3477.89 it/sec]
INFO - 16:17:32: 11%|█ | 110/1000 [00:00<00:00, 3474.62 it/sec]
INFO - 16:17:32: 11%|█ | 111/1000 [00:00<00:00, 3476.41 it/sec]
INFO - 16:17:32: 11%|█ | 112/1000 [00:00<00:00, 3474.96 it/sec]
INFO - 16:17:32: 11%|█▏ | 113/1000 [00:00<00:00, 3476.92 it/sec]
INFO - 16:17:32: 11%|█▏ | 114/1000 [00:00<00:00, 3472.64 it/sec]
INFO - 16:17:32: 12%|█▏ | 115/1000 [00:00<00:00, 3474.46 it/sec]
INFO - 16:17:32: 12%|█▏ | 116/1000 [00:00<00:00, 3464.98 it/sec]
INFO - 16:17:32: 12%|█▏ | 117/1000 [00:00<00:00, 3460.57 it/sec]
INFO - 16:17:32: 12%|█▏ | 118/1000 [00:00<00:00, 3457.84 it/sec]
INFO - 16:17:32: 12%|█▏ | 119/1000 [00:00<00:00, 3454.30 it/sec]
INFO - 16:17:32: 12%|█▏ | 120/1000 [00:00<00:00, 3451.51 it/sec]
INFO - 16:17:32: 12%|█▏ | 121/1000 [00:00<00:00, 3450.37 it/sec]
INFO - 16:17:32: 12%|█▏ | 122/1000 [00:00<00:00, 3451.52 it/sec]
INFO - 16:17:32: 12%|█▏ | 123/1000 [00:00<00:00, 3447.72 it/sec]
INFO - 16:17:32: 12%|█▏ | 124/1000 [00:00<00:00, 3447.98 it/sec]
INFO - 16:17:32: 12%|█▎ | 125/1000 [00:00<00:00, 3445.75 it/sec]
INFO - 16:17:32: 13%|█▎ | 126/1000 [00:00<00:00, 3447.42 it/sec]
INFO - 16:17:32: 13%|█▎ | 127/1000 [00:00<00:00, 3443.82 it/sec]
INFO - 16:17:32: 13%|█▎ | 128/1000 [00:00<00:00, 3445.19 it/sec]
INFO - 16:17:32: 13%|█▎ | 129/1000 [00:00<00:00, 3443.27 it/sec]
INFO - 16:17:32: 13%|█▎ | 130/1000 [00:00<00:00, 3438.95 it/sec]
INFO - 16:17:32: 13%|█▎ | 131/1000 [00:00<00:00, 3419.64 it/sec]
INFO - 16:17:32: 13%|█▎ | 132/1000 [00:00<00:00, 3420.79 it/sec]
INFO - 16:17:32: 13%|█▎ | 133/1000 [00:00<00:00, 3417.08 it/sec]
INFO - 16:17:32: 13%|█▎ | 134/1000 [00:00<00:00, 3416.95 it/sec]
INFO - 16:17:32: 14%|█▎ | 135/1000 [00:00<00:00, 3415.54 it/sec]
INFO - 16:17:32: 14%|█▎ | 136/1000 [00:00<00:00, 3415.09 it/sec]
INFO - 16:17:32: 14%|█▎ | 137/1000 [00:00<00:00, 3414.08 it/sec]
INFO - 16:17:32: 14%|█▍ | 138/1000 [00:00<00:00, 3415.40 it/sec]
INFO - 16:17:32: 14%|█▍ | 139/1000 [00:00<00:00, 3412.36 it/sec]
INFO - 16:17:32: 14%|█▍ | 140/1000 [00:00<00:00, 3413.99 it/sec]
INFO - 16:17:32: 14%|█▍ | 141/1000 [00:00<00:00, 3413.55 it/sec]
INFO - 16:17:32: 14%|█▍ | 142/1000 [00:00<00:00, 3415.28 it/sec]
INFO - 16:17:32: 14%|█▍ | 143/1000 [00:00<00:00, 3412.62 it/sec]
INFO - 16:17:32: 14%|█▍ | 144/1000 [00:00<00:00, 3412.22 it/sec]
INFO - 16:17:32: 14%|█▍ | 145/1000 [00:00<00:00, 3411.46 it/sec]
INFO - 16:17:32: 15%|█▍ | 146/1000 [00:00<00:00, 3410.93 it/sec]
INFO - 16:17:32: 15%|█▍ | 147/1000 [00:00<00:00, 3410.06 it/sec]
INFO - 16:17:32: 15%|█▍ | 148/1000 [00:00<00:00, 3411.07 it/sec]
INFO - 16:17:32: 15%|█▍ | 149/1000 [00:00<00:00, 3408.96 it/sec]
INFO - 16:17:32: 15%|█▌ | 150/1000 [00:00<00:00, 3409.45 it/sec]
INFO - 16:17:32: 15%|█▌ | 151/1000 [00:00<00:00, 3409.10 it/sec]
INFO - 16:17:32: 15%|█▌ | 152/1000 [00:00<00:00, 3410.30 it/sec]
INFO - 16:17:32: 15%|█▌ | 153/1000 [00:00<00:00, 3408.79 it/sec]
INFO - 16:17:32: 15%|█▌ | 154/1000 [00:00<00:00, 3410.44 it/sec]
INFO - 16:17:32: 16%|█▌ | 155/1000 [00:00<00:00, 3409.90 it/sec]
INFO - 16:17:32: 16%|█▌ | 156/1000 [00:00<00:00, 3409.15 it/sec]
INFO - 16:17:32: 16%|█▌ | 157/1000 [00:00<00:00, 3409.09 it/sec]
INFO - 16:17:32: 16%|█▌ | 158/1000 [00:00<00:00, 3409.27 it/sec]
INFO - 16:17:32: 16%|█▌ | 159/1000 [00:00<00:00, 3407.11 it/sec]
INFO - 16:17:32: 16%|█▌ | 160/1000 [00:00<00:00, 3408.18 it/sec]
INFO - 16:17:32: 16%|█▌ | 161/1000 [00:00<00:00, 3406.85 it/sec]
INFO - 16:17:32: 16%|█▌ | 162/1000 [00:00<00:00, 3406.43 it/sec]
INFO - 16:17:32: 16%|█▋ | 163/1000 [00:00<00:00, 3404.99 it/sec]
INFO - 16:17:32: 16%|█▋ | 164/1000 [00:00<00:00, 3406.12 it/sec]
INFO - 16:17:32: 16%|█▋ | 165/1000 [00:00<00:00, 3405.41 it/sec]
INFO - 16:17:32: 17%|█▋ | 166/1000 [00:00<00:00, 3405.08 it/sec]
INFO - 16:17:32: 17%|█▋ | 167/1000 [00:00<00:00, 3403.44 it/sec]
INFO - 16:17:32: 17%|█▋ | 168/1000 [00:00<00:00, 3404.91 it/sec]
INFO - 16:17:32: 17%|█▋ | 169/1000 [00:00<00:00, 3402.21 it/sec]
INFO - 16:17:32: 17%|█▋ | 170/1000 [00:00<00:00, 3402.52 it/sec]
INFO - 16:17:32: 17%|█▋ | 171/1000 [00:00<00:00, 3401.43 it/sec]
INFO - 16:17:32: 17%|█▋ | 172/1000 [00:00<00:00, 3402.86 it/sec]
INFO - 16:17:32: 17%|█▋ | 173/1000 [00:00<00:00, 3401.23 it/sec]
INFO - 16:17:32: 17%|█▋ | 174/1000 [00:00<00:00, 3402.63 it/sec]
INFO - 16:17:32: 18%|█▊ | 175/1000 [00:00<00:00, 3402.20 it/sec]
INFO - 16:17:32: 18%|█▊ | 176/1000 [00:00<00:00, 3402.05 it/sec]
INFO - 16:17:32: 18%|█▊ | 177/1000 [00:00<00:00, 3402.53 it/sec]
INFO - 16:17:32: 18%|█▊ | 178/1000 [00:00<00:00, 3402.50 it/sec]
INFO - 16:17:32: 18%|█▊ | 179/1000 [00:00<00:00, 3399.98 it/sec]
INFO - 16:17:32: 18%|█▊ | 180/1000 [00:00<00:00, 3400.11 it/sec]
INFO - 16:17:32: 18%|█▊ | 181/1000 [00:00<00:00, 3399.89 it/sec]
INFO - 16:17:32: 18%|█▊ | 182/1000 [00:00<00:00, 3401.10 it/sec]
INFO - 16:17:32: 18%|█▊ | 183/1000 [00:00<00:00, 3398.36 it/sec]
INFO - 16:17:32: 18%|█▊ | 184/1000 [00:00<00:00, 3399.79 it/sec]
INFO - 16:17:32: 18%|█▊ | 185/1000 [00:00<00:00, 3399.22 it/sec]
INFO - 16:17:32: 19%|█▊ | 186/1000 [00:00<00:00, 3399.14 it/sec]
INFO - 16:17:32: 19%|█▊ | 187/1000 [00:00<00:00, 3398.79 it/sec]
INFO - 16:17:32: 19%|█▉ | 188/1000 [00:00<00:00, 3400.08 it/sec]
INFO - 16:17:32: 19%|█▉ | 189/1000 [00:00<00:00, 3399.43 it/sec]
INFO - 16:17:32: 19%|█▉ | 190/1000 [00:00<00:00, 3398.88 it/sec]
INFO - 16:17:32: 19%|█▉ | 191/1000 [00:00<00:00, 3398.27 it/sec]
INFO - 16:17:32: 19%|█▉ | 192/1000 [00:00<00:00, 3399.45 it/sec]
INFO - 16:17:32: 19%|█▉ | 193/1000 [00:00<00:00, 3397.57 it/sec]
INFO - 16:17:32: 19%|█▉ | 194/1000 [00:00<00:00, 3398.94 it/sec]
INFO - 16:17:32: 20%|█▉ | 195/1000 [00:00<00:00, 3398.38 it/sec]
INFO - 16:17:32: 20%|█▉ | 196/1000 [00:00<00:00, 3398.08 it/sec]
INFO - 16:17:32: 20%|█▉ | 197/1000 [00:00<00:00, 3397.86 it/sec]
INFO - 16:17:32: 20%|█▉ | 198/1000 [00:00<00:00, 3399.14 it/sec]
INFO - 16:17:32: 20%|█▉ | 199/1000 [00:00<00:00, 3398.69 it/sec]
INFO - 16:17:32: 20%|██ | 200/1000 [00:00<00:00, 3398.26 it/sec]
INFO - 16:17:32: 20%|██ | 201/1000 [00:00<00:00, 3397.79 it/sec]
INFO - 16:17:32: 20%|██ | 202/1000 [00:00<00:00, 3399.02 it/sec]
INFO - 16:17:32: 20%|██ | 203/1000 [00:00<00:00, 3397.61 it/sec]
INFO - 16:17:32: 20%|██ | 204/1000 [00:00<00:00, 3398.42 it/sec]
INFO - 16:17:32: 20%|██ | 205/1000 [00:00<00:00, 3398.78 it/sec]
INFO - 16:17:32: 21%|██ | 206/1000 [00:00<00:00, 3397.19 it/sec]
INFO - 16:17:32: 21%|██ | 207/1000 [00:00<00:00, 3398.34 it/sec]
INFO - 16:17:32: 21%|██ | 208/1000 [00:00<00:00, 3398.10 it/sec]
INFO - 16:17:32: 21%|██ | 209/1000 [00:00<00:00, 3399.03 it/sec]
INFO - 16:17:32: 21%|██ | 210/1000 [00:00<00:00, 3395.69 it/sec]
INFO - 16:17:32: 21%|██ | 211/1000 [00:00<00:00, 3396.59 it/sec]
INFO - 16:17:32: 21%|██ | 212/1000 [00:00<00:00, 3395.76 it/sec]
INFO - 16:17:32: 21%|██▏ | 213/1000 [00:00<00:00, 3394.86 it/sec]
INFO - 16:17:32: 21%|██▏ | 214/1000 [00:00<00:00, 3395.22 it/sec]
INFO - 16:17:32: 22%|██▏ | 215/1000 [00:00<00:00, 3394.09 it/sec]
INFO - 16:17:32: 22%|██▏ | 216/1000 [00:00<00:00, 3392.17 it/sec]
INFO - 16:17:32: 22%|██▏ | 217/1000 [00:00<00:00, 3393.30 it/sec]
INFO - 16:17:32: 22%|██▏ | 218/1000 [00:00<00:00, 3392.85 it/sec]
INFO - 16:17:32: 22%|██▏ | 219/1000 [00:00<00:00, 3393.30 it/sec]
INFO - 16:17:32: 22%|██▏ | 220/1000 [00:00<00:00, 3391.92 it/sec]
INFO - 16:17:32: 22%|██▏ | 221/1000 [00:00<00:00, 3393.08 it/sec]
INFO - 16:17:32: 22%|██▏ | 222/1000 [00:00<00:00, 3392.71 it/sec]
INFO - 16:17:32: 22%|██▏ | 223/1000 [00:00<00:00, 3392.33 it/sec]
INFO - 16:17:32: 22%|██▏ | 224/1000 [00:00<00:00, 3392.25 it/sec]
INFO - 16:17:32: 22%|██▎ | 225/1000 [00:00<00:00, 3392.58 it/sec]
INFO - 16:17:32: 23%|██▎ | 226/1000 [00:00<00:00, 3393.57 it/sec]
INFO - 16:17:32: 23%|██▎ | 227/1000 [00:00<00:00, 3392.92 it/sec]
INFO - 16:17:32: 23%|██▎ | 228/1000 [00:00<00:00, 3393.09 it/sec]
INFO - 16:17:32: 23%|██▎ | 229/1000 [00:00<00:00, 3392.66 it/sec]
INFO - 16:17:32: 23%|██▎ | 230/1000 [00:00<00:00, 3392.78 it/sec]
INFO - 16:17:32: 23%|██▎ | 231/1000 [00:00<00:00, 3392.55 it/sec]
INFO - 16:17:32: 23%|██▎ | 232/1000 [00:00<00:00, 3393.72 it/sec]
INFO - 16:17:32: 23%|██▎ | 233/1000 [00:00<00:00, 3392.48 it/sec]
INFO - 16:17:32: 23%|██▎ | 234/1000 [00:00<00:00, 3392.34 it/sec]
INFO - 16:17:32: 24%|██▎ | 235/1000 [00:00<00:00, 3391.92 it/sec]
INFO - 16:17:32: 24%|██▎ | 236/1000 [00:00<00:00, 3392.73 it/sec]
INFO - 16:17:32: 24%|██▎ | 237/1000 [00:00<00:00, 3391.02 it/sec]
INFO - 16:17:32: 24%|██▍ | 238/1000 [00:00<00:00, 3390.55 it/sec]
INFO - 16:17:32: 24%|██▍ | 239/1000 [00:00<00:00, 3390.13 it/sec]
INFO - 16:17:32: 24%|██▍ | 240/1000 [00:00<00:00, 3389.54 it/sec]
INFO - 16:17:32: 24%|██▍ | 241/1000 [00:00<00:00, 3388.94 it/sec]
INFO - 16:17:32: 24%|██▍ | 242/1000 [00:00<00:00, 3390.16 it/sec]
INFO - 16:17:32: 24%|██▍ | 243/1000 [00:00<00:00, 3389.00 it/sec]
INFO - 16:17:32: 24%|██▍ | 244/1000 [00:00<00:00, 3389.47 it/sec]
INFO - 16:17:32: 24%|██▍ | 245/1000 [00:00<00:00, 3388.90 it/sec]
INFO - 16:17:32: 25%|██▍ | 246/1000 [00:00<00:00, 3389.35 it/sec]
INFO - 16:17:32: 25%|██▍ | 247/1000 [00:00<00:00, 3388.42 it/sec]
INFO - 16:17:32: 25%|██▍ | 248/1000 [00:00<00:00, 3388.70 it/sec]
INFO - 16:17:32: 25%|██▍ | 249/1000 [00:00<00:00, 3388.29 it/sec]
INFO - 16:17:32: 25%|██▌ | 250/1000 [00:00<00:00, 3387.80 it/sec]
INFO - 16:17:32: 25%|██▌ | 251/1000 [00:00<00:00, 3387.99 it/sec]
INFO - 16:17:32: 25%|██▌ | 252/1000 [00:00<00:00, 3387.78 it/sec]
INFO - 16:17:32: 25%|██▌ | 253/1000 [00:00<00:00, 3387.64 it/sec]
INFO - 16:17:32: 25%|██▌ | 254/1000 [00:00<00:00, 3387.77 it/sec]
INFO - 16:17:32: 26%|██▌ | 255/1000 [00:00<00:00, 3388.42 it/sec]
INFO - 16:17:32: 26%|██▌ | 256/1000 [00:00<00:00, 3388.05 it/sec]
INFO - 16:17:32: 26%|██▌ | 257/1000 [00:00<00:00, 3387.54 it/sec]
INFO - 16:17:32: 26%|██▌ | 258/1000 [00:00<00:00, 3387.31 it/sec]
INFO - 16:17:32: 26%|██▌ | 259/1000 [00:00<00:00, 3388.28 it/sec]
INFO - 16:17:32: 26%|██▌ | 260/1000 [00:00<00:00, 3387.09 it/sec]
INFO - 16:17:32: 26%|██▌ | 261/1000 [00:00<00:00, 3387.86 it/sec]
INFO - 16:17:32: 26%|██▌ | 262/1000 [00:00<00:00, 3387.61 it/sec]
INFO - 16:17:32: 26%|██▋ | 263/1000 [00:00<00:00, 3386.83 it/sec]
INFO - 16:17:32: 26%|██▋ | 264/1000 [00:00<00:00, 3386.64 it/sec]
INFO - 16:17:32: 26%|██▋ | 265/1000 [00:00<00:00, 3387.50 it/sec]
INFO - 16:17:32: 27%|██▋ | 266/1000 [00:00<00:00, 3387.19 it/sec]
INFO - 16:17:32: 27%|██▋ | 267/1000 [00:00<00:00, 3386.97 it/sec]
INFO - 16:17:32: 27%|██▋ | 268/1000 [00:00<00:00, 3386.65 it/sec]
INFO - 16:17:32: 27%|██▋ | 269/1000 [00:00<00:00, 3387.59 it/sec]
INFO - 16:17:32: 27%|██▋ | 270/1000 [00:00<00:00, 3386.55 it/sec]
INFO - 16:17:32: 27%|██▋ | 271/1000 [00:00<00:00, 3386.71 it/sec]
INFO - 16:17:32: 27%|██▋ | 272/1000 [00:00<00:00, 3386.44 it/sec]
INFO - 16:17:32: 27%|██▋ | 273/1000 [00:00<00:00, 3387.43 it/sec]
INFO - 16:17:32: 27%|██▋ | 274/1000 [00:00<00:00, 3386.64 it/sec]
INFO - 16:17:32: 28%|██▊ | 275/1000 [00:00<00:00, 3386.84 it/sec]
INFO - 16:17:32: 28%|██▊ | 276/1000 [00:00<00:00, 3376.81 it/sec]
INFO - 16:17:32: 28%|██▊ | 277/1000 [00:00<00:00, 3377.34 it/sec]
INFO - 16:17:32: 28%|██▊ | 278/1000 [00:00<00:00, 3377.11 it/sec]
INFO - 16:17:32: 28%|██▊ | 279/1000 [00:00<00:00, 3377.96 it/sec]
INFO - 16:17:32: 28%|██▊ | 280/1000 [00:00<00:00, 3377.35 it/sec]
INFO - 16:17:32: 28%|██▊ | 281/1000 [00:00<00:00, 3377.33 it/sec]
INFO - 16:17:32: 28%|██▊ | 282/1000 [00:00<00:00, 3377.13 it/sec]
INFO - 16:17:32: 28%|██▊ | 283/1000 [00:00<00:00, 3377.06 it/sec]
INFO - 16:17:32: 28%|██▊ | 284/1000 [00:00<00:00, 3377.04 it/sec]
INFO - 16:17:32: 28%|██▊ | 285/1000 [00:00<00:00, 3377.85 it/sec]
INFO - 16:17:32: 29%|██▊ | 286/1000 [00:00<00:00, 3376.96 it/sec]
INFO - 16:17:32: 29%|██▊ | 287/1000 [00:00<00:00, 3377.24 it/sec]
INFO - 16:17:32: 29%|██▉ | 288/1000 [00:00<00:00, 3377.25 it/sec]
INFO - 16:17:32: 29%|██▉ | 289/1000 [00:00<00:00, 3378.15 it/sec]
INFO - 16:17:32: 29%|██▉ | 290/1000 [00:00<00:00, 3376.55 it/sec]
INFO - 16:17:32: 29%|██▉ | 291/1000 [00:00<00:00, 3376.84 it/sec]
INFO - 16:17:32: 29%|██▉ | 292/1000 [00:00<00:00, 3376.44 it/sec]
INFO - 16:17:32: 29%|██▉ | 293/1000 [00:00<00:00, 3376.42 it/sec]
INFO - 16:17:32: 29%|██▉ | 294/1000 [00:00<00:00, 3376.42 it/sec]
INFO - 16:17:32: 30%|██▉ | 295/1000 [00:00<00:00, 3377.11 it/sec]
INFO - 16:17:32: 30%|██▉ | 296/1000 [00:00<00:00, 3376.14 it/sec]
INFO - 16:17:32: 30%|██▉ | 297/1000 [00:00<00:00, 3377.08 it/sec]
INFO - 16:17:32: 30%|██▉ | 298/1000 [00:00<00:00, 3377.09 it/sec]
INFO - 16:17:32: 30%|██▉ | 299/1000 [00:00<00:00, 3378.07 it/sec]
INFO - 16:17:32: 30%|███ | 300/1000 [00:00<00:00, 3376.89 it/sec]
INFO - 16:17:32: 30%|███ | 301/1000 [00:00<00:00, 3377.68 it/sec]
INFO - 16:17:32: 30%|███ | 302/1000 [00:00<00:00, 3377.46 it/sec]
INFO - 16:17:32: 30%|███ | 303/1000 [00:00<00:00, 3377.33 it/sec]
INFO - 16:17:32: 30%|███ | 304/1000 [00:00<00:00, 3377.50 it/sec]
INFO - 16:17:32: 30%|███ | 305/1000 [00:00<00:00, 3378.04 it/sec]
INFO - 16:17:32: 31%|███ | 306/1000 [00:00<00:00, 3378.14 it/sec]
INFO - 16:17:32: 31%|███ | 307/1000 [00:00<00:00, 3377.99 it/sec]
INFO - 16:17:32: 31%|███ | 308/1000 [00:00<00:00, 3377.67 it/sec]
INFO - 16:17:32: 31%|███ | 309/1000 [00:00<00:00, 3378.39 it/sec]
INFO - 16:17:32: 31%|███ | 310/1000 [00:00<00:00, 3377.55 it/sec]
INFO - 16:17:32: 31%|███ | 311/1000 [00:00<00:00, 3378.18 it/sec]
INFO - 16:17:32: 31%|███ | 312/1000 [00:00<00:00, 3377.74 it/sec]
INFO - 16:17:32: 31%|███▏ | 313/1000 [00:00<00:00, 3377.83 it/sec]
INFO - 16:17:32: 31%|███▏ | 314/1000 [00:00<00:00, 3378.26 it/sec]
INFO - 16:17:32: 32%|███▏ | 315/1000 [00:00<00:00, 3379.17 it/sec]
INFO - 16:17:32: 32%|███▏ | 316/1000 [00:00<00:00, 3379.05 it/sec]
INFO - 16:17:32: 32%|███▏ | 317/1000 [00:00<00:00, 3378.47 it/sec]
INFO - 16:17:32: 32%|███▏ | 318/1000 [00:00<00:00, 3378.32 it/sec]
INFO - 16:17:32: 32%|███▏ | 319/1000 [00:00<00:00, 3379.15 it/sec]
INFO - 16:17:32: 32%|███▏ | 320/1000 [00:00<00:00, 3378.11 it/sec]
INFO - 16:17:32: 32%|███▏ | 321/1000 [00:00<00:00, 3378.34 it/sec]
INFO - 16:17:32: 32%|███▏ | 322/1000 [00:00<00:00, 3378.11 it/sec]
INFO - 16:17:32: 32%|███▏ | 323/1000 [00:00<00:00, 3378.83 it/sec]
INFO - 16:17:32: 32%|███▏ | 324/1000 [00:00<00:00, 3378.21 it/sec]
INFO - 16:17:32: 32%|███▎ | 325/1000 [00:00<00:00, 3378.35 it/sec]
INFO - 16:17:32: 33%|███▎ | 326/1000 [00:00<00:00, 3378.02 it/sec]
INFO - 16:17:32: 33%|███▎ | 327/1000 [00:00<00:00, 3377.96 it/sec]
INFO - 16:17:32: 33%|███▎ | 328/1000 [00:00<00:00, 3378.00 it/sec]
INFO - 16:17:32: 33%|███▎ | 329/1000 [00:00<00:00, 3378.67 it/sec]
INFO - 16:17:32: 33%|███▎ | 330/1000 [00:00<00:00, 3377.30 it/sec]
INFO - 16:17:32: 33%|███▎ | 331/1000 [00:00<00:00, 3377.56 it/sec]
INFO - 16:17:32: 33%|███▎ | 332/1000 [00:00<00:00, 3378.10 it/sec]
INFO - 16:17:32: 33%|███▎ | 333/1000 [00:00<00:00, 3377.85 it/sec]
INFO - 16:17:32: 33%|███▎ | 334/1000 [00:00<00:00, 3377.65 it/sec]
INFO - 16:17:32: 34%|███▎ | 335/1000 [00:00<00:00, 3377.19 it/sec]
INFO - 16:17:32: 34%|███▎ | 336/1000 [00:00<00:00, 3377.83 it/sec]
INFO - 16:17:32: 34%|███▎ | 337/1000 [00:00<00:00, 3377.00 it/sec]
INFO - 16:17:32: 34%|███▍ | 338/1000 [00:00<00:00, 3377.86 it/sec]
INFO - 16:17:32: 34%|███▍ | 339/1000 [00:00<00:00, 3377.55 it/sec]
INFO - 16:17:32: 34%|███▍ | 340/1000 [00:00<00:00, 3377.90 it/sec]
INFO - 16:17:32: 34%|███▍ | 341/1000 [00:00<00:00, 3377.68 it/sec]
INFO - 16:17:32: 34%|███▍ | 342/1000 [00:00<00:00, 3378.02 it/sec]
INFO - 16:17:32: 34%|███▍ | 343/1000 [00:00<00:00, 3377.94 it/sec]
INFO - 16:17:32: 34%|███▍ | 344/1000 [00:00<00:00, 3377.36 it/sec]
INFO - 16:17:32: 34%|███▍ | 345/1000 [00:00<00:00, 3377.13 it/sec]
INFO - 16:17:32: 35%|███▍ | 346/1000 [00:00<00:00, 3377.87 it/sec]
INFO - 16:17:32: 35%|███▍ | 347/1000 [00:00<00:00, 3376.83 it/sec]
INFO - 16:17:32: 35%|███▍ | 348/1000 [00:00<00:00, 3377.56 it/sec]
INFO - 16:17:32: 35%|███▍ | 349/1000 [00:00<00:00, 3377.27 it/sec]
INFO - 16:17:32: 35%|███▌ | 350/1000 [00:00<00:00, 3377.48 it/sec]
INFO - 16:17:32: 35%|███▌ | 351/1000 [00:00<00:00, 3377.65 it/sec]
INFO - 16:17:32: 35%|███▌ | 352/1000 [00:00<00:00, 3378.19 it/sec]
INFO - 16:17:32: 35%|███▌ | 353/1000 [00:00<00:00, 3377.85 it/sec]
INFO - 16:17:32: 35%|███▌ | 354/1000 [00:00<00:00, 3377.87 it/sec]
INFO - 16:17:32: 36%|███▌ | 355/1000 [00:00<00:00, 3377.78 it/sec]
INFO - 16:17:32: 36%|███▌ | 356/1000 [00:00<00:00, 3378.52 it/sec]
INFO - 16:17:32: 36%|███▌ | 357/1000 [00:00<00:00, 3377.39 it/sec]
INFO - 16:17:32: 36%|███▌ | 358/1000 [00:00<00:00, 3377.91 it/sec]
INFO - 16:17:32: 36%|███▌ | 359/1000 [00:00<00:00, 3377.46 it/sec]
INFO - 16:17:32: 36%|███▌ | 360/1000 [00:00<00:00, 3378.27 it/sec]
INFO - 16:17:32: 36%|███▌ | 361/1000 [00:00<00:00, 3377.69 it/sec]
INFO - 16:17:32: 36%|███▌ | 362/1000 [00:00<00:00, 3378.30 it/sec]
INFO - 16:17:32: 36%|███▋ | 363/1000 [00:00<00:00, 3378.05 it/sec]
INFO - 16:17:32: 36%|███▋ | 364/1000 [00:00<00:00, 3378.07 it/sec]
INFO - 16:17:32: 36%|███▋ | 365/1000 [00:00<00:00, 3377.99 it/sec]
INFO - 16:17:32: 37%|███▋ | 366/1000 [00:00<00:00, 3378.62 it/sec]
INFO - 16:17:32: 37%|███▋ | 367/1000 [00:00<00:00, 3377.82 it/sec]
INFO - 16:17:32: 37%|███▋ | 368/1000 [00:00<00:00, 3378.57 it/sec]
INFO - 16:17:32: 37%|███▋ | 369/1000 [00:00<00:00, 3378.27 it/sec]
INFO - 16:17:32: 37%|███▋ | 370/1000 [00:00<00:00, 3379.00 it/sec]
INFO - 16:17:32: 37%|███▋ | 371/1000 [00:00<00:00, 3377.82 it/sec]
INFO - 16:17:32: 37%|███▋ | 372/1000 [00:00<00:00, 3378.64 it/sec]
INFO - 16:17:32: 37%|███▋ | 373/1000 [00:00<00:00, 3378.34 it/sec]
INFO - 16:17:32: 37%|███▋ | 374/1000 [00:00<00:00, 3378.45 it/sec]
INFO - 16:17:32: 38%|███▊ | 375/1000 [00:00<00:00, 3378.58 it/sec]
INFO - 16:17:32: 38%|███▊ | 376/1000 [00:00<00:00, 3376.82 it/sec]
INFO - 16:17:32: 38%|███▊ | 377/1000 [00:00<00:00, 3376.36 it/sec]
INFO - 16:17:32: 38%|███▊ | 378/1000 [00:00<00:00, 3376.50 it/sec]
INFO - 16:17:32: 38%|███▊ | 379/1000 [00:00<00:00, 3375.58 it/sec]
INFO - 16:17:32: 38%|███▊ | 380/1000 [00:00<00:00, 3375.18 it/sec]
INFO - 16:17:32: 38%|███▊ | 381/1000 [00:00<00:00, 3374.79 it/sec]
INFO - 16:17:32: 38%|███▊ | 382/1000 [00:00<00:00, 3374.85 it/sec]
INFO - 16:17:32: 38%|███▊ | 383/1000 [00:00<00:00, 3375.01 it/sec]
INFO - 16:17:32: 38%|███▊ | 384/1000 [00:00<00:00, 3374.40 it/sec]
INFO - 16:17:32: 38%|███▊ | 385/1000 [00:00<00:00, 3374.52 it/sec]
INFO - 16:17:32: 39%|███▊ | 386/1000 [00:00<00:00, 3374.27 it/sec]
INFO - 16:17:32: 39%|███▊ | 387/1000 [00:00<00:00, 3374.01 it/sec]
INFO - 16:17:32: 39%|███▉ | 388/1000 [00:00<00:00, 3374.15 it/sec]
INFO - 16:17:32: 39%|███▉ | 389/1000 [00:00<00:00, 3374.86 it/sec]
INFO - 16:17:32: 39%|███▉ | 390/1000 [00:00<00:00, 3374.64 it/sec]
INFO - 16:17:32: 39%|███▉ | 391/1000 [00:00<00:00, 3374.45 it/sec]
INFO - 16:17:32: 39%|███▉ | 392/1000 [00:00<00:00, 3374.12 it/sec]
INFO - 16:17:32: 39%|███▉ | 393/1000 [00:00<00:00, 3374.77 it/sec]
INFO - 16:17:32: 39%|███▉ | 394/1000 [00:00<00:00, 3373.94 it/sec]
INFO - 16:17:32: 40%|███▉ | 395/1000 [00:00<00:00, 3374.51 it/sec]
INFO - 16:17:32: 40%|███▉ | 396/1000 [00:00<00:00, 3374.17 it/sec]
INFO - 16:17:32: 40%|███▉ | 397/1000 [00:00<00:00, 3373.87 it/sec]
INFO - 16:17:32: 40%|███▉ | 398/1000 [00:00<00:00, 3373.55 it/sec]
INFO - 16:17:32: 40%|███▉ | 399/1000 [00:00<00:00, 3373.96 it/sec]
INFO - 16:17:32: 40%|████ | 400/1000 [00:00<00:00, 3373.69 it/sec]
INFO - 16:17:32: 40%|████ | 401/1000 [00:00<00:00, 3371.46 it/sec]
INFO - 16:17:32: 40%|████ | 402/1000 [00:00<00:00, 3370.47 it/sec]
INFO - 16:17:32: 40%|████ | 403/1000 [00:00<00:00, 3368.78 it/sec]
INFO - 16:17:32: 40%|████ | 404/1000 [00:00<00:00, 3368.93 it/sec]
INFO - 16:17:32: 40%|████ | 405/1000 [00:00<00:00, 3369.39 it/sec]
INFO - 16:17:32: 41%|████ | 406/1000 [00:00<00:00, 3368.97 it/sec]
INFO - 16:17:32: 41%|████ | 407/1000 [00:00<00:00, 3368.91 it/sec]
INFO - 16:17:32: 41%|████ | 408/1000 [00:00<00:00, 3368.93 it/sec]
INFO - 16:17:32: 41%|████ | 409/1000 [00:00<00:00, 3369.47 it/sec]
INFO - 16:17:32: 41%|████ | 410/1000 [00:00<00:00, 3368.46 it/sec]
INFO - 16:17:32: 41%|████ | 411/1000 [00:00<00:00, 3368.83 it/sec]
INFO - 16:17:32: 41%|████ | 412/1000 [00:00<00:00, 3369.50 it/sec]
INFO - 16:17:32: 41%|████▏ | 413/1000 [00:00<00:00, 3368.97 it/sec]
INFO - 16:17:32: 41%|████▏ | 414/1000 [00:00<00:00, 3368.96 it/sec]
INFO - 16:17:32: 42%|████▏ | 415/1000 [00:00<00:00, 3368.61 it/sec]
INFO - 16:17:32: 42%|████▏ | 416/1000 [00:00<00:00, 3369.16 it/sec]
INFO - 16:17:32: 42%|████▏ | 417/1000 [00:00<00:00, 3368.30 it/sec]
INFO - 16:17:32: 42%|████▏ | 418/1000 [00:00<00:00, 3368.82 it/sec]
INFO - 16:17:32: 42%|████▏ | 419/1000 [00:00<00:00, 3368.65 it/sec]
INFO - 16:17:32: 42%|████▏ | 420/1000 [00:00<00:00, 3368.74 it/sec]
INFO - 16:17:32: 42%|████▏ | 421/1000 [00:00<00:00, 3368.63 it/sec]
INFO - 16:17:32: 42%|████▏ | 422/1000 [00:00<00:00, 3369.37 it/sec]
INFO - 16:17:32: 42%|████▏ | 423/1000 [00:00<00:00, 3369.07 it/sec]
INFO - 16:17:32: 42%|████▏ | 424/1000 [00:00<00:00, 3363.61 it/sec]
INFO - 16:17:32: 42%|████▎ | 425/1000 [00:00<00:00, 3363.89 it/sec]
INFO - 16:17:32: 43%|████▎ | 426/1000 [00:00<00:00, 3363.21 it/sec]
INFO - 16:17:32: 43%|████▎ | 427/1000 [00:00<00:00, 3362.91 it/sec]
INFO - 16:17:32: 43%|████▎ | 428/1000 [00:00<00:00, 3363.43 it/sec]
INFO - 16:17:32: 43%|████▎ | 429/1000 [00:00<00:00, 3363.19 it/sec]
INFO - 16:17:32: 43%|████▎ | 430/1000 [00:00<00:00, 3362.93 it/sec]
INFO - 16:17:32: 43%|████▎ | 431/1000 [00:00<00:00, 3362.58 it/sec]
INFO - 16:17:32: 43%|████▎ | 432/1000 [00:00<00:00, 3363.07 it/sec]
INFO - 16:17:32: 43%|████▎ | 433/1000 [00:00<00:00, 3362.30 it/sec]
INFO - 16:17:32: 43%|████▎ | 434/1000 [00:00<00:00, 3362.99 it/sec]
INFO - 16:17:32: 44%|████▎ | 435/1000 [00:00<00:00, 3362.79 it/sec]
INFO - 16:17:32: 44%|████▎ | 436/1000 [00:00<00:00, 3362.61 it/sec]
INFO - 16:17:32: 44%|████▎ | 437/1000 [00:00<00:00, 3362.68 it/sec]
INFO - 16:17:32: 44%|████▍ | 438/1000 [00:00<00:00, 3362.83 it/sec]
INFO - 16:17:32: 44%|████▍ | 439/1000 [00:00<00:00, 3362.59 it/sec]
INFO - 16:17:32: 44%|████▍ | 440/1000 [00:00<00:00, 3362.63 it/sec]
INFO - 16:17:32: 44%|████▍ | 441/1000 [00:00<00:00, 3362.42 it/sec]
INFO - 16:17:32: 44%|████▍ | 442/1000 [00:00<00:00, 3362.94 it/sec]
INFO - 16:17:32: 44%|████▍ | 443/1000 [00:00<00:00, 3360.84 it/sec]
INFO - 16:17:32: 44%|████▍ | 444/1000 [00:00<00:00, 3360.16 it/sec]
INFO - 16:17:32: 44%|████▍ | 445/1000 [00:00<00:00, 3359.24 it/sec]
INFO - 16:17:32: 45%|████▍ | 446/1000 [00:00<00:00, 3357.97 it/sec]
INFO - 16:17:32: 45%|████▍ | 447/1000 [00:00<00:00, 3358.02 it/sec]
INFO - 16:17:32: 45%|████▍ | 448/1000 [00:00<00:00, 3358.10 it/sec]
INFO - 16:17:32: 45%|████▍ | 449/1000 [00:00<00:00, 3357.95 it/sec]
INFO - 16:17:32: 45%|████▌ | 450/1000 [00:00<00:00, 3358.06 it/sec]
INFO - 16:17:32: 45%|████▌ | 451/1000 [00:00<00:00, 3358.36 it/sec]
INFO - 16:17:32: 45%|████▌ | 452/1000 [00:00<00:00, 3358.40 it/sec]
INFO - 16:17:32: 45%|████▌ | 453/1000 [00:00<00:00, 3358.09 it/sec]
INFO - 16:17:32: 45%|████▌ | 454/1000 [00:00<00:00, 3358.53 it/sec]
INFO - 16:17:32: 46%|████▌ | 455/1000 [00:00<00:00, 3358.30 it/sec]
INFO - 16:17:32: 46%|████▌ | 456/1000 [00:00<00:00, 3357.00 it/sec]
INFO - 16:17:32: 46%|████▌ | 457/1000 [00:00<00:00, 3356.17 it/sec]
INFO - 16:17:32: 46%|████▌ | 458/1000 [00:00<00:00, 3355.28 it/sec]
INFO - 16:17:32: 46%|████▌ | 459/1000 [00:00<00:00, 3354.05 it/sec]
INFO - 16:17:32: 46%|████▌ | 460/1000 [00:00<00:00, 3354.03 it/sec]
INFO - 16:17:32: 46%|████▌ | 461/1000 [00:00<00:00, 3353.79 it/sec]
INFO - 16:17:32: 46%|████▌ | 462/1000 [00:00<00:00, 3353.60 it/sec]
INFO - 16:17:32: 46%|████▋ | 463/1000 [00:00<00:00, 3353.44 it/sec]
INFO - 16:17:32: 46%|████▋ | 464/1000 [00:00<00:00, 3353.78 it/sec]
INFO - 16:17:32: 46%|████▋ | 465/1000 [00:00<00:00, 3353.16 it/sec]
INFO - 16:17:32: 47%|████▋ | 466/1000 [00:00<00:00, 3353.70 it/sec]
INFO - 16:17:32: 47%|████▋ | 467/1000 [00:00<00:00, 3353.57 it/sec]
INFO - 16:17:32: 47%|████▋ | 468/1000 [00:00<00:00, 3353.95 it/sec]
INFO - 16:17:32: 47%|████▋ | 469/1000 [00:00<00:00, 3353.04 it/sec]
INFO - 16:17:32: 47%|████▋ | 470/1000 [00:00<00:00, 3353.58 it/sec]
INFO - 16:17:32: 47%|████▋ | 471/1000 [00:00<00:00, 3353.28 it/sec]
INFO - 16:17:32: 47%|████▋ | 472/1000 [00:00<00:00, 3353.20 it/sec]
INFO - 16:17:32: 47%|████▋ | 473/1000 [00:00<00:00, 3353.64 it/sec]
INFO - 16:17:32: 47%|████▋ | 474/1000 [00:00<00:00, 3353.68 it/sec]
INFO - 16:17:32: 48%|████▊ | 475/1000 [00:00<00:00, 3352.95 it/sec]
INFO - 16:17:32: 48%|████▊ | 476/1000 [00:00<00:00, 3353.17 it/sec]
INFO - 16:17:32: 48%|████▊ | 477/1000 [00:00<00:00, 3352.79 it/sec]
INFO - 16:17:32: 48%|████▊ | 478/1000 [00:00<00:00, 3353.48 it/sec]
INFO - 16:17:32: 48%|████▊ | 479/1000 [00:00<00:00, 3352.56 it/sec]
INFO - 16:17:32: 48%|████▊ | 480/1000 [00:00<00:00, 3352.78 it/sec]
INFO - 16:17:32: 48%|████▊ | 481/1000 [00:00<00:00, 3352.87 it/sec]
INFO - 16:17:32: 48%|████▊ | 482/1000 [00:00<00:00, 3352.53 it/sec]
INFO - 16:17:32: 48%|████▊ | 483/1000 [00:00<00:00, 3352.92 it/sec]
INFO - 16:17:32: 48%|████▊ | 484/1000 [00:00<00:00, 3352.83 it/sec]
INFO - 16:17:32: 48%|████▊ | 485/1000 [00:00<00:00, 3352.93 it/sec]
INFO - 16:17:32: 49%|████▊ | 486/1000 [00:00<00:00, 3352.99 it/sec]
INFO - 16:17:32: 49%|████▊ | 487/1000 [00:00<00:00, 3351.44 it/sec]
INFO - 16:17:32: 49%|████▉ | 488/1000 [00:00<00:00, 3350.66 it/sec]
INFO - 16:17:32: 49%|████▉ | 489/1000 [00:00<00:00, 3349.78 it/sec]
INFO - 16:17:32: 49%|████▉ | 490/1000 [00:00<00:00, 3349.19 it/sec]
INFO - 16:17:32: 49%|████▉ | 491/1000 [00:00<00:00, 3348.05 it/sec]
INFO - 16:17:32: 49%|████▉ | 492/1000 [00:00<00:00, 3348.07 it/sec]
INFO - 16:17:32: 49%|████▉ | 493/1000 [00:00<00:00, 3348.36 it/sec]
INFO - 16:17:32: 49%|████▉ | 494/1000 [00:00<00:00, 3348.15 it/sec]
INFO - 16:17:32: 50%|████▉ | 495/1000 [00:00<00:00, 3347.97 it/sec]
INFO - 16:17:32: 50%|████▉ | 496/1000 [00:00<00:00, 3347.67 it/sec]
INFO - 16:17:32: 50%|████▉ | 497/1000 [00:00<00:00, 3348.19 it/sec]
INFO - 16:17:32: 50%|████▉ | 498/1000 [00:00<00:00, 3347.70 it/sec]
INFO - 16:17:32: 50%|████▉ | 499/1000 [00:00<00:00, 3348.20 it/sec]
INFO - 16:17:32: 50%|█████ | 500/1000 [00:00<00:00, 3347.93 it/sec]
INFO - 16:17:32: 50%|█████ | 501/1000 [00:00<00:00, 3348.05 it/sec]
INFO - 16:17:32: 50%|█████ | 502/1000 [00:00<00:00, 3347.52 it/sec]
INFO - 16:17:32: 50%|█████ | 503/1000 [00:00<00:00, 3347.83 it/sec]
INFO - 16:17:32: 50%|█████ | 504/1000 [00:00<00:00, 3347.50 it/sec]
INFO - 16:17:32: 50%|█████ | 505/1000 [00:00<00:00, 3346.98 it/sec]
INFO - 16:17:32: 51%|█████ | 506/1000 [00:00<00:00, 3346.71 it/sec]
INFO - 16:17:32: 51%|█████ | 507/1000 [00:00<00:00, 3347.13 it/sec]
INFO - 16:17:32: 51%|█████ | 508/1000 [00:00<00:00, 3346.42 it/sec]
INFO - 16:17:32: 51%|█████ | 509/1000 [00:00<00:00, 3346.85 it/sec]
INFO - 16:17:32: 51%|█████ | 510/1000 [00:00<00:00, 3346.67 it/sec]
INFO - 16:17:32: 51%|█████ | 511/1000 [00:00<00:00, 3344.70 it/sec]
INFO - 16:17:32: 51%|█████ | 512/1000 [00:00<00:00, 3344.50 it/sec]
INFO - 16:17:32: 51%|█████▏ | 513/1000 [00:00<00:00, 3343.96 it/sec]
INFO - 16:17:32: 51%|█████▏ | 514/1000 [00:00<00:00, 3343.33 it/sec]
INFO - 16:17:32: 52%|█████▏ | 515/1000 [00:00<00:00, 3343.29 it/sec]
INFO - 16:17:32: 52%|█████▏ | 516/1000 [00:00<00:00, 3343.32 it/sec]
INFO - 16:17:32: 52%|█████▏ | 517/1000 [00:00<00:00, 3342.87 it/sec]
INFO - 16:17:32: 52%|█████▏ | 518/1000 [00:00<00:00, 3343.25 it/sec]
INFO - 16:17:32: 52%|█████▏ | 519/1000 [00:00<00:00, 3343.15 it/sec]
INFO - 16:17:32: 52%|█████▏ | 520/1000 [00:00<00:00, 3343.35 it/sec]
INFO - 16:17:32: 52%|█████▏ | 521/1000 [00:00<00:00, 3342.66 it/sec]
INFO - 16:17:32: 52%|█████▏ | 522/1000 [00:00<00:00, 3342.97 it/sec]
INFO - 16:17:32: 52%|█████▏ | 523/1000 [00:00<00:00, 3342.62 it/sec]
INFO - 16:17:32: 52%|█████▏ | 524/1000 [00:00<00:00, 3342.72 it/sec]
INFO - 16:17:32: 52%|█████▎ | 525/1000 [00:00<00:00, 3342.70 it/sec]
INFO - 16:17:32: 53%|█████▎ | 526/1000 [00:00<00:00, 3343.26 it/sec]
INFO - 16:17:32: 53%|█████▎ | 527/1000 [00:00<00:00, 3342.52 it/sec]
INFO - 16:17:32: 53%|█████▎ | 528/1000 [00:00<00:00, 3342.99 it/sec]
INFO - 16:17:32: 53%|█████▎ | 529/1000 [00:00<00:00, 3342.80 it/sec]
INFO - 16:17:32: 53%|█████▎ | 530/1000 [00:00<00:00, 3343.26 it/sec]
INFO - 16:17:32: 53%|█████▎ | 531/1000 [00:00<00:00, 3342.59 it/sec]
INFO - 16:17:32: 53%|█████▎ | 532/1000 [00:00<00:00, 3342.99 it/sec]
INFO - 16:17:32: 53%|█████▎ | 533/1000 [00:00<00:00, 3342.56 it/sec]
INFO - 16:17:32: 53%|█████▎ | 534/1000 [00:00<00:00, 3341.88 it/sec]
INFO - 16:17:32: 54%|█████▎ | 535/1000 [00:00<00:00, 3342.15 it/sec]
INFO - 16:17:32: 54%|█████▎ | 536/1000 [00:00<00:00, 3341.92 it/sec]
INFO - 16:17:32: 54%|█████▎ | 537/1000 [00:00<00:00, 3341.52 it/sec]
INFO - 16:17:32: 54%|█████▍ | 538/1000 [00:00<00:00, 3341.62 it/sec]
INFO - 16:17:32: 54%|█████▍ | 539/1000 [00:00<00:00, 3341.56 it/sec]
INFO - 16:17:32: 54%|█████▍ | 540/1000 [00:00<00:00, 3342.14 it/sec]
INFO - 16:17:32: 54%|█████▍ | 541/1000 [00:00<00:00, 3341.41 it/sec]
INFO - 16:17:32: 54%|█████▍ | 542/1000 [00:00<00:00, 3341.80 it/sec]
INFO - 16:17:32: 54%|█████▍ | 543/1000 [00:00<00:00, 3341.65 it/sec]
INFO - 16:17:32: 54%|█████▍ | 544/1000 [00:00<00:00, 3341.70 it/sec]
INFO - 16:17:32: 55%|█████▍ | 545/1000 [00:00<00:00, 3340.14 it/sec]
INFO - 16:17:32: 55%|█████▍ | 546/1000 [00:00<00:00, 3340.05 it/sec]
INFO - 16:17:32: 55%|█████▍ | 547/1000 [00:00<00:00, 3338.91 it/sec]
INFO - 16:17:32: 55%|█████▍ | 548/1000 [00:00<00:00, 3338.26 it/sec]
INFO - 16:17:32: 55%|█████▍ | 549/1000 [00:00<00:00, 3337.89 it/sec]
INFO - 16:17:32: 55%|█████▌ | 550/1000 [00:00<00:00, 3337.35 it/sec]
INFO - 16:17:32: 55%|█████▌ | 551/1000 [00:00<00:00, 3337.36 it/sec]
INFO - 16:17:32: 55%|█████▌ | 552/1000 [00:00<00:00, 3337.81 it/sec]
INFO - 16:17:32: 55%|█████▌ | 553/1000 [00:00<00:00, 3337.06 it/sec]
INFO - 16:17:32: 55%|█████▌ | 554/1000 [00:00<00:00, 3337.20 it/sec]
INFO - 16:17:32: 56%|█████▌ | 555/1000 [00:00<00:00, 3337.67 it/sec]
INFO - 16:17:32: 56%|█████▌ | 556/1000 [00:00<00:00, 3337.50 it/sec]
INFO - 16:17:32: 56%|█████▌ | 557/1000 [00:00<00:00, 3337.39 it/sec]
INFO - 16:17:32: 56%|█████▌ | 558/1000 [00:00<00:00, 3337.25 it/sec]
INFO - 16:17:32: 56%|█████▌ | 559/1000 [00:00<00:00, 3337.66 it/sec]
INFO - 16:17:32: 56%|█████▌ | 560/1000 [00:00<00:00, 3337.16 it/sec]
INFO - 16:17:32: 56%|█████▌ | 561/1000 [00:00<00:00, 3337.69 it/sec]
INFO - 16:17:32: 56%|█████▌ | 562/1000 [00:00<00:00, 3337.46 it/sec]
INFO - 16:17:32: 56%|█████▋ | 563/1000 [00:00<00:00, 3337.49 it/sec]
INFO - 16:17:32: 56%|█████▋ | 564/1000 [00:00<00:00, 3337.59 it/sec]
INFO - 16:17:32: 56%|█████▋ | 565/1000 [00:00<00:00, 3338.01 it/sec]
INFO - 16:17:32: 57%|█████▋ | 566/1000 [00:00<00:00, 3337.89 it/sec]
INFO - 16:17:32: 57%|█████▋ | 567/1000 [00:00<00:00, 3337.59 it/sec]
INFO - 16:17:32: 57%|█████▋ | 568/1000 [00:00<00:00, 3337.52 it/sec]
INFO - 16:17:32: 57%|█████▋ | 569/1000 [00:00<00:00, 3338.03 it/sec]
INFO - 16:17:32: 57%|█████▋ | 570/1000 [00:00<00:00, 3337.45 it/sec]
INFO - 16:17:32: 57%|█████▋ | 571/1000 [00:00<00:00, 3337.80 it/sec]
INFO - 16:17:32: 57%|█████▋ | 572/1000 [00:00<00:00, 3337.62 it/sec]
INFO - 16:17:32: 57%|█████▋ | 573/1000 [00:00<00:00, 3332.99 it/sec]
INFO - 16:17:32: 57%|█████▋ | 574/1000 [00:00<00:00, 3333.32 it/sec]
INFO - 16:17:32: 57%|█████▊ | 575/1000 [00:00<00:00, 3333.68 it/sec]
INFO - 16:17:32: 58%|█████▊ | 576/1000 [00:00<00:00, 3333.09 it/sec]
INFO - 16:17:32: 58%|█████▊ | 577/1000 [00:00<00:00, 3333.56 it/sec]
INFO - 16:17:32: 58%|█████▊ | 578/1000 [00:00<00:00, 3333.35 it/sec]
INFO - 16:17:32: 58%|█████▊ | 579/1000 [00:00<00:00, 3333.04 it/sec]
INFO - 16:17:32: 58%|█████▊ | 580/1000 [00:00<00:00, 3333.29 it/sec]
INFO - 16:17:32: 58%|█████▊ | 581/1000 [00:00<00:00, 3333.73 it/sec]
INFO - 16:17:32: 58%|█████▊ | 582/1000 [00:00<00:00, 3333.54 it/sec]
INFO - 16:17:32: 58%|█████▊ | 583/1000 [00:00<00:00, 3333.36 it/sec]
INFO - 16:17:32: 58%|█████▊ | 584/1000 [00:00<00:00, 3333.27 it/sec]
INFO - 16:17:32: 58%|█████▊ | 585/1000 [00:00<00:00, 3333.63 it/sec]
INFO - 16:17:32: 59%|█████▊ | 586/1000 [00:00<00:00, 3333.11 it/sec]
INFO - 16:17:32: 59%|█████▊ | 587/1000 [00:00<00:00, 3333.55 it/sec]
INFO - 16:17:32: 59%|█████▉ | 588/1000 [00:00<00:00, 3333.38 it/sec]
INFO - 16:17:32: 59%|█████▉ | 589/1000 [00:00<00:00, 3333.38 it/sec]
INFO - 16:17:32: 59%|█████▉ | 590/1000 [00:00<00:00, 3333.41 it/sec]
INFO - 16:17:32: 59%|█████▉ | 591/1000 [00:00<00:00, 3333.80 it/sec]
INFO - 16:17:32: 59%|█████▉ | 592/1000 [00:00<00:00, 3333.71 it/sec]
INFO - 16:17:32: 59%|█████▉ | 593/1000 [00:00<00:00, 3333.52 it/sec]
INFO - 16:17:32: 59%|█████▉ | 594/1000 [00:00<00:00, 3333.31 it/sec]
INFO - 16:17:32: 60%|█████▉ | 595/1000 [00:00<00:00, 3333.79 it/sec]
INFO - 16:17:32: 60%|█████▉ | 596/1000 [00:00<00:00, 3333.33 it/sec]
INFO - 16:17:32: 60%|█████▉ | 597/1000 [00:00<00:00, 3333.80 it/sec]
INFO - 16:17:32: 60%|█████▉ | 598/1000 [00:00<00:00, 3333.56 it/sec]
INFO - 16:17:32: 60%|█████▉ | 599/1000 [00:00<00:00, 3333.72 it/sec]
INFO - 16:17:32: 60%|██████ | 600/1000 [00:00<00:00, 3333.65 it/sec]
INFO - 16:17:32: 60%|██████ | 601/1000 [00:00<00:00, 3334.00 it/sec]
INFO - 16:17:32: 60%|██████ | 602/1000 [00:00<00:00, 3333.97 it/sec]
INFO - 16:17:32: 60%|██████ | 603/1000 [00:00<00:00, 3333.74 it/sec]
INFO - 16:17:32: 60%|██████ | 604/1000 [00:00<00:00, 3333.61 it/sec]
INFO - 16:17:32: 60%|██████ | 605/1000 [00:00<00:00, 3333.97 it/sec]
INFO - 16:17:32: 61%|██████ | 606/1000 [00:00<00:00, 3333.28 it/sec]
INFO - 16:17:32: 61%|██████ | 607/1000 [00:00<00:00, 3333.68 it/sec]
INFO - 16:17:32: 61%|██████ | 608/1000 [00:00<00:00, 3333.61 it/sec]
INFO - 16:17:32: 61%|██████ | 609/1000 [00:00<00:00, 3333.63 it/sec]
INFO - 16:17:32: 61%|██████ | 610/1000 [00:00<00:00, 3333.70 it/sec]
INFO - 16:17:32: 61%|██████ | 611/1000 [00:00<00:00, 3334.01 it/sec]
INFO - 16:17:32: 61%|██████ | 612/1000 [00:00<00:00, 3333.84 it/sec]
INFO - 16:17:32: 61%|██████▏ | 613/1000 [00:00<00:00, 3333.63 it/sec]
INFO - 16:17:32: 61%|██████▏ | 614/1000 [00:00<00:00, 3333.35 it/sec]
INFO - 16:17:32: 62%|██████▏ | 615/1000 [00:00<00:00, 3333.57 it/sec]
INFO - 16:17:32: 62%|██████▏ | 616/1000 [00:00<00:00, 3333.04 it/sec]
INFO - 16:17:32: 62%|██████▏ | 617/1000 [00:00<00:00, 3333.47 it/sec]
INFO - 16:17:32: 62%|██████▏ | 618/1000 [00:00<00:00, 3333.30 it/sec]
INFO - 16:17:32: 62%|██████▏ | 619/1000 [00:00<00:00, 3333.13 it/sec]
INFO - 16:17:32: 62%|██████▏ | 620/1000 [00:00<00:00, 3333.10 it/sec]
INFO - 16:17:32: 62%|██████▏ | 621/1000 [00:00<00:00, 3333.42 it/sec]
INFO - 16:17:32: 62%|██████▏ | 622/1000 [00:00<00:00, 3333.31 it/sec]
INFO - 16:17:32: 62%|██████▏ | 623/1000 [00:00<00:00, 3333.08 it/sec]
INFO - 16:17:32: 62%|██████▏ | 624/1000 [00:00<00:00, 3331.79 it/sec]
INFO - 16:17:32: 62%|██████▎ | 625/1000 [00:00<00:00, 3331.74 it/sec]
INFO - 16:17:32: 63%|██████▎ | 626/1000 [00:00<00:00, 3330.76 it/sec]
INFO - 16:17:32: 63%|██████▎ | 627/1000 [00:00<00:00, 3330.32 it/sec]
INFO - 16:17:32: 63%|██████▎ | 628/1000 [00:00<00:00, 3329.88 it/sec]
INFO - 16:17:32: 63%|██████▎ | 629/1000 [00:00<00:00, 3329.53 it/sec]
INFO - 16:17:32: 63%|██████▎ | 630/1000 [00:00<00:00, 3329.66 it/sec]
INFO - 16:17:32: 63%|██████▎ | 631/1000 [00:00<00:00, 3329.57 it/sec]
INFO - 16:17:32: 63%|██████▎ | 632/1000 [00:00<00:00, 3329.41 it/sec]
INFO - 16:17:32: 63%|██████▎ | 633/1000 [00:00<00:00, 3329.24 it/sec]
INFO - 16:17:32: 63%|██████▎ | 634/1000 [00:00<00:00, 3329.63 it/sec]
INFO - 16:17:32: 64%|██████▎ | 635/1000 [00:00<00:00, 3329.26 it/sec]
INFO - 16:17:32: 64%|██████▎ | 636/1000 [00:00<00:00, 3329.31 it/sec]
INFO - 16:17:32: 64%|██████▎ | 637/1000 [00:00<00:00, 3329.23 it/sec]
INFO - 16:17:32: 64%|██████▍ | 638/1000 [00:00<00:00, 3329.31 it/sec]
INFO - 16:17:32: 64%|██████▍ | 639/1000 [00:00<00:00, 3329.36 it/sec]
INFO - 16:17:32: 64%|██████▍ | 640/1000 [00:00<00:00, 3329.54 it/sec]
INFO - 16:17:32: 64%|██████▍ | 641/1000 [00:00<00:00, 3329.40 it/sec]
INFO - 16:17:32: 64%|██████▍ | 642/1000 [00:00<00:00, 3329.39 it/sec]
INFO - 16:17:32: 64%|██████▍ | 643/1000 [00:00<00:00, 3329.29 it/sec]
INFO - 16:17:32: 64%|██████▍ | 644/1000 [00:00<00:00, 3329.63 it/sec]
INFO - 16:17:32: 64%|██████▍ | 645/1000 [00:00<00:00, 3329.05 it/sec]
INFO - 16:17:32: 65%|██████▍ | 646/1000 [00:00<00:00, 3329.17 it/sec]
INFO - 16:17:32: 65%|██████▍ | 647/1000 [00:00<00:00, 3329.24 it/sec]
INFO - 16:17:32: 65%|██████▍ | 648/1000 [00:00<00:00, 3329.02 it/sec]
INFO - 16:17:32: 65%|██████▍ | 649/1000 [00:00<00:00, 3329.37 it/sec]
INFO - 16:17:32: 65%|██████▌ | 650/1000 [00:00<00:00, 3329.22 it/sec]
INFO - 16:17:32: 65%|██████▌ | 651/1000 [00:00<00:00, 3329.60 it/sec]
INFO - 16:17:32: 65%|██████▌ | 652/1000 [00:00<00:00, 3329.10 it/sec]
INFO - 16:17:32: 65%|██████▌ | 653/1000 [00:00<00:00, 3329.46 it/sec]
INFO - 16:17:32: 65%|██████▌ | 654/1000 [00:00<00:00, 3329.32 it/sec]
INFO - 16:17:32: 66%|██████▌ | 655/1000 [00:00<00:00, 3329.36 it/sec]
INFO - 16:17:32: 66%|██████▌ | 656/1000 [00:00<00:00, 3329.42 it/sec]
INFO - 16:17:32: 66%|██████▌ | 657/1000 [00:00<00:00, 3329.15 it/sec]
INFO - 16:17:32: 66%|██████▌ | 658/1000 [00:00<00:00, 3329.27 it/sec]
INFO - 16:17:32: 66%|██████▌ | 659/1000 [00:00<00:00, 3329.07 it/sec]
INFO - 16:17:32: 66%|██████▌ | 660/1000 [00:00<00:00, 3329.17 it/sec]
INFO - 16:17:32: 66%|██████▌ | 661/1000 [00:00<00:00, 3329.04 it/sec]
INFO - 16:17:32: 66%|██████▌ | 662/1000 [00:00<00:00, 3328.99 it/sec]
INFO - 16:17:32: 66%|██████▋ | 663/1000 [00:00<00:00, 3328.87 it/sec]
INFO - 16:17:32: 66%|██████▋ | 664/1000 [00:00<00:00, 3329.28 it/sec]
INFO - 16:17:32: 66%|██████▋ | 665/1000 [00:00<00:00, 3328.84 it/sec]
INFO - 16:17:32: 67%|██████▋ | 666/1000 [00:00<00:00, 3329.24 it/sec]
INFO - 16:17:32: 67%|██████▋ | 667/1000 [00:00<00:00, 3329.07 it/sec]
INFO - 16:17:32: 67%|██████▋ | 668/1000 [00:00<00:00, 3329.24 it/sec]
INFO - 16:17:32: 67%|██████▋ | 669/1000 [00:00<00:00, 3329.22 it/sec]
INFO - 16:17:32: 67%|██████▋ | 670/1000 [00:00<00:00, 3329.53 it/sec]
INFO - 16:17:32: 67%|██████▋ | 671/1000 [00:00<00:00, 3329.45 it/sec]
INFO - 16:17:32: 67%|██████▋ | 672/1000 [00:00<00:00, 3328.77 it/sec]
INFO - 16:17:32: 67%|██████▋ | 673/1000 [00:00<00:00, 3328.52 it/sec]
INFO - 16:17:32: 67%|██████▋ | 674/1000 [00:00<00:00, 3328.93 it/sec]
INFO - 16:17:32: 68%|██████▊ | 675/1000 [00:00<00:00, 3328.51 it/sec]
INFO - 16:17:32: 68%|██████▊ | 676/1000 [00:00<00:00, 3328.82 it/sec]
INFO - 16:17:32: 68%|██████▊ | 677/1000 [00:00<00:00, 3328.70 it/sec]
INFO - 16:17:32: 68%|██████▊ | 678/1000 [00:00<00:00, 3328.84 it/sec]
INFO - 16:17:32: 68%|██████▊ | 679/1000 [00:00<00:00, 3328.82 it/sec]
INFO - 16:17:32: 68%|██████▊ | 680/1000 [00:00<00:00, 3329.14 it/sec]
INFO - 16:17:32: 68%|██████▊ | 681/1000 [00:00<00:00, 3329.04 it/sec]
INFO - 16:17:32: 68%|██████▊ | 682/1000 [00:00<00:00, 3328.94 it/sec]
INFO - 16:17:32: 68%|██████▊ | 683/1000 [00:00<00:00, 3328.62 it/sec]
INFO - 16:17:32: 68%|██████▊ | 684/1000 [00:00<00:00, 3328.97 it/sec]
INFO - 16:17:32: 68%|██████▊ | 685/1000 [00:00<00:00, 3328.42 it/sec]
INFO - 16:17:32: 69%|██████▊ | 686/1000 [00:00<00:00, 3328.79 it/sec]
INFO - 16:17:32: 69%|██████▊ | 687/1000 [00:00<00:00, 3328.69 it/sec]
INFO - 16:17:32: 69%|██████▉ | 688/1000 [00:00<00:00, 3328.75 it/sec]
INFO - 16:17:33: 69%|██████▉ | 689/1000 [00:00<00:00, 3328.82 it/sec]
INFO - 16:17:33: 69%|██████▉ | 690/1000 [00:00<00:00, 3329.14 it/sec]
INFO - 16:17:33: 69%|██████▉ | 691/1000 [00:00<00:00, 3329.10 it/sec]
INFO - 16:17:33: 69%|██████▉ | 692/1000 [00:00<00:00, 3328.98 it/sec]
INFO - 16:17:33: 69%|██████▉ | 693/1000 [00:00<00:00, 3328.87 it/sec]
INFO - 16:17:33: 69%|██████▉ | 694/1000 [00:00<00:00, 3329.34 it/sec]
INFO - 16:17:33: 70%|██████▉ | 695/1000 [00:00<00:00, 3328.99 it/sec]
INFO - 16:17:33: 70%|██████▉ | 696/1000 [00:00<00:00, 3329.31 it/sec]
INFO - 16:17:33: 70%|██████▉ | 697/1000 [00:00<00:00, 3329.27 it/sec]
INFO - 16:17:33: 70%|██████▉ | 698/1000 [00:00<00:00, 3329.15 it/sec]
INFO - 16:17:33: 70%|██████▉ | 699/1000 [00:00<00:00, 3329.14 it/sec]
INFO - 16:17:33: 70%|███████ | 700/1000 [00:00<00:00, 3329.27 it/sec]
INFO - 16:17:33: 70%|███████ | 701/1000 [00:00<00:00, 3329.11 it/sec]
INFO - 16:17:33: 70%|███████ | 702/1000 [00:00<00:00, 3328.92 it/sec]
INFO - 16:17:33: 70%|███████ | 703/1000 [00:00<00:00, 3328.80 it/sec]
INFO - 16:17:33: 70%|███████ | 704/1000 [00:00<00:00, 3329.07 it/sec]
INFO - 16:17:33: 70%|███████ | 705/1000 [00:00<00:00, 3328.63 it/sec]
INFO - 16:17:33: 71%|███████ | 706/1000 [00:00<00:00, 3328.87 it/sec]
INFO - 16:17:33: 71%|███████ | 707/1000 [00:00<00:00, 3328.78 it/sec]
INFO - 16:17:33: 71%|███████ | 708/1000 [00:00<00:00, 3328.82 it/sec]
INFO - 16:17:33: 71%|███████ | 709/1000 [00:00<00:00, 3328.92 it/sec]
INFO - 16:17:33: 71%|███████ | 710/1000 [00:00<00:00, 3329.21 it/sec]
INFO - 16:17:33: 71%|███████ | 711/1000 [00:00<00:00, 3329.04 it/sec]
INFO - 16:17:33: 71%|███████ | 712/1000 [00:00<00:00, 3328.74 it/sec]
INFO - 16:17:33: 71%|███████▏ | 713/1000 [00:00<00:00, 3328.62 it/sec]
INFO - 16:17:33: 71%|███████▏ | 714/1000 [00:00<00:00, 3328.87 it/sec]
INFO - 16:17:33: 72%|███████▏ | 715/1000 [00:00<00:00, 3328.31 it/sec]
INFO - 16:17:33: 72%|███████▏ | 716/1000 [00:00<00:00, 3328.61 it/sec]
INFO - 16:17:33: 72%|███████▏ | 717/1000 [00:00<00:00, 3328.44 it/sec]
INFO - 16:17:33: 72%|███████▏ | 718/1000 [00:00<00:00, 3328.44 it/sec]
INFO - 16:17:33: 72%|███████▏ | 719/1000 [00:00<00:00, 3328.64 it/sec]
INFO - 16:17:33: 72%|███████▏ | 720/1000 [00:00<00:00, 3328.88 it/sec]
INFO - 16:17:33: 72%|███████▏ | 721/1000 [00:00<00:00, 3328.74 it/sec]
INFO - 16:17:33: 72%|███████▏ | 722/1000 [00:00<00:00, 3325.53 it/sec]
INFO - 16:17:33: 72%|███████▏ | 723/1000 [00:00<00:00, 3325.74 it/sec]
INFO - 16:17:33: 72%|███████▏ | 724/1000 [00:00<00:00, 3325.15 it/sec]
INFO - 16:17:33: 72%|███████▎ | 725/1000 [00:00<00:00, 3325.41 it/sec]
INFO - 16:17:33: 73%|███████▎ | 726/1000 [00:00<00:00, 3325.61 it/sec]
INFO - 16:17:33: 73%|███████▎ | 727/1000 [00:00<00:00, 3325.15 it/sec]
INFO - 16:17:33: 73%|███████▎ | 728/1000 [00:00<00:00, 3325.36 it/sec]
INFO - 16:17:33: 73%|███████▎ | 729/1000 [00:00<00:00, 3325.21 it/sec]
INFO - 16:17:33: 73%|███████▎ | 730/1000 [00:00<00:00, 3325.53 it/sec]
INFO - 16:17:33: 73%|███████▎ | 731/1000 [00:00<00:00, 3325.00 it/sec]
INFO - 16:17:33: 73%|███████▎ | 732/1000 [00:00<00:00, 3325.31 it/sec]
INFO - 16:17:33: 73%|███████▎ | 733/1000 [00:00<00:00, 3325.16 it/sec]
INFO - 16:17:33: 73%|███████▎ | 734/1000 [00:00<00:00, 3325.18 it/sec]
INFO - 16:17:33: 74%|███████▎ | 735/1000 [00:00<00:00, 3325.41 it/sec]
INFO - 16:17:33: 74%|███████▎ | 736/1000 [00:00<00:00, 3325.46 it/sec]
INFO - 16:17:33: 74%|███████▎ | 737/1000 [00:00<00:00, 3325.00 it/sec]
INFO - 16:17:33: 74%|███████▍ | 738/1000 [00:00<00:00, 3325.28 it/sec]
INFO - 16:17:33: 74%|███████▍ | 739/1000 [00:00<00:00, 3325.09 it/sec]
INFO - 16:17:33: 74%|███████▍ | 740/1000 [00:00<00:00, 3325.42 it/sec]
INFO - 16:17:33: 74%|███████▍ | 741/1000 [00:00<00:00, 3324.95 it/sec]
INFO - 16:17:33: 74%|███████▍ | 742/1000 [00:00<00:00, 3325.30 it/sec]
INFO - 16:17:33: 74%|███████▍ | 743/1000 [00:00<00:00, 3325.15 it/sec]
INFO - 16:17:33: 74%|███████▍ | 744/1000 [00:00<00:00, 3325.19 it/sec]
INFO - 16:17:33: 74%|███████▍ | 745/1000 [00:00<00:00, 3325.23 it/sec]
INFO - 16:17:33: 75%|███████▍ | 746/1000 [00:00<00:00, 3325.55 it/sec]
INFO - 16:17:33: 75%|███████▍ | 747/1000 [00:00<00:00, 3325.23 it/sec]
INFO - 16:17:33: 75%|███████▍ | 748/1000 [00:00<00:00, 3325.53 it/sec]
INFO - 16:17:33: 75%|███████▍ | 749/1000 [00:00<00:00, 3325.42 it/sec]
INFO - 16:17:33: 75%|███████▌ | 750/1000 [00:00<00:00, 3325.78 it/sec]
INFO - 16:17:33: 75%|███████▌ | 751/1000 [00:00<00:00, 3325.11 it/sec]
INFO - 16:17:33: 75%|███████▌ | 752/1000 [00:00<00:00, 3325.41 it/sec]
INFO - 16:17:33: 75%|███████▌ | 753/1000 [00:00<00:00, 3325.28 it/sec]
INFO - 16:17:33: 75%|███████▌ | 754/1000 [00:00<00:00, 3325.30 it/sec]
INFO - 16:17:33: 76%|███████▌ | 755/1000 [00:00<00:00, 3325.19 it/sec]
INFO - 16:17:33: 76%|███████▌ | 756/1000 [00:00<00:00, 3325.54 it/sec]
INFO - 16:17:33: 76%|███████▌ | 757/1000 [00:00<00:00, 3325.22 it/sec]
INFO - 16:17:33: 76%|███████▌ | 758/1000 [00:00<00:00, 3325.53 it/sec]
INFO - 16:17:33: 76%|███████▌ | 759/1000 [00:00<00:00, 3325.38 it/sec]
INFO - 16:17:33: 76%|███████▌ | 760/1000 [00:00<00:00, 3325.65 it/sec]
INFO - 16:17:33: 76%|███████▌ | 761/1000 [00:00<00:00, 3325.19 it/sec]
INFO - 16:17:33: 76%|███████▌ | 762/1000 [00:00<00:00, 3325.50 it/sec]
INFO - 16:17:33: 76%|███████▋ | 763/1000 [00:00<00:00, 3325.43 it/sec]
INFO - 16:17:33: 76%|███████▋ | 764/1000 [00:00<00:00, 3325.19 it/sec]
INFO - 16:17:33: 76%|███████▋ | 765/1000 [00:00<00:00, 3325.44 it/sec]
INFO - 16:17:33: 77%|███████▋ | 766/1000 [00:00<00:00, 3325.38 it/sec]
INFO - 16:17:33: 77%|███████▋ | 767/1000 [00:00<00:00, 3323.91 it/sec]
INFO - 16:17:33: 77%|███████▋ | 768/1000 [00:00<00:00, 3323.96 it/sec]
INFO - 16:17:33: 77%|███████▋ | 769/1000 [00:00<00:00, 3323.68 it/sec]
INFO - 16:17:33: 77%|███████▋ | 770/1000 [00:00<00:00, 3323.02 it/sec]
INFO - 16:17:33: 77%|███████▋ | 771/1000 [00:00<00:00, 3323.20 it/sec]
INFO - 16:17:33: 77%|███████▋ | 772/1000 [00:00<00:00, 3323.10 it/sec]
INFO - 16:17:33: 77%|███████▋ | 773/1000 [00:00<00:00, 3323.38 it/sec]
INFO - 16:17:33: 77%|███████▋ | 774/1000 [00:00<00:00, 3323.14 it/sec]
INFO - 16:17:33: 78%|███████▊ | 775/1000 [00:00<00:00, 3323.39 it/sec]
INFO - 16:17:33: 78%|███████▊ | 776/1000 [00:00<00:00, 3323.24 it/sec]
INFO - 16:17:33: 78%|███████▊ | 777/1000 [00:00<00:00, 3323.02 it/sec]
INFO - 16:17:33: 78%|███████▊ | 778/1000 [00:00<00:00, 3323.03 it/sec]
INFO - 16:17:33: 78%|███████▊ | 779/1000 [00:00<00:00, 3323.34 it/sec]
INFO - 16:17:33: 78%|███████▊ | 780/1000 [00:00<00:00, 3323.00 it/sec]
INFO - 16:17:33: 78%|███████▊ | 781/1000 [00:00<00:00, 3323.29 it/sec]
INFO - 16:17:33: 78%|███████▊ | 782/1000 [00:00<00:00, 3323.22 it/sec]
INFO - 16:17:33: 78%|███████▊ | 783/1000 [00:00<00:00, 3323.08 it/sec]
INFO - 16:17:33: 78%|███████▊ | 784/1000 [00:00<00:00, 3323.08 it/sec]
INFO - 16:17:33: 78%|███████▊ | 785/1000 [00:00<00:00, 3323.15 it/sec]
INFO - 16:17:33: 79%|███████▊ | 786/1000 [00:00<00:00, 3323.06 it/sec]
INFO - 16:17:33: 79%|███████▊ | 787/1000 [00:00<00:00, 3322.85 it/sec]
INFO - 16:17:33: 79%|███████▉ | 788/1000 [00:00<00:00, 3322.71 it/sec]
INFO - 16:17:33: 79%|███████▉ | 789/1000 [00:00<00:00, 3322.97 it/sec]
INFO - 16:17:33: 79%|███████▉ | 790/1000 [00:00<00:00, 3322.46 it/sec]
INFO - 16:17:33: 79%|███████▉ | 791/1000 [00:00<00:00, 3322.74 it/sec]
INFO - 16:17:33: 79%|███████▉ | 792/1000 [00:00<00:00, 3322.70 it/sec]
INFO - 16:17:33: 79%|███████▉ | 793/1000 [00:00<00:00, 3322.49 it/sec]
INFO - 16:17:33: 79%|███████▉ | 794/1000 [00:00<00:00, 3322.41 it/sec]
INFO - 16:17:33: 80%|███████▉ | 795/1000 [00:00<00:00, 3322.68 it/sec]
INFO - 16:17:33: 80%|███████▉ | 796/1000 [00:00<00:00, 3322.58 it/sec]
INFO - 16:17:33: 80%|███████▉ | 797/1000 [00:00<00:00, 3322.47 it/sec]
INFO - 16:17:33: 80%|███████▉ | 798/1000 [00:00<00:00, 3322.30 it/sec]
INFO - 16:17:33: 80%|███████▉ | 799/1000 [00:00<00:00, 3322.57 it/sec]
INFO - 16:17:33: 80%|████████ | 800/1000 [00:00<00:00, 3322.24 it/sec]
INFO - 16:17:33: 80%|████████ | 801/1000 [00:00<00:00, 3322.50 it/sec]
INFO - 16:17:33: 80%|████████ | 802/1000 [00:00<00:00, 3322.36 it/sec]
INFO - 16:17:33: 80%|████████ | 803/1000 [00:00<00:00, 3322.18 it/sec]
INFO - 16:17:33: 80%|████████ | 804/1000 [00:00<00:00, 3322.24 it/sec]
INFO - 16:17:33: 80%|████████ | 805/1000 [00:00<00:00, 3322.59 it/sec]
INFO - 16:17:33: 81%|████████ | 806/1000 [00:00<00:00, 3322.40 it/sec]
INFO - 16:17:33: 81%|████████ | 807/1000 [00:00<00:00, 3322.19 it/sec]
INFO - 16:17:33: 81%|████████ | 808/1000 [00:00<00:00, 3322.07 it/sec]
INFO - 16:17:33: 81%|████████ | 809/1000 [00:00<00:00, 3322.35 it/sec]
INFO - 16:17:33: 81%|████████ | 810/1000 [00:00<00:00, 3321.74 it/sec]
INFO - 16:17:33: 81%|████████ | 811/1000 [00:00<00:00, 3322.01 it/sec]
INFO - 16:17:33: 81%|████████ | 812/1000 [00:00<00:00, 3321.84 it/sec]
INFO - 16:17:33: 81%|████████▏ | 813/1000 [00:00<00:00, 3318.59 it/sec]
INFO - 16:17:33: 81%|████████▏ | 814/1000 [00:00<00:00, 3318.62 it/sec]
INFO - 16:17:33: 82%|████████▏ | 815/1000 [00:00<00:00, 3318.49 it/sec]
INFO - 16:17:33: 82%|████████▏ | 816/1000 [00:00<00:00, 3318.20 it/sec]
INFO - 16:17:33: 82%|████████▏ | 817/1000 [00:00<00:00, 3318.09 it/sec]
INFO - 16:17:33: 82%|████████▏ | 818/1000 [00:00<00:00, 3318.46 it/sec]
INFO - 16:17:33: 82%|████████▏ | 819/1000 [00:00<00:00, 3318.04 it/sec]
INFO - 16:17:33: 82%|████████▏ | 820/1000 [00:00<00:00, 3318.30 it/sec]
INFO - 16:17:33: 82%|████████▏ | 821/1000 [00:00<00:00, 3318.32 it/sec]
INFO - 16:17:33: 82%|████████▏ | 822/1000 [00:00<00:00, 3318.28 it/sec]
INFO - 16:17:33: 82%|████████▏ | 823/1000 [00:00<00:00, 3318.47 it/sec]
INFO - 16:17:33: 82%|████████▏ | 824/1000 [00:00<00:00, 3318.76 it/sec]
INFO - 16:17:33: 82%|████████▎ | 825/1000 [00:00<00:00, 3318.72 it/sec]
INFO - 16:17:33: 83%|████████▎ | 826/1000 [00:00<00:00, 3318.64 it/sec]
INFO - 16:17:33: 83%|████████▎ | 827/1000 [00:00<00:00, 3318.48 it/sec]
INFO - 16:17:33: 83%|████████▎ | 828/1000 [00:00<00:00, 3318.74 it/sec]
INFO - 16:17:33: 83%|████████▎ | 829/1000 [00:00<00:00, 3318.19 it/sec]
INFO - 16:17:33: 83%|████████▎ | 830/1000 [00:00<00:00, 3318.43 it/sec]
INFO - 16:17:33: 83%|████████▎ | 831/1000 [00:00<00:00, 3318.31 it/sec]
INFO - 16:17:33: 83%|████████▎ | 832/1000 [00:00<00:00, 3318.32 it/sec]
INFO - 16:17:33: 83%|████████▎ | 833/1000 [00:00<00:00, 3318.50 it/sec]
INFO - 16:17:33: 83%|████████▎ | 834/1000 [00:00<00:00, 3318.53 it/sec]
INFO - 16:17:33: 84%|████████▎ | 835/1000 [00:00<00:00, 3318.22 it/sec]
INFO - 16:17:33: 84%|████████▎ | 836/1000 [00:00<00:00, 3318.48 it/sec]
INFO - 16:17:33: 84%|████████▎ | 837/1000 [00:00<00:00, 3318.38 it/sec]
INFO - 16:17:33: 84%|████████▍ | 838/1000 [00:00<00:00, 3318.69 it/sec]
INFO - 16:17:33: 84%|████████▍ | 839/1000 [00:00<00:00, 3318.28 it/sec]
INFO - 16:17:33: 84%|████████▍ | 840/1000 [00:00<00:00, 3318.59 it/sec]
INFO - 16:17:33: 84%|████████▍ | 841/1000 [00:00<00:00, 3318.50 it/sec]
INFO - 16:17:33: 84%|████████▍ | 842/1000 [00:00<00:00, 3318.41 it/sec]
INFO - 16:17:33: 84%|████████▍ | 843/1000 [00:00<00:00, 3318.42 it/sec]
INFO - 16:17:33: 84%|████████▍ | 844/1000 [00:00<00:00, 3318.71 it/sec]
INFO - 16:17:33: 84%|████████▍ | 845/1000 [00:00<00:00, 3318.42 it/sec]
INFO - 16:17:33: 85%|████████▍ | 846/1000 [00:00<00:00, 3318.64 it/sec]
INFO - 16:17:33: 85%|████████▍ | 847/1000 [00:00<00:00, 3318.63 it/sec]
INFO - 16:17:33: 85%|████████▍ | 848/1000 [00:00<00:00, 3318.97 it/sec]
INFO - 16:17:33: 85%|████████▍ | 849/1000 [00:00<00:00, 3318.58 it/sec]
INFO - 16:17:33: 85%|████████▌ | 850/1000 [00:00<00:00, 3318.81 it/sec]
INFO - 16:17:33: 85%|████████▌ | 851/1000 [00:00<00:00, 3318.54 it/sec]
INFO - 16:17:33: 85%|████████▌ | 852/1000 [00:00<00:00, 3318.56 it/sec]
INFO - 16:17:33: 85%|████████▌ | 853/1000 [00:00<00:00, 3318.67 it/sec]
INFO - 16:17:33: 85%|████████▌ | 854/1000 [00:00<00:00, 3318.67 it/sec]
INFO - 16:17:33: 86%|████████▌ | 855/1000 [00:00<00:00, 3318.32 it/sec]
INFO - 16:17:33: 86%|████████▌ | 856/1000 [00:00<00:00, 3318.57 it/sec]
INFO - 16:17:33: 86%|████████▌ | 857/1000 [00:00<00:00, 3318.68 it/sec]
INFO - 16:17:33: 86%|████████▌ | 858/1000 [00:00<00:00, 3318.97 it/sec]
INFO - 16:17:33: 86%|████████▌ | 859/1000 [00:00<00:00, 3318.64 it/sec]
INFO - 16:17:33: 86%|████████▌ | 860/1000 [00:00<00:00, 3317.89 it/sec]
INFO - 16:17:33: 86%|████████▌ | 861/1000 [00:00<00:00, 3317.88 it/sec]
INFO - 16:17:33: 86%|████████▌ | 862/1000 [00:00<00:00, 3317.40 it/sec]
INFO - 16:17:33: 86%|████████▋ | 863/1000 [00:00<00:00, 3316.96 it/sec]
INFO - 16:17:33: 86%|████████▋ | 864/1000 [00:00<00:00, 3316.97 it/sec]
INFO - 16:17:33: 86%|████████▋ | 865/1000 [00:00<00:00, 3316.73 it/sec]
INFO - 16:17:33: 87%|████████▋ | 866/1000 [00:00<00:00, 3316.87 it/sec]
INFO - 16:17:33: 87%|████████▋ | 867/1000 [00:00<00:00, 3316.86 it/sec]
INFO - 16:17:33: 87%|████████▋ | 868/1000 [00:00<00:00, 3316.40 it/sec]
INFO - 16:17:33: 87%|████████▋ | 869/1000 [00:00<00:00, 3316.48 it/sec]
INFO - 16:17:33: 87%|████████▋ | 870/1000 [00:00<00:00, 3316.72 it/sec]
INFO - 16:17:33: 87%|████████▋ | 871/1000 [00:00<00:00, 3313.72 it/sec]
INFO - 16:17:33: 87%|████████▋ | 872/1000 [00:00<00:00, 3313.91 it/sec]
INFO - 16:17:33: 87%|████████▋ | 873/1000 [00:00<00:00, 3313.75 it/sec]
INFO - 16:17:33: 87%|████████▋ | 874/1000 [00:00<00:00, 3313.68 it/sec]
INFO - 16:17:33: 88%|████████▊ | 875/1000 [00:00<00:00, 3313.63 it/sec]
INFO - 16:17:33: 88%|████████▊ | 876/1000 [00:00<00:00, 3313.83 it/sec]
INFO - 16:17:33: 88%|████████▊ | 877/1000 [00:00<00:00, 3313.58 it/sec]
INFO - 16:17:33: 88%|████████▊ | 878/1000 [00:00<00:00, 3313.80 it/sec]
INFO - 16:17:33: 88%|████████▊ | 879/1000 [00:00<00:00, 3313.70 it/sec]
INFO - 16:17:33: 88%|████████▊ | 880/1000 [00:00<00:00, 3313.90 it/sec]
INFO - 16:17:33: 88%|████████▊ | 881/1000 [00:00<00:00, 3313.41 it/sec]
INFO - 16:17:33: 88%|████████▊ | 882/1000 [00:00<00:00, 3313.65 it/sec]
INFO - 16:17:33: 88%|████████▊ | 883/1000 [00:00<00:00, 3313.48 it/sec]
INFO - 16:17:33: 88%|████████▊ | 884/1000 [00:00<00:00, 3313.48 it/sec]
INFO - 16:17:33: 88%|████████▊ | 885/1000 [00:00<00:00, 3313.38 it/sec]
INFO - 16:17:33: 89%|████████▊ | 886/1000 [00:00<00:00, 3313.57 it/sec]
INFO - 16:17:33: 89%|████████▊ | 887/1000 [00:00<00:00, 3313.30 it/sec]
INFO - 16:17:33: 89%|████████▉ | 888/1000 [00:00<00:00, 3313.28 it/sec]
INFO - 16:17:33: 89%|████████▉ | 889/1000 [00:00<00:00, 3313.22 it/sec]
INFO - 16:17:33: 89%|████████▉ | 890/1000 [00:00<00:00, 3313.24 it/sec]
INFO - 16:17:33: 89%|████████▉ | 891/1000 [00:00<00:00, 3313.24 it/sec]
INFO - 16:17:33: 89%|████████▉ | 892/1000 [00:00<00:00, 3313.33 it/sec]
INFO - 16:17:33: 89%|████████▉ | 893/1000 [00:00<00:00, 3313.23 it/sec]
INFO - 16:17:33: 89%|████████▉ | 894/1000 [00:00<00:00, 3313.08 it/sec]
INFO - 16:17:33: 90%|████████▉ | 895/1000 [00:00<00:00, 3312.98 it/sec]
INFO - 16:17:33: 90%|████████▉ | 896/1000 [00:00<00:00, 3313.22 it/sec]
INFO - 16:17:33: 90%|████████▉ | 897/1000 [00:00<00:00, 3312.94 it/sec]
INFO - 16:17:33: 90%|████████▉ | 898/1000 [00:00<00:00, 3313.21 it/sec]
INFO - 16:17:33: 90%|████████▉ | 899/1000 [00:00<00:00, 3313.18 it/sec]
INFO - 16:17:33: 90%|█████████ | 900/1000 [00:00<00:00, 3312.97 it/sec]
INFO - 16:17:33: 90%|█████████ | 901/1000 [00:00<00:00, 3312.99 it/sec]
INFO - 16:17:33: 90%|█████████ | 902/1000 [00:00<00:00, 3313.17 it/sec]
INFO - 16:17:33: 90%|█████████ | 903/1000 [00:00<00:00, 3313.09 it/sec]
INFO - 16:17:33: 90%|█████████ | 904/1000 [00:00<00:00, 3313.03 it/sec]
INFO - 16:17:33: 90%|█████████ | 905/1000 [00:00<00:00, 3312.88 it/sec]
INFO - 16:17:33: 91%|█████████ | 906/1000 [00:00<00:00, 3313.16 it/sec]
INFO - 16:17:33: 91%|█████████ | 907/1000 [00:00<00:00, 3312.70 it/sec]
INFO - 16:17:33: 91%|█████████ | 908/1000 [00:00<00:00, 3312.96 it/sec]
INFO - 16:17:33: 91%|█████████ | 909/1000 [00:00<00:00, 3312.84 it/sec]
INFO - 16:17:33: 91%|█████████ | 910/1000 [00:00<00:00, 3312.89 it/sec]
INFO - 16:17:33: 91%|█████████ | 911/1000 [00:00<00:00, 3312.80 it/sec]
INFO - 16:17:33: 91%|█████████ | 912/1000 [00:00<00:00, 3312.93 it/sec]
INFO - 16:17:33: 91%|█████████▏| 913/1000 [00:00<00:00, 3312.82 it/sec]
INFO - 16:17:33: 91%|█████████▏| 914/1000 [00:00<00:00, 3312.81 it/sec]
INFO - 16:17:33: 92%|█████████▏| 915/1000 [00:00<00:00, 3312.71 it/sec]
INFO - 16:17:33: 92%|█████████▏| 916/1000 [00:00<00:00, 3312.86 it/sec]
INFO - 16:17:33: 92%|█████████▏| 917/1000 [00:00<00:00, 3312.51 it/sec]
INFO - 16:17:33: 92%|█████████▏| 918/1000 [00:00<00:00, 3312.52 it/sec]
INFO - 16:17:33: 92%|█████████▏| 919/1000 [00:00<00:00, 3312.41 it/sec]
INFO - 16:17:33: 92%|█████████▏| 920/1000 [00:00<00:00, 3312.32 it/sec]
INFO - 16:17:33: 92%|█████████▏| 921/1000 [00:00<00:00, 3312.43 it/sec]
INFO - 16:17:33: 92%|█████████▏| 922/1000 [00:00<00:00, 3312.39 it/sec]
INFO - 16:17:33: 92%|█████████▏| 923/1000 [00:00<00:00, 3311.65 it/sec]
INFO - 16:17:33: 92%|█████████▏| 924/1000 [00:00<00:00, 3311.54 it/sec]
INFO - 16:17:33: 92%|█████████▎| 925/1000 [00:00<00:00, 3311.20 it/sec]
INFO - 16:17:33: 93%|█████████▎| 926/1000 [00:00<00:00, 3310.55 it/sec]
INFO - 16:17:33: 93%|█████████▎| 927/1000 [00:00<00:00, 3310.68 it/sec]
INFO - 16:17:33: 93%|█████████▎| 928/1000 [00:00<00:00, 3310.87 it/sec]
INFO - 16:17:33: 93%|█████████▎| 929/1000 [00:00<00:00, 3310.81 it/sec]
INFO - 16:17:33: 93%|█████████▎| 930/1000 [00:00<00:00, 3310.69 it/sec]
INFO - 16:17:33: 93%|█████████▎| 931/1000 [00:00<00:00, 3310.56 it/sec]
INFO - 16:17:33: 93%|█████████▎| 932/1000 [00:00<00:00, 3310.76 it/sec]
INFO - 16:17:33: 93%|█████████▎| 933/1000 [00:00<00:00, 3310.21 it/sec]
INFO - 16:17:33: 93%|█████████▎| 934/1000 [00:00<00:00, 3310.45 it/sec]
INFO - 16:17:33: 94%|█████████▎| 935/1000 [00:00<00:00, 3310.31 it/sec]
INFO - 16:17:33: 94%|█████████▎| 936/1000 [00:00<00:00, 3310.31 it/sec]
INFO - 16:17:33: 94%|█████████▎| 937/1000 [00:00<00:00, 3310.26 it/sec]
INFO - 16:17:33: 94%|█████████▍| 938/1000 [00:00<00:00, 3310.30 it/sec]
INFO - 16:17:33: 94%|█████████▍| 939/1000 [00:00<00:00, 3310.03 it/sec]
INFO - 16:17:33: 94%|█████████▍| 940/1000 [00:00<00:00, 3310.30 it/sec]
INFO - 16:17:33: 94%|█████████▍| 941/1000 [00:00<00:00, 3310.12 it/sec]
INFO - 16:17:33: 94%|█████████▍| 942/1000 [00:00<00:00, 3310.35 it/sec]
INFO - 16:17:33: 94%|█████████▍| 943/1000 [00:00<00:00, 3310.07 it/sec]
INFO - 16:17:33: 94%|█████████▍| 944/1000 [00:00<00:00, 3310.35 it/sec]
INFO - 16:17:33: 94%|█████████▍| 945/1000 [00:00<00:00, 3309.61 it/sec]
INFO - 16:17:33: 95%|█████████▍| 946/1000 [00:00<00:00, 3308.79 it/sec]
INFO - 16:17:33: 95%|█████████▍| 947/1000 [00:00<00:00, 3308.91 it/sec]
INFO - 16:17:33: 95%|█████████▍| 948/1000 [00:00<00:00, 3308.82 it/sec]
INFO - 16:17:33: 95%|█████████▍| 949/1000 [00:00<00:00, 3308.51 it/sec]
INFO - 16:17:33: 95%|█████████▌| 950/1000 [00:00<00:00, 3308.60 it/sec]
INFO - 16:17:33: 95%|█████████▌| 951/1000 [00:00<00:00, 3308.45 it/sec]
INFO - 16:17:33: 95%|█████████▌| 952/1000 [00:00<00:00, 3308.41 it/sec]
INFO - 16:17:33: 95%|█████████▌| 953/1000 [00:00<00:00, 3308.43 it/sec]
INFO - 16:17:33: 95%|█████████▌| 954/1000 [00:00<00:00, 3308.57 it/sec]
INFO - 16:17:33: 96%|█████████▌| 955/1000 [00:00<00:00, 3308.29 it/sec]
INFO - 16:17:33: 96%|█████████▌| 956/1000 [00:00<00:00, 3308.48 it/sec]
INFO - 16:17:33: 96%|█████████▌| 957/1000 [00:00<00:00, 3308.39 it/sec]
INFO - 16:17:33: 96%|█████████▌| 958/1000 [00:00<00:00, 3308.61 it/sec]
INFO - 16:17:33: 96%|█████████▌| 959/1000 [00:00<00:00, 3308.21 it/sec]
INFO - 16:17:33: 96%|█████████▌| 960/1000 [00:00<00:00, 3308.46 it/sec]
INFO - 16:17:33: 96%|█████████▌| 961/1000 [00:00<00:00, 3308.39 it/sec]
INFO - 16:17:33: 96%|█████████▌| 962/1000 [00:00<00:00, 3308.39 it/sec]
INFO - 16:17:33: 96%|█████████▋| 963/1000 [00:00<00:00, 3308.47 it/sec]
INFO - 16:17:33: 96%|█████████▋| 964/1000 [00:00<00:00, 3308.75 it/sec]
INFO - 16:17:33: 96%|█████████▋| 965/1000 [00:00<00:00, 3308.50 it/sec]
INFO - 16:17:33: 97%|█████████▋| 966/1000 [00:00<00:00, 3308.76 it/sec]
INFO - 16:17:33: 97%|█████████▋| 967/1000 [00:00<00:00, 3308.80 it/sec]
INFO - 16:17:33: 97%|█████████▋| 968/1000 [00:00<00:00, 3309.10 it/sec]
INFO - 16:17:33: 97%|█████████▋| 969/1000 [00:00<00:00, 3308.76 it/sec]
INFO - 16:17:33: 97%|█████████▋| 970/1000 [00:00<00:00, 3308.95 it/sec]
INFO - 16:17:33: 97%|█████████▋| 971/1000 [00:00<00:00, 3308.92 it/sec]
INFO - 16:17:33: 97%|█████████▋| 972/1000 [00:00<00:00, 3308.82 it/sec]
INFO - 16:17:33: 97%|█████████▋| 973/1000 [00:00<00:00, 3308.91 it/sec]
INFO - 16:17:33: 97%|█████████▋| 974/1000 [00:00<00:00, 3308.88 it/sec]
INFO - 16:17:33: 98%|█████████▊| 975/1000 [00:00<00:00, 3308.70 it/sec]
INFO - 16:17:33: 98%|█████████▊| 976/1000 [00:00<00:00, 3308.90 it/sec]
INFO - 16:17:33: 98%|█████████▊| 977/1000 [00:00<00:00, 3308.96 it/sec]
INFO - 16:17:33: 98%|█████████▊| 978/1000 [00:00<00:00, 3309.19 it/sec]
INFO - 16:17:33: 98%|█████████▊| 979/1000 [00:00<00:00, 3308.79 it/sec]
INFO - 16:17:33: 98%|█████████▊| 980/1000 [00:00<00:00, 3308.99 it/sec]
INFO - 16:17:33: 98%|█████████▊| 981/1000 [00:00<00:00, 3308.92 it/sec]
INFO - 16:17:33: 98%|█████████▊| 982/1000 [00:00<00:00, 3308.86 it/sec]
INFO - 16:17:33: 98%|█████████▊| 983/1000 [00:00<00:00, 3309.06 it/sec]
INFO - 16:17:33: 98%|█████████▊| 984/1000 [00:00<00:00, 3309.14 it/sec]
INFO - 16:17:33: 98%|█████████▊| 985/1000 [00:00<00:00, 3308.87 it/sec]
INFO - 16:17:33: 99%|█████████▊| 986/1000 [00:00<00:00, 3308.64 it/sec]
INFO - 16:17:33: 99%|█████████▊| 987/1000 [00:00<00:00, 3308.19 it/sec]
INFO - 16:17:33: 99%|█████████▉| 988/1000 [00:00<00:00, 3307.52 it/sec]
INFO - 16:17:33: 99%|█████████▉| 989/1000 [00:00<00:00, 3307.54 it/sec]
INFO - 16:17:33: 99%|█████████▉| 990/1000 [00:00<00:00, 3307.51 it/sec]
INFO - 16:17:33: 99%|█████████▉| 991/1000 [00:00<00:00, 3307.47 it/sec]
INFO - 16:17:33: 99%|█████████▉| 992/1000 [00:00<00:00, 3307.41 it/sec]
INFO - 16:17:33: 99%|█████████▉| 993/1000 [00:00<00:00, 3307.37 it/sec]
INFO - 16:17:33: 99%|█████████▉| 994/1000 [00:00<00:00, 3307.26 it/sec]
INFO - 16:17:33: 100%|█████████▉| 995/1000 [00:00<00:00, 3307.18 it/sec]
INFO - 16:17:33: 100%|█████████▉| 996/1000 [00:00<00:00, 3307.04 it/sec]
INFO - 16:17:33: 100%|█████████▉| 997/1000 [00:00<00:00, 3307.30 it/sec]
INFO - 16:17:33: 100%|█████████▉| 998/1000 [00:00<00:00, 3306.93 it/sec]
INFO - 16:17:33: 100%|█████████▉| 999/1000 [00:00<00:00, 3307.14 it/sec]
INFO - 16:17:33: 100%|██████████| 1000/1000 [00:00<00:00, 3307.01 it/sec]
and reset the EvaluationProblem to clear the database before refilling it:
problem.reset()
Finally, we can generate the same samples in a batch mode
SciPyDOE("MC").execute(
problem, settings_model=MC_Settings(n_samples=1000, vectorize=True)
)
samples = problem.to_dataset()
INFO - 16:17:33: Evaluation problem:
INFO - 16:17:33: Evaluate the functions: area
INFO - 16:17:33: over the design space:
INFO - 16:17:33: +--------+-------------+-------+-------------+-------+
INFO - 16:17:33: | Name | Lower bound | Value | Upper bound | Type |
INFO - 16:17:33: +--------+-------------+-------+-------------+-------+
INFO - 16:17:33: | length | 0 | None | 10 | float |
INFO - 16:17:33: | width | 0 | None | 10 | float |
INFO - 16:17:33: +--------+-------------+-------+-------------+-------+
INFO - 16:17:33: Running the algorithm MC:
check that these samples are equal to the reference ones:
assert_frame_equal(samples, samples_ref)
and that the function did receive a 2D array of shape (1000, 2):
assert function.last_input_data.shape == (1000, 2)
For a scenario#
In this second part of the example, we will apply batch sampling to the case of a scenario.
Vectorizing the user disciplines is more complicated than vectorizing functions because the user disciplines will be handled by multidisciplinary processes, including process disciplines, which only accept 1D input and output arrays and 2D Jacobian arrays. A user discipline must therefore always receive dictionaries of 1D arrays and return dictionaries of 1D arrays.
class AreaDiscipline(Discipline):
"""Compute the area of a rectangle."""
def __init__(self) -> None:
super().__init__()
self.io.input_grammar.update_from_names(("length", "width"))
self.io.output_grammar.update_from_names(("area",))
def _run(self, input_data: StrKeyMapping) -> StrKeyMapping | None:
length = input_data["length"]
width = input_data["width"]
return {"area": length * width}
area_discipline = AreaDiscipline()
In the case of this discipline,
the expected forms of the input and output data are
{"length": array([length_1, ..., length_n]), "width": array([width_1, ..., width_n])}
and {"area": array([area_1, ..., area_n])} respectively.
Note that in the case of a d-length vectorial variable "x",
the expected form would be
{"x": array([x_1_1, ..., x_d_1, ..., x_1_n, ..., x_d_n])}.
DisciplinaryOpt formulation#
We use this discipline to illustrate the batch sampling feature
with the DisciplinaryOpt formulation.
Remember that this MDO formulation executes the disciplines
in the order provided by the user.
For a better illustration,
we add a discipline to post-process the output data of AreaDiscipline:
class AreaIncreaser(Discipline):
"""Increase the area by a factor of 2."""
def __init__(self) -> None:
super().__init__()
self.io.input_grammar.update_from_names(("area",))
self.io.output_grammar.update_from_names(("final_area",))
def _run(self, input_data: StrKeyMapping) -> StrKeyMapping | None:
return {"final_area": 2.0 * input_data["area"]}
disciplines = [area_discipline, AreaIncreaser()]
Now, we can create and execute the scenario using batch sampling:
scenario = MDOScenario(
disciplines,
"final_area",
design_space,
formulation_settings_model=DisciplinaryOpt_Settings(),
)
scenario.execute(MC_Settings(n_samples=1000, vectorize=True))
samples = scenario.to_dataset(opt_naming=False)
INFO - 16:17:33: *** Start MDOScenario execution ***
INFO - 16:17:33: MDOScenario
INFO - 16:17:33: Disciplines: AreaDiscipline AreaIncreaser
INFO - 16:17:33: MDO formulation: DisciplinaryOpt
INFO - 16:17:33: Optimization problem:
INFO - 16:17:33: minimize final_area(length, width)
INFO - 16:17:33: with respect to length, width
INFO - 16:17:33: over the design space:
INFO - 16:17:33: +--------+-------------+-------+-------------+-------+
INFO - 16:17:33: | Name | Lower bound | Value | Upper bound | Type |
INFO - 16:17:33: +--------+-------------+-------+-------------+-------+
INFO - 16:17:33: | length | 0 | None | 10 | float |
INFO - 16:17:33: | width | 0 | None | 10 | float |
INFO - 16:17:33: +--------+-------------+-------+-------------+-------+
INFO - 16:17:33: Solving optimization problem with algorithm MC:
INFO - 16:17:33: Optimization result:
INFO - 16:17:33: Optimizer info:
INFO - 16:17:33: Status: None
INFO - 16:17:33: Message: None
INFO - 16:17:33: Solution:
INFO - 16:17:33: Objective: 0.006453354446785439
INFO - 16:17:33: Design space:
INFO - 16:17:33: +--------+-------------+----------------------+-------------+-------+
INFO - 16:17:33: | Name | Lower bound | Value | Upper bound | Type |
INFO - 16:17:33: +--------+-------------+----------------------+-------------+-------+
INFO - 16:17:33: | length | 0 | 3.359702633489273 | 10 | float |
INFO - 16:17:33: | width | 0 | 0.000960405599956804 | 10 | float |
INFO - 16:17:33: +--------+-------------+----------------------+-------------+-------+
INFO - 16:17:33: *** End MDOScenario execution ***
We can see that the samples are equal to the reference ones to within a factor of 2:
samples_ref.rename_variable("area", "final_area")
samples_ref.transform_data(lambda area: 2.0 * area, variable_names="final_area")
assert_frame_equal(samples, samples_ref)
and that the AreaDiscipline received and returned 1D arrays of size 1000:
assert area_discipline.io.data["length"].shape == (1000,)
assert area_discipline.io.data["width"].shape == (1000,)
assert area_discipline.io.data["area"].shape == (1000,)
MDF formulation#
To conclude this example, we will illustrate the applicability of batch sampling to the MDF formulation, including the computation of Jacobian data.
Let us consider the Sellar MDO problem whose disciplines have been vectorized
(look at the source code of Sellar1, Sellar2
and SellarSystem,
including the part related to the Jacobian computation with sparse arrays.).
We create a function defining and solving this MDO problem using either sequential or batch sampling:
def solve_sellar(
use_batch_sampling: bool, eval_jac: bool
) -> tuple[OptimizationDataset, float]:
"""Solve the Sellar sampling problem.
Args:
use_batch_sampling: Whether to use batch sampling.
eval_jac: Whether to sample the Jacobian functions.
Returns:
The samples, the execution time.
"""
disciplines = [Sellar1(), Sellar2(), SellarSystem()]
design_space = SellarDesignSpace(dtype="float")
scenario = MDOScenario(
disciplines, "obj", design_space, formulation_settings_model=MDF_Settings()
)
scenario.add_constraint("c_1")
scenario.add_constraint("c_2")
with Timer() as timer:
scenario.execute(
MC_Settings(n_samples=100, vectorize=use_batch_sampling, eval_jac=eval_jac)
)
return scenario.to_dataset(), timer.elapsed_time
solve it with both sampling modes:
samples_ref, time_ref = solve_sellar(False, False)
samples, time = solve_sellar(True, False)
INFO - 16:17:33: *** Start MDOScenario execution ***
INFO - 16:17:33: MDOScenario
INFO - 16:17:33: Disciplines: Sellar1 Sellar2 SellarSystem
INFO - 16:17:33: MDO formulation: MDF
INFO - 16:17:33: Optimization problem:
INFO - 16:17:33: minimize obj(x_1, x_2, x_shared)
INFO - 16:17:33: with respect to x_1, x_2, x_shared
INFO - 16:17:33: under the equality constraints
INFO - 16:17:33: c_1(x_1, x_2, x_shared) = 0
INFO - 16:17:33: c_2(x_1, x_2, x_shared) = 0
INFO - 16:17:33: over the design space:
INFO - 16:17:33: +-------------+-------------+-------+-------------+-------+
INFO - 16:17:33: | Name | Lower bound | Value | Upper bound | Type |
INFO - 16:17:33: +-------------+-------------+-------+-------------+-------+
INFO - 16:17:33: | x_1 | 0 | 1 | 10 | float |
INFO - 16:17:33: | x_2 | 0 | 1 | 10 | float |
INFO - 16:17:33: | x_shared[0] | -10 | 4 | 10 | float |
INFO - 16:17:33: | x_shared[1] | 0 | 3 | 10 | float |
INFO - 16:17:33: +-------------+-------------+-------+-------------+-------+
INFO - 16:17:33: Solving optimization problem with algorithm MC:
INFO - 16:17:33: 1%| | 1/100 [00:00<00:01, 79.19 it/sec, feas=False, obj=191]
INFO - 16:17:33: 2%|▏ | 2/100 [00:00<00:00, 107.08 it/sec, feas=False, obj=79.2]
INFO - 16:17:33: 3%|▎ | 3/100 [00:00<00:00, 123.27 it/sec, feas=False, obj=69.1]
INFO - 16:17:33: 4%|▍ | 4/100 [00:00<00:00, 132.89 it/sec, feas=False, obj=112]
INFO - 16:17:33: 5%|▌ | 5/100 [00:00<00:00, 144.20 it/sec, feas=False, obj=62.9]
INFO - 16:17:33: 6%|▌ | 6/100 [00:00<00:00, 148.91 it/sec, feas=False, obj=89.3]
INFO - 16:17:33: 7%|▋ | 7/100 [00:00<00:00, 156.43 it/sec, feas=False, obj=162]
INFO - 16:17:33: 8%|▊ | 8/100 [00:00<00:00, 158.57 it/sec, feas=False, obj=591]
INFO - 16:17:33: 9%|▉ | 9/100 [00:00<00:00, 160.32 it/sec, feas=False, obj=127]
INFO - 16:17:33: 10%|█ | 10/100 [00:00<00:00, 162.16 it/sec, feas=False, obj=80.9]
INFO - 16:17:33: 11%|█ | 11/100 [00:00<00:00, 166.14 it/sec, feas=False, obj=131]
INFO - 16:17:33: 12%|█▏ | 12/100 [00:00<00:00, 167.24 it/sec, feas=False, obj=119]
INFO - 16:17:33: 13%|█▎ | 13/100 [00:00<00:00, 168.54 it/sec, feas=False, obj=98.4]
INFO - 16:17:33: 14%|█▍ | 14/100 [00:00<00:00, 169.70 it/sec, feas=False, obj=1.09e+3]
INFO - 16:17:33: 15%|█▌ | 15/100 [00:00<00:00, 170.13 it/sec, feas=False, obj=220]
INFO - 16:17:33: 16%|█▌ | 16/100 [00:00<00:00, 171.06 it/sec, feas=False, obj=30.3]
INFO - 16:17:33: 17%|█▋ | 17/100 [00:00<00:00, 173.17 it/sec, feas=False, obj=130]
INFO - 16:17:33: 18%|█▊ | 18/100 [00:00<00:00, 175.20 it/sec, feas=False, obj=274]
INFO - 16:17:33: 19%|█▉ | 19/100 [00:00<00:00, 177.26 it/sec, feas=False, obj=111]
INFO - 16:17:33: 20%|██ | 20/100 [00:00<00:00, 176.88 it/sec, feas=False, obj=194]
INFO - 16:17:33: 21%|██ | 21/100 [00:00<00:00, 177.42 it/sec, feas=False, obj=87.1]
INFO - 16:17:33: 22%|██▏ | 22/100 [00:00<00:00, 177.63 it/sec, feas=False, obj=121]
INFO - 16:17:33: 23%|██▎ | 23/100 [00:00<00:00, 177.94 it/sec, feas=False, obj=44.7]
INFO - 16:17:33: 24%|██▍ | 24/100 [00:00<00:00, 179.54 it/sec, feas=False, obj=49.7]
INFO - 16:17:33: 25%|██▌ | 25/100 [00:00<00:00, 180.95 it/sec, feas=False, obj=62.2]
INFO - 16:17:33: 26%|██▌ | 26/100 [00:00<00:00, 180.63 it/sec, feas=False, obj=131]
INFO - 16:17:33: 27%|██▋ | 27/100 [00:00<00:00, 180.86 it/sec, feas=False, obj=89.7]
INFO - 16:17:33: 28%|██▊ | 28/100 [00:00<00:00, 181.98 it/sec, feas=False, obj=142]
INFO - 16:17:33: 29%|██▉ | 29/100 [00:00<00:00, 183.18 it/sec, feas=False, obj=85.4]
INFO - 16:17:33: 30%|███ | 30/100 [00:00<00:00, 182.74 it/sec, feas=False, obj=54.1]
INFO - 16:17:33: 31%|███ | 31/100 [00:00<00:00, 182.75 it/sec, feas=False, obj=138]
INFO - 16:17:33: 32%|███▏ | 32/100 [00:00<00:00, 183.79 it/sec, feas=False, obj=107]
INFO - 16:17:33: 33%|███▎ | 33/100 [00:00<00:00, 184.88 it/sec, feas=False, obj=45.6]
INFO - 16:17:33: 34%|███▍ | 34/100 [00:00<00:00, 184.87 it/sec, feas=False, obj=211]
INFO - 16:17:33: 35%|███▌ | 35/100 [00:00<00:00, 184.99 it/sec, feas=False, obj=149]
INFO - 16:17:33: 36%|███▌ | 36/100 [00:00<00:00, 185.80 it/sec, feas=False, obj=89.2]
INFO - 16:17:33: 37%|███▋ | 37/100 [00:00<00:00, 186.63 it/sec, feas=False, obj=125]
INFO - 16:17:33: 38%|███▊ | 38/100 [00:00<00:00, 186.52 it/sec, feas=False, obj=125]
INFO - 16:17:33: 39%|███▉ | 39/100 [00:00<00:00, 186.76 it/sec, feas=False, obj=156]
INFO - 16:17:33: 40%|████ | 40/100 [00:00<00:00, 187.35 it/sec, feas=False, obj=65.3]
INFO - 16:17:33: 41%|████ | 41/100 [00:00<00:00, 187.11 it/sec, feas=False, obj=134]
INFO - 16:17:33: 42%|████▏ | 42/100 [00:00<00:00, 186.95 it/sec, feas=False, obj=63.5]
INFO - 16:17:33: 43%|████▎ | 43/100 [00:00<00:00, 187.42 it/sec, feas=False, obj=137]
INFO - 16:17:33: 44%|████▍ | 44/100 [00:00<00:00, 188.02 it/sec, feas=False, obj=77.2]
INFO - 16:17:33: 45%|████▌ | 45/100 [00:00<00:00, 187.92 it/sec, feas=False, obj=116]
INFO - 16:17:33: 46%|████▌ | 46/100 [00:00<00:00, 188.51 it/sec, feas=False, obj=134]
INFO - 16:17:33: 47%|████▋ | 47/100 [00:00<00:00, 188.32 it/sec, feas=False, obj=110]
INFO - 16:17:33: 48%|████▊ | 48/100 [00:00<00:00, 188.04 it/sec, feas=False, obj=165]
INFO - 16:17:33: 49%|████▉ | 49/100 [00:00<00:00, 188.32 it/sec, feas=False, obj=189]
INFO - 16:17:33: 50%|█████ | 50/100 [00:00<00:00, 188.79 it/sec, feas=False, obj=109]
INFO - 16:17:33: 51%|█████ | 51/100 [00:00<00:00, 188.46 it/sec, feas=False, obj=95.5]
INFO - 16:17:33: 52%|█████▏ | 52/100 [00:00<00:00, 188.93 it/sec, feas=False, obj=146]
INFO - 16:17:33: 53%|█████▎ | 53/100 [00:00<00:00, 189.41 it/sec, feas=False, obj=165]
INFO - 16:17:33: 54%|█████▍ | 54/100 [00:00<00:00, 189.66 it/sec, feas=False, obj=107]
INFO - 16:17:33: 55%|█████▌ | 55/100 [00:00<00:00, 189.49 it/sec, feas=False, obj=25.3]
INFO - 16:17:33: 56%|█████▌ | 56/100 [00:00<00:00, 189.89 it/sec, feas=False, obj=203]
INFO - 16:17:33: 57%|█████▋ | 57/100 [00:00<00:00, 189.75 it/sec, feas=False, obj=305]
INFO - 16:17:33: 58%|█████▊ | 58/100 [00:00<00:00, 190.07 it/sec, feas=False, obj=51.7]
INFO - 16:17:33: 59%|█████▉ | 59/100 [00:00<00:00, 189.81 it/sec, feas=False, obj=212]
INFO - 16:17:33: 60%|██████ | 60/100 [00:00<00:00, 190.15 it/sec, feas=False, obj=199]
INFO - 16:17:33: 61%|██████ | 61/100 [00:00<00:00, 190.59 it/sec, feas=False, obj=93.1]
INFO - 16:17:33: 62%|██████▏ | 62/100 [00:00<00:00, 190.74 it/sec, feas=False, obj=39.9]
INFO - 16:17:33: 63%|██████▎ | 63/100 [00:00<00:00, 191.15 it/sec, feas=False, obj=112]
INFO - 16:17:33: 64%|██████▍ | 64/100 [00:00<00:00, 191.51 it/sec, feas=False, obj=136]
INFO - 16:17:33: 65%|██████▌ | 65/100 [00:00<00:00, 191.89 it/sec, feas=False, obj=40.7]
INFO - 16:17:33: 66%|██████▌ | 66/100 [00:00<00:00, 191.76 it/sec, feas=False, obj=2.66e+3]
INFO - 16:17:33: 67%|██████▋ | 67/100 [00:00<00:00, 192.15 it/sec, feas=False, obj=160]
INFO - 16:17:33: 68%|██████▊ | 68/100 [00:00<00:00, 192.55 it/sec, feas=False, obj=138]
INFO - 16:17:33: 69%|██████▉ | 69/100 [00:00<00:00, 192.27 it/sec, feas=False, obj=899]
INFO - 16:17:33: 70%|███████ | 70/100 [00:00<00:00, 192.66 it/sec, feas=False, obj=276]
INFO - 16:17:33: 71%|███████ | 71/100 [00:00<00:00, 192.42 it/sec, feas=False, obj=44.1]
INFO - 16:17:33: 72%|███████▏ | 72/100 [00:00<00:00, 192.24 it/sec, feas=False, obj=114]
INFO - 16:17:33: 73%|███████▎ | 73/100 [00:00<00:00, 192.60 it/sec, feas=False, obj=596]
INFO - 16:17:33: 74%|███████▍ | 74/100 [00:00<00:00, 192.48 it/sec, feas=False, obj=120]
INFO - 16:17:33: 75%|███████▌ | 75/100 [00:00<00:00, 192.79 it/sec, feas=False, obj=407]
INFO - 16:17:33: 76%|███████▌ | 76/100 [00:00<00:00, 192.73 it/sec, feas=False, obj=51.4]
INFO - 16:17:33: 77%|███████▋ | 77/100 [00:00<00:00, 192.59 it/sec, feas=False, obj=148]
INFO - 16:17:33: 78%|███████▊ | 78/100 [00:00<00:00, 192.46 it/sec, feas=False, obj=93.9]
INFO - 16:17:33: 79%|███████▉ | 79/100 [00:00<00:00, 192.28 it/sec, feas=False, obj=72.1]
INFO - 16:17:33: 80%|████████ | 80/100 [00:00<00:00, 192.68 it/sec, feas=False, obj=292]
INFO - 16:17:33: 81%|████████ | 81/100 [00:00<00:00, 192.50 it/sec, feas=False, obj=98.6]
INFO - 16:17:33: 82%|████████▏ | 82/100 [00:00<00:00, 192.37 it/sec, feas=False, obj=25]
INFO - 16:17:33: 83%|████████▎ | 83/100 [00:00<00:00, 192.22 it/sec, feas=False, obj=33.1]
INFO - 16:17:33: 84%|████████▍ | 84/100 [00:00<00:00, 192.11 it/sec, feas=False, obj=114]
INFO - 16:17:33: 85%|████████▌ | 85/100 [00:00<00:00, 191.98 it/sec, feas=False, obj=115]
INFO - 16:17:33: 86%|████████▌ | 86/100 [00:00<00:00, 192.31 it/sec, feas=False, obj=118]
INFO - 16:17:33: 87%|████████▋ | 87/100 [00:00<00:00, 192.16 it/sec, feas=False, obj=67.1]
INFO - 16:17:33: 88%|████████▊ | 88/100 [00:00<00:00, 192.45 it/sec, feas=False, obj=105]
INFO - 16:17:33: 89%|████████▉ | 89/100 [00:00<00:00, 192.69 it/sec, feas=False, obj=92.6]
INFO - 16:17:33: 90%|█████████ | 90/100 [00:00<00:00, 192.64 it/sec, feas=False, obj=98.1]
INFO - 16:17:33: 91%|█████████ | 91/100 [00:00<00:00, 192.50 it/sec, feas=False, obj=133]
INFO - 16:17:33: 92%|█████████▏| 92/100 [00:00<00:00, 192.77 it/sec, feas=False, obj=197]
INFO - 16:17:33: 93%|█████████▎| 93/100 [00:00<00:00, 193.02 it/sec, feas=False, obj=82.6]
INFO - 16:17:33: 94%|█████████▍| 94/100 [00:00<00:00, 192.91 it/sec, feas=False, obj=27.2]
INFO - 16:17:33: 95%|█████████▌| 95/100 [00:00<00:00, 192.76 it/sec, feas=False, obj=126]
INFO - 16:17:33: 96%|█████████▌| 96/100 [00:00<00:00, 192.68 it/sec, feas=False, obj=162]
INFO - 16:17:33: 97%|█████████▋| 97/100 [00:00<00:00, 192.92 it/sec, feas=False, obj=45.7]
INFO - 16:17:33: 98%|█████████▊| 98/100 [00:00<00:00, 192.82 it/sec, feas=False, obj=21.2]
INFO - 16:17:33: 99%|█████████▉| 99/100 [00:00<00:00, 192.64 it/sec, feas=False, obj=342]
WARNING - 16:17:34: Optimization found no feasible point; the least infeasible point is selected.
INFO - 16:17:34: 100%|██████████| 100/100 [00:00<00:00, 191.43 it/sec, feas=False, obj=125]
INFO - 16:17:34: Optimization result:
INFO - 16:17:34: Optimizer info:
INFO - 16:17:34: Status: None
INFO - 16:17:34: Message: None
INFO - 16:17:34: Solution:
WARNING - 16:17:34: The solution is not feasible.
INFO - 16:17:34: Objective: 30.3484674529711
INFO - 16:17:34: Standardized constraints:
INFO - 16:17:34: c_1 = -12.474091450044018
INFO - 16:17:34: c_2 = -10.003409829769815
INFO - 16:17:34: Design space:
INFO - 16:17:34: +-------------+-------------+---------------------+-------------+-------+
INFO - 16:17:34: | Name | Lower bound | Value | Upper bound | Type |
INFO - 16:17:34: +-------------+-------------+---------------------+-------------+-------+
INFO - 16:17:34: | x_1 | 0 | 2.740483886137183 | 10 | float |
INFO - 16:17:34: | x_2 | 0 | 0.07091828603166261 | 10 | float |
INFO - 16:17:34: | x_shared[0] | -10 | 2.914417911498957 | 10 | float |
INFO - 16:17:34: | x_shared[1] | 0 | 7.199093835086931 | 10 | float |
INFO - 16:17:34: +-------------+-------------+---------------------+-------------+-------+
INFO - 16:17:34: *** End MDOScenario execution ***
WARNING - 16:17:34: Optimization found no feasible point; the least infeasible point is selected.
WARNING - 16:17:34: Optimization found no feasible point; the least infeasible point is selected.
INFO - 16:17:34: *** Start MDOScenario execution ***
INFO - 16:17:34: MDOScenario
INFO - 16:17:34: Disciplines: Sellar1 Sellar2 SellarSystem
INFO - 16:17:34: MDO formulation: MDF
INFO - 16:17:34: Optimization problem:
INFO - 16:17:34: minimize obj(x_1, x_2, x_shared)
INFO - 16:17:34: with respect to x_1, x_2, x_shared
INFO - 16:17:34: under the equality constraints
INFO - 16:17:34: c_1(x_1, x_2, x_shared) = 0
INFO - 16:17:34: c_2(x_1, x_2, x_shared) = 0
INFO - 16:17:34: over the design space:
INFO - 16:17:34: +-------------+-------------+-------+-------------+-------+
INFO - 16:17:34: | Name | Lower bound | Value | Upper bound | Type |
INFO - 16:17:34: +-------------+-------------+-------+-------------+-------+
INFO - 16:17:34: | x_1 | 0 | 1 | 10 | float |
INFO - 16:17:34: | x_2 | 0 | 1 | 10 | float |
INFO - 16:17:34: | x_shared[0] | -10 | 4 | 10 | float |
INFO - 16:17:34: | x_shared[1] | 0 | 3 | 10 | float |
INFO - 16:17:34: +-------------+-------------+-------+-------------+-------+
INFO - 16:17:34: Solving optimization problem with algorithm MC:
WARNING - 16:17:34: Optimization found no feasible point; the least infeasible point is selected.
INFO - 16:17:34: Optimization result:
INFO - 16:17:34: Optimizer info:
INFO - 16:17:34: Status: None
INFO - 16:17:34: Message: None
INFO - 16:17:34: Solution:
WARNING - 16:17:34: The solution is not feasible.
INFO - 16:17:34: Objective: 30.348468138942017
INFO - 16:17:34: Standardized constraints:
INFO - 16:17:34: c_1 = [-12.47409214]
INFO - 16:17:34: c_2 = [-10.00340912]
INFO - 16:17:34: Design space:
INFO - 16:17:34: +-------------+-------------+---------------------+-------------+-------+
INFO - 16:17:34: | Name | Lower bound | Value | Upper bound | Type |
INFO - 16:17:34: +-------------+-------------+---------------------+-------------+-------+
INFO - 16:17:34: | x_1 | 0 | 2.740483886137183 | 10 | float |
INFO - 16:17:34: | x_2 | 0 | 0.07091828603166261 | 10 | float |
INFO - 16:17:34: | x_shared[0] | -10 | 2.914417911498957 | 10 | float |
INFO - 16:17:34: | x_shared[1] | 0 | 7.199093835086931 | 10 | float |
INFO - 16:17:34: +-------------+-------------+---------------------+-------------+-------+
INFO - 16:17:34: *** End MDOScenario execution ***
WARNING - 16:17:34: Optimization found no feasible point; the least infeasible point is selected.
WARNING - 16:17:34: Optimization found no feasible point; the least infeasible point is selected.
check that the samples are equal:
assert_frame_equal(samples, samples_ref, rtol=1e-3)
and see a significant execution time reduction:
f"{round((time_ref - time) / time_ref * 100)} %"
'94 %'
The same type of results are obtained by evaluating the gradients.
samples_ref, time_ref = solve_sellar(False, True)
samples, time = solve_sellar(True, True)
assert_frame_equal(samples, samples_ref, rtol=1e-3)
INFO - 16:17:34: *** Start MDOScenario execution ***
INFO - 16:17:34: MDOScenario
INFO - 16:17:34: Disciplines: Sellar1 Sellar2 SellarSystem
INFO - 16:17:34: MDO formulation: MDF
INFO - 16:17:34: Optimization problem:
INFO - 16:17:34: minimize obj(x_1, x_2, x_shared)
INFO - 16:17:34: with respect to x_1, x_2, x_shared
INFO - 16:17:34: under the equality constraints
INFO - 16:17:34: c_1(x_1, x_2, x_shared) = 0
INFO - 16:17:34: c_2(x_1, x_2, x_shared) = 0
INFO - 16:17:34: over the design space:
INFO - 16:17:34: +-------------+-------------+-------+-------------+-------+
INFO - 16:17:34: | Name | Lower bound | Value | Upper bound | Type |
INFO - 16:17:34: +-------------+-------------+-------+-------------+-------+
INFO - 16:17:34: | x_1 | 0 | 1 | 10 | float |
INFO - 16:17:34: | x_2 | 0 | 1 | 10 | float |
INFO - 16:17:34: | x_shared[0] | -10 | 4 | 10 | float |
INFO - 16:17:34: | x_shared[1] | 0 | 3 | 10 | float |
INFO - 16:17:34: +-------------+-------------+-------+-------------+-------+
INFO - 16:17:34: Solving optimization problem with algorithm MC:
INFO - 16:17:34: 1%| | 1/100 [00:00<00:02, 44.21 it/sec, feas=False, obj=191]
INFO - 16:17:34: 2%|▏ | 2/100 [00:00<00:01, 54.04 it/sec, feas=False, obj=79.2]
INFO - 16:17:34: 3%|▎ | 3/100 [00:00<00:01, 58.78 it/sec, feas=False, obj=69.1]
INFO - 16:17:34: 4%|▍ | 4/100 [00:00<00:01, 60.55 it/sec, feas=False, obj=112]
INFO - 16:17:34: 5%|▌ | 5/100 [00:00<00:01, 63.05 it/sec, feas=False, obj=62.9]
INFO - 16:17:34: 6%|▌ | 6/100 [00:00<00:01, 64.11 it/sec, feas=False, obj=89.3]
INFO - 16:17:34: 7%|▋ | 7/100 [00:00<00:01, 65.52 it/sec, feas=False, obj=162]
INFO - 16:17:34: 8%|▊ | 8/100 [00:00<00:01, 66.06 it/sec, feas=False, obj=591]
INFO - 16:17:34: 9%|▉ | 9/100 [00:00<00:01, 66.46 it/sec, feas=False, obj=127]
INFO - 16:17:34: 10%|█ | 10/100 [00:00<00:01, 66.61 it/sec, feas=False, obj=80.9]
INFO - 16:17:34: 11%|█ | 11/100 [00:00<00:01, 67.31 it/sec, feas=False, obj=131]
INFO - 16:17:34: 12%|█▏ | 12/100 [00:00<00:01, 67.47 it/sec, feas=False, obj=119]
INFO - 16:17:34: 13%|█▎ | 13/100 [00:00<00:01, 67.70 it/sec, feas=False, obj=98.4]
INFO - 16:17:34: 14%|█▍ | 14/100 [00:00<00:01, 67.89 it/sec, feas=False, obj=1.09e+3]
INFO - 16:17:34: 15%|█▌ | 15/100 [00:00<00:01, 67.93 it/sec, feas=False, obj=220]
INFO - 16:17:34: 16%|█▌ | 16/100 [00:00<00:01, 67.92 it/sec, feas=False, obj=30.3]
INFO - 16:17:34: 17%|█▋ | 17/100 [00:00<00:01, 68.23 it/sec, feas=False, obj=130]
INFO - 16:17:34: 18%|█▊ | 18/100 [00:00<00:01, 68.44 it/sec, feas=False, obj=274]
INFO - 16:17:34: 19%|█▉ | 19/100 [00:00<00:01, 68.68 it/sec, feas=False, obj=111]
INFO - 16:17:34: 20%|██ | 20/100 [00:00<00:01, 68.66 it/sec, feas=False, obj=194]
INFO - 16:17:34: 21%|██ | 21/100 [00:00<00:01, 68.70 it/sec, feas=False, obj=87.1]
INFO - 16:17:34: 22%|██▏ | 22/100 [00:00<00:01, 68.74 it/sec, feas=False, obj=121]
INFO - 16:17:34: 23%|██▎ | 23/100 [00:00<00:01, 68.86 it/sec, feas=False, obj=44.7]
INFO - 16:17:34: 24%|██▍ | 24/100 [00:00<00:01, 69.10 it/sec, feas=False, obj=49.7]
INFO - 16:17:34: 25%|██▌ | 25/100 [00:00<00:01, 69.26 it/sec, feas=False, obj=62.2]
INFO - 16:17:34: 26%|██▌ | 26/100 [00:00<00:01, 69.25 it/sec, feas=False, obj=131]
INFO - 16:17:34: 27%|██▋ | 27/100 [00:00<00:01, 69.33 it/sec, feas=False, obj=89.7]
INFO - 16:17:34: 28%|██▊ | 28/100 [00:00<00:01, 69.51 it/sec, feas=False, obj=142]
INFO - 16:17:34: 29%|██▉ | 29/100 [00:00<00:01, 69.71 it/sec, feas=False, obj=85.4]
INFO - 16:17:34: 30%|███ | 30/100 [00:00<00:01, 69.75 it/sec, feas=False, obj=54.1]
INFO - 16:17:34: 31%|███ | 31/100 [00:00<00:00, 69.78 it/sec, feas=False, obj=138]
INFO - 16:17:34: 32%|███▏ | 32/100 [00:00<00:00, 69.98 it/sec, feas=False, obj=107]
INFO - 16:17:34: 33%|███▎ | 33/100 [00:00<00:00, 70.13 it/sec, feas=False, obj=45.6]
INFO - 16:17:34: 34%|███▍ | 34/100 [00:00<00:00, 70.11 it/sec, feas=False, obj=211]
INFO - 16:17:34: 35%|███▌ | 35/100 [00:00<00:00, 70.11 it/sec, feas=False, obj=149]
INFO - 16:17:34: 36%|███▌ | 36/100 [00:00<00:00, 70.20 it/sec, feas=False, obj=89.2]
INFO - 16:17:34: 37%|███▋ | 37/100 [00:00<00:00, 70.33 it/sec, feas=False, obj=125]
INFO - 16:17:34: 38%|███▊ | 38/100 [00:00<00:00, 70.30 it/sec, feas=False, obj=125]
INFO - 16:17:34: 39%|███▉ | 39/100 [00:00<00:00, 70.40 it/sec, feas=False, obj=156]
INFO - 16:17:34: 40%|████ | 40/100 [00:00<00:00, 70.50 it/sec, feas=False, obj=65.3]
INFO - 16:17:34: 41%|████ | 41/100 [00:00<00:00, 70.43 it/sec, feas=False, obj=134]
INFO - 16:17:34: 42%|████▏ | 42/100 [00:00<00:00, 70.42 it/sec, feas=False, obj=63.5]
INFO - 16:17:34: 43%|████▎ | 43/100 [00:00<00:00, 70.53 it/sec, feas=False, obj=137]
INFO - 16:17:34: 44%|████▍ | 44/100 [00:00<00:00, 70.63 it/sec, feas=False, obj=77.2]
INFO - 16:17:34: 45%|████▌ | 45/100 [00:00<00:00, 70.58 it/sec, feas=False, obj=116]
INFO - 16:17:34: 46%|████▌ | 46/100 [00:00<00:00, 70.64 it/sec, feas=False, obj=134]
INFO - 16:17:34: 47%|████▋ | 47/100 [00:00<00:00, 70.60 it/sec, feas=False, obj=110]
INFO - 16:17:34: 48%|████▊ | 48/100 [00:00<00:00, 70.58 it/sec, feas=False, obj=165]
INFO - 16:17:34: 49%|████▉ | 49/100 [00:00<00:00, 70.65 it/sec, feas=False, obj=189]
INFO - 16:17:34: 50%|█████ | 50/100 [00:00<00:00, 70.72 it/sec, feas=False, obj=109]
INFO - 16:17:34: 51%|█████ | 51/100 [00:00<00:00, 70.69 it/sec, feas=False, obj=95.5]
INFO - 16:17:34: 52%|█████▏ | 52/100 [00:00<00:00, 70.70 it/sec, feas=False, obj=146]
INFO - 16:17:34: 53%|█████▎ | 53/100 [00:00<00:00, 70.68 it/sec, feas=False, obj=165]
INFO - 16:17:34: 54%|█████▍ | 54/100 [00:00<00:00, 70.68 it/sec, feas=False, obj=107]
INFO - 16:17:34: 55%|█████▌ | 55/100 [00:00<00:00, 70.61 it/sec, feas=False, obj=25.3]
INFO - 16:17:34: 56%|█████▌ | 56/100 [00:00<00:00, 70.67 it/sec, feas=False, obj=203]
INFO - 16:17:34: 57%|█████▋ | 57/100 [00:00<00:00, 70.61 it/sec, feas=False, obj=305]
INFO - 16:17:34: 58%|█████▊ | 58/100 [00:00<00:00, 70.62 it/sec, feas=False, obj=51.7]
INFO - 16:17:34: 59%|█████▉ | 59/100 [00:00<00:00, 70.59 it/sec, feas=False, obj=212]
INFO - 16:17:34: 60%|██████ | 60/100 [00:00<00:00, 70.63 it/sec, feas=False, obj=199]
INFO - 16:17:34: 61%|██████ | 61/100 [00:00<00:00, 70.65 it/sec, feas=False, obj=93.1]
INFO - 16:17:34: 62%|██████▏ | 62/100 [00:00<00:00, 70.68 it/sec, feas=False, obj=39.9]
INFO - 16:17:34: 63%|██████▎ | 63/100 [00:00<00:00, 70.70 it/sec, feas=False, obj=112]
INFO - 16:17:34: 64%|██████▍ | 64/100 [00:00<00:00, 70.72 it/sec, feas=False, obj=136]
INFO - 16:17:35: 65%|██████▌ | 65/100 [00:00<00:00, 70.74 it/sec, feas=False, obj=40.7]
INFO - 16:17:35: 66%|██████▌ | 66/100 [00:00<00:00, 70.70 it/sec, feas=False, obj=2.66e+3]
INFO - 16:17:35: 67%|██████▋ | 67/100 [00:00<00:00, 70.71 it/sec, feas=False, obj=160]
INFO - 16:17:35: 68%|██████▊ | 68/100 [00:00<00:00, 70.76 it/sec, feas=False, obj=138]
INFO - 16:17:35: 69%|██████▉ | 69/100 [00:00<00:00, 70.71 it/sec, feas=False, obj=899]
INFO - 16:17:35: 70%|███████ | 70/100 [00:00<00:00, 70.74 it/sec, feas=False, obj=276]
INFO - 16:17:35: 71%|███████ | 71/100 [00:01<00:00, 70.71 it/sec, feas=False, obj=44.1]
INFO - 16:17:35: 72%|███████▏ | 72/100 [00:01<00:00, 70.62 it/sec, feas=False, obj=114]
INFO - 16:17:35: 73%|███████▎ | 73/100 [00:01<00:00, 70.64 it/sec, feas=False, obj=596]
INFO - 16:17:35: 74%|███████▍ | 74/100 [00:01<00:00, 70.62 it/sec, feas=False, obj=120]
INFO - 16:17:35: 75%|███████▌ | 75/100 [00:01<00:00, 70.63 it/sec, feas=False, obj=407]
INFO - 16:17:35: 76%|███████▌ | 76/100 [00:01<00:00, 70.60 it/sec, feas=False, obj=51.4]
INFO - 16:17:35: 77%|███████▋ | 77/100 [00:01<00:00, 70.52 it/sec, feas=False, obj=148]
INFO - 16:17:35: 78%|███████▊ | 78/100 [00:01<00:00, 70.45 it/sec, feas=False, obj=93.9]
INFO - 16:17:35: 79%|███████▉ | 79/100 [00:01<00:00, 70.43 it/sec, feas=False, obj=72.1]
INFO - 16:17:35: 80%|████████ | 80/100 [00:01<00:00, 70.47 it/sec, feas=False, obj=292]
INFO - 16:17:35: 81%|████████ | 81/100 [00:01<00:00, 70.46 it/sec, feas=False, obj=98.6]
INFO - 16:17:35: 82%|████████▏ | 82/100 [00:01<00:00, 70.44 it/sec, feas=False, obj=25]
INFO - 16:17:35: 83%|████████▎ | 83/100 [00:01<00:00, 70.38 it/sec, feas=False, obj=33.1]
INFO - 16:17:35: 84%|████████▍ | 84/100 [00:01<00:00, 70.30 it/sec, feas=False, obj=114]
INFO - 16:17:35: 85%|████████▌ | 85/100 [00:01<00:00, 70.22 it/sec, feas=False, obj=115]
INFO - 16:17:35: 86%|████████▌ | 86/100 [00:01<00:00, 70.26 it/sec, feas=False, obj=118]
INFO - 16:17:35: 87%|████████▋ | 87/100 [00:01<00:00, 70.24 it/sec, feas=False, obj=67.1]
INFO - 16:17:35: 88%|████████▊ | 88/100 [00:01<00:00, 70.23 it/sec, feas=False, obj=105]
INFO - 16:17:35: 89%|████████▉ | 89/100 [00:01<00:00, 70.23 it/sec, feas=False, obj=92.6]
INFO - 16:17:35: 90%|█████████ | 90/100 [00:01<00:00, 70.17 it/sec, feas=False, obj=98.1]
INFO - 16:17:35: 91%|█████████ | 91/100 [00:01<00:00, 70.07 it/sec, feas=False, obj=133]
INFO - 16:17:35: 92%|█████████▏| 92/100 [00:01<00:00, 70.06 it/sec, feas=False, obj=197]
INFO - 16:17:35: 93%|█████████▎| 93/100 [00:01<00:00, 70.02 it/sec, feas=False, obj=82.6]
INFO - 16:17:35: 94%|█████████▍| 94/100 [00:01<00:00, 69.97 it/sec, feas=False, obj=27.2]
INFO - 16:17:35: 95%|█████████▌| 95/100 [00:01<00:00, 69.96 it/sec, feas=False, obj=126]
INFO - 16:17:35: 96%|█████████▌| 96/100 [00:01<00:00, 69.94 it/sec, feas=False, obj=162]
INFO - 16:17:35: 97%|█████████▋| 97/100 [00:01<00:00, 69.95 it/sec, feas=False, obj=45.7]
INFO - 16:17:35: 98%|█████████▊| 98/100 [00:01<00:00, 69.94 it/sec, feas=False, obj=21.2]
INFO - 16:17:35: 99%|█████████▉| 99/100 [00:01<00:00, 69.92 it/sec, feas=False, obj=342]
WARNING - 16:17:35: Optimization found no feasible point; the least infeasible point is selected.
INFO - 16:17:35: 100%|██████████| 100/100 [00:01<00:00, 69.75 it/sec, feas=False, obj=125]
INFO - 16:17:35: Optimization result:
INFO - 16:17:35: Optimizer info:
INFO - 16:17:35: Status: None
INFO - 16:17:35: Message: None
INFO - 16:17:35: Solution:
WARNING - 16:17:35: The solution is not feasible.
INFO - 16:17:35: Objective: 30.3484674529711
INFO - 16:17:35: Standardized constraints:
INFO - 16:17:35: c_1 = -12.474091450044018
INFO - 16:17:35: c_2 = -10.003409829769815
INFO - 16:17:35: Design space:
INFO - 16:17:35: +-------------+-------------+---------------------+-------------+-------+
INFO - 16:17:35: | Name | Lower bound | Value | Upper bound | Type |
INFO - 16:17:35: +-------------+-------------+---------------------+-------------+-------+
INFO - 16:17:35: | x_1 | 0 | 2.740483886137183 | 10 | float |
INFO - 16:17:35: | x_2 | 0 | 0.07091828603166261 | 10 | float |
INFO - 16:17:35: | x_shared[0] | -10 | 2.914417911498957 | 10 | float |
INFO - 16:17:35: | x_shared[1] | 0 | 7.199093835086931 | 10 | float |
INFO - 16:17:35: +-------------+-------------+---------------------+-------------+-------+
INFO - 16:17:35: *** End MDOScenario execution ***
WARNING - 16:17:35: Optimization found no feasible point; the least infeasible point is selected.
WARNING - 16:17:35: Optimization found no feasible point; the least infeasible point is selected.
INFO - 16:17:35: *** Start MDOScenario execution ***
INFO - 16:17:35: MDOScenario
INFO - 16:17:35: Disciplines: Sellar1 Sellar2 SellarSystem
INFO - 16:17:35: MDO formulation: MDF
INFO - 16:17:35: Optimization problem:
INFO - 16:17:35: minimize obj(x_1, x_2, x_shared)
INFO - 16:17:35: with respect to x_1, x_2, x_shared
INFO - 16:17:35: under the equality constraints
INFO - 16:17:35: c_1(x_1, x_2, x_shared) = 0
INFO - 16:17:35: c_2(x_1, x_2, x_shared) = 0
INFO - 16:17:35: over the design space:
INFO - 16:17:35: +-------------+-------------+-------+-------------+-------+
INFO - 16:17:35: | Name | Lower bound | Value | Upper bound | Type |
INFO - 16:17:35: +-------------+-------------+-------+-------------+-------+
INFO - 16:17:35: | x_1 | 0 | 1 | 10 | float |
INFO - 16:17:35: | x_2 | 0 | 1 | 10 | float |
INFO - 16:17:35: | x_shared[0] | -10 | 4 | 10 | float |
INFO - 16:17:35: | x_shared[1] | 0 | 3 | 10 | float |
INFO - 16:17:35: +-------------+-------------+-------+-------------+-------+
INFO - 16:17:35: Solving optimization problem with algorithm MC:
WARNING - 16:17:36: Optimization found no feasible point; the least infeasible point is selected.
INFO - 16:17:36: Optimization result:
INFO - 16:17:36: Optimizer info:
INFO - 16:17:36: Status: None
INFO - 16:17:36: Message: None
INFO - 16:17:36: Solution:
WARNING - 16:17:36: The solution is not feasible.
INFO - 16:17:36: Objective: 30.348468138942017
INFO - 16:17:36: Standardized constraints:
INFO - 16:17:36: c_1 = [-12.47409214]
INFO - 16:17:36: c_2 = [-10.00340912]
INFO - 16:17:36: Design space:
INFO - 16:17:36: +-------------+-------------+---------------------+-------------+-------+
INFO - 16:17:36: | Name | Lower bound | Value | Upper bound | Type |
INFO - 16:17:36: +-------------+-------------+---------------------+-------------+-------+
INFO - 16:17:36: | x_1 | 0 | 2.740483886137183 | 10 | float |
INFO - 16:17:36: | x_2 | 0 | 0.07091828603166261 | 10 | float |
INFO - 16:17:36: | x_shared[0] | -10 | 2.914417911498957 | 10 | float |
INFO - 16:17:36: | x_shared[1] | 0 | 7.199093835086931 | 10 | float |
INFO - 16:17:36: +-------------+-------------+---------------------+-------------+-------+
INFO - 16:17:36: *** End MDOScenario execution ***
WARNING - 16:17:36: Optimization found no feasible point; the least infeasible point is selected.
WARNING - 16:17:36: Optimization found no feasible point; the least infeasible point is selected.
However, the gain is slightly lower (but still represents a significant gain!), which may be counterintuitive and will be the subject of future investigations:
f"{round((time_ref - time) / time_ref * 100)} %"
'66 %'
Total running time of the script: (0 minutes 3.261 seconds)