obbt_分析

(函数来自 pyomo.contrib.alternative_solutions.obbt)

pyomo.contrib.alternative_solutions.obbt.obbt_analysis(model, *, variables=None, rel_opt_gap=None, abs_opt_gap=None, refine_discrete_bounds=False, warmstart=True, solver='gurobi', solver_options={}, tee=False)[source]

通过解决一系列最小和最大优化问题来计算每个变量的边界,其中每个变量被用作目标函数。这可以应用于所选求解器支持的任何问题类别。

Parameters:
  • model (ConcreteModel) – 一个具体的Pyomo模型。

  • 变量 (一组 Pyomo _GeneralVarData 变量) – 将为其生成边界的变量。无表示 将包括所有变量。或者,可以提供一组 _GenereralVarData 变量。

  • rel_opt_gap (floatNone) – 原始目标的相对最优性差距,将为其找到变量边界。None 表示不会将相对差距约束添加到模型中。

  • abs_opt_gap (floatNone) – 原始目标的绝对最优性差距,将为其找到变量边界。None 表示不会向模型添加绝对差距约束。

  • refine_discrete_bounds (boolean) – 布尔值,表示在每次迭代中应向模型添加新的约束,以收紧离散变量的边界。

  • warmstart (boolean) – 布尔值,表示求解器应从之前发现的最佳解决方案进行热启动。

  • solver (string) – 要使用的求解器。

  • solver_options (dict) – 传递给求解器的选项-值对。

  • tee (boolean) – 布尔值,指示是否应显示求解器输出。

Returns:

一个包含每个变量边界的Pyomo ComponentMap。 {variable: (lower_bound, upper_bound)}。当求解器遇到问题时,会引发异常。

Return type:

变量范围