数学建模计算实验chen.docx

上传人:b****5 文档编号:5916947 上传时间:2023-01-02 格式:DOCX 页数:36 大小:151.43KB
下载 相关 举报
数学建模计算实验chen.docx_第1页
第1页 / 共36页
数学建模计算实验chen.docx_第2页
第2页 / 共36页
数学建模计算实验chen.docx_第3页
第3页 / 共36页
数学建模计算实验chen.docx_第4页
第4页 / 共36页
数学建模计算实验chen.docx_第5页
第5页 / 共36页
点击查看更多>>
下载资源
资源描述

数学建模计算实验chen.docx

《数学建模计算实验chen.docx》由会员分享,可在线阅读,更多相关《数学建模计算实验chen.docx(36页珍藏版)》请在冰豆网上搜索。

数学建模计算实验chen.docx

数学建模计算实验chen

《数学建模》

信计091200900901005陈康丽

实验一:

matlab函数拟合

实验目的:

掌握用matlab进行函数拟合的方法。

实验内容:

实例1.(汽车刹车距离问题)某汽车司机培训课程中有这样的规则:

正常驾驶条件下,车速每增16公里/小时,后面与前车的距离应增一个车身的长度。

实现这个规则的渐变办法是“2秒准则”:

后车司机从前车经过某一标志开始默数2秒钟后到达同一标志,而不管车速如何。

这个规则的合理性如何是否有更合理的规则。

下表是测得的车速和刹车距离的一组数据。

车速(km/h)

20

40

60

80

100

120

140

刹车距离(m)

6.5

17.8

33.6

57.1

83.4

118.0

153.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

使车速从v→0,动能的变化为mv^2/2,又由牛顿第二定律可知F=am,,其中刹车时的减速度a为常数,于是y2=k2*v^2,其中k2为比例系数,实际k2=1/2a,由假设1,刹车距离为y=k1v+k2v^2

模型求解:

用最小二乘法拟合,则程序运行过程有:

>>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)

Optimizationterminated:

relativefunctionvalue

changingbylessthanOPTIONS.TolFun.

k=

0.65220.0853

于是s=0.6522v+0.0853v^2;

模型应用:

因为在实际中k2=1/2a则a=5.86166v=at1,其中t1为刹车时间,又k1为反应时间,即最终时间:

t=k1+t1。

>>v=[20406080100120140]/3.6;

>>a=5.86166;t0=0.6522;s=0.6522.*v+0.0853.*v.^2

s=

6.256017.777534.564456.616883.9346116.5178154.3664

>>t=t0+v./a

t=

1.60002.54783.49554.44335.39116.33897.2866

根据车速的不同刹车时间t如下表:

车速(km/h)

20

40

60

80

100

120

140

刹车距离(m)

6.2560

17.7775

34.5644

56.6168

83.9346

116.5178

154.3664

刹车时间(秒)

1.6000

2.5478

3.4955

4.4433

5.3911

6.3389

7.2866

后车司机从前车经过某一标志开始默数t秒钟后到达同一标志,t由下表给出:

车速(km/h)

0—10

10-60

60—100

100-140

t(秒)

1

2

4

6

则根据车速的快慢,随着车速越快的时候,刹车时间越久所以2秒准则是不合理的。

实例2:

根据美国人口从1790年到1990年间的人口数据(如下表),确定人口指数增长模型(Logistic模型)中的待定参数,估计出美国2010年的人口,同时画出拟合效果的图形。

表1美国人口统计数据

年份

1790

1800

1810

1820

1830

1840

1850

人口(×106)

3.9

5.3

7.2

9.6

12.9

17.1

23.2

年份

1860

1870

1880

1890

1900

1910

1920

人口(×106)

31.4

38.6

50.2

62.9

76.0

92.0

106.5

年份

1930

1940

1950

1960

1970

1980

1990

人口(×106)

123.2

131.7

150.7

179.3

204.0

226.5

251.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

t→0,得到x(t)满足微分方dx/dt=rx,x(0)=

x

(2),由方程

(2)解得x(t)=x

e

——(3)

当r>0时(3)式表示人口将按指数规律随时间无限增长,称为指数增长模型.

模型求解用matlab进行数据拟合,程序有:

假设美国人口增长率是一个常数则可用指数增长模型来对该题求解y=a

(1)*exp(a

(2)*t),其中a

(1)为初始人口,a

(2)为人口增长常数,t为从1790年开始增长的10的倍数。

建立f1.m函数文件:

functionx=f1(a,t)

