不确定性集合
(类来自 pyomo.contrib.pyros.uncertainty_sets)
- class pyomo.contrib.pyros.uncertainty_sets.UncertaintySet[源代码]
基础类:
object一个表示不确定性集的对象,将传递给PyROS求解器。
一个UncertaintySet对象应被视为仅用于参数化其所代表集合所需数据的容器, 因此该对象的属性不引用Pyomo建模对象的组件。
- __init__()
方法
__init__()计算给定点的辅助不确定参数值。
is_bounded(config)确定不确定性集合是否有界。
is_nonempty(config)如果不确定性集合非空,则返回True,否则返回False。
is_valid(config)如果不确定性集合是有界且非空的,则返回True,否则返回False。
point_in_set(point)确定给定点是否位于不确定性集合中。
set_as_constraint([uncertain_params, block])构建一个Pyomo约束块,定义表示不确定参数的变量的不确定性集,用于两阶段鲁棒优化问题或子问题(如PyROS分离子问题)。
属性
不确定性集合的维度(对应感兴趣的优化模型中的不确定参数数量)。
不确定性集合的几何形状。
由集合约束的每个不确定参数值的边界(即每个集合维度的边界)。
成员文档
- compute_auxiliary_uncertain_param_vals(point, solver=None)[source]
计算给定点的辅助不确定参数值。 该点不需要位于不确定集合中。
- Parameters:
point ((N,) array-like) – 兴趣点。
solver (Pyomo solver, optional) – 如果需要,可以使用一个Pyomo求解器来计算辅助值。
- Returns:
aux_space_pt – 计算出的辅助不确定参数值。
- Return type:
- is_bounded(config)[source]
确定不确定性集合是否有界。
- Parameters:
config (ConfigDict) – PyROS 求解器配置。
- Returns:
如果不确定性集合被证明是有界的,则为True,否则为False。
- Return type:
注释
此检查通过解决一系列最大化和最小化问题来执行(其中每个问题的目标是一个不确定参数的值)。如果任何优化模型无法成功解决到最优,则返回False。
此方法在PyROS求解器调用的验证步骤期间被调用。
- point_in_set(point)[source]
确定给定点是否位于不确定性集合中。
- Parameters:
point ((N,) array-like) – 感兴趣的点(参数值)。
- Returns:
is_in_set – 如果点位于不确定性集合中,则为True,否则为False。
- Return type:
注释
此方法在PyROS求解器调用开始时被调用,以确定用户指定的名义参数实现是否位于不确定性集合中。
- abstract set_as_constraint(uncertain_params=None, block=None)[source]
构建一个Pyomo约束块,定义表示不确定参数的变量的不确定性集,用于两阶段鲁棒优化问题或子问题(如PyROS分离子问题)。
- Parameters:
- Returns:
添加或处理的组件集合。
- Return type:
- abstract property dim
不确定性集合的维度(对应优化模型中不确定参数的数量)。
- abstract property geometry
不确定性集合的几何形状。请参阅Geometry类的文档。
- abstract property parameter_bounds
由集合约束的每个不确定参数值的边界(即每个集合维度的边界)。