毕业设计细菌增长模型数学建模一等奖论文.docx
《毕业设计细菌增长模型数学建模一等奖论文.docx》由会员分享,可在线阅读,更多相关《毕业设计细菌增长模型数学建模一等奖论文.docx(19页珍藏版)》请在冰豆网上搜索。
毕业设计细菌增长模型数学建模一等奖论文
2012年交通学院第二届数学建模竞赛
承诺书
我们仔细阅读了中国大学生数学建模竞赛的竞赛规则.
我们完全明白,在竞赛开始后参赛队员不能以任何方式(包括电话、电子邮件、网上咨询等)与队外的任何人(包括指导教师)研究、讨论与赛题有关的问题。
我们知道,抄袭别人的成果是违反竞赛规则的,如果引用别人的成果或其他公开的资料(包括网上查到的资料),必须按照规定的参考文献的表述方式在正文引用处和参考文献中明确列出。
我们郑重承诺,严格遵守竞赛规则,以保证竞赛的公正、公平性。
如有违反竞赛规则的行为,我们将受到严肃处理。
我们参赛选择的题号是(从A/B/C/D中选择一项填写):
B
我们的参赛报名号为(如果赛区设置报名号的话):
所属学校(请填写完整的全名):
武汉理工大学
参赛队员(打印并签名):
1.江泽武
2.徐佳恒
3.陈影
指导教师或指导教师组负责人(打印并签名):
日期:
2012年11月29日
评阅编号:
2012年交通学院第二届数学建模竞赛
编号专用页
评阅编号:
评阅记录:
评
阅
人
评
分
备
注
细菌增长模型
摘要
针对题目所提要求,我们建立了两个细菌增长模型,分别用于对细菌的增长情况做短期和中长期的模拟及预测。
为了对细菌增长发展做短期的预测,根据题目所表述的意思,在短期内,细菌处于自然理想的条件下,每20min左右会通过分裂生长繁殖一代,暂且短期内不考虑细菌的死亡,,我们建立离散Malthus细菌增长模型,主要的参数变量即为其单位时间内的增长量,在理想条件下,由于增长率为一确定的常数,以此来建立简单的细菌增长模型,来模拟此状态下种群的数量形式,其变化形式将呈现指数增长,由于其简单可行,在初始阶段预测种群的数量变化有着合理的数学理论基础。
为了对细菌的生长做中长期的模拟,由Malthus细菌增长模型,模拟酵母菌的生长,发现短期内有一定的重合度,但一定时间后,发现存在较大误差,因此我们根据实际情况,建立新的模型,得出数量和时间的函数关系。
考虑到生物学上细菌在培养基的生长时,在营养的有限情况下,封闭培养基里生物数量的增长最终都趋近于零,查阅资料可知,经过一段时间后,种群数量趋于一个稳定的值,为排除生长营养不足对细菌数量的干扰,我们假设细菌生长在稳定的培养基里,外界环境不受破坏,则在一定的空间内,细菌数量随时间的函数图象呈“S”型曲线增长,我们通过假设满足增长率的倒数成线性增长关系,建立线性回归方程,选取前面17组数据,用最小二乘法拟合出其参数,然后根据误差分析该假设的合理性,最终得出离散的Beverton-Holt模型,最后解出细菌数量关于时间的函数解析式,并计算出第17h、18h的细菌数量,与题目给出数据进行比较,进而判定该模型的合理性。
关键词:
Malthus模型指数增长Beverton-Holt模型差分方程一次线性回归最小二乘法。
目录
一、问题重述2
二、问题分析3
三、模型假设3
四、定义与符号说明4
五、模型建立与求解4
5.1模型Ⅰ(问题一):
离散型Malthus模型4
5.1.1模型的建立4
5.1.2模型的求解4
5.2模型Ⅱ(问题二):
Beverton-Holt模型4
5.2.1.模型的建立5
5.2.2模型的求解6
5.2.3模型的验证10
六、模型优缺点分析及改进方向11
6.1模型的优点11
6.2模型的缺点11
6.3模型的改进方向11
七、参考文献12
一、问题重述
在自然界中,细菌无处不在,而细菌的存在直接关系到人类的命运。
随着科学技术水平的不断提高,人们对细菌的研究越来越深入,细菌的研究工作对人类的生活的重要性也逐渐显现出来。
细菌在有关疾病预防与治疗、基因的研究等方面的作用尤为突出。
同时,自然界中,有些细菌的大量繁殖也会导致疾病。
因此,对细菌的繁殖情况以及其增长规律进行研究与分析是一个不可或缺的过程。
关于细菌繁殖问题如今已有了多方面的研究,细菌一般是以二分裂方式进行繁殖的,在理想条件下细菌数目按照指数形式增长。
根据题意,本文需要解决的问题有:
1.理想条件下:
分析某种细菌增长规律,求出细菌在理想条件下种群数量的形式的数学模型。
2.考虑实际情况:
由于环境阻力的限制,当细菌增长到一定数量时,其繁殖会受到一定影响。
查阅资料可知,经过一定时间,在各种因素作用下,种群数量增长会趋于稳定,其数量与时间关系图像呈“s”型曲线,下表是某个培养基中酵母菌数目随时间的变化关系:
表1酵母菌数量变化表
培养时间(h)
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
酵母菌数(个)
10
18
29
47
71
119
175
257
351
441
513
560
595
629
641
651
656
660
662
根据以上数据,找出合理的数量与时间之间的函数关系。
二、问题分析
随着科学技术和生物工程的快速发展,细菌在人类生活中的应用也越来越广泛,本文针对细菌繁殖规律,主要解决两个问题,即建立理想状况和实际情况中细菌数量的增长模型。
对于问题一,在理想状况下,由于细菌以二分裂方式进行增殖,且环境适宜,不考虑细菌的死亡,则一个细菌经过一定时间分裂成两个,两个又分裂成四个……依次类推下去。
可以发现细菌数量呈指数形式增长,然后依此建立模型,求出结果。
对于问题二,在实际情况中,由于环境阻力的限制,当细菌增长到一定数量时,其繁殖会受到一定影响。
此时需要建立新的模型,经过分析已知条件和问题,查阅资料,可结合离散的Beverton-Holt模型,建立新的模型,然后用前17组数据以最小二乘法求出参数,进而得出
,最后按此模型求出17h、18h酵母菌的数量,与已知进行对比,对此模型可行性进行评估。
三、模型假设
1.有一种细菌,细菌在理想条件(即生长温度、湿度、酸碱度等适宜,营养充足等)下生长繁殖;
2.细菌数量初始值为1,在
(1)条件下每20min左右通过二分裂繁殖一代;
3.不考虑细菌种间斗争,并且该细菌在短时间(研究时间)内不会死亡。
四、定义与符号说明
符号
符号解释
时间
细菌繁殖一次所需时间,即为
细菌繁殖i代数量
经过t时间酵母菌的数量
细菌增长率
注:
其他未注明的符号具体在文章中说明
五、模型建立与求解
5.1模型Ⅰ(问题一):
离散型Malthus模型
5.1.1模型的建立
根据假设可知,
,增长率
,繁殖
代后细菌的数量为
,繁殖
代后细菌的数量为
,则有
(1)
5.1.2模型的求解
代入以上数据根据等差数列公式即可解得:
(2)
当
时,
代入
(2)即可得,
细菌的数量:
繁殖
代后细菌数量为
个。
5.2模型Ⅱ(问题二):
Beverton-Holt模型
由于环境阻力的限制,当细菌增长到一定数量时,其繁殖会受到一定影响。
查阅资料可知,经过一定时间,在各种因素作用下,种群数量增长会趋于稳定,其数量时间关系图象呈“s”型曲线。
5.2.1.模型的建立
令
,由前两问可得,种群数量与时间成等比数列的形式增长,离散Malthus差分方程如下
(3)
以此我们得到第一模型的指数函数图象与题目中数据描点:
图1指数增长模拟图
由图象分析可知,在一定空间内,由于环境阻力,细菌数量的增长会趋于稳定,而不是呈现“J”型指数增长,因此,以上模型存在很大的误差,即单纯地用Malthus模型对本题进行分析存在一定的局限性。
对此,进行如下分析与修正:
早期细菌增长规律:
R=1,种群数量保持稳定;
0R=0,此时没有繁殖,种群在这一代中灭亡。
对于R>1,因为空间、食物等资源的有限性以及种群自身的密度制约效应,说明在模型(3)中引入密度制约的效应,即在净增长率R中考虑种间竞争的影响,下面几何直观我们给出一个具有密度制约效应的离散单种群模型的严格推到过程。
由题目数据分析、查阅资料,可知酵母菌每小时内繁殖一次,建立起时间与种群数量的关系式:
图2比率
与
的函数关系
在图2中给出了比率
与
的函数关系。
图5-2-1中的点A所表示生物意义可以这样理解:
当种群数量非常小的时候,种群之间的相互竞争非常小甚至没有,此时净增长率
不需要任何的修改。
因此,模型
,当种群数量非常小的时,关系仍然成立。
重新改写成该方程得到
(4)
然而,随着种群数量的增加,种群之间的竞争越来越强,这使得精确的净增长率被这种竞争而修正,并且一定存在一点使得竞争强到种群的数量不再增长,此时即有
充分接近1。
设此时的种群数量达到种群的环境容纳量
,即为图2中的点
。
由图2知,当种群数量从
点到
点时,比值
也有一定的增加。
为了简单起见,我们直接假设比值
与
具有如图2中的直线关系,该直线的方程式为
(5)
5.2.2模型的求解
本题以酵母菌为例,由题目中酵母菌数量变化表,对数据进行分析,先取前17组数据,分别求出
与
,处理后可得到如下表格:
表2酵母菌增长情况
以小时计的时间
t
观察到的酵母菌生物量
生物量的变化
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
10
18
29
47
71
119
175
257
351
441
513
560
595
629
641
651
656
660
0.556
0.621
0.617
0.662
0.597
0.680
0.681
0.732
0.796
0.860
0.916
0.941
0.946
0.981
0.985
0.992
0.994
\
根据最小二乘法的拟合原理,取a、b为使得函数
值最小时的值。
其中令
是
时
的数值。
用matlab进行线性拟合,编写程序如下:
x=[1018294771119175257351441513560595629641651656];
y=[0.5560.6210.6170.6620.5970.6800.6810.7320.7960.8600.9160.9410.9460.9810.9850.9920.994];
P=polyfit(x,y,1);
xi=0:
1:
680;
yi=polyval(P,xi);
plot(xi,yi,x,y,'r*');
图3拟合直线图
得出图象如图3所示,其结果为:
y=p1*x+p2
Coefficients:
p1=0.0006189
p2=0.58766
Normofresiduals=
4.2145e-015
由此可得的
关于
的解析式为:
(6)
根据以上解析式(6),我们可以看出,随着种群数量
越来越大,
越来越大,则种群的增长率r及R越来越小,符合基本的生物学规律,而拟合的方差很小,具有很强的规律性。
对此,我们进行下一步推出关于
与时间
的关系表达式
简化上式(6)可得
(7)
我们对其做一个简单的代数化:
(8)
(9)
用待定系数法设
解得
构成等比数列,令
,换元可得
(10)
带入初始条件
可得
(11)
通过代数运算,可以得到:
(12)
带入数据
,
,
可以得
化简可得
(13)
由方程(13)我们看出,随着繁殖代数
的增长,即时间的变长,最终指数项将趋近于0,故种群的数量最终呈现稳定的值
,与题目假设、生物学知识刚好吻合。
5.2.3模型的验证
根据以上模型,我们得到细菌增长的数量与时间的关系表达式,画出相应的曲线图,带入题目数据,得出下图:
图4曲线拟合图
当
时,可得
相对误差
当
时,可得
相对误差
其中当t趋近于无穷大时,环境容量为K值,
由上述数据分析可知,依据方程求解得出来的
、
与题目所给的数据相近,相对误差均低于1%,有很高的可信度。
因此,可认为模型建立合理,有一定的说服力。
结论:
由于环境阻力的限制,细菌将不会一直保持增长下去,在一个培养基中,细菌的数量呈现出“S”型增长,最终稳定在环境容纳值——K值。
通过上表分析,我们建立了合理的模型假设,得出细菌种群数量变化和时间的关系式为:
六、模型优缺点分析及改进方向
随着人们对细菌的认识逐渐深入,细菌的研究现已成为一个非常重要的课题。
细菌的增长规律研究是随着人们对细菌的研究提出来的,发展至今,前人已经有了很多成熟的模型,侧重于各个方向,所适用范围也有所不同。
我们在前人已建立的模型的基础上,结合自己的分析理解,建立了符合该题细菌增长趋势的模型。
在此,我们对自己建立的模型进行以下分析及说明:
6.1模型的优点
1.该模型是先结合连续的Malthus模型建立离散型Malthus模型,在此基上,经过分析完善最终得到的结果符合离散的Beverton-Holt模型。
2.该模型结合实际情况,分析了包括前期种群数量非常小的时候及随着种群数量的增加,种群之间的竞争起来越强等的情况。
3.该模型为建立一次线性方程,采用最小二乘法进行拟合求解,最终使得该模型简单合理,是一个较为实用的细菌种群数量预测模型。
6.2模型的缺点
1.该模型将影响细菌繁殖的因素综合表达出来了,却无法根据其看出各因素对细菌数量和增长率影响的详细情况,因而无法对细菌的培养等提出合理的建议。
2.该模型未考虑培养基有限的情况,即长时间后,培养基营养用完,细菌开始死亡的情况。
3.细菌繁殖时,可能由于各种因素的影响,导致细菌数量出现“波浪”型,这样,由离散型模型得出的结果可能削弱了细菌数量发展的阶段性规律。
6.3模型的改进方向
1.可以把培养基对酵母菌的限制影响作用和酵母菌的死亡等归为两种不同的影响因素,分别建立模型,进而得出这两种因素对酵母菌数量的影响程度,再次建立新模型并求出
的表达式。
2.可以把增长率的变化关系多设几种不同的形式,通过比较最终得出更合理的增长率模型,最后得到与实际情况最为符合的
的表达式。
七、参考文献
[1]姜启源等,数学建模(第四版),北京:
高等教育出版社,2011.
[2]卓金武等,MATLAB在数学建模中的应用,北京:
北京航空航天大学出版社,2011.
[3]司夺奎,数学建模算法与应用,北京,国防工业出版社,2011.
[4]张德丰,MATLAB实用数值分析,北京,清华大学出版社,2012.
[5]单锋等,数学模型,北京,国防工业出版社,2012.
附录(部分程序如下):
x=[0123456789101112131415161718];
y=[1018294771119175257351441513560595629641651656660662];
plot(x,y,'r*');
holdon;
fori=1:
19
N(i)=10*2^(i-1);
end
plot(x,N)
x=[0123456789101112131415161718];
y=[1018294771119175257351441513560595629641651656660662];
plot(x,y,'r*');
holdon;
fori=1:
19
N(i)=666.246487/(1+65.6246461*(0.605)^i);
end
plot(x,N)