x=a

(1)*exp(a

(2)*t);

在Matlab中输入有:

>>t=1:

20;x=[3.95.37.29.612.917.123.231.438.650.262.97692106.5123.2131.7150.7179.3204226.5];

>>fun=inline('a

(1)*exp(a

(2)*t)','a','t');

>>a=lsqcurvefit(fun,[0,1],t,x)

Warning:

Matrixisclosetosingularorbadlyscaled.

Resultsmaybeinaccurate.RCOND=2.855975e-017.

Optimizationterminated:

relativefunctionvalue

changingbylessthanOPTIONS.TolFun.

a=

10.88490.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(r>0,s>0)。

这里r称固有增长,表示人口很少时(理论上是x=0)的增长。

为了确定系数s的意义,引入自然资源和环境条件所能容纳的最大人口数量x

,称人口容量。

当x=x

时人口不再增长,即增长率r(x

)=0,代入r(x)=r-sx(r>0,s>0)得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文件:

functionx=f2(a,t1)

x=a

(1)./(1+(a

(1)./3.9-1).*exp(-a

(2).*(t1-1790)./10));

用matlab进行数据拟合,程序有:

>>x=[3.95.37.29.612.917.123.231.438.650.262.976.092.0106.5123.2131.7150.7179.3204.0226.5251.4];

>>t1=1790:

10:

1990;

>>a=lsqcurvefit(@f2,[100,0.5],t1,x)

Optimizationterminated:

relativefunctionvalue

changingbylessthanOPTIONS.TolFun.

a=

311.95190.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.95.37.29.612.917.123.231.438.650.262.976.092.0106.5123.2131.7150.7179.3204.0226.5251.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(分)

0

10

20

30

40

50

60

70

80

90

n

0000

0617

1141

1601

2019

2403

2760

3096

3413

3715

t(分)

100

110

120

130

140

150

160

170

184

n

4004

4280

4545

4803

5051

5291

5525

5752

6061

解:

由题意已知,用最小二乘法求解,则程序有:

>>t=[0102030405060708090100110120130140150160170184];

>>n=[0000061711411601201924032760309634133715400442804545480350515291552557526061];

>>fun=inline('a

(1)*n.^2+a

(2)*n','a','n');

>>a=lsqcurvefit(fun,[0617,6061],n,t)

Optimizationterminated:

first-orderoptimalitylessthanOPTIONS.TolFun,

andnonegative/zerocurvaturedetectedintrustregionmodel.

a=

0.00000.0145

即:

a=0.0000,b=0.0145.

实验二:

用Lindo求解线性规划问题

实验目的:

掌握用Lindo求解线性规划问题的方法,能够阅读Lindo结果报告。

实验内容:

实例1.一家广告公司想在电视、广播上做公司的宣传广告,其目的是争取尽可能多的影响顾客。

下表是公司进行市场调研的结果:

电视

网络媒体

杂志

白天

最佳时段

每次做广告费用(千元)

45

86

25

12

受每次广告影响的顾客数

350

880

430

180

受每次广告影响的女顾客数(千人)

260

450

160

100

这家公司希望总广告费用不超过750(千元),同时还要求:

(1)受广告影响的女性超过200万;

(2)电视广告的费用不超过450(千元);(3)电视广告白天至少播出4次,最佳时段至少播出2次;(4)通过网络媒体、杂志做出的广告要重复5到8次。

解:

模型假设:

首先假设用电视做广告白天播出次数、最佳时间播出次数、网络媒体重复广告次数、杂志重复广告的次数分别为x1,x2,x3,x4。

建立模型如下:

MaxZ=350x1+880x2+430x3+180x4%受广告影响的顾客人数

s.t.

45x1+86x2+25x3+12x4≤750%广告费用限制

260x1+450x2+160x3+100x4≥2000%受广告影响的妇女的人数限制

45x1+86x2≤450%电视广告费用限制

x1≥4,x2≥2,5≤x3,x4≤8%其他限制

在Lindo中输入程序并进行分析有程序如下:

Max350x1+880x2+430x3+180x4

s.t.

45x1+86x2+25x3+12x4<750

45x1+86x2<450

260x1+450x2+160x3+100x4>2000

x3>5

x4>5

x3<8

x4<8

x1>4

x2>2

end

gin4

结果如下:

LPOPTIMUMFOUNDATSTEP12

OBJECTIVEVALUE=9042.79102

 

NEWINTEGERSOLUTIONOF8920.00000ATBRANCH1PIVOT17

BOUNDONOPTIMUM:

8920.000

ENUMERATIONCOMPLETE.BRANCHES=1PIVOTS=17

LASTINTEGERSOLUTIONISTHEBESTFOUND

RE-INSTALLINGBESTSOLUTION...

OBJECTIVEFUNCTIONVALUE

1)8920.000

VARIABLEVALUEREDUCEDCOST

X14.000000-350.000000

X23.000000-880.000000

X38.000000-430.000000

X48.000000-180.000000

 

ROWSLACKORSURPLUSDUALPRICES

2)16.0000000.000000

