线性编程:如果数组中的值超过特定阈值,如何将决策变量(二进制)设置为1

我有一个数组,其中包含一个根据决策变量表示的线性表达式。假设决策变量采用的值使得数组= [1.7,0.3,0]。现在我想要的是以下内容:

1)如果上述数组中的任何值> 0.5,则决策变量y1(二进制)= 1,否则为0。    所以y1应该变成[1、0、0]

2)如果上述数组中的任何一个值> 0.5,则决策变量:y2(实值)=    值,否则为0。因此y2 = [1.7,0,0]

3)如果数组中的任何值> 0且

我知道大的M公式可以提供帮助,但是我正在努力寻找方法。 以上三点的建议可以帮助我吗?我正在为pyomo和gurobi编写问题程序。

zhangwyw 回答:线性编程:如果数组中的值超过特定阈值,如何将决策变量(二进制)设置为1

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3014772.html

大家都在问