章绍辉习题2作业讲评

更新时间:2024-05-09 15:12:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

习题2作业讲评

1. 继续考虑2.2节的“汽车刹车距离”案例,请问“两秒准则”和“一车长度准则”一样吗?“两秒准则”是否足够安全?对于安全车距,你有没有更好的建议?(“两秒准则”,即后车司机从前车经过某一标志开始,默数2秒之后到达同一标志,而不管车速如何. 刹车距离与车速的经验公式

d?0.75v?0.082678v2,速度单位为m/s,距离单位为m)

解答

(1)“两秒准则”表明前后车距与车速成正比例关系. 引入以下符号:

D ~ 前后车距(m);v ~ 车速(m/s);

于是“两秒准则”的数学模型为D?K2v?2v. 与“一车长度准则”相比是否一样,依赖于一车长度的选取.

2比较d?0.75v?0.082678v与D?2v,得:

d?D??0.082678v?1.25?v

所以当v?15.12 m/s(约合54.43 km/h)时,有dD,即前后车距小于刹车距离的理论值,不够安全. 也就是说,“两秒准则”适用于车速不算很快的情况.

另外,还可以通过绘图直观的解释“两秒准则”够不够安全. 用以下MATLAB程序把刹车距离实测数据和“两秒准则”都画在同一幅图中(图1).

v=(20:5:80).*0.44704;

d2=[18,25,36,47,64,82,105,132,162,196,237,283,334 22,31,45,58,80,103,131,165,202,245,295,353,418

20,28,40.5,52.5,72,92.5,118,148.5,182,220.5,266,318,376]; d2=0.3048.*d2;

k1=0.75; k2=0.082678; K2=2; d1=[v;v;v].*k1; d=d1+d2;

plot([0,40],[0,K2*40],'k') hold on

plot(0:40,polyval([k2,k1,0],0:40),':k') plot([v;v;v],d,'ok','MarkerSize',2)

title('比较刹车距离实测数据、理论值和两秒准则') legend('两秒准则','刹车距离理论值',...

'刹车距离的最小值、平均值和最大值',2) xlabel('车速v(m/s)') ylabel('距离(m)') hold off

比较刹车距离实测数据、理论值和两秒准则180160140120两秒准则刹车距离理论值刹车距离的最小值、平均值和最大值 距离(m)100806040200 0510152025车速v(m/s)303540

图1

(2)用最大刹车距离除以车速,得到最大刹车距离所需要的尾随时间(表1),并以尾随时间为依据,提出更安全的“t秒准则”(表2)——后车司机根据车速快慢的范围,从前车经过某一标志开始,默数t秒钟之后到达同一标志.

表1 尾随时间 车速(mph) 车速(m/s) 最大刹车距离(m) 尾随时间(s) 20 8.9408 13.411 1.5 25 11.176 17.831 1.5955 30 13.411 23.774 1.7727 35 15.646 29.413 1.8799 40 17.882 37.795 2.1136 45 20.117 46.482 2.3106 50 22.352 56.693 2.5364 55 24.587 68.732 2.7955 60 26.822 81.686 3.0455 65 29.058 96.469 3.3199 70 31.293 113.39 3.6234 75 33.528 132.74 3.9591 80 35.763 154.23 4.3125 表2 t秒准则 车速(mph) 0~10 10~35 35~60 60~75 t (s) 1 2 3 4 绘制图2的MATLAB程序: v=(20:5:80).*0.44704;

d2=[18,25,36,47,64,82,105,132,162,196,237,283,334 22,31,45,58,80,103,131,165,202,245,295,353,418

20,28,40.5,52.5,72,92.5,118,148.5,182,220.5,266,318,376]; d2=0.3048.*d2;

k1=0.75; k2=0.082678; d=d2+[v;v;v].*k1; vi=0:40;

plot([0,10*0.44704],[0,10*0.44704],'k',... vi,k1.*vi+k2.*vi.*vi,'k:',... [v;v;v],d,'ok','MarkerSize',2) legend('t 秒准则','刹车距离理论值',...

'刹车距离的最小值、平均值和最大值',2)

hold on

plot([10,35]*0.44704,2*[10,35]*0.44704,'k',... [35,60]*0.44704,3*[35,60]*0.44704,'k',... [60,75]*0.44704,4*[60,75]*0.44704,'k') title('t 秒准则,刹车距离的模型和数据') xlabel('车速v(m/s)') ylabel('距离(m)') hold off

t 秒准则,刹车距离的模型和数据180160140120距离(m) t 秒准则刹车距离理论值刹车距离的最小值、平均值和最大值100806040200 0510152025车速v(m/s)303540

图2

4. 继续考虑2.3节“生猪出售时机”案例,假设在第t天的生猪出售的市场价格(元/公斤)为

p(t)?p(0)?gt?ht2 (1)

其中h为价格的平稳率,取h=0.0002. 其它模型假设和参数取值保持不变.

(1) 试比较(1)式与(2.3.1)式,解释新的假设和原来的假设的区别与联系;

(2)在新的假设下求解最佳出售时机和多赚的纯利润; (3)作灵敏度分析,分别考虑h对最佳出售时机和多赚的纯利润的影响;

(4)讨论模型关于价格假设的强健性. 解答一(用MATLAB数值计算)

(1)比较(1)式与(2.3.1)式,(1)式表明价格先降后升,(2.3.1)式假设价格匀速下降,(1)式更接近实际(图3). 两个假设都满足p?(0)??g,在最佳出售时机附近误差微小(图4). 绘图的程序

p=@(t)12-0.08*t+0.0002*t.^2; figure(1) n=400;

plot([0,n],[12,12-0.08*n],'k:',... 0:.1:n,p(0:.1:n),'k') axis([0,400,0,20])

title('模型假设(1)式与(2.3.1)式的比较')

legend('p(0) - g t (1)式',... 'p(0) - g t + h t^2 (2.3.1)式') xlabel('t(天)')

ylabel('p(元/公斤) ') figure(2) n=20;

plot([0,n],[12,12-0.08*n],'k:',... 0:.1:n,p(0:.1:n),'k')

title('模型假设(1)式与(2.3.1)式的比较')

legend('p(0) - g t (1)式',... 'p(0) - g t + h t^2 (2.3.1)式') xlabel('t(天)'), ylabel('p(元/公斤) ')

模型假设(1)式与(2.3.1)式的比较20p(0) - g t (1)式181614p(0) - g t + h t2 (2.3.1)式 p(元/公斤) 121086420 050100150200t(天)250300350400

图3

模型假设(1)式与(2.3.1)式的比较12p(0) - g t (1)式11.811.611.411.21110.810.610.4 0p(0) - g t + h t2 (2.3.1)式 p(元/公斤) 246810t(天)1214161820

图4

(2)在(1)式和(2.3.1)式组成的假设下,多赚的纯利润为

Q(t)??rp(0)?gw(0)?c?t??hw(0)?gr?t2?hrt3

保留h,代入其他具体数值,得

Q(t)?ht3??90h?0.08?t2?1.6t

Q?(t)?3ht2??180h?0.16?t?1.6?0

解得生猪出售时机为

t1?0.16??180h?0.16?6h2?19.2h?30(舍去负根)

多赚的纯利润为

Q1?ht13??90h?0.08?t12?1.6t1.

代入h=0.0002,得t1?13.829天,Q1?10.798元.

或者用MATLAB函数fminbnd计算,脚本如下: C=@(t)3.2*t; w=@(t)90+t;

p=@(t,h)12-0.08*t+h*t.^2;

Q=@(t,h)p(t,h).*w(t)-C(t)-90*12; Qh=@(t)-Q(t,0.0002); t1=fminbnd(Qh,0,30) Q1=Q(t1,0.0002)