3)12.0000000.000000

4)2470.0000000.000000

5)3.0000000.000000

6)3.0000000.000000

7)0.0000000.000000

8)0.0000000.000000

9)0.0000000.000000

10)1.0000000.000000

NO.ITERATIONS=17

BRANCHES=1DETERM.=1.000E0

即这家广告公司在电视白天、最佳时段,网络媒体、杂志的广告次数分别为4,3,8,8受广告影响人数最多为8920千人.

实例2:

求解书本上P130的习题1。

列出线性规划模型,然后用Lindo求解,根据结果报告得出解决方案。

投资规划问题题目:

某银行经理计划用一笔资金进行有价证券的投资,可供购进的证券以及其信用等级、到期年限、收益如下表所示。

按照规定,市政证券的收益可以免税,其他证券的收益需按50%的税率纳税。

此外还有一下限制:

(1)政府及代办机构的证券总共至少要购进400万元;

(2)所购证券的平均信用等级不超过1.4(信用等级数字越小,信用程度越高)

(3)所购证券的平均到期年限不超过5年。

证券名称

证券种类

信用等级

到期年限

到期税前收益(%)

A

市政

2

9

4.3

B

代办机构

2

15

5.4

C

政府

1

4

5.0

D

政府

1

3

4.4

E

市政

5

2

4.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中输入并要求做灵敏性分析有:

Max0.043x1+0.027x2+0.025x3+0.022x4+0.045x5

s.t.

x2+x3+x4>4

x1+x2+x3+x4+x5<10

6x1+6x2-4x3-4x4+36x5<0

4x1+10x2-x3-2x4-3x5<0

x1>0

x2>0

x3>0

x4>0

x5>0

end

结果如下:

LPOPTIMUMFOUNDATSTEP0

OBJECTIVEFUNCTIONVALUE

1)0.2983637

VARIABLEVALUEREDUCEDCOST

X12.1818180.000000

X20.0000000.030182

X37.3636360.000000

X40.0000000.000636

X50.4545450.000000

 

ROWSLACKORSURPLUSDUALPRICES

2)3.3636360.000000

3)0.0000000.029836

4)0.0000000.000618

5)0.0000000.002364

6)2.1818180.000000

7)0.0000000.000000

8)7.3636360.000000

9)0.0000000.000000

10)0.4545450.000000

NO.ITERATIONS=0

 

RANGESINWHICHTHEBASISISUNCHANGED:

OBJCOEFFICIENTRANGES

VARIABLECURRENTALLOWABLEALLOWABLE

COEFINCREASEDECREASE

X10.0430000.0035000.013000

X20.0270000.030182INFINITY

X30.0250000.0173330.000560

X40.0220000.000636INFINITY

X50.0450000.0520000.014000

RIGHTHANDSIDERANGES

ROWCURRENTALLOWABLEALLOWABLE

RHSINCREASEDECREASE

24.0000003.363636INFINITY

310.000000INFINITY4.567901

40.000000105.71428720.000000

50.00000010.00000012.000000

60.0000002.181818INFINITY

70.0000000.000000INFINITY

80.0000007.363636INFINITY

90.0000000.000000INFINITY

100.0000000.454545INFINITY

(1)证券A,C,E分别投资2.082,7.364,0.454百万元,最大税后收益为0.298百万元

(2)由OBJECTIVEFUNCTIONVALUE的DUALPRICES中的第二行结果知,若资金增加100万元,收益可增加0.0298百万元,大于以2.75%的利率借到100万元资金的利息0.0275百万元,所以应借贷,投资方案需将上面模型第二个约束右端改为11,求解得到:

证劵A、C、E分别投资2.40百万元,最大税后收益为0.3007百万元。

(3)由OBJCOEFFICIENTRANGES的ALLOWABLEINCREASE中的x1,ALLOWABLEDECREASE的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中是来混合池和原料丙的吨数.混

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 公共行政管理

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1