MATLAB 中的线性规划最大化代码

Linear programming maximization code in MATLAB

如何求解同时包含<=>=方程的线性规划最大化问题?

举个例子:

最大化:

z = c1x1 + c2x2 + c3x3

受制于:

a1x1 + a2x2 + a3x3 <= b1
a4x1 + a5x2 + a6x3 <= b2
x1 >= d1
x2 >= d2
x3 >= d3

其中 a1, a2, a3, a4, a5, a6, b1, b2, b3, c1, c2, c3 是给定方程式中的常数。

解决这个问题的正确 Matlab 代码是什么?

就是这样:

    z = -[c1 ; c2 ; c3];

    A = [ a1 a2 a3 ; 
          a4 a5 a6]; 

    b=[b1;
       b2];

    Aeq= [ ]; beq= [ ];

    LB = [d1 ; d2 ; d3]; 

    UB = [1 ; 1 ; 1]* inf; % Any relax number

    x = linprog(z, A, b, Aeq, beq, LB, UB)