从线性编程中消除冗余方程

时间:2016-02-03 01:02:04

标签: math mathematical-optimization linear-programming linear-equation

我被要求用较少的等式重写这个线性规划问题。

MAX 7X1+5X2

S.t:

4X1+3X2 <= 2400
2X1+0.5X2 <= 750
X1 >= 100
X1,X2 >= 0

我做的是使用单纯形法,我发现最大利润为4030,X1 = 100,X2 = 666。我可以使用它并说出to obtain the maximum profit, X1 has always to be 100, then the third equation is an extra吗?

3 个答案:

答案 0 :(得分:1)

由于我们只考虑一个简单的二维问题,我们可以用图形方式解决这个问题。首先请注意目标函数的梯度是

∇f_obj = (7, 5)

从这一点开始,我们将X1表示您的变量xX2表示y

约束描述下面的多面体(a),目标函数的水平曲线在(b)中给出(更明亮的轮廓:增加的目标函数值)。

enter image description here

最佳值由上方(b)中的红点(x^*, y^*) = (262.5, 450)标记。

很明显,不等式约束4x+3y <= 24002x+0.5y <= 750都是有效的,因为在这两者的交集中给出了最优。

但约束x >= 100X1 >= 100)不是活动的,因此是多余的。

答案 1 :(得分:0)

[1] 2x1 + 0.5x2 ≤ 750  
[2] 2x1 + 0.5x2 ≤ 4500 / 6
[3] 6 * (2x1 + 0.5x2) ≤ 4500
[4] 12x1 + 3x2 ≤ 4500
[5]
    12x1 + 3x2 ≤ 4500
 -   4x1 + 3x2 ≤ 2400
  ---------------------
     8x1 ≤ 2100
[6] x1 ≥ 2100 / 8
[7] x1 ≥ 262,5

步骤[2]中的6表示第一个约束中的3x2在第二个约束中大于0.5x2的次数,简而言之,3x2 / 0.5x2 = 6

因此,可以消除第三个约束x1 >= 100,因为实际上,考虑到第四个约束x1,x2 >= 0,x1必须大于或等于262,5。

答案 2 :(得分:-1)

好的,答案如下: -

X1&gt; = 100.&lt; =&gt; X1-100> = 0  X1 - 100 = y

或X1 = y + 100 在前2个方程中将X1替换为(y + 100)。将非负方程中的X1替换为y,删除第三个等式