乌龟性别与温度的数学模型_精品文档.doc
- 文档编号:1520218
- 上传时间:2022-10-22
- 格式:DOC
- 页数:15
- 大小:268.50KB
乌龟性别与温度的数学模型_精品文档.doc
《乌龟性别与温度的数学模型_精品文档.doc》由会员分享,可在线阅读,更多相关《乌龟性别与温度的数学模型_精品文档.doc(15页珍藏版)》请在冰豆网上搜索。
数学建模期末作业
乌龟性别的决定因素问题
(习题10——10)
姓名:
李红军
学号:
2012212816
专业:
数学与应用数学
年级:
2012级
摘要
本文针对幼龟性别温度关系进行建立模型,在建模时建立温度与雄龟比例的模型,由于雄龟比例只可能在【0,1】之间取值,所以不能建立一般的统计回归模型,所以可以建立Logit模型。
利用MATLAB统计工具箱中的命令glmfit求解。
再求出各个系数估计值后用EXCEL表格进行处理算出每个温度下雄龟比例的估计值,对模型进行验证,为了提高模型的拟合效果可以在Logit模型中添加t的高次方,并用利用MATLAB统计工具箱中的命令regress求解,求出各个系数估计值,置信区间和模型相关系数。
为了能直观的比较模型拟合效果可以利用MATLAB中的plot工具会出(t,logit)的散点图,并用利用Tools下BasicFitting工具找出一条拟合效果最好的曲线,并得出其对应的系数。
最后可以通过logit基本模型得出当温度为27.7329度幼龟比例为1:
1,而且温度每增加一度雄龟与雌龟比例扩大9.12484倍。
关键词:
logit模型,置信区间,相关系数
一、问题提出
人类的性别是由基因决定的,乌龟的性别主要有什么因素决定的呢?
科学研究表明,决定幼龟性别的最关键的因素是乌龟孵化时的温度。
为了研究温度是如何影响幼龟的雌雄比例,美国科学家对某一类乌龟的孵化过程做了实验,试验在五个不同恒定温度下进行,每个温度下分别观察3批乌龟蛋的孵化过程,得到的数据如下:
温度
乌龟蛋个数
雄龟个数
雌龟个数
雄龟比例
27.2
10
1
9
10%
8
0
8
0%
9
1
8
11.1%
27.7
10
7
3
70%
6
4
2
66.7%
8
6
2
75%
28.3
13
13
0
100%
9
6
3
66.7%
8
7
1
87.5%
28.4
10
7
3
70%
8
5
3
62.5%
9
7
2
77.8%
29.9
11
10
1
90.9%
8
8
0
100%
9
9
0
100%
二、基本假设
假设1;幼龟性别只与温度有关
三、符号说明
符号
意义
单位
备注
t
乌龟孵化时的温度
℃
P(x)
雄龟比例
S
乌龟蛋总数
个
X
雄龟个数
个
C
雌龟个数
个
四、问题分析
在本题由于是求温度与性别比例的模型,在数据表中每个温度都记录了三批乌龟,所以首先要对数据进行处理,利用excel算出每个温度对应下乌龟的总数,雄龟总个数,雌龟总个数和雄龟比例。
温度
乌龟蛋个数
雄龟个数
雌龟个数
雄龟比例
27.2
27
2
25
7.41%
27.7
24
17
7
70.83%
28.3
30
26
4
86.67%
28.4
27
19
8
70.37%
29.9
28
27
1
96.43%
为了使得运算更简单可以把温度进行预处理,把27.2看成0,以此类推可得
温度
乌龟蛋个数
雄龟个数
雌龟个数
雄龟比例
0
27
2
25
7.41%
0.5
24
17
7
70.83%
1.1
30
26
4
86.67%
1.2
27
19
8
70.37%
2.7
28
27
1
96.43%
为了更直观观察其回归关系,利用MATLAB绘制出散点图。
从图中可以看出回归曲线是一条近于3次样条的多项式回归曲线,其回归模型为
(1)
然而在这个问题中
(1)是回归方程中P(x)的取值不一定在[0,1]中,即使P(x)取值在[0,1]中,有意在给定t是,误差项也只能取0,1两个值,显然不具有正态性,而且的方差依赖于与t,具有异方差性,这些都违反了普通回归分析的前提条件,因此,该题不能用用普通回归分析。
由于P(x)在[0,1]之间取值,可以使用Logit模型。
五、模型的建立与求解
5.1模型的建立
5.2模型的求解
Logit模型是一种广义线性模型,可利用MATLAB统计工具箱总的命令glmfit求解。
参数
参数估计值
标准差
B0
-101783
0.3739
B1
2.2110
0.4309
所以估计值为
即
所以当幼龟比例为1:
1时计算出温度为27.7329度
令odd(t)为雄龟与雌龟比例,故有
当温度增加1度时odd比为
于是
由于b1=2.2110,所以温度每增加一度时雄龟与雌龟比例增加到原来的9.12484倍
5.3结果的分析及验证
对模型各个温度进行验证
温度
乌龟蛋个数
雄龟个数
雌龟个数
雄龟比例
雄龟估计值
0
27
2
25
7.41%
0.235357
0.5
24
17
7
70.83%
0.481812
1.1
30
26
4
86.67%
0.777955
1.2
27
19
8
70.37%
0.813801
2.7
28
27
1
96.43%
0.991768
5.3模型改进
从以上结果可知拟合偏差太大,不适合于做为最终结果。
由于模型的右端是温度t的线性函数,可以考虑加入t的二次项后,看是否能提高模型的拟合程度。
即考虑模型为
执行以下程序
>>[b2,dev2]=glmfit([tt.^2],[xs],'binomial','logit');
b2,pval=1-chi2cdf(dev-dev2,1)
b2=
-1.6582
3.7840
-0.7745
pval=
0.0304
计算出b0,b1,b2的估计值为-1.6582、3.7840、-0.7745
所以模型为
温度
乌龟蛋个数
雄龟个数
雌龟个数
雄龟比例
雄龟估计值
0
27
2
25
7.41%
0.160003
0.5
24
17
7
70.83%
0.512178
1.1
30
26
4
86.67%
0.827363
1.2
27
19
8
70.37%
0.854124
2.7
28
27
1
96.43%
0.948461
由以上表可知拟合偏差减小,由此可知,加入高次方后可以提高拟合偏差,所以为了进一步提高拟合效果,可以先计算出logit对应的值并画出并绘出(t,logit)的散点图
温度
乌龟蛋个数
雄龟个数
雌龟个数
雄龟比例
Logit(t)
0
27
2
25
7.41%
-2.52535
0.5
24
17
7
70.83%
0.8871418
1.1
30
26
4
86.67%
1.87209067
1.2
27
19
8
70.37%
0.8649796
2.7
28
27
1
96.43%
3.296252
再利用Tools下BasicFitting工具找出一条拟合效果最好的曲线,并得出其对应的系数
可知模型为
个系数为
所以模型为
当所以幼龟比例为1:
1时P(x)=0.5.所以logit=0;即
可以得出当温度为27.57932852、28.4627667和29.854698时幼龟比例为1:
1;
再次各个数据进行验证可得
温度
乌龟蛋个数
雄龟个数
雌龟个数
雄龟比例
雄龟估计值
0
27
2
25
7.41%
0.0741
0.5
24
17
7
70.83%
0.7083
1.1
30
26
4
86.67%
0.86666
1.2
27
19
8
70.37%
0.7035
2.7
28
27
1
96.43%
0.9633
由以上结果可以看出拟合程度很好。
在用MATLAB统计工具中的命令regress求解得知相关系数R为1;拟合效果很好。
六、参考文献
数学模型第四版高等教育出版社
七、附录
模型1求解程序
>>t=[00.51.11.22.7]';
>>x=[217261927]';
>>s=[2724302728]';
>>proport=x./s;
>>[b,dev,stats]=glmfit(t,[xs],'binomial','logit');
>>logitfit=glmval(b,t,'logit');
>>plot(t,proport,'o',t,logitfit,'r-');
>>xlabel('t');ylabel('proportionofx')
>>b,bi=stats.se,dev
b=
-1.1783
2.2110
bi=
0.3739
0.4309
dev=
14.8629
模型1验证程序
>>x=[01;0.51;1.11;1.21;2.71]
x=
01.0000
0.50001.0000
1.10001.0000
1.20001.0000
2.70001.0000
>>y=[-2.525350.88714181.872090670.86497963.296252]';
alpha=0.05;
[b,bint,r,rint,stats]=regress(y,x,alpha)
b=
1.8372
-1.1419
bint=
-0.06673.7411
-3.85991.5760
r=
-1.3834
1.1105
0.9931
-0.1978
-0.5223
rint=
-2.7014-0.0654
-2.02104.2419
-2.61444.6005
-4.41154.0160
-2.16771.1230
stats=
0.75879.43110.05451.4817
模型2的验证程序
x=[001;0.50.5^21;1.1^21.11;1.2^21.21;2.7^22.71]
x=
001.0000
0.50000.25001.0000
1.21001.10001.0000
1.44001.20001.0000
7.29002.70001.0000
>>y=[-2.525350.88714181.872090670.86497963.296252]';
alpha=0.05;
[b,bint,r,rint,stats]=regress(y,x,alpha)
b=
-0.3797
2.7004
-1.1635
bi
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 乌龟 性别 温度 数学模型 精品 文档