添加ECP切割
(函数来自 pyomo.contrib.mindtpy.cut_generation)
- pyomo.contrib.mindtpy.cut_generation.add_ecp_cuts(target_model, jacobians, config, timing, linearize_active=True, linearize_violated=True)[source]
将非线性约束线性化。为ECP方法添加切割。
- Parameters:
target_model (Pyomo 模型) – 松弛的线性模型。
雅可比矩阵 (ComponentMap) – 映射非线性约束 –> 映射(变量 –> 约束相对于变量的雅可比矩阵)
config (ConfigBlock) – MindtPy 的具体配置。
timing (Timing) – 时间。
linearize_active (bool, optional) – 是否线性化活动的非线性约束,默认为 True。
linearize_violated (bool, optional) – 是否线性化违反的非线性约束,默认为 True。