工程数学上机实验(五)
(1)
代码:
% 定义系数矩阵 A,右侧向量 b,目标函数系数向量 c
A = [450 600 900; 35 25 30; 350 400 300];
b = [63000; 3300; 33000];
c = [-1500; -1200; -1800];
% 定义非负约束
lb = zeros(3, 1);
% 使用 linprog 函数求解线性规划问题
[x, fval] = linprog(c, A, b, [], [], lb);
% 显示最优解 x 和对应的最优值 fval
disp('最优解 x:');
disp(x);
disp('最优值 fval:');
disp(-fval); % 注意最优值为目标函数的相反数
运行结果:
(2)
代码:
% 定义矩阵 A 和向量 b
A = [1 2 -1; -1 1 -1];
b = [4; 2];
% 定义二次规划问题的系数矩阵和常数向量
H =2* eye(3);
f = zeros(3, 1);
Aeq = A;
beq = b;
% 定义变量的边界条件(无边界条件)
lb = [];
ub = [];
% 使用quadprog函数求解二次规划问题
[x, fval] = quadprog(H, f, [], [], Aeq, beq, lb, ub);
% 打印最优解和最优值
disp("最优解 x = ");
disp(x);
disp("最优值 fval = ");
disp(fval);
运行结果: