数学建模计算实验chen.doc_第1页
数学建模计算实验chen.doc_第2页
数学建模计算实验chen.doc_第3页
数学建模计算实验chen.doc_第4页
数学建模计算实验chen.doc_第5页
免费预览已结束,剩余22页可下载查看

下载本文档

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

文档简介

数学建模 信计091 200900901005 陈康丽实验一:matlab函数拟合实验目的:掌握用matlab进行函数拟合的方法。实验内容:实例1.(汽车刹车距离问题)某汽车司机培训课程中有这样的规则:正常驾驶条件下,车速每增16公里/小时,后面与前车的距离应增一个车身的长度。实现这个规则的渐变办法是“2秒准则”:后车司机从前车经过某一标志开始默数2秒钟后到达同一标志,而不管车速如何。 这个规则的合理性如何是否有更合理的规则。下表是测得的车速和刹车距离的一组数据。车速(km/h)20406080100120140刹车距离(m)6.517.833.657.183.4118.0153.5解:模型假设:(1) 刹车距离y等于反应距离y1与制动距离y2之和。即y=y1+y2.(2) 反应距离y1与车速v成正比,比例系数为反应时间k1。即y1=k1*v(3) 刹车时使用最大制动力F,F作的功等于汽车动能的改变,且F与车的质量m成正比.模型建立 由假设2,y1=k1v,由假设3,在F作用下行驶距离y2作的功F*y2使车速从v0,动能的变化为mv2/2,又由牛顿第二定律可知Fam,其中刹车时的减速度a为常数,于是y2=k2*v2,其中k2为比例系数,实际k2=1/2a,由假设1,刹车距离为 y=k1v +k2v2模型求解:用最小二乘法拟合,则程序运行过程有: v=20,40,60,80,100,120,140./3.6; s=6.5,17.8,33.6,57.1,83.4,118.0,153.5; fun=inline(k(1).*v+k(2).*v.*v,k,v); k=lsqcurvefit(fun,20,140,v,s)Optimization terminated: relative function value changing by less than OPTIONS.TolFun.k = 0.6522 0.0853于是s=0.6522v+0.0853v2;模型应用:因为在实际中k2=1/2a 则a=5.86166 v=at1,其中t1为刹车时间,又k1为反应时间,即最终时间:t=k1+t1。 v=20 40 60 80 100 120140/3.6; a=5.86166;t0=0.6522;s=0.6522.*v+0.0853.*v.2s = 6.2560 17.7775 34.5644 56.6168 83.9346 116.5178 154.3664 t=t0+v./at = 1.6000 2.5478 3.4955 4.4433 5.3911 6.3389 7.2866根据车速的不同刹车时间t如下表:车速(km/h)20406080100120140刹车距离(m)6.256017.777534.564456.616883.9346116.5178154.3664刹车时间(秒)1.60002.54783.49554.44335.39116.33897.2866后车司机从前车经过某一标志开始默数t秒钟后到达同一标志,t由下表给出:车速(km/h)01010-6060100100-140t(秒)1246则根据车速的快慢,随着车速越快的时候,刹车时间越久所以2秒准则是不合理的。实例2:根据美国人口从1790年到1990年间的人口数据(如下表),确定人口指数增长模型(Logistic模型)中的待定参数,估计出美国2010年的人口,同时画出拟合效果的图形。表1 美国人口统计数据年 份1790180018101820183018401850人口(106)3.95.37.29.612.917.123.2年 份1860187018801890190019101920人口(106)31.438.650.262.976.092.0106.5年 份1930194019501960197019801990人口(106)123.2131.7150.7179.3204.0226.5251.4解:问题分析 最简单的人口增长模型:记今年人口为x,k年以后人口为x,年增长率为r,则x=x(1+r)(1)其中年增长率保持不变.模型建立 模型一:记时刻t的人口为x(t),当考察一个国家或一个较大地区的人口时,x(t)是一个很大的整数,我们将x(t)视为连续、可微的函数,记t=0初始时刻的人口为x,假设人口年增长率为常数.考虑t到t+t时间内人口的增量,显然,有x(t+t)-x(t)=rx(t)t令t0,得到x(t)满足微分方 dx/dt =rx ,x(0)=x(2),由方程(2)解得x(t)=xe(3)当r0 时(3)式表示人口将按指数规律随时间无限增长,称为指数增长模型.模型求解 用matlab进行数据拟合,程序有:假设美国人口增长率是一个常数 则可用指数增长模型来对该题求解y=a(1)*exp(a(2)*t),其中a(1)为初始人口,a(2)为人口增长常数,t为从1790年开始增长的10的倍数。建立f1.m函数文件:function x=f1(a,t)x=a(1)*exp(a(2)*t);在Matlab中输入有: t=1:20; x=3.9 5.3 7.2 9.6 12.9 17.1 23.2 31.4 38.6 50.2 62.9 76 92 106.5 123.2 131.7 150.7 179.3 204 226.5; fun=inline(a(1)*exp(a(2)*t),a,t); a=lsqcurvefit(fun,0,1,t,x)Warning: Matrix is close to singular or badly scaled. Results may be inaccurate. RCOND = 2.855975e-017.Optimization terminated: relative function value changing by less than OPTIONS.TolFun.a = 10.8849 0.1545 t1=23;x1=f1(a,t1)x1 = 380.0098则其结果为:y=10.8849*e,将t=23代入(3)由以上结果预测2010年的人口为380.0098模型二:当人口增长到一定数量后,由于自然资源、环境条件等因素对人口的增长起着阻滞作用,人口增长率就会下降,且随着人口的增加,阻滞作用越来越大.。所谓阻滞增长模型就是考虑到这个因素,对指数增长模型的基本假设进行修改后得到的。阻滞作用于体现在对人口增长率r的影响上,使得r随着人口数量x的增加而下降,若将r表示为x的函数r(x),则它应是减函数。于是方程 dx/dt =r(x)x ,x(0)=x。对r(x)的一个最简单的假定是,设r(x)为x的线性函数,即r(x)=r-sx(r0,s0)。这里r称固有增长,表示人口很少时(理论上是x=0)的增长。为了确定系数s的意义,引入自然资源和环境条件所能容纳的最大人口数量x,称人口容量。当x=x时人口不再增长,即增长率r(x)=0,代入r(x)=r-sx(r0,s0)得s=r/x,于是r(x)=r(1-x/x),这个式子的另一个解释是,增长率r(x)与人口尚未实现部分的比例(x-x)/x成正比,比例系数为固有增长率r。故,有 dx/dt =rx(1-x/x),x(0)=x (3)方程右端的因子rx体现人口自身的增长趋势,因子(1-x/x)则体现了资源和环境对人口增长的阻滞作用,显然,x越大,前一因子越大,后一因子越小,人口增长是两个因子共同作用的结果。用分离变量法求解得到: x(t)=x /(1+(x/x-1)e) 模型求解 建立f2.m文件:function x=f2(a,t1)x=a(1)./(1+(a(1)./3.9-1).*exp(-a(2).*(t1-1790)./10);用matlab进行数据拟合,程序有: x=3.9 5.3 7.2 9.6 12.9 17.1 23.2 31.4 38.6 50.2 62.9 76.0 92.0 106.5 123.2 131.7 150.7 179.3 204.0 226.5 251.4; t1=1790:10:1990; a=lsqcurvefit(f2,100,0.5,t1,x)Optimization terminated: relative function value changing by less than OPTIONS.TolFun.a = 311.9519 0.2798 f2(a,2010)ans = 267.1941则其结果为: x(t)=311.9523/(1+(311.9523/3.9-1)e) (4) 将t=2010代入(4)由以上结果预测2000年的人口为x(2010)=267.1941.拟合效果图程序如下: t=0:1:20; t1=1790:10:1990; x=3.9 5.3 7.2 9.6 12.9 17.1 23.2 31.4 38.6 50.2 62.9 76.0 92.0 106.5 123.2 131.7 150.7 179.3 204.0 226.5 251.4; p=polyfit (t,x,2);ti=1:0.01:20;xi=polyval(p,ti);subplot(1,2,1) plot(t,x,*r,ti,xi,g) title(x对t的拟合图) p=polyfit (t1,x,2);t1i=1790:0.01:1990;xi=polyval(p,t1i);subplot(1,2,2) plot(t1,x,ob,t1i,xi,g) title(x对t1的拟合图)实例3、(录像机计数器的用途)计时器读数n 与录像带转过的时间t之间的关系为利用下表的数据确定两个参数a、b的值。 t(分)0102030405060708090n 0000061711411601201924032760309634133715t(分)100110120130140150160170184n 400442804545480350515291552557526061解:由题意已知,用最小二乘法求解,则程序有: t=0102030405060708090 100110120130140150160170184; n=0000061711411601201924032760309634133715 400442804545480350515291552557526061; fun=inline(a(1)*n.2+a(2)*n,a,n); a=lsqcurvefit(fun,0617,6061,n,t)Optimization terminated: first-order optimality less than OPTIONS.TolFun, and no negative/zero curvature detected in trust region model.a =0.0000 0.0145即:a=0.0000,b=0.0145.实验二:用Lindo求解线性规划问题实验目的:掌握用Lindo求解线性规划问题的方法,能够阅读Lindo结果报告。实验内容:实例1.一家广告公司想在电视、广播上做公司的宣传广告,其目的是争取尽可能多的影响顾客。下表是公司进行市场调研的结果:电视网络媒体杂志白天最佳时段每次做广告费用(千元)45862512受每次广告影响的顾客数350880430180受每次广告影响的女顾客数(千人)260450160100这家公司希望总广告费用不超过750(千元),同时还要求:(1)受广告影响的女性超过200万;(2)电视广告的费用不超过450(千元);(3)电视广告白天至少播出4次,最佳时段至少播出2次;(4)通过网络媒体、杂志做出的广告要重复5到8次。解:模型假设:首先假设用电视做广告白天播出次数、最佳时间播出次数、网络媒体重复广告次数、杂志重复广告的次数分别为x1,x2,x3,x4。建立模型如下:Max Z=350x1+880x2+430x3+180x4 %受广告影响的顾客人数 s.t. 45x1+86x2+25x3+12x4750 %广告费用限制260x1+450x2+160x3+100x42000 %受广告影响的妇女的人数限制45x1+86x2450 %电视广告费用限制x14,x22,5x3,x48 %其他限制在Lindo中输入程序并进行分析有程序如下:Max 350x1+880x2+430x3+180x4s.t.45x1+86x2+25x3+12x475045x1+86x22000x35x45x38x44x22endgin 4结果如下: LP OPTIMUM FOUND AT STEP 12 OBJECTIVE VALUE = 9042.79102 NEW INTEGER SOLUTION OF 8920.00000 AT BRANCH 1 PIVOT 17 BOUND ON OPTIMUM: 8920.000 ENUMERATION COMPLETE. BRANCHES= 1 PIVOTS= 17 LAST INTEGER SOLUTION IS THE BEST FOUND RE-INSTALLING BEST SOLUTION. OBJECTIVE FUNCTION VALUE 1) 8920.000 VARIABLE VALUE REDUCED COST X1 4.000000 -350.000000 X2 3.000000 -880.000000 X3 8.000000 -430.000000 X4 8.000000 -180.000000 ROW SLACK OR SURPLUS DUAL PRICES 2) 16.000000 0.000000 3) 12.000000 0.000000 4) 2470.000000 0.000000 5) 3.000000 0.000000 6) 3.000000 0.000000 7) 0.000000 0.000000 8) 0.000000 0.000000 9) 0.000000 0.000000 10) 1.000000 0.000000 NO. ITERATIONS= 17 BRANCHES= 1 DETERM.= 1.000E 0即这家广告公司在电视白天、最佳时段,网络媒体、杂志的广告次数分别为4,3,8,8受广告影响人数最多为8920千人.实例2:求解书本上P130的习题1。列出线性规划模型,然后用Lindo求解,根据结果报告得出解决方案。投资规划问题题目:某银行经理计划用一笔资金进行有价证券的投资,可供购进的证券以及其信用等级、到期年限、收益如下表所示。按照规定,市政证券的收益可以免税,其他证券的收益需按50%的税率纳税。此外还有一下限制:(1)政府及代办机构的证券总共至少要购进400万元;(2)所购证券的平均信用等级不超过1.4(信用等级数字越小,信用程度越高)(3)所购证券的平均到期年限不超过5年。证券名称证券种类信用等级到期年限到期税前收益(%)A市政294.3B代办机构2155.4C政府145.0D政府134.4E市政524.5(1) 若该经理有1000万元资金,应如何投资?(2) 如果能够以2.75%的利率借到不超过100万元资金,该经理应如何操作?(3) 在1000万元资金情况下,若证券A的税前收益增加为4.5%,投资应否改变?若证券C的税前收益减少为4.8%,投资应否改变?解:设投资证券A,B,C,D的金额分别为 x1,x2,x3,x4,x5(百万元),按照规定限制1000万元的资金约束,则线性规划模型为: %最后收益 %政府及代办机构的证券购进总额限制 %总金额限制 %平均信用等级限制 %平均到期年限限制 在Lindo中输入并要求做灵敏性分析有:Max 0.043x1+0.027x2+0.025x3+0.022x4+0.045x5s.t.x2+x3+x44x1+x2+x3+x4+x5106x1+6x2-4x3-4x4+36x504x1+10x2-x3-2x4-3x50x20x30x40x50end结果如下: LP OPTIMUM FOUND AT STEP 0 OBJECTIVE FUNCTION VALUE 1) 0.2983637 VARIABLE VALUE REDUCED COST X1 2.181818 0.000000 X2 0.000000 0.030182 X3 7.363636 0.000000 X4 0.000000 0.000636 X5 0.454545 0.000000 ROW SLACK OR SURPLUS DUAL PRICES 2) 3.363636 0.000000 3) 0.000000 0.029836 4) 0.000000 0.000618 5) 0.000000 0.002364 6) 2.181818 0.000000 7) 0.000000 0.000000 8) 7.363636 0.000000 9) 0.000000 0.000000 10) 0.454545 0.000000 NO. ITERATIONS= 0 RANGES IN WHICH THE BASIS IS UNCHANGED: OBJ COEFFICIENT RANGES VARIABLE CURRENT ALLOWABLE ALLOWABLE COEF INCREASE DECREASE X1 0.043000 0.003500 0.013000 X2 0.027000 0.030182 INFINITY X3 0.025000 0.017333 0.000560 X4 0.022000 0.000636 INFINITY X5 0.045000 0.052000 0.014000 RIGHTHAND SIDE RANGES ROW CURRENT ALLOWABLE ALLOWABLE RHS INCREASE DECREASE 2 4.000000 3.363636 INFINITY 3 10.000000 INFINITY 4.567901 4 0.000000 105.714287 20.000000 5 0.000000 10.000000 12.000000 6 0.000000 2.181818 INFINITY 7 0.000000 0.000000 INFINITY 8 0.000000 7.363636 INFINITY 9 0.000000 0.000000 INFINITY 10 0.000000 0.454545 INFINITY则(1)证券A,C,E分别投资2.082,7.364,0.454百万元,最大税后收益为0.298百万元 (2)由OBJECTIVE FUNCTION VALUE的DUAL PRICES中的第二行结果知,若资金增加100万元,收益可增加0.0298百万元,大于以2.75%的利率借到100万元资金的利息0.0275百万元,所以应借贷,投资方案需将上面模型第二个约束右端改为11,求解得到:证劵A、C、E分别投资2.40百万元,最大税后收益为0.3007百万元。(3)由OBJ COEFFICIENT RANGES的ALLOWABLE INCREASE中的x1,ALLOWABLE DECREASE 的x3行的结果中目标函数系数的允许范围(最优解不变)可知,证券A的税前收益可增加(0.043000+0.003500)=0.0465即4.65%4.5%,故若证券A的税前收益增加为4.5%,投资不应改变;证券C的税前收益可减(0.025000-0.000560)*2=0.04888,即4.888%(注意按50%的税率纳税),故证券C的税前收益减少为4.8%,投资应该改变。实验三:用Lingo求解非线性规划问题实验目的:掌握用Lingo求解非线性规划问题的方法。实验内容:求解书本上P132的习题6、7。列出非线性规划模型,然后用Lingo求解,根据结果报告得出解决方案。P132 第6题题目:某公司将4种不同含硫量的液体原料(分别记作甲、乙、丙、丁)混合生产两种产品A、B,按照生产工艺的要求,原料甲、乙、丁必须 先倒入混合池中混合,混合后的液体再分别与原料丙混合生产A、B。已知原料甲、乙、丙、丁的含硫量分别不能超过3,1,2,1(%),销售价格分别为6,16,10,15(千元/吨),产品A、B的含硫量分别不能超过2.5,1.5(%),销售价格分别为9,10。根据市场信息,原料甲、乙、丙的供应没有限制,原料丁的供应量最多为50吨;产品A、B的市场需求量分别为100吨、200吨.问应如何安排生产?解:设y1,z1分别是产品A中是来混合池和原料丙的吨数,y2,z2分别是产品B中是来混合池和原料丙的吨数.混合池中原料甲、乙、丁所占比例分别为x1,x2,x4优化目标是总利润最大,即Max (9-6x1-16x2-15x4)y1(15-6x1-16x2-15x4)y2(9-10)z1(15-10)z2约束条件:原料最大供应量限制:x4(y1y2)=50产品最大需求量限制:y1z1=100; y2z2=200产品最大含硫量:整理得对A(3x1x2x4-2.5)y1-0.5z1=0,对B (3x1x2x4-1.5)y20.5z2=0其他约束条件: x1x2x4=1在LINGO中输入Model:Max=9*y1+6*x1*y1-16*x2*y1-15*x4*y1+15*y2-6*x1*y2-16*x2*y2-15*x4*y2-z1+5*z2; x4*y1+x4*y2=50; y1+z1=100; y2+z2=200; 3*x1*y1+x2*y1+x4*y1-2.5*y1-0.5*z1=0; 3*x1*y2+x2*y2+x4*y2-1.5*y2+0.5*z2=0; x1+x2+x4=1;end结果如下: Local optimal solution found at iteration: 8 Objective value: 450.0000 Variable Value Reduced Cost Y1 0.000000 3.999999 X1 0.000000 200.0000 X2 0.5000000 0.000000 X4 0.5000000 0.000000 Y2 100.0000 0.000000 Z1 0.000000 0.000000 Z2 100.0000 0.000000 Row Slack or Surplus Dual Price 1 450.0000 1.000000 2 0.000000 1.000000 3 100.0000 0.000000 4 0.000000 2.000000 5 0.000000 2.000000 6 0.000000 6.000000 7 0.000000 -2200.000即x2=x4=0.5,y2=z2=100,其他均为0,,总利润为450P132第7题题目:某钢管零售商从钢管厂进货,将钢管按照顾客的要求切割后售出。从钢管厂进货时得到的原料钢管长度都是1850mm。现有一客户需要15根290mm、28根315mm、21根350mm、30根455mm的钢管。为了简化生产过程,规定所使用的切割模式的种类不能超过4种,使用频率最高的一种切割模式按照一根原料钢管价值的1/10增加费用,使用频率次之的切割模式按照一根原料钢管价值的2/10增加费用,以此类推,且每种切割模式下得切割次数不能太多(一根原料钢管最多生产5根产品)。此外,为了减少余料浪费,每种切割模式下得余料不能超多100mm。为了使总费用最小,应如何下料?解:由于所有可能的切割模式很多,这里不采用枚举切割模式的方式建模,二是建立非线性规划模型。记b=(290,315,350,455)为4种产品的长度,n=(15,28,21,30)为4种产品的需求量,设第i种切割模式下每根原料钢管生产4种产品的数量分别为r1,r2,r3,r4,该模式使用xi次,即使用该模式切割xi根原料钢管(i=1,2,3,4),且切割模式次序是按照使用平率从搞到的排列的。约束条件为:(1) (2)切割模式:引入0-1变量yi=1表示使用第i种模式,yi=0表示不使用模式(1,2,3,4) , , , , , ,3) 为了减少搜索空间引入的约束: 使用的原料钢管不可能少于一根原料钢管最多生产5 根产品,使用的原料钢管不可能少于 .所以优化目标为在LINGO中输入求解有:Model:min=0.1*y1+x1+0.2*y2+x2+0.3*y3+x3+0.4*y4+x4;290*r11+315*r21+350*r31+455*r41=1850*y1;290*r12+315*r22+350*r32+455*r42=1850*y2;290*r13+315*r23+350*r33+455*r43=1850*y3;290*r14+315*r24+350*r34+455*r44=1750*y1;290*r12+315*r22+350*r32+455*r42=1750*y2;290*r13+315*r23+350*r33+455*r43=1750*y3;290*r14+315*r24+350*r34+455*r44=1750*y4;x1+x2+x3+x4=19;x1+x2+x3+x4=15;r21*x1+r22*x2+r23*x3+r24*x4=28;r31*x1+r32*x2+r33*x3+r34*x4=21;r41*x1+r42*x2+r43*x3+r44*x4=30;r11+r21+r31+r41=5*y1;r12+r22+r32+r42=5*y2;r13+r23+r33+r43=5*y4;r14+r24+r34+r44=y1;r12+r22+r32+r42=y2;r13+r23+r33+r43=y3;r14+r24+r34+r44=y4;y1=y2;y2=y3;y3=y4;x1=x2;x2=x3;x3=x4;x1=30*y1;x2=30*y2;x3=30*y3;x4=y1;x2=y2;x3=y3;x4=y4;y1=0;y2=0;y3=0;y4=0;y1=1;y2=1;y3=1;y4=1;gin(x1);gin(x2);gin(x3);gin(x4);gin(y1);gin(y2);gin(y3);gin(y4);gin(r11);gin(r12);gin(r13);gin(r14);gin(r21);gin(r22);gin(r23);gin(r24);gin(r31);gin(r32);gin(r33);gin(r34);gin(r41);gin(r42);gin(r43);gin(r44); end则输出结果为:Local optimal solution found at iteration: 33732 Objective value: 20.00000 Variable Value Reduced Cost Y1 1.000000 0.000000 X1 6.000000 0.000000 Y2 1.000000 0.000000 X2 5.000000 -0.9999990E-02 Y3 1.000000 0.3000000 X3 5.000000 0.1000002E-01 Y4 1.000000 0.000000 X4 3.000000 -0.9999973E-02 R11 1.000000

温馨提示

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

评论

0/150

提交评论