Obtain separation problem solution for each scenario
of the uncertainty set not already added to the most
recent master problem.
- Parameters:
separation_data (SeparationProblemData) – Separation problem data.
master_data (MasterProblemData) – Master problem data.
solver (solver type) – Primary subordinate optimizer with which to solve
the model.
solve_globally (bool) – Is separation problem to be solved globally.
ss_ineq_con_to_maximize (Constraint) – Second-stage inequality constraint for which to solve separation
problem.
ss_ineq_cons_to_evaluate (list of Constraint) – Secnod-stage inequality constraints whose expressions are to be
evaluated at the each of separation problem solutions
obtained.
- Returns:
discrete_separation_results – Separation solver call results on second-stage inequality constraint
of interest for every scenario considered.
- Return type:
DiscreteSeparationSolveCallResults
Notes
Since we assume that models passed to PyROS are such that the DOF
variables and uncertain parameter values uniquely define the state
variables, this method need be only be invoked once per separation
loop. Subject to our assumption, the choice of objective
(ss_ineq_con_to_maximize
) should not affect the solutions returned
beyond subsolver tolerances.
For other second-stage inequality constraints, the
optimal separation problem solution can then be evaluated by simple
enumeration of the solutions returned by this function, since for
discrete uncertainty sets, the number of feasible separation
solutions is, under our assumption, merely equal to the number
of scenarios in the uncertainty set.