利用Matlab求解线性规划问题_第1页
利用Matlab求解线性规划问题_第2页
利用Matlab求解线性规划问题_第3页
利用Matlab求解线性规划问题_第4页
利用Matlab求解线性规划问题_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、利用Matlab求解线性规划问题一、 若应用单纯形法求解首先将线性规划的一般形式化为标准形式1、 若为max f(x),则化为- max f(x)2、将不等式约束变为等式约束3、将任意变量化为非负变量(即x1、x2.xn=0)4、将负的限定系数化为正值(Ax=b,若b为负,则等式两边都同时乘以-1)使用单纯形法求解线性规划时,首先要化问题为标准形式所谓标准形式是指下列形式:当实际模型非标准形式时,则需化为标准形式例1、用单纯形法求解下面的线性规划问题minf(x)=-4x1-x2-x1+2x242x1+3x212x1-x23x1,x20解:用M函数文件形式求解A=-1 2 1 0 0;2 3

2、0 1 0;1 -1 0 0 1;c=-4 -1 0 0 0;b=4;12;3;x,mf=SimpleMthd0(A,c,b,3 4 5)M函数文件运行得结果如下:x = 4.2000 1.2000mf =-18.0000例2、用单纯形法求解下面的线性规划问题maxf(x)=7x1+14x29x1+4x23604x1+5x22003x1+10x2300x1,x20解:用M函数文件形式求解A=9 4 1 0 0;3 10 0 1 0;4 5 0 0 1;c=-7 -14 0 0 0;b=360;300;200;x,mf=SimpleMthd0(A,c,b,3 4 5)输出的结果为:x =20.0

3、000 24.0000mf =-476.0000例3、用单纯形法求解下面的线性规划问题minf(x)=-1.1x1-2.2x2+3.3x3-4.4x4x1+x2+x3=44x1+5x2+2.5x3+3x4=5x1,x2,x3,x40解:用M函数文件形式求解A=1 1 1 0;1 2 2.5 3;c=-1.1 -2.2 3.3 -4.4;b=4;5;x,mf=SimpleMthd0(A,c,b,3 4 )输出结果为:x = 4.0000 0 0 0.3333mf = -5.8667解:用M函数文件形式求解A=2 1 1 1 0 0;1 2 3 0 1 0;2 2 1 0 0 1;c=-3 -1

4、-2 0 0 0;b=20;50;60;x,mf=SimpleMthd0(A,c,b,3 4 5)输出结果为:x =0 0 60mf =-120二、 若使用matlab自身工具箱线性规划是一种优化方法,Matlab优化工具箱中有现成函数linprog.min f(x) s.t . (约束条件): Ax=b(等式约束条件): Aeqx=beqlb=x=ublinprog函数的调用格式如下:格式1、x,fval=linprog(f,A,b)功能是求线性规划min f(x);约束条件是:Ax=b。格式2、x,fval=linprog(f,A,b,Aeq,beq)功能是求线性规划min f(x);约束

5、条件是:Ax=b,但增加等式约束条件Aeq*x=Beq;若不存在不等式约束,则令A=,b=。格式3、x,fval=linprog(f,A,b,Aeq,beq,lb,ub)功能是求线性规划min f(x);约束条件是: Ax=b和Aeq*x=Beq,并定义x的下界lb和上界ub,使x始终在该范围内;若不等式不存在,则令Aeq=,Beq=。格式4、x,fval=linprog(f,A,b,Aeq,beq,lb,ub,x0)功能是求线性规划min f(x);约束条件是:Ax=b和Aeq*x=Beq, 并定义x的下界lb和上界ub,设置初值为x0。格式5、x,fval=linprog(f,A,b,Ae

6、q,beq,lb,ub,x0,options)功能是求线性规划min f(x);约束条件是:Ax=b和Aeq*x=Beq, 并定义x的下界lb和上界ub,设置初值为x0,用options指定得优化参数进行最小化。格式6、x,fval=linprog()功能是求线性规划min f(x),仅输出解x的值,不输出目标函数值。其中:x=linprog(f,A,b)返回值x为最优解向量。x=linprog(f,A,b,Aeq,beq) 作有等式约束的问题。若没有不等式约束,则令A= 、b= 。x=linprog(f,A,b,Aeq,beq,lb,ub,x0,options) 中lb ,ub为变量x的下界和上界,x0为初值点,options为指定优化参数进行最小化。Options的参数描述:Display显示水平。 选择off 不显示输出;选择Iter显示每一 步迭代过程的输出;选择final 显示最终结果。x,fval=linprog() 左端 fval 返回解x处的目标函数值。例、用linprog函数求解下面线性规划问题minf(x)=-2x1-x2+3x3-5x4x1+2x2+4x3-x462x1+3x2-x3+x412x1+x3+x44x1,x2,x3,x40解:MATLAB求解程序为f=-2,-1,3,-5;A=1,2,4,-1;2,3,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论