DiscreteScenarioSet
(class from pyomo.contrib.pyros.uncertainty_sets
)
- class pyomo.contrib.pyros.uncertainty_sets.DiscreteScenarioSet(scenarios)[source]
Bases:
UncertaintySet
A discrete set of finitely many uncertain parameter realizations (or scenarios).
- Parameters:
scenarios ((M, N) array_like) – A sequence of M distinct uncertain parameter realizations.
Examples
2D set with three scenarios:
>>> from pyomo.contrib.pyros import DiscreteScenarioSet >>> discrete_set = DiscreteScenarioSet( ... scenarios=[[1, 1], [2, 1], [1, 2]], ... ) >>> discrete_set.scenarios [(1, 1), (2, 1), (1, 2)]
Methods
__init__
(scenarios)Initialize self (see class docstring).
Compute auxiliary uncertain parameter values for a given point.
is_bounded
(config)Return True if the uncertainty set is bounded, and False otherwise.
is_nonempty
(config)Return True if the uncertainty set is nonempty, else False.
is_valid
(config)Return True if the uncertainty set is bounded and non-empty, else False.
point_in_set
(point)Determine whether a given point lies in the discrete scenario set.
set_as_constraint
([uncertain_params, block])Construct a block of Pyomo constraint(s) defining the uncertainty set on variables representing the uncertain parameters, for use in a two-stage robust optimization problem or subproblem (such as a PyROS separation subproblem).
Attributes
Dimension N of the discrete scenario set.
Geometry of the discrete scenario set.
Bounds in each dimension of the discrete scenario set.
Uncertain parameter realizations comprising the set.
Brief description of the type of the uncertainty set.
Member Documentation
- compute_auxiliary_uncertain_param_vals(point, solver=None)
Compute auxiliary uncertain parameter values for a given point. The point need not be in the uncertainty set.
- Parameters:
point ((N,) array-like) – Point of interest.
solver (Pyomo solver, optional) – If needed, a Pyomo solver with which to compute the auxiliary values.
- Returns:
aux_space_pt – Computed auxiliary uncertain parameter values.
- Return type:
- is_bounded(config)[source]
Return True if the uncertainty set is bounded, and False otherwise.
By default, the discrete scenario set is bounded, as the entries of all uncertain parameter scenarios are finite.
- is_nonempty(config)
Return True if the uncertainty set is nonempty, else False.
- is_valid(config)
Return True if the uncertainty set is bounded and non-empty, else False.
- point_in_set(point)[source]
Determine whether a given point lies in the discrete scenario set.
- Parameters:
point ((N,) array-like) – Point (parameter value) of interest.
- Returns:
True if the point lies in the set, False otherwise.
- Return type:
- set_as_constraint(uncertain_params=None, block=None)[source]
Construct a block of Pyomo constraint(s) defining the uncertainty set on variables representing the uncertain parameters, for use in a two-stage robust optimization problem or subproblem (such as a PyROS separation subproblem).
- Parameters:
uncertain_params (None, Var, or list of Var, optional) – Variable objects representing the (main) uncertain parameters. If None is passed, then new variable objects are constructed.
block (BlockData or None, optional) – Block on which to declare the constraints and any new variable objects. If None is passed, then a new block is constructed.
- Returns:
A collection of the components added or addressed.
- Return type:
- property geometry
Geometry of the discrete scenario set. See the Geometry class documentation.
- property parameter_bounds
Bounds in each dimension of the discrete scenario set.
- Returns:
List, length N, of 2-tuples. Each tuple specifies the bounds in its corresponding dimension.
- Return type:
list of tuples