我希望设计变量在优化过程中只假设指定的值。
例如:设x是一个只能假设特定值的变量,例如:
x = [0.1,0.5,1.0,1.7,2.3]
如何使用pyomo编写python(如果可能的话)?
我希望我说清楚了。
你必须对整数变量这样做。例如,如果存在x
的N
可能值,那么让x[n]=1
如果x
等于n
第1个可能值,否则0
。每当您在原始模型中有一个x
时,请将其替换为
sum {n=1,...,N} v[n] * x[n]
其中v[n]
是第n个可能的值。最后,添加一个约束,表示:
sum {n=1,...,N} x[n] == 1
我不是用Pyomo语法写这些,但这是一种通用的建模方法,无论您使用什么建模语言/包,它都是相同的。