数学软件求解线性规划数学建模论文PPT课件_第1页
数学软件求解线性规划数学建模论文PPT课件_第2页
数学软件求解线性规划数学建模论文PPT课件_第3页
数学软件求解线性规划数学建模论文PPT课件_第4页
数学软件求解线性规划数学建模论文PPT课件_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

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

文档简介

1、实验目的实验目的实验内容实验内容2. 掌握用数学软件包求解线性规划问题掌握用数学软件包求解线性规划问题.1. 了解线性规划的基本内容了解线性规划的基本内容.2. 用数学软件包用数学软件包MATLAB求解线性规划问题求解线性规划问题.5. 实验作业实验作业. .3. 用数学软件包用数学软件包LINDO、LINGO求解线性规划问题求解线性规划问题.1. 两个引例两个引例.4. 建模案例:投资的收益与风险建模案例:投资的收益与风险.第1页/共45页问题一问题一 : 任务分配问题:某车间有甲、乙两台机床,可用于加工三种工件.假定这两台车床的可用台时数分别为800和900,三种工件的数量分别为400、6

2、00和500,且已知用三种不同车床加工单位数量不同工件所需的台时数和加工费用如下表.问怎样分配车床的加工任务,才能既满足加工工件的要求,又使加工费用最低? 单位工件所需加工台时数 单位工件的加工费用 车床类 型 工件1 工件2 工件3 工件1 工件2 工件3 可用台时数 甲 0.4 1.1 1.0 13 9 10 800 乙 0.5 1.2 1.3 11 12 8 900 两个引例第2页/共45页解解 设在甲车床上加工工件1、2、3的数量分别为x1、x2、x3,在乙车床上加工工件1、2、3的数量分别为x4、x5、x6,可建立以下线性规划模型: 解答第3页/共45页问题二:问题二: 某厂每日8小