为帮助理解,可用以下脚本绘制图5: figure(2) tp=0:250;

plot(tp,Q(tp,0.0002),'k') title('纯利润Q') xlabel('t(天)') ylabel('Q(元) ')

纯利润Q1000-100Q(元) -200-300-400-500-600050100t(天)150200250

图5

?tt(3)用以下MATLAB脚本计算灵敏度S(t,h)??hh和?QQS(Q,h)??hh,将结果列表.

结论:h的微小变化对t和Q的影响都很小 Qh=@(t)-Q(t,0.0002*1.01); [tn,Qn]=fminbnd(Qh,0,30); (tn-t1)/t1/0.01 (-Qn-Q1)/Q1/0.01

Qh=@(t)-Q(t,0.0002*1.05); [tn,Qn]=fminbnd(Qh,0,30); (tn-t1)/t1/0.05 (-Qn-Q1)/Q1/0.05

Qh=@(t)-Q(t,0.0002*1.1); [tn,Qn]=fminbnd(Qh,0,30); (tn-t1)/t1/0.1 (-Qn-Q1)/Q1/0.1

表3 数值计算最佳出售时机t对h的灵敏度

h??h ?hh(%) t??t ?tt(%) S(t,h)??tt ?hh0.000202 0.00021 0.00022 1 5 10 13.886 14.121 14.431

0.41459 2.1176 4.3536 0.41459 0.42352 0.43536 表4 数值计算多赚的纯利润Q对h的灵敏度

h??h ?hh(%) Q??Q ?QQ(%) S(Q,h)??QQ?hh 0.000202 0.00021 0.00022

1 5 10 10.838 11.001 11.214 0.36936 1.8802 3.8479 0.36936 0.37604 0.38479 (4)市场价格是经常波动的,如果价格下跌,往往会止跌回稳,模型假设(1)式以二次函数来刻画价格止跌回升的变化趋势,如果考虑的时间段长达数月,(1)式比(2.3.1)式更接近实际(见图3),但是本问题的最佳出售时机不超过20天,(1)式与(2.3.1)式在最佳出售时机附近非常近似(见图4),(1)式导致的模型解答可以由(2.3.1)式导致的解答加上灵敏度分析所代替. 所以采用更为简单的(2.3.1)式作为假设更好.

具体分析如下:

由12?(g??g)t?p(t,h),得

?g12?p(t,h)??1, ggt代入h=0.0002,t=13.82852279,g=0.08,得

?g??0.034571. g?t?g?S(t,g)由于,根据课本2.3节,代入S(t,g)??5.5,t=10,tg算得t??t?11.901,与t=13.829只相差两天.

用于以上分析计算的MATLAB脚本: dg_g=(12-p(ts,0.0002))/ts/0.08-1 10+dg_g*10*(-5.5)

解答二(用MATLAB的Symbolic Math Toolbox的MuPAD软件符号计算)

(1)运行以下MuPAD语句,绘得图6和图7:

plot(plot::Function2d(12-0.08*t+0.0002*t^2,t=0..400), plot::Function2d(12-0.08*t,t=0..150, LineStyle=Dashed));

