可以使用 Matlab 中的线性规划函数 linprog 来求解该问题。

首先将目标函数和约束条件转化为标准形式:

minimize:f = [2 -2; -2 2] * [x1; x2] + [-4; -6]

subject to:A = [-1 -1; -1 -5; -1 0; 0 -1]; b = [-2; -5; 0; 0];

lb = [0; 0]; ub = []; (表示 x1x2 的下限为 0,上限为无穷大)

然后调用 linprog 函数:

[x, fval] = linprog(f, [], [], A, b, lb, ub);

其中,x 为最优解,fval 为最优目标函数值。

完整代码如下:

f = [2 -2; -2 2]; % 目标函数系数矩阵
c = [-4; -6]; % 目标函数常数矩阵

% 约束条件系数矩阵和常数矩阵
A = [-1 -1; -1 -5; -1 0; 0 -1];
b = [-2; -5; 0; 0];

% 变量下限和上限
lb = [0; 0];
ub = [];

% 调用 linprog 函数求解
[x, fval] = linprog(f, [], [], A, b, lb, ub);

% 输出结果
disp('最优解为:');
disp(x);
disp('最优目标函数值为:');
disp(fval);

原文地址: https://www.cveoy.top/t/topic/nRte 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录