3、时的产量不低于1800件.为了进行质量控制,计划聘请两种不同水平的检验员.一级检验员的标准为:速度25件/小时,正确率98%,计时工资4元/小时;二级检验员的标准为:速度15件/小时,正确率95%,计时工资3元/小时.检验员每错检一次,工厂要损失2元.为使总检验费用最省,该工厂应聘一级、二级检验员各几名?解解 设需要一级和二级检验员的人数分别为x1、x2人,则应付检验员的工资为:212124323848xxxx因检验员错检而造成的损失为:21211282)%5158%2258(xxxx第4页/共45页故目标函数为:故目标函数为:2121213640)128()2432(minxxxxxxz约束

4、条件为:0, 0180015818002581800158258212121xxxxxx第5页/共45页线性规划模型:线性规划模型:213640minxxz12121253459s.t. 150,0 xxxxxx 解答返 回第6页/共45页线性规划模型的一般形式线性规划模型的一般形式11min,1,2,., .s.t.0,1,2,., .ni iinik kikiucxa xb inxin 目标函数和所有的约束条件都是设计变量目标函数和所有的约束条件都是设计变量的线性函数的线性函数.min. s.tucxAxbvlbxvub矩矩阵阵形形式式:第7页/共45页实际问题中实际问题中的优化模型的优化

5、模型T1min(max)( ),(,)s.t.( )0,1,2,nizf xxxxg xim或x是决策变量是决策变量f(x)是目标函数是目标函数gi(x) 0是约束条件是约束条件数学规划数学规划线性规划线性规划(LP)二次规划二次规划(QP)非线性规划非线性规划(NLP)纯整数规划纯整数规划(PIP)混合整数规划混合整数规划(MIP)整数规划整数规划(IP)0-1整数规划整数规划一般整数规划一般整数规划连续规划连续规划 优化模型的分类优化模型的分类第8页/共45页用用MATLAB优化工具箱解线性规划优化工具箱解线性规划min z=cX s.t.AXb1. 模型:命令:x=linprog(c,

6、A, b) 2. 模型:min z=cX s.t.AXbbeqXAeq命令:x=linprog(c,A,b,Aeq,beq)注意:若没有不等式: 存在,则令A= ,b= .bAX 第9页/共45页3. 模型:min z=cX s.t.AXbbeqXAeqVLBXVUB命令:1 x=linprog(c,A,b,Aeq,beq, VLB,VUB) 2 x=linprog(c,A,b,Aeq,beq, VLB,VUB, X0) 注意:1 若没有等式约束: , 则令Aeq= , beq= . 2其中X0表示初始点 beqXAeq4. 命令:x,fval=linprog()返回最优解及处的目标函数值fv

7、al.第10页/共45页解解 编写编写M文件文件xxgh1.m如下:如下:c=-0.4 -0.28 -0.32 -0.72 -0.64 -0.6; A=0.01 0.01 0.01 0.03 0.03 0.03;0.02 0 0 0.05 0 0;0 0.02 0 0 0.05 0;0 0 0.03 0 0 0.08; b=850;700;100;900; Aeq=; beq=; vlb=0;0;0;0;0;0; vub=;x,fval=linprog(c,A,b,Aeq,beq,vlb,vub) To MATLAB (xxgh1)第11页/共45页解解: 编写编写M文件文件xxgh2.m如下

8、:如下: c=6 3 4; A=0 1 0; b=50; Aeq=1 1 1; beq=120; vlb=30,0,20; vub=; x,fval=linprog(c,A,b,Aeq,beq,vlb,vub)To MATLAB (xxgh2)123m in( 634 )xzxx32120030 xxx1231111 2 0s .t. 0105 0 xxx第12页/共45页s.t.Xz8121110913min改写为:例例3 问题一的解答 问题问题第13页/共45页编写编写M文件文件xxgh3.m如下如下:f = 13 9 10 11 12 8;A = 0.4 1.1 1 0 0 0 0 0

9、0 0.5 1.2 1.3;b = 800; 900;Aeq=1 0 0 1 0 0 0 1 0 0 1 0 0 0 1 0 0 1;beq=400 600 500;vlb = zeros(6,1);vub=;x,fval = linprog(f,A,b,Aeq,beq,vlb,vub)To MATLAB (xxgh3)第14页/共45页结果结果:x = 0.0000 600.0000 0.0000 400.0000 0.0000 500.0000fval =1.3800e+004 即在甲机床上加工600个工件2,在乙机床上加工400个工件1、500个工件3,可在满足条件的情况下使总加工费最小

10、为13800.第15页/共45页例例2 问题二的解答 问题问题改写为:第16页/共45页编写编写M文件文件xxgh4.m如下:如下:c = 40;36;A=-5 -3;b=-45;Aeq=;beq=;vlb = zeros(2,1);vub=9;15; %调用linprog函数:x,fval = linprog(c,A,b,Aeq,beq,vlb,vub)To MATLAB (xxgh4)第17页/共45页结果为:结果为:x = 9.0000 0.0000fval =360即只需聘用9个一级检验员. 注:注:本问题应还有一个约束条件:x1、x2取整数.故它是一个整数线性规划整数线性规划问题.这

11、里把它当成一个线性规划来解,求得其最优解刚好是整数:x1=9,x2=0,故它就是该整数规划的最优解.若用线性规划解法求得的最优解不是整数,将其取整后不一定是相应整数规划的最优解,这样的整数规划应用专门的方法求解.返 回第18页/共45页用用LINDO、LINGO优化工具箱解线性规划优化工具箱解线性规划第19页/共45页一、LINDO软件包 下面我们通过一个例题来说明下面我们通过一个例题来说明LINDO软件包的使用方法软件包的使用方法.第20页/共45页LINDOLINDO和和LINGOLINGO软件能求解的优化模型软件能求解的优化模型 LINGO LINDO优化模型优化模型线性规划线性规划(L

12、P)非线性规划非线性规划(NLP)二次规划二次规划(QP)连续优化连续优化整数规划整数规划(IP)第21页/共45页1桶牛奶 3千克A1 12小时 8小时 4千克A2 或获利24元/千克 获利16元/千克 50桶牛奶桶牛奶 时间时间: 480小时小时 至多加工至多加工100千克千克A1 制订生产计划,使每天获利最大制订生产计划,使每天获利最大 35元可买到元可买到1桶牛奶,买吗?若买,每天最多买多少桶牛奶,买吗?若买,每天最多买多少? 可聘用临时工人,付出的工资最多是每小时几元可聘用临时工人,付出的工资最多是每小时几元? A1的获利增加到的获利增加到 30元元/千克,是否应改变生产计划?千克,

13、是否应改变生产计划? 每天:每天:例例1 加工奶制品的生产计划加工奶制品的生产计划第22页/共45页x1桶牛奶生产桶牛奶生产A1 x2桶牛奶生产桶牛奶生产A2 获利获利 243x1 获利获利 164 x2 原料供应原料供应 5021 xx劳动时间劳动时间 48081221 xx加工能力加工能力 10031x决策变量决策变量 目标函数目标函数 12max7264zxx每天获利每天获利约束条件约束条件非负约束非负约束 0,21xx线性线性规划规划模型模型(LP)建立模型第23页/共45页max 72x1+64x2st2)x1+x2503)12x1+8x24804)3x1100end OBJECTI