plot(plot::Function2d(12-0.08*t+0.0002*t^2,t=0..20), plot::Function2d(12-0.08*t,t=0..20, LineStyle=Dashed),#O);

(1)式表明价格先降后升,在实际当中有一定道理. 而 (2.3.1)式假设价格匀速下降. 两个假设都满足p?(0)??g,在最佳出售时机附近误差微小.

图6 假设(2.3.1)式与(1)式的比较

图7 假设(2.3.1)式与(1)式的比较

(2) 在(1)式和(2.3.1)式组成的假设下,保留h,代入其他具体数值,计算多赚的纯利润. 运行以下MuPAD语句:

C:=t->32/10*t: w:=t->90+t:

p:=(t,h)->12-8/100*t+h*t^2:

Q:=(t,h)-->expand(w(t)*p(t,h)-C(t)-90*12); plot(plot::Function2d(Q(t,0.0002), t=0..290));

228算得Q(t,h)?ht?90ht?t?t,绘得图8.

25532

02 图8 Q(t,0.00的图像

运行以下MuPAD语句:

S:=solve(diff(Q(t,h),t),t) assuming h>0; t1:=S[1];

subs(t1,h=0.0002); t2:=S[2];

ts:=subs(t2,h=0.0002); Q2:=Q(t2,h);

Qs:=subs(Q2,h=0.0002);

?Q?0,解得两根: 由方程?tt1?162532400h2?3845h?625?4500h?4150h164500h?2532400h2?384h?5625?4 t2??150h代入h=0.0002,得t1?192.8381439, t2?13.82852279(天). t2符合题意,t1应该舍去(对应的Q是负数). t2对应的多赚的纯利润为10.79837809元.

(3)接着上一小题,运行以下MuPAD语句:

subs(diff(t2,h)*h/t2, h=0.0002); //t对h的灵敏度

利用导数算得t对h的灵敏度:

dthS(t,h)???0.4124276803.

dht运行以下MuPAD语句:

subs(diff(Q2,h)*h/Q2,h=0.0002); //Q对h的灵敏度,方法一 subs(diff(Q(t,h),h)*h/Q(t,h),t=ts,h=0.0002); //Q对h的灵敏度,方法二,更简单

用两种方法利用导数算得Q对h的灵敏度:

S(Q,h)?dQh??0.367739025. dhQ结论:h的微小变化对t2和Q2的影响都很小. (4)同解答一

5. 继续考虑第2.3节“生猪出售时机”案例,假设在第t天的生猪体重(公斤)为

w(t)?w0wm (2)

w0??wm?w0?e??t其中w0?w(0)?90(公斤),wm?270(公斤),其它模型假设和参数取值保持不变.

(1)试比较(2)式与(2.3.2)式,解释新的假设和原来的假设的区别与联系(提示:说明当α (α>0)取何值时,在t=0时可以保持w?(0)?r?1;说明当t增大时,猪的体重会如何变化).

(2)在新的假设下求解最佳出售时机和多赚的纯利润. (3)参数wm代表猪长成时的最终重量,对wm做灵敏度分析,分别考虑wm对最佳出售时机和多赚的纯利润的影响.

(4)讨论模型关于生猪体重假设的强健性. 解答一(用MATLAB数值计算)

(1)在(2)式中,为使w?(0)?r,必须?w0(wm?w0)?wm. 当

wm=270,w0=90时,有??160.

新假设(2)式是阻滞增长模型,假设生猪体重的增长率是体重的线性递减函数,于是体重增加的速率先快后慢,时间充分长后,体重趋于wm. 而(2.3.2)式w(t)?w0?rt只假设体重匀速增加. 长时间来看,新假设比原假设更符合实际(图9). 两个假设都满足w?(0)?r,在最佳出售时机附近误差微小(图10).

模型假设(2.3.2)式与(2)式的比较300 250价格 p(元/公斤) 20015010050p(0) - g t (2.3.2)式p(0) - g t + h2 (2)式0 050100150200t(天)250300350400

图9

115p(0) - g t (2.3.2)式p(0) - g t + h2 (2)式110 价格 p(元/公斤) 1051009590 0246810t(天)1214161820

图10

C:=t->3.2*t:

w:=(t,wm)->90*wm/(90+(wm-90)*E^(-t/60)): p:=t->12-0.08*t:

Q:=(t,wm)-->w(t,wm)*p(t)-C(t)-90*12; plot(plot::Function2d(Q(t,270),t=0..30));

90wm?12?0.08t??3.2t?1080,绘得图13. 算得Q(t,wm)??t6090??wm?90?e

0)图13 Q(t,27的图像

运行以下MuPAD语句:

T:=solve(diff(Q(t,270),t),t); ts:=T[1]; Qs:=Q(ts,270);

可解出Q的驻点的数值解ts?14.43357158(天),根据函数图像和问题的实际意义,可知这是所求的最佳出售时机,对应的多赚

的纯利润为Qs?12.15129217元.

(3)接着上一小题,运行以下MuPAD语句,但是求不出当Q(t,wm)达到最大值时t关于wm的函数解析式:

solve(diff(Q(t,wm),t),t);

运行以下MuPAD语句:

solve(diff(Q(t,wm),t),wm);

可见当Q(t,wm)达到最大值时wm关于t的反函数解析式却有可能求得出,只是MuPAD给出的表达式很复杂. 其实可以按如下步骤推出wm关于t的反函数解析式:

g1:=diff(Q(t,wm),t)=0;

?Q?0即: 算得?t3wm?0.08t?12??wm?90?7.2wm???3.2?02 wm?90w?90??t60m?902e?90?t60?t60e?e?观察上式,发现分母大于零,而且去分母之后,合并wm的同类项,可以表示为wm的二次方程:

g2:=g1*((wm-90)/E^(t/60)+90)^2*25*E^(t/60); //去分母 g2:=collect(g2,wm); //合并wm的同类项,t当作参数

?801440016200et30??2??38700?wm?270?t60?3t?wm??270t?t60?t60eee????648000et30648000?1296000??t60?0t60ee

运行以下MuPAD语句,由图像(图14)可知在实际问题

80关心的0

eplot(plot::Function2d((270-80/E^(t/60)-3*t),t=0..100));

图4 二次项系数的符号

于是,运行以下MuPAD语句,解方程:

S:=solve(g2,wm);

MuPAD给出解的四种情况,其中第一种是二次项系数非零,正是本问题所要求的解. 但是二次方程有两个根,要检验哪一个根才是当Q(t,wm)达到最大值时wm关于t的反函数解析式.

float(subs(S[1][1],t=ts));

算得当t?ts时,有wm??0.8519704108,这是增根,舍去;

float(subs(S[1][2],t=ts));

算得当t?ts时,有wm?270,这是要找的根;

wms:=S[1][2]; //当Q达到最大值时wm关于t的反函数解析式

float(subs(1/(diff(wms,t))*wm/t,t=ts,wm=270)); //t对wm的灵敏度,利用反函数求导数

利用反函数求导数算得t对wm的灵敏度:

dtwm1wmS(t,wm)?????3.80183985.

dwdwmttmdtQ对wm的灵敏度则比较简单,运行以下MuPAD语句:

float(subs(diff(Q(t,wm),wm)*wm/Q(t,wm), t=ts,wm=270)); //Q对wm的灵敏度

利用导数算得Q对wm的灵敏度:

dQwmS(Q,wm)???7.786585188.

dwmQ结论:wm的微小变化对t和Q存在一定影响,不算厉害.

(4)模型假设(2)式以阻滞增长模型来刻画生猪体重的变化趋势,如果考虑的时间段长达数月,(2)式比(2.3.2)式更符合实际,但是本问题的最佳出售时机不超过20天,(2)式与(2.3.2)式在最佳出售时机附近非常近似,(2)式导致的模型解答可以由(2.3.2)式导致的解答加上灵敏度分析所代替. 所以采用更为简单的(2.3.2)式作为假设更好. 具体分析如下:

由90??r??r?t?w(t,wm),得

?r?w(t,wm)?90?r, t代入wm?270,t?ts?14.43357158,r=1,得

?r?r??0.03656535279. r1?t?r?S(t,r)由于,根据2.3节,代入S(t,r)?6.5,t=10,trr=1,算得t??t?12.37674793,与ts?14.43357158只相差两天.

以上计算可以用以下MuPAD语句实现:

dr:=float((w(ts,270)-90)/ts-1); 10+dr*10*6.5;

本文来源:https://www.bwwdw.com/article/buag.html

Top