pyomo创建约束

使用pyomo创建约束

创建约束

Constraint 用法

This modeling component defines a constraint expression using a rule function.
Constructor arguments: 
expr:
	A Pyomo expression for this constraint
rule:
	A function that is used to construct constraint expressions
name:
   A name for this component
doc:
   A text string describing this component

创建约束

实际创建过过程中,expr和rule貌似没有什么区别

# 方式1
model.cons1 = Constraint(range(5),expr=lambda model,h:model.x[h]<=model.y[h])
# 方式2
cons2 = Constraint(range(5),expr=lambda model,h:model.x[h]<=model.y[h])
model.__setattr__("cons2",cons2)
# 方式3
def definitionexprs(model,h):
    return model.x[h]<=model.y[h]
model.cons3 = Constraint(range(5),expr=definitionexprs)
# 方式4
model.cons = ConstraintList()
for i in range(5):
    model.cons.add(model.x[i]>=model.y[i])

跳过约束创建

Constraint.Skip

def definitionexprs(model,h):
    if h%2: 
        return model.x[h]<=model.y[h]
    return Constraint.Skip

变量点积和 sum_product

A utility function to compute a generalized dot product.
This function accepts one or more components that provide terms that are multiplied together. 
 These products are added  together to form a sum.
Args:
    *args: Variable length argument list of generators that create terms in the summation.
    **kwds: Arbitrary keyword arguments.
expr=sum_product(model.x,model.y)

  • 6
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hengley

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值