麦考密克
(类来自 pyomo.contrib.mcpp.pyomo_mcpp)
- class pyomo.contrib.mcpp.pyomo_mcpp.McCormick(expression, improved_var_bounds=None)[source]
基础类:
object该类从MCPP_Visitor获取构建的表达式,并允许在pyomo表达式上执行MC方法。
__repn__(self): 返回一个MC表达式的显示形式: F: [下区间 : 上区间 ] [凸下估计器 : 凹上估计器 ] [ (凸次梯度) : (凹次梯度]
lower(self): 返回在整个域内有效的下区间边界的浮点数
upper(self): 返回在整个域内有效的上区间边界的浮点数
concave(self): 返回一个浮点数,表示在当前每个变量的value()处的凹上估计器。
convex(self): 返回每个变量当前值()处的凸下估计量的浮点数。
##注意:为了描述整个域上的凹凸松弛,有必要使用changePoint()在不同的点重复计算。
subcc(self): 返回一个ComponentMap(),它将pyomo变量映射到McCormick凹上估计器在当前每个变量的value()处的次梯度。
subcv(self): 返回一个ComponentMap(),它将pyomo变量映射到McCormick凸下估计器在当前每个变量的value()处的次梯度。
def changePoint(self, var, point): 更新pyomo端的当前值()和MC++端的当前点。
方法
__init__(表达式[, 改进的变量边界])changePoint(var, point)concave()convex()lower()subcc()subcv()upper()warn_if_var_missing_value()成员文档