鲈鱼身长、胸围与体重关系的讨论
鲈鱼身长、胸围与体重关系的讨论
摘要
本文讨论的是鲈鱼身长、胸围与体重之间的关系。根据题目中所给出的数据可以分
析出三点简单的结论:
? 鲈鱼的身长越长体重也就越重,体重与身长之间存在正相关的关系;
? 鲈鱼的胸围越长体重也越重,体重与胸围之间也存在正相关的关系;
? 鲈鱼的体重与身长、胸围共同存在某种关系。
根据以上的
,我建立了三个模型来使之满足以上结论:
32?模型一: W,L,80L,3008L,37262
此模型是利用MATLAB软件的多项式拟合法进行数据拟合的得到的初等函数,得出
体重与身长的简单关系。
32?模型二: W,,C,90C,2228C,118113
与?中模型类似,此模型是利用相同方法的到的体重与胸围的简单关系。
2?双变量模型: W,0.0327LC
考虑到单一变量的不可靠性,我将身长、胸围两变量同时考虑到模型的建立当中,
在合理的模型假设中得出结论。
本模型的优点在于对条件的逐渐加强,从单一变量过渡到双重变量,模型精确度得 到很好的提高。利用现有的MATLAB软件进行数据拟合,还有EXCEL自定义函数进行误差分析的计算,得出了模型参数,最终结果能够较好的反映现实。
关键字:单一变量 双变量 多项式拟合
1
1.问题重述
本问题讨论的是按照测量鲈鱼的身长、胸围来估算鲈鱼重量的方法。从常识出发,
鱼的体重应该与身长、胸围有关,一般情况下,身长越长的鱼体重也越重,胸围越长体
重也越重。但我们需要的是,跟据已知数据得出一种估算方法,这就要从定性分析过渡
到定量分析,方向明确后就要从影响体重的因素着手。首先考虑单一变量即:身长与体
重的简单关系;胸围与体重的简单关系。但这样的出的结论过于粗糙,不能很好的反映
现实,于是对条件加强。同时考虑身长、胸围对体重的影响,从而得到更精确的模型。
2.模型假设
?假定鱼池中只有一种鲈鱼;
?假定该鱼池中鲈鱼的密度相同;
?鲈鱼的体态用与胸围等周长,与身长等高的圆柱形来近似。
3.符号说明
鲈鱼的身长 L
C鲈鱼的胸围
W鲈鱼的体重
, 模型三的待定系数
4.模型建立与求解
当仅仅考虑身长对体重的影响时,由已知数据可以列
如下:
身长31.8 32.1 32.1 35.9 36.8 36.8 43.8 45.1 (cm)
重量(g) 482 482 454 652 737 765 1162 1389
表1 不同身长的鱼的体重
表中的鲈鱼身长是按照升序排列的,能看到随着身长的增长鱼的体重也随之增加,
利用MATLAB软件做出身长和体重的散点图如下:
2
身长和体重的散点图
1400
1300
1200
1100
1000
W(g)900
800
700
600
500
400303234363840424446L(cm)
根据散点图决定利用三次多项式拟合得到的各项系数如下:
1 -80 3008 -37262
从而得到了拟合函数:
32 W,L,80L,3008L,37262
根据拟合数据得到的图形1400
1300
1200
1100
1000
W(g)900
800
700
600
data1500data2
400303234363840424446L(cm)
3
利用得出的函数对鱼的体重进行估测并列如下表:
身长31.8 32.1 32.1 35.9 36.8 36.8 43.8 45.1 (cm)
重量(g) 482 482 454 652 737 765 1162 1389
拟合值454.4 481.4 481.4 695.5 726.6 726.6 1180.0 1377.1 (g)
相对误5.73 0.12 6.04 6.67 1.41 5.02 1.64 0.86 差(%)
表2 估测值与实际值的对比及相对误差 仅仅考虑胸围对体重的影响时,由已知数据可以列表如下:
胸围21.3 21.6 21.6 22.9 24.8 24.8 27.9 31.8 (cm)
重量(g) 482 482 454 652 737 765 1162 1389
表3 不同胸围的鱼的体重
表中的鲈鱼胸围是按照升序排列的,能看到随着身长的增长鱼的体重也随之增加,
利用MATLAB软件做出身长和体重的散点图如下
胸围和体重的散点图1400
1300
1200
1100
1000
W(g)900
800
700
600
500
40020222426283032C(cm)
同样利用三次多项式拟合得到的各项系数如下:
-1 90 -2228 18113
从而得到了拟合函数:
4
32 W,,C,90C,2228C,118113
利用得出的函数对鱼的体重进行估测并列如下表:
胸围21.3 21.6 21.6 22.9 24.8 24.8 27.9 31.8 (cm)
重量(g) 482 482 454 652 737 765 1162 1389
拟合值473 487.8 487.8 581.5 779.0 779.0 1142.9 1391.9 (cm)
相对误1.90 1.19 6.93 12.12 5.39 1.80 1.67 0.21 差(%)
表4 估测值与实际值的对比及相对误差
同时考虑身长、胸围对体重的影响:
此模型要用到基本假设?及即:鲈鱼的体态用与胸围等周长,与身长等高的圆柱形
2C来近似。因为圆柱体的体积等于底面积乘高,底面积可以用周长表示:.因此可以分4,
2析得出.又物体质量等于密度与体积的乘积,因此只需根据数据求出密度即可。W,LC
2,于是身长、胸围与体重的关系可以表示为:,问题转化为对系数的求解。W,,LC
,利用MATLAB软件和已知的八组数据可以求出对应的值:
0.0334 0.0322 0.0303 0.0346 0.0326 0.0338 0.0341 0.0305
为了得到精确地模型对数据进行处理
,0.0327 ,
2因此 W,0.0327LC
利用得出的函数对鱼的体重进行估测并列如下表:
重量(g) 765 482 1162 737 482 1389 652 454
估算值740 472 1115 740 490 1491 616 490 (g)
相对误3.25 2.12 4.05 0.42 1.60 7.37 5.58 7.87 差(%)
表5 估测值与实际值的对比及相对误差
5
5.模型检验
对于给出的三个模型分别进行了检验,分别求出了估算值与实际值的相对误差:
对于模型一:
相对误5.73 0.12 6.04 6.67 1.41 5.02 1.64 0.86 差(%)
平均相对误差为: 3.44%
对于模型二:
相对误1.90 1.19 6.93 12.12 5.39 1.80 1.67 0.21 差(%)
平均相对误差为: 3.90%
对于模型三:
相对误3.25 2.12 4.05 0.42 1.60 7.37 5.58 7.87 差(%)
平均相对误差为: 2.26%
从数据上看模型一二三基本符合实际。
6.模型评价及推广
本问题采用了三个模型进行求解,模型一二只考虑单一变量,利用三次多项式进行
数据拟合,得到了以下两模型:
32模型一: W,L,80L,3008L,37262
32模型二: W,,C,90C,2228C,118113
对此二模型的检验得到的精度均在5%以内,因此可以用来对实际问题进行估测。
因单一变量的模型较粗糙,于是将两个变量综合考虑,通过对机理的分析得到了更
加精确的模型三:
2 W,0.0327LC
此模型的精度在2%左右,较前两模型有进一步提高,可以更好的反映实际。原因应
归咎于变量的选取、条件的加强。
此模型的缺点在于模型假设过于理想,仅仅将鱼的体型看做圆柱形,这会带来较大
误差。还有一点是模型求解所利用的数据过少,这也增大了误差。在实际的应用中应加
大数据的采集量来减小误差。
此模型可一推广到对木料重量的估测上,如应用模型三,其精确度会进一步提高,
因木料的形状更接近圆柱形,更满足模型假设。
6
附录
建模中利用到MATLAB的程序如下
>>L=[31.8 32.1 32.1 35.9 36.8 36.8 43.8 45.1];
>>W=[482 482 454 652 737 765 1162 1389];
>>plot(L,W,'*')
xlabel('L'),ylabel('W');
>>p=polyfit(L,W,3)
p =
1.0e+004 *
0.0001 -0.0080 0.3008 -3.7262
>>L=[31.8 32.1 32.1 35.9 36.8 36.8 43.8 45.1];
>> C=[ 21.3 21.6 21.6 22.9 24.8 24.8 27.9 31.8];
>> W=[482 482 454 652 737 765 1162 1389];
>>a=W./L./C.^2
a =
0.0334 0.0322 0.0303 0.0346 0.0326 0.0338 0.0341
0.0305
7