1

我正在 LINGO 中编写一个线性程序,以使用最少的重量来平衡鼓。我的问题是如何将变量限制为一组值?例如,如果我希望将名为 Weight 的变量限制为值(0、1、2、4、5 或 10),我该如何实现呢?

4

1 回答 1

0

实现这一点的常用方法是在公式中引入几个二元 (0,1)指示变量。

假设这X是一个感兴趣的变量,它可以取离散值 {0,1,2,4,5,10} 引入六个指标变量(Y_0, Y_1, ... Y_10) 我们只希望其中一个Y 取值为 1,其他都为 0。

Y_0 + Y_1 + Y_2 + Y_4 + Y_5 + Y_10 = 1(互斥约束)

现在将指标变量与原始变量联系起来。

X = 0 Y_0 + 1 Y_1 + 2 Y_2 + 4 Y_4 + 5 Y_5 + 10 Y_10 (X 将取适当的值,具体取决于哪个指标变量为 1。)

现在在你的配方的其余部分使用 X。

于 2013-01-29T18:23:47.590 回答