14、VE FUNCTION VALUE 1) 3360.000 VARIABLE VALUE REDUCED COST X1 20.000000 0.000000 X2 30.000000 0.000000 ROW SLACK OR SURPLUS DUAL PRICES 2) 0.000000 48.000000 3) 0.000000 2.000000 4) 40.000000 0.000000 NO. ITERATIONS= 2DO RANGE (SENSITIVITY) ANALYSIS? No20桶牛奶生产桶牛奶生产A1, 30桶生产桶生产A2,利润,利润3360元元. 模型求解模型求解

15、第24页/共45页 OBJECTIVE FUNCTION VALUE 1) 3360.000 VARIABLE VALUE REDUCED COST X1 20.000000 0.000000 X2 30.000000 0.000000 ROW SLACK OR SURPLUS DUAL PRICES 2) 0.000000 48.000000 3) 0.000000 2.000000 4) 40.000000 0.000000原料无剩余原料无剩余时间无剩余时间无剩余加工能力剩余加工能力剩余40max 72x1+64x2st2)x1+x2503)12x1+8x24804)3x1100end三三

16、种种资资源源“资源资源” 剩余为零的约束为紧约束(有效约束)剩余为零的约束为紧约束(有效约束) 结果解释结果解释第25页/共45页模型求解模型求解 reduced cost值表值表示当该非基变量示当该非基变量增加一个单位时增加一个单位时(其他非基变量(其他非基变量保持不变)保持不变),目标目标函数减少的量函数减少的量(对对max型问题型问题) . OBJECTIVE FUNCTION VALUE 1) 3360.000 VARIABLE VALUE REDUCED COST X1 20.000000 0.000000 X2 30.000000 0.000000 ROW SLACK OR SUR

17、PLUS DUAL PRICES 2) 0.000000 48.000000 3) 0.000000 2.000000 4) 40.000000 0.000000 NO. ITERATIONS= 2也可理解为:也可理解为:为了使该非基变为了使该非基变量变成基变量,量变成基变量,目标函数中对应目标函数中对应系数应增加的量系数应增加的量第26页/共45页 OBJECTIVE FUNCTION VALUE 1) 3360.000 VARIABLE VALUE REDUCED COST X1 20.000000 0.000000 X2 30.000000 0.000000 ROW SLACK OR S

18、URPLUS DUAL PRICES 2) 0.000000 48.000000 3) 0.000000 2.000000 4) 40.000000 0.000000结果解释结果解释 最优解下最优解下“资源资源”增加增加1单位时单位时“效益效益”的增量的增量 原料增原料增1单位单位, 利润增利润增48 时间增时间增1单位单位, 利润增利润增2 能力增减不影响利润能力增减不影响利润影子价格影子价格 35元可买到元可买到1桶牛奶,要买吗?桶牛奶,要买吗? 35 ”(或“=”(或“=”)功能相同2. 变量与系数间可有空格(甚至回车), 但无运算符3. 变量名以字母开头,不能超过8个字符4. 变量名不

19、区分大小写(包括LINDO中的关键字)5. 目标函数所在行是第一行,第二行起为约束条件6. 行号(行名)自动产生或人为定义.行名以“)”结束7. 行中注有“!”符号的后面部分为注释.如: ! Its Comment.8. 在模型的任何地方都可以用“TITLE” 对模型命名(最多72个字符),如: TITLE This Model is only an Example第30页/共45页9. 变量不能出现在一个约束条件的右端10.表达式中不接受括号“( )”和逗号“,”等任何符号, 例: 400(X1+X2)需写为400X1+400X211.表达式应化简,如2X1+3X2- 4X1应写成 -2X1

20、+3X212.缺省假定所有变量非负;可在模型的“END”语句后用“FREE name”将变量name的非负假定取消13.可在 “END”后用“SUB” 或“SLB” 设定变量上下界 例如: “sub x1 10”的作用等价于“x1=345.5 x1+x2=345.5; ; x1=98; x1=98; 2 2* *x1+x2=600 x1+x2=345.5 x1+x2=345.5 x1=98 x1=98 2 2* *x1+x2=600 x1+x21 c=-0.05 -0.27 -0.19 -0.185 -0.185; Aeq=1 1.01 1.02 1.045 1.065; beq=1; A=0 0.025 0 0 0;0 0 0.015 0 0;0 0 0 0.055 0;0 0 0 0 0.026; b=a;a;a;a; vlb=0,0,0,0,0;vub=; x,val=linprog(c,A,b,Aeq,beq,vlb,vub); a x=x Q=-val plot(a,Q,.),axis(0 0.1 0 0.5),hold on a=

温馨提示

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

评论

0/150

提交评论