matlab线性规划--简单入门

本文介绍了线性规划的基本概念,包括其定义和MATLAB中的标准形式,展示了如何使用linprog函数解决实际问题,并通过两个具体例题演示了线性规划的求解过程。最后,分享了优质资料链接以帮助读者深化理解。

线性规划


1.线性规划问题


在一组线性约束条件的限制下,求一线性目标函数最大或者最小的问题。


2.线性规划的Matlab标准形式及问题求解


在这里插入图片描述
式中:f,x,b,beq,lb,ub为列向量,其中 f 称为价值向量,b称为资源向量, A,Aeq为矩阵。
MATLAB中求解线性规划的命令为:

[x,fval]=linprog(f,A,b)
[x,fval]=linprog(f,A,b,Aeq,beq)
[x,fval]=linprog(f,A,b,Aeq,beq,lb,ub)
[x,fval]=linprog(f,A,b,Aeq,beq,lb,ub,x0,OPTIONS)
[x,fval]=linprog(----)
[x,fval,exitflag,output]=linprog(----)
[x,fval,exitflag,output,lambda]=linprog(----)
式中:x返回决策向量的取值,即最优值;
fval返回目标函数的最优值;
Ab对应线性不等式约束;
Aeqbeq对应线性等式约束;
lbub分别对应决策向量的下界向量和上界向量;
x0x的初始值;OPTIONS是控制参数,为指定参数进行最小化;
exitflag表示收敛数;output表示迭代次数;在这里插入图片描述


3.线性规划例题


例1:求解下列线性规划问题。
在这里插入图片描述
解:(1)化成matlab标准型,即:
在这里插入图片描述
(2)求解的matlab程序如下:

f=[-2;-3;5];
a=[-2,5,-1;1,3,1];
b=[-10;12];
aeq=[1,1,1];
beq=7;
[x,y]=linprog(f,a,b,aeq,beq,zeros(3,1));
x
y=-y

程序运行结果:
在这里插入图片描述
求得的最优解为x1=6.4286,x2=0.5714,x3=0,对应的最优值为z=14.5714


例2:求解下列线性规划问题:
在这里插入图片描述
解:编写matlab程序如下:

c=[2;3;1];
a=[1,4,2;3,2,0];
b=[8;6]
[x,y]=linprog(c,-a,-b,[],[],zeros(3,1))
%这里没有等式约束,对应的矩阵为空矩阵

程序运行结果:
在这里插入图片描述
求得的最优解为x1=2,x2=0,x3=3,对应的最优值为z=7


优质资料分享:数学建模优化建模实例
https://wenku.baidu.com/view/c9bbe914b8d528ea81c758f5f61fb7360a4c2bd1.html

评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值