matlab线性规划 您所在的位置:网站首页 matlab怎么求二次线性规划 matlab线性规划

matlab线性规划

2024-07-15 20:52| 来源: 网络整理| 查看: 265

线性规划 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返回目标函数的最优值; A和b对应线性不等式约束; Aeq和beq对应线性等式约束; lb和ub分别对应决策向量的下界向量和上界向量; x0是x的初始值;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



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有