数学建模讲座之四利用Matlab求解线性规划问题课件_第1页
数学建模讲座之四利用Matlab求解线性规划问题课件_第2页
数学建模讲座之四利用Matlab求解线性规划问题课件_第3页
数学建模讲座之四利用Matlab求解线性规划问题课件_第4页
数学建模讲座之四利用Matlab求解线性规划问题课件_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

1、利用Matlab求解线性规划问题 利用Matlab求解线性规划问题 线性规划是一种优化方法,Matlab优化工具箱中有现成函数linprog对如下式描述的LP问题求解: min f(x) s.t .(约束条件): Ax=b (等式约束条件): Aeqx=beq lb=x=ub线性规划是一种优化方法,Matlab优化工具箱中有现成函数llinprog函数的调用格式如下:x=linprog(f,A,b)x=linprog(f,A,b,Aeq,beq)x=linprog(f,A,b,Aeq,beq,lb,ub)x=linprog(f,A,b,Aeq,beq,lb,ub,x0)x=linprog(f,

2、A,b,Aeq,beq,lb,ub,x0,options)x,fval=linprog()x, fval, exitflag=linprog()x, fval, exitflag, output=linprog()x, fval, exitflag, output, lambda=linprog() linprog函数的调用格式如下:其中: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 ,u

3、b为变量x的下界和上界,x0为初值点,options为指定优化参数进行最小化。 其中:Options的参数描述:Display显示水平。 选择off 不显示输出;选择Iter显示每一 步迭代过程的输出;选择final 显示最终结果。Options的参数描述:Display显示水平。 选择x,fval=linprog() 左端 fval 返回解x处的目标函数值。x,fval=linprog() 左端 fval 返回x,fval,exitflag,output,lambda=linprog(f,A,b, Aeq,beq,lb,ub,x0) 的输出部分:exitflag 描述函数计算的退出条件:若为

4、正值,表示目标函数收敛于解x处;若为负值,表示目标函数不收敛;若为零值,表示已经达到函数评价或迭代的最大次数。output 返回优化信息:output.iterations表示迭代次数;output.algorithm表示所采用的算法;outprt.funcCount表示函数评价次数。lambda 返回x处的拉格朗日乘子。它有以下属性:lambda.lower-lambda的下界;lambda.upper-lambda的上界;lambda.ineqlin-lambda的线性不等式;lambda.eqlin-lambda的线性等式。x,fval,exitflag,output,lambda下面通

5、过具体的例子来说明:例如:某农场I、II、III等耕地的面积分别为100 hm2、300 hm2和200 hm2,计划种植水稻、大豆和玉米,要求三种作物的最低收获量分别为190000kg、130000kg和350000kg。I、II、III等耕地种植三种作物的单产如表5.1.4所示。若三种作物的售价分别为水稻1.20元/kg,大豆1.50元/kg,玉米0.80元/kg。那么,(1)如何制订种植计划,才能使总产量最大?(2)如何制订种植计划,才能使总产值最大?下面通过具体的例子来说明:表1不同等级耕地种植不同作物的单产(单位:kg / hm2)I等耕地II等耕地III等耕地水稻11 0009 5

6、009 000大豆8 0006 8006 000玉米14 00012 00010 000表1不同等级耕地种植不同作物的单产(单位:kg / hm2)首先根据题意建立线性规划模型(决策变量设置如表2所示,表中xij 表示第种作物在第j等级的耕地上的种植面积。):表2 作物计划种植面积(单位:hm2)I等耕地II等耕地III等耕地水稻x11x12x13大豆x22x21x23玉米x31x32x33首先根据题意建立线性规划模型(决策变量设置如表2所示,表中x约束方程如下: 耕地面积约束:最低收获量约束: 约束方程如下:非负约束: 非负约束: (1)追求总产量最大,目标函数为:(1)追求总产量最大,目标

7、函数为:(2)追求总产值最大,目标函数为:(2)追求总产值最大,目标函数为:根据求解函数linprog中的参数含义,列出系数矩阵,目标函数系数矩阵,以及约束条件等。这些参数中没有的设为空。譬如,根据求解函数linprog中的参数含义,列出系数矩阵,目标函(1)当追求总产量最大时,只要将参数f=-11000 9500 9000 8000 6800 6000 14000 12000 -10000;A=1.0000 0.0000 0.0000 1.0000 0.0000 0.0000 1.0000 0.0000 0.0000; 0.0000 1.0000 0.0000 0.0000 1.0000 0

8、.0000 0.0000 1.0000 0.0000; 0.0000 0.0000 1.0000 0.0000 0.0000 1.0000 0.0000 0.0000 1.0000; -11000.0000 0.0000 0.0000 -9500.0000 0.0000 0.0000 -9000.0000 0.0000 0.0000; 0.0000 -8000.0000 0.0000 0.0000 -6800.0000 0.0000 0.0000 -6000.0000 0.0000; 0.0000 0.0000 -14000.0000 0.0000 0.0000 -12000.0000 0.0

9、000 0.0000 -10000.0000;b=100 300 200 -190000 -130000 -350000;lb=0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 ; 代入求解函数 ,即可求得结果。(1)当追求总产量最大时,只要将参数(2)当追求总产值最大时,将参数f=-13200 11400 10800 12000 10200 9000 11200 9600 -8000;A=1.0000 0.0000 0.0000 1.0000 0.0000 0.0000 1.0000 0.0000 0.0000; 0

10、.0000 1.0000 0.0000 0.0000 1.0000 0.0000 0.0000 1.0000 0.0000; 0.0000 0.0000 1.0000 0.0000 0.0000 1.0000 0.0000 0.0000 1.0000; -11000.0000 0.0000 0.0000 -9500.0000 0.0000 0.0000 -9000.0000 0.0000 0.0000; 0.0000 -8000.0000 0.0000 0.0000 -6800.0000 0.0000 0.0000 -6000.0000 0.0000; 0.0000 0.0000 -14000.0000 0.0000 0.0000 -12000.0000 0.0000 0.0000 -10000.0000;b=100 300 200 -190000 -130000 -350000;lb=0.0000 0.0000 0.0000 0.000

温馨提示

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

评论

0/150

提交评论