在做线性规划中,常见的方法就是直接的求解,标记出封闭区域,而这个封闭区域如何运用matlab实现,并求其目标值!
例子如下:
%求解线性规划得最优值 %线性规划作图 %min z=-2x1-7x2 % x1+x2=10 % x2<=7 % -6x1+5x2<=30 % x1-x2<=2 % x1,x2>=0
代码如下:
clc
clear
%求解线性规划得最优值
%线性规划作图
%min z=-2x1-7x2
% x1+x2=10
% x2<=7
% -6x1+5x2<=30
% x1-x2<=2
% x1,x2>=0
%工具包:linprog
%时间:2020.12.18
%求解最优值
f=[-2 -7];
A=[0 1;-6 5;1 -1];
b=[7;30;2;];
Aeq=[1 1];beq=[10];
vlb=zeros(2,1);
vub=[];
[x,fval]=linprog(f,A,b,Aeq,beq,vlb,vub);
fprintf('最优结果%f,%f',x)
fprintf('最优值%f',fval)
%做线性规划图
L1=[0,0;0,12];
plot(L1(1,:),L1(2,:)) %画出x1=0这条线
hold on
text(0.1,3.5,'x_1=0','color','b');
L2=[-10 0;10 0
|