《六章线经济模型简介.ppt》由会员分享,可在线阅读,更多相关《六章线经济模型简介.ppt(31页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、六章线经济模型简介 Still waters run deep.流静水深流静水深,人静心深人静心深 Where there is life,there is hope。有生命必有希望。有生命必有希望求解线性规划问题求解线性规划问题n线性规划问题的求解方法包括表上作业法、线性规划问题的求解方法包括表上作业法、图解法、单纯形法、矩阵法等图解法、单纯形法、矩阵法等.n但在决策变量个数较多,求解过程都比较复但在决策变量个数较多,求解过程都比较复杂时,用杂时,用MATLAB软件求解线性规划问题则软件求解线性规划问题则比较简单比较简单.MATLAB求解线性规划问题的命令求解线性规划问题的命令X=linpr
2、og(f,A,b)求解求解LP问题问题命令格式命令格式命令函数命令函数 linprog()X,fval=linprog(f,A,b,Aeq,Beq,LB,UB)求解求解LP问题问题X,fval,exitflag,output,lambda=linprog(f,A,b,Aeq,Beq,LB,UB,X0,options).其功能是求解有初始值其功能是求解有初始值X0和用和用options指定优化参数指定优化参数进行优化的进行优化的LP问题问题.n函数说明函数说明(1)fAXb线性规划的不等式约束条件线性规划的不等式约束条件AeqBeq线性规划的等式约束条件线性规划的等式约束条件目标函数取得极值的决
3、策变量组成的列向量目标函数取得极值的决策变量组成的列向量矩阵矩阵向量向量矩阵矩阵向量向量目标函数的系数组成的向量目标函数的系数组成的向量LBX0OptionsfvalUB变量的上界约束变量的上界约束变量的初始值变量的初始值变量的下界约束变量的下界约束控制规划过程的参数系列控制规划过程的参数系列优化结束后得到的目标函数值优化结束后得到的目标函数值X,fval,exitflag,output,lambda=linprog(f,A,b,Aeq,Beq,LB,UB,X0,options)目标函数取得极值的决策变量组成的列向量目标函数取得极值的决策变量组成的列向量优化结束后得到的目标函数值优化结束后得到
4、的目标函数值目标函数的系数组成的向量目标函数的系数组成的向量线性规划的不等式约束条件线性规划的不等式约束条件矩阵矩阵向量向量控制规划过程的参数系列控制规划过程的参数系列变量的初始值变量的初始值变量的下界约束变量的下界约束变量的上界约束变量的上界约束线性规划的等式约束条件线性规划的等式约束条件矩阵矩阵向量向量(2)运用运用linprog()命令时,系统默认为它的各种命令时,系统默认为它的各种linprog(f,A,b,Aeq,Beq,LB,UB,X0,options)都存都存在,且按固定顺序排列。本例中,在存在约束在,且按固定顺序排列。本例中,在存在约束LB的的情况下,它后面的参数没给出,可以不
5、声明,但是情况下,它后面的参数没给出,可以不声明,但是LB前面的参数即使没给出(例如等式约束条件)也前面的参数即使没给出(例如等式约束条件)也要用空矩阵要用空矩阵“”的方式给出声明,不能省略。的方式给出声明,不能省略。n函数说明函数说明(3)返回值返回值exitflag有有3种情况:种情况:exitflag=1 表示优化结果不收敛。表示优化结果不收敛。exitflag=1 表示优化过程中变量收敛于解表示优化过程中变量收敛于解X。exitflag=0 表示优化结果已经超过函数的估计值表示优化结果已经超过函数的估计值 或者已声明的最大叠代次数;或者已声明的最大叠代次数;(4)返回值返回值outpu
6、t有有3个分量,个分量,iterations表示优化过表示优化过程的叠代次数,程的叠代次数,cgiterations表示表示PCG叠代次数,叠代次数,algorithm表示优化采用的运算规则。表示优化采用的运算规则。n函数说明函数说明(5)返回返回值值lambda有有4个分量,个分量,ineqlin是是线线性不等式性不等式约约束条件,束条件,eqlin是是线线性等式性等式约约束条件,束条件,upper是是变变量量的上界的上界约约束条件,束条件,lower是是变变量的下界量的下界约约会条件。会条件。它它们们的返回的返回值值分分别别表示相表示相应应的的约约束条件在束条件在优优化化过过程程中是否有效
7、,本例中可以看到,三个不等式中是否有效,本例中可以看到,三个不等式约约束中束中的后两个是有效的。的后两个是有效的。(6)线线性性规规划划问题问题没有可行解没有可行解时时,系系统统提示提示 Warning:The constraints are overly stringent;there is no feasible solution.如果如果优优化成功化成功,系系统统将会提示将会提示:Optimization terminated successfullyn函数说明函数说明案例案例6.176.17 求解求解案例案例6.126.12中关于生产计划的中关于生产计划的LPLP问题问题解解 原原LP
8、LP问题为问题为 MATLAB MATLAB命令的命令的标标准形是求目准形是求目标标函数的最小函数的最小值值,通常将通常将maxfmaxf通常通常转变为转变为min-fmin-f来来编编程求解。原程求解。原问题转问题转化化为为在在MATLABMATLAB中中输输入入 clear f=-2,3;A=1,2;4,0;0,4;B=8,16,12;lb=0,0;X,fval=linprog(f,A,B,lb)击击回回车键车键,显显示最示最优优解及目解及目标标函数最函数最优值优值Optimization terminated successfully.X=4.0000 2.0000fval=-14.00
9、00 所以,工厂所以,工厂应选择应选择生生产产第第、产产品的品的产产量分量分别为别为4 4件和件和2 2件,工厂最多可件,工厂最多可获获利利1414万元。万元。案例案例6.186.18 求解求解案例案例6.13中的线性规划问题。中的线性规划问题。解解 原原LP模型为模型为在在MATLAB中输入中输入clearf=10,6,3,2;A=-10,-8,-9,-2;-5,-6,-2,-1;-4,-2,-3,-5;b=-30,-5.5,-8;lb=0,0,0,0;X,fval=linprog(f,A,b,lb)显示最优解及目标函数最优值显示最优解及目标函数最优值Optimization termina
10、ted successfully.X=0.0000 0.0000 3.3333 0.0000 所以应购买所以应购买3.3333千克大米才能既满足营养需求,千克大米才能既满足营养需求,又能使购买食品的费用最小。又能使购买食品的费用最小。案例案例6.196.19 求解求解案例案例6.14中的投资问题中的投资问题 解解 设设x1、x2、x3、x4分别代表用于项目分别代表用于项目A、B、C、D的投资百分数,则投资问题的数学模型为的投资百分数,则投资问题的数学模型为MATLAB中输入中输入 clear f=-0.15;-0.1;-0.08;-0.12;Optimization terminated su
11、ccessfully.x=0.5000 0.2500 0.0000 0.2500 A=1-1-1-1 0-1-1 1;b=0 0;Aeq=1 1 1 1;beq=1;lb=zeros(4,1);x,fval,exitflag=linprog(f,A,b,Aeq,beq,lb)回车后结果显示:回车后结果显示:fval=-0.1300exitflag=1 即即4个个项项目目的的投投资资百百分分数数分分别别为为50%,25%,0,25%时时可可使使该该公公司司获获得得最最大大的的收收益益,其其最最大大收收益益可可到到达达13%。过过程正常收程正常收敛敛。案例案例6.206.20(下料问题)用(下料问
12、题)用MATLAB求解求解案例案例6.15关关于下料的规划问题。于下料的规划问题。解解 在案例在案例6.156.15中已经得出下料问题的数学模型为中已经得出下料问题的数学模型为在在MATLABMATLAB中中输输入入 clear f=1,1,1,1,1,1;beq=3000,5000;lb=0,0,0,0,0,0;X,fval=linprog(f,aeq,beq,lb)回回车车后后显显示示Optimization terminated successfully.X=600.0000 0.0001 0.0000 0.0000 0.0000 628.5714fval=1.2286e+003 由于由
13、于xi需取整数,故需取整数,故应应按第一种方案下料按第一种方案下料600根,按根,按第六种方案下料第六种方案下料629根。根。案例案例6.216.21 用用MATLAB求解案例求解案例6.16中的运输问题。中的运输问题。解解 我们先解答供销平衡的运输问题,然后再求解供我们先解答供销平衡的运输问题,然后再求解供 销不平衡销不平衡的运输问题。的运输问题。供供销销平衡运平衡运输问题输问题的数学模型的数学模型为为MATLAB程序如下程序如下 clear f=10,5,6,4,8,15;aeq=1,1,1,0,0,0 0,0,0,1,1,1 1,0,0,1,0,0 0,1,0,0,1,0 0,0,1,0
14、,0,1;beq=60,100,45,75,40;lb=0,0,0,0,0,0;X,fval=linprog(f,aeq,beq,lb)回回车车后后结结果果显显示示Optimization terminated successfully.X=0.0000 20.0000 40.0000 45.0000 55.0000 0.0000fval=960.0000结结果表明,果表明,A煤煤场场依次往三个居民区供煤依次往三个居民区供煤0、20、40吨、吨、B煤煤场场依次往三个居民区供煤依次往三个居民区供煤45、55、0吨吨时时运运输输量最小,量最小,为为960吨吨公里。公里。对对于供于供销销不平衡的运不
15、平衡的运输问题输问题其其MATLABMATLAB程序程序为为 clear f=10,5,6,4,8,15;A=1,1,1,0,0,0 0,0,0,1,1,1;b=60,100;Aeq=1,0,0,1,0,0 0,1,0,0,1,0 0,0,1,0,0,1;beq=45,75,40;lb=0,0,0,0,0,0;X,fval=linprog(f,A,b,Aeq,beq,lb)回回车车后后结结果果显显示示Optimization terminated successfully.X=0.0000 20.0000 40.0000 45.0000 55.0000 0.0000fval=960.0000结
16、结果和果和实际实际意意义义与供与供销销平衡平衡时时的意的意义义是相同的。是相同的。案例案例6.126.12(生产计划的问题)某工厂在计划期内要(生产计划的问题)某工厂在计划期内要安排生产安排生产、的两种产品,已知生产单位产品所的两种产品,已知生产单位产品所需的设备台时,需的设备台时,A A、B B两种原材料的消耗以及每件产两种原材料的消耗以及每件产品可获的利润如下表所示。问应如何安排计划使该品可获的利润如下表所示。问应如何安排计划使该工厂获利最多?工厂获利最多?资源限量资源限量设备设备1 12 28(8(台时台时)原材料原材料A A4 40 016(kg)16(kg)原材料原材料B B0 04
17、 412(kg)12(kg)单位产品利润单位产品利润(万元)(万元)2 23 3返回返回案案例例6.13(营营养养配配餐餐问问题题)假假定定一一个个成成年年人人每每天天需需要要从从食食物物中中获获取取30003000卡卡路路里里热热量量,5555克克蛋蛋白白质质和和800800毫毫克克钙钙。如如果果市市场场上上只只有有四四种种食食品品可可供供选选择择,它它们们每每千千克克所所含含热热量量和和营营养养成成份份以以及及市市场场价价格格如如下下表表所所示示。试试建建立立满满足足营营养养的的前前提提下下使使购购买买食食品品费费用用最最小小的的数数学模型。学模型。序号序号食品名食品名称称热量热量(卡卡路
18、里路里)蛋白质蛋白质(克克)钙钙(mg)(mg)价格价格(元元)1 1猪肉猪肉10001000505040040010102 2鸡蛋鸡蛋80080060602002006 63 3大米大米90090020203003003 34 4白菜白菜20020010105005002 2返回返回 案案例例6.14 (投投资资问问题题)某某公公司司有有一一批批资资金金用用于于4个个工工程程项项目目的的投投资资,其其投投资资各各项项目目时时所所得得的的净净收收益益如如下下表:表:工程项目工程项目A AB BC CD D收益收益(%)(%)151510108 81212 由由于于某某种种原原因因,决决定定用用
19、于于项项目目A的的投投资资不不大大于于其其他他各各项项投投资资之之和和而而用用于于项项目目B和和C的的投投资资要要大大于于项项目目D的的投投资资。试试建建立立该该公公司司收收益益最最大大的的投投资资分分配配方方案案的的数学模型。数学模型。返回返回 方案方案 毛坯数毛坯数规格规格1 12 23 34 45 56 6毛坯毛坯需要量需要量85855 54 43 32 21 10 03000300070701 12 23 34 45 57 750005000余料长度余料长度5 520203535505065651010 案案例例6.15(下下料料问问题题)如如下下表表所所示示,车车间间有有一一批批长长度度为为500厘厘米米的的条条材材,要要截截成成长长度度分分别别为为85厘厘米米和和70厘厘米米的的两两种种毛毛坯坯,共共有有6种种截截取取方方案案。已已知知需需要要85厘厘米米的的毛毛坯坯3000根根,70厘厘米米的的毛毛坯坯5000根根。试试建建立立使使所所用用原料数量最少的下料方案的数学模型。原料数量最少的下料方案的数学模型。返回返回习习 题题
限制150内