多重BigM转换

(类来自 pyomo.gdp.plugins.multiple_bigm)

class pyomo.gdp.plugins.multiple_bigm.MultipleBigMTransformation[source]

基础类:GDP_to_MIP_Transformation, _BigM_MixIn

实现了来自[1]的多重大M变换。请注意,这种变换与两项析取的大M变换并无不同,但对于包含三项或更多项析取的模型,它可能提供更紧密的松弛。

[1] Francisco Trespalaios and Ignacio E. Grossmann, “Improved Big-M

广义析取程序的重新表述,”计算机与化学工程,卷76,2015年,第98-103页。

__init__()[source]

初始化转换对象。

方法

__init__()

初始化转换对象。

apply(model, **kwds)

已弃用。

apply_to(model, **kwds)

将转换应用于给定的模型。

create_using(model, **kwds)

使用此转换创建一个新模型

get_all_M_values(model)

返回一个字典,将每个约束、分离对(其中约束位于一个分离上,且该分离与另一个分离位于同一个分离中)映射到一个元组:(lower_M_value, upper_M_value),如果约束没有下限或上限(分别对应),则其中任何一个都可以为None。

get_src_constraint()

返回其转换后的对应项为transformedConstraint的原始Constraint

get_src_constraints(transformedConstraint)

返回原始约束,其转换后的对应项是transformedConstraint

get_src_disjunct()

返回其转换后的组件位于transBlock上的Disjunct对象。

get_src_disjunction()

返回与xor_constraint对应的Disjunction

get_transformed_constraints()

返回srcConstraint的转换版本

属性

CONFIG

transformation_name

成员文档

apply(model, **kwds)

已弃用。

自版本4.3.11323起已弃用:Transformation.apply() 已被弃用。请使用 Transformation.apply_to() 进行原地转换,或使用 Transformation.create_using() 创建新的独立转换模型实例。

apply_to(model, **kwds)

将转换应用于给定的模型。

create_using(model, **kwds)

使用此转换创建一个新模型

get_all_M_values(model)[source]

返回一个字典,将每个约束、分离对(其中约束位于一个分离上,且该分离与另一个分离处于同一分离中)映射到一个元组:(lower_M_value, upper_M_value),如果约束没有下限或上限(分别对应),则其中任何一个都可以为None。

Parameters:

model (一个经过多重BigM转换的GDP模型)

get_src_constraint()

返回其转换后的对应项为transformedConstraint的原始Constraint

Parameters:
  • transformedConstraint (Constraint, 必须是其中一个组件)

  • (在relaxedDisjuncts块中的BlockDatas)

  • block (一种转换)

get_src_constraints(transformedConstraint)[source]

返回原始约束,其转换后的对应项是transformedConstraint

Parameters:
  • transformedConstraint (Constraint, 必须是其中一个组件)

  • (在relaxedDisjuncts块中的BlockDatas)

  • block (一种转换)

get_src_disjunct()

返回转换后的组件位于transBlock上的Disjunct对象。

Parameters:

transBlock (BlockData 位于 relaxedDisjuncts IndexedBlock 中) – 在转换块上。

get_src_disjunction()

返回与xor_constraint对应的Disjunction

Parameters:

xor_constraint (Constraint, 必须是逻辑约束) – (位于转换块上)的某个 Disjunction

get_transformed_constraints()

返回srcConstraint的转换版本

Parameters: