gemseo_box_subdivision.disciplines.scenario_adapters.box_start#
A scenario adapter starting the sub-problem inside its box.
Functions
|
Return a scenario adapter starting the sub-problem at the center of its box. |
- gemseo_box_subdivision.disciplines.scenario_adapters.box_start.create_box_start_adapter_class(subdivision, one_hot_names=mappingproxy({}))[source]#
Return a scenario adapter starting the sub-problem at the center of its box.
The sub-problem of a box is solved by a local algorithm, hence its starting point decides which local minimum of the box it converges to.
The adapters of GEMSEO offer two policies, neither of which suits a box subdivision:
reset_x0_before_optrestarts every sub-problem from the initial value of the design space, which lies outside of all the boxes but one, so that most sub-problems start infeasible; and warm-starting from the previous sub-problem makes the result depend on the order in which the boxes are visited. Setting the starting point from the adapter inputs is not an option either, since the main problem only decides the box, not the design variables.The adapter returned here starts each sub-problem at the center of the box selected by the main problem, which is feasible by construction and independent of the order of the boxes.
- Parameters:
subdivision (BoxSubdivision) – The Cartesian subdivision of the design space.
one_hot_names (Mapping[str, str]) – The name of the one-hot variable of each subdivided variable. If empty, suffix the design variable names with
BoxSubdivision.ONE_HOT_SUFFIX.
- Returns:
The scenario adapter class, to be passed to the
Bendersformulation through itsscenario_adapter_clssetting.- Return type:
type[MDOScenarioAdapterBenders]