ImageVerifierCode 换一换
格式:DOCX , 页数:44 ,大小:277.25KB ,
资源ID:8418573      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8418573.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(大学学建模.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

大学学建模.docx

1、大学学建模大学学建模 动物群落的稳定发展 摘要:本文通过对某公园近两年内被运出的某种动物的年龄和性别的数据进行统计分析,并针对题目的四个问题分别建立了符合实际的数学模型,在模型的求解过程中,应用 C 语言进行编程调试,通过统计学软件 SAS,数学软件 MATLAB等计算工具,编写相应的程序,对建立的模型进行求解,得出了符合实际的结果。问题一:我们假设新生幼仔的数量为,然后通过对各年龄阶段的存活率、被运走的动物数量 以及该动物的总体数量的分析来建立该群落的动态变化模型,利用该群落近两年内被运走的各年龄阶段的个体数量分布,用 C 语言编程计算,推测出当前该动物的年龄结构(具体结果见 7 页表一)。

2、并利用 MATLAB软件对得出的数据用图形表示,利用对比分析法,得到该动物群落的基本分布轨迹,最后用统计软件 SAS 对模型进行相关性的分析检验,求得相关系数 R 与 P的值,验正了模型的稳定性。问题二:由于现在采用注射避孕药的方法来维持该种群的稳定,而且已经没有个体被运走或被偷猎的情况,为此我们把该种群的稳定性转化为求目标函数(该种群每年的新生幼仔的数量减去该年死亡个体的数量的差值);另外从(即年头的数量与该年年底的数量的差值)当 趋于 0时,即认为该群落的个体数量是稳定的,从而把问题的稳定性问题转化为求单目标的最优化问题建立模型;利用 MATLAB对模型进行求得,得出当不考虑不确定性因素影

3、响时要注射药物的雌性动物数量为 276 头,而当考虑了双胞胎和被重复注射这两个不确定性因素影响后,得到要注射药物的雌性动物数量为 352 头,其中有 110头是被重复注射的。问题三:其大致模型与问题二相近,不同之处在于要考虑到被运走的动物的数量(b),即目标函数 应考虑上被运走的数量,即只是对问题二的模型进行扩充建立新的目标模型;b和 b;利用 MATLAB对不同 b 值进行求解,从而得出相应的避孕措施。(具体结果见 19 页表二)问题四:我们引进了增量加速度的概念,利用 c语言进行编程求解,然后用MATLAB软件对得到的数据进行线性回归分析,得到该群落在减少至 M 时重新壮大该动物群落能力的

4、模型:M3.9010+0.0047D。最后应用统计软件 SAS 对模型进行稳定性分析。关键字:存活率 年龄结构 新生幼仔数 稳定性 最优目标 增量加速度 一 问题重述与提出 位于非洲某国的国家公园中栖息着近 11000 头某种野生动物。管理员要求有一个健康稳定的环境以便维持这个 11000头该动物的稳定群落。过去的 20年中,整个该动物群是通过一些偷猎枪杀以及转移到外地而稳定下来的。但是近年来,偷猎被禁止,而且每年要转移这些动物也比较困难,因此,要控制现在的数量就使用了一种避孕注射法。用这种方法注射一次可以使得一头成熟雌性动物在两年内不会受孕。要探讨这种避孕注射法的实用性,我们需要完成以下问题

5、:1 探讨该动物年龄在 2岁到 60岁之间的合理的存活率的模型,推测这个动物群落的当前的年龄结构。2 估计每年在该群落中有多少雌性动物要注射避孕药,可以式群落固定在 11000头左右。这里不免有些不确定性,也要估计这种不确定性的影响。3 假如每年转移 50至 300 头此动物到别处,那么上面的避孕措施将可以有怎样的改变?4 如果由于某种原因,突然使得注射避孕的方法不得不停止(例如由于一场灾难导致大量该动物的死亡),那时重新壮大该动物群的能力如何?二 基本假设与符号说明(一)模型假设 1该公园是非开放式的,它与外界不发生关系,从而构成独立的生物群落,该动物群落不存在与其它动物种群的竞争,或虽有竞

6、争,但其影响只局限于该动物群落的死亡率内。2 种群是通过雌性个体的繁殖而增长的,所以用雌性个体数量的变化为主要研究对象。3 为了讨论的必要,我们把新生的幼儿的存活率定为 75,而其后的存活率为95,直到 60岁为止。各年龄组的该动物经过一年后即进入高一级的年龄组,而龄超过 60即认为全部死亡,退出该系统。4 由于该公园加强了对该动物群落的保护,我们认为该动物没有再被偷猎射杀。而该动物群落个体数量的减少只是因为自然死亡以及被运走。5 假设同一年龄组的动物个体之间是同质的,我们只考虑其平均水平,不讨论个别差异。6 题设该动物在 1012岁开始怀孕,我们这里设定为 11岁开始,经过 22个月(约两年

7、)的怀孕期后生幼仔,即可认为该雌性动物在 1360 岁的时间内可以生幼仔。7 该群落的自然死亡是在生完幼仔后才发生的,产幼仔只发生在每年的年初时段,而被运走只发生在年底时段。(二)符号说明 :新生幼儿的存活率,其值为 0.75;:160岁个体的存活率,其值为 0.95;:双胞胎出生的几率,其值为 0.0135;:该动物第 k年时刻的数量;:该动物第 k年初 i 龄动物的数量;:该动物第 k年初底 i 龄动物的数量 :第 j 年被运走的动物的数量;:表示该动物第 k 年初时的总数量;:表示每年没有注射避孕药的雌性动物生幼仔的几率,其值为;:表示被注射过避孕药但在两年内不再被注射的雌性动物生幼仔的

8、几率,其值为;:表示被注射过避孕药但在两年内被重复注射的雌性动物生幼仔的几率,其值为;:表示从 1360岁该动物的雌性个体的总数;:表示从 159岁该动物的个数总和;:表示 60岁该动物的个体总和;:表示 1360岁雌性动物没有被注射避孕药部分的数量;:表示 1360岁雌性动物被注射过避孕药但在两年内不再被注射部分的数量;:表示 1360岁雌性动物被注射过避孕药但在两年内被重复注射部分的数量;:表示每年出生幼仔的数量与该年个体死亡的数量的差值;:表示该种群每年的新生幼仔的数量减去该年死亡个体的数量与运走个体数量的和的差值;:表示该动物群落在年底时的总数量与年初的数量加上被运走的个体数量 b 的

9、差值。三 问题分析与模型建立 问题一:1 我们要研究该动物群落的稳定性问题,首先要根据存活率确定其当前的年龄结构。该动物的新生幼仔存活率较低,题设是 70到 80之间,为了讨论的需要,我们这里设定为 75。在 1 岁后的存活率比较高,在这里设为 95,直到 60 岁,而超过60 岁则认为退出该系统。因此,我们先建立出该动物群落中年龄在 2岁到 60岁之间的合理的存活率的模型。模型一:式(1)表示该动物第 k年增长的数量;式(2)表示该动物第 k年初时的总数量,可由已有的数据计算出 来;式(3)表示该动物被运走的数量;式(4)和(5)表示该动物第 i 龄到了年底全部转化为(i1)龄;式(6)和(

10、7)表示该动物各年龄段的变化;式(8)表示该动物新生的幼仔数量。2 通过对该公园近两年内从这个地区运出的该动物的年龄和性别的数据进行统计分析,并利用编程工具 Turbo C 2.0 对该模型进行编程计算(源程序及计算过程见附录1),可得到当前该动物群落的年龄结构,如下表所示:表一 该动物的年龄结构统计表 年龄(岁)前一年数量(头)前一年运走数量(头)前一年剩下数量(头)前兩年数量(头)前兩年运走数量(头)前两年剩下数量(头)假设无运走数量(头)今年数量(头)0 792 786 806 806 746 800 1 594 0 594 604 0 604 559 600 2 564 0 564 5

11、73 20 553 531 569 3 535 0 535 544 21 523 504 540 4 508 3 505 516 13 503 478 512 5 482 4 478 490 12 478 454 486 6 457 7 450 465 13 452 431 461 7 434 20 414 441 22 419 409 437 8 412 9 403 418 14 404 388 415 9 391 15 376 397 40 357 368 394 10 371 9 362 377 14 363 349 374 11 352 22 330 358 26 332 331 35

12、5 12 334 3 331 340 13 327 314 337 13 317 23 294 322 14 308 298 320 14 301 5 296 305 27 278 283 303 15 285 13 272 289 3 286 268 287 16 270 21 249 274 14 250 254 272 17 256 0 256 260 12 248 241 258 18 243 22 221 246 20 226 228 245 19 230 14 216 233 25 208 216 232 20 218 5 213 221 17 204 205 220 21 207

13、 13 194 209 14 195 194 208 22 196 10 186 198 10 188 184 197 23 186 0 186 188 0 188 174 187 24 176 13 163 178 2 176 165 177 25 167 30 137 169 3 166 156 168 26 158 14 144 160 4 156 148 159 27 150 12 138 151 4 147 140 151 28 142 0 142 143 3 140 132 143 29 134 20 114 135 2 133 125 135 30 127 6 121 128 3

14、 125 118 128 31 120 3 117 121 13 108 112 121 32 113 5 108 114 16 98 106 114 33 107 8 99 108 13 95 100 108 34 101 12 89 102 10 92 94 102 35 95 10 85 96 10 86 89 96 36 90 3 87 91 12 79 84 91 37 85 7 78 86 16 70 79 86 38 80 14 66 81 12 69 75 81 39 75 10 65 76 10 66 71 76 40 71 16 55 72 12 60 67 72 41 6

15、7 21 46 68 19 49 63 68 42 63 13 50 64 13 51 59 64 43 59 10 49 60 24 36 56 60 44 56 12 44 56 17 39 53 56 45 53 6 47 53 16 37 50 53 46 50 3 47 50 25 25 47 50 47 47 6 41 47 12 35 44 47 48 44 9 35 44 45-1 41 44 49 41 13 28 41 23 18 38 41 50 38 10 28 38 34 4 36 38 51 36 3 33 36 13 23 34 36 52 34 6 28 34

16、16 18 32 34 53 32 21 11 32 10 22 30 32 54 30 15 15 30 17 13 28 30 55 28 4 24 28 13 15 26 28 56 26 13 13 26 13 13 24 26 57 24 10 14 24 12 12 22 24 58 22 32-10 22 3 19 20 22 59 20 14 6 20 22-2 18 20 60 18 0 18 18 20-2 17 18 生幼仔的雌性数量 784 792 734 789 1360岁雌性数量 2735 232 2503 2772 302 2470 2569 总数量 11714

17、622 11092 11876 876 11000 11006 11808 注 1:0岁表示新生幼仔。注 2:由于每个年龄段的数据均为推测值,而实际上运走的各年龄段的数量不一定全部与预测值相符,故表中“剩下数量”两组数据中出现负数可认为是独异点,不影响模型整体的准确性。每年新生幼仔的数量()减去生幼仔的雌性的数量(,由于雄性与雌性的数量比接近 1:1,我们可近似地认为 1360 岁个体的雌雄数量相等),其差值即为双胞胎的数量,这个差值与生幼仔的雌性数量之比即为双胞胎的几率()1.35。由表中数据可得,这些比例都基本上接近题设的双胞胎的几率 0.0135,说明以上推测得出的数据是准确的。利用 M

18、atlab 软件对以上四组数据用图形表示,并进行比较,得到该动物群落的基本分布情况图(源程序见附录 2),如下图所示 图 1 分析该图,可以看出,这四组曲线的轨迹、分布情况基本相同。由于“预测当前的年龄结构情况(无运走)”一组数据没有减去被运走的个体数量,故其每个年龄层的数量都略多于前三组的数量,因此其曲线比前三组的曲线略高一点,利用 SAS 软件对模型进行相关性的分析检验(源程序见附录 3),得到如下结果:图 2 程序的分析及统计结论:程序中的 x1 是前一年的该动物群落的年龄结构,x2是前两年该动物群落的年龄结构,x3是该动物群落没有被运出是的年龄结构,x4是预测的当前的该动物群落的年龄结

19、构。过程中的 PROC CORR 是分析变量中两两变量之间的 PEAROS 简单相关的。输出结果中的结果 1是一些基本的描述统计量,结果 2是两两变量之间的相关矩阵,其中包括相关系数和显著性检验的概率。由结果可知前一年的该动物群落的年龄结构(x1)与前两年的该动物群落的年龄结构(x2)的相关系数R=0.99744,P=0.00010.01,所以前一年的该动物群落的年龄结构(x1)与前两年的该动物群落的年龄结构(x2)之间存在着极显著的正相关;前一年的该动物群落的年龄结构(x1)与没有运走是的该动物群落的年龄结构(x3)的相关系数R=0.99896,P=0.00010.01,所以前一年的该动物群

20、落的年龄结构(x1)与没有运走时的该动物群落的年龄结构(x3)之间存在着极显著的正相关;同理可知 x1 与 x4的相关系数 R=0.99896,P=0.00010.01;x2 与 x3 的相关系数 R=0.99846,P=0.00010.01;x2 与x4的相关系数 R=0.99854,P=0.00010.01;x3与 x4 的相关系数R=0.99999,P=0.00010.01。由以上的分析可知,x1,x2,x3,x4 之间的相关系数接近 1,可见模型一的稳定行很强,而且由公式推出的前一两年的数据与该公园已有的数据基本相符合,可见模型是很优的。问题二:由于目前该动物已经很少被移出或移入,而且

21、偷猎枪杀的情况微乎其微,所以暂时不列入考虑范围内。因此对该动物群落若不采用人工手段控制,则其在一定时间范围内会大幅度增加,从而破坏该种群的动态平衡。为了保持该种群的平衡,而又不必每年运走一定数量动物,现在使用一种避孕注射法,可使该动物群落的数量固定在一定范围内,用这种方法注射一次可以使得一头成熟雌性动物在两年内不会受孕,但不会引起其它附加的反应。我们所要做的就是估计出每年在该群落中要注射避孕药的雌性动物的数量,并且要考虑到各种不确定性因素的影响。为了分析的方便,我们先建立初步模型,该模型暂时不考虑注射避孕药所产生的不确定性因素的影响,即不考虑两年内被重复注射的雌性数量及双胞胎的几率。在这里我们

22、只认为新生幼仔的数量由两部分组成,一部分为没注射过避孕药的雌性个体所生,另一部分为被注射过避孕药的雌性个体所生。另外,由于已经没有个体被运走或被偷猎的情况,为此我们把该种群的稳定性转化为求目标函数(该种群每年的新生幼仔的数量减去该年死亡个体的数量的差值),当 趋于 0时,即认为该群落的个体数量是稳定的,从而把问题的稳定性问题转化为求单目标的最优化问题。从而建立模型如下:模型二:其中:,表示每年没有注射避孕药的雌性动物生幼仔的几率。,表示被注射过避孕药但在两年内不再被注射的雌性动物生幼仔的几率;这里设 2596,表示从 1360岁该动物的雌性个体的总数为 2596;设 10243,表示从 159

23、岁该动物的个数总和为 10243;设 17,表示 60岁该动物的个体总和为 17;:表示该种群每年的新生幼仔的数量与该年死亡个体的数量总和的差值。把已知的数据代入上述模型,从而得到以下模型:利用 Matlab 软件进行编程(源程序见附录 4),求得.其中,说明该模型是稳定的,即该动物群落的数量被控制在一定的范围内。由 可知,每年大约有 276头雌性动物要注射避孕药,才能使该群落的数量保持在11000头左右。模型三(模型二的改进):由于每年被注射的雌性动物数量一定,所以被注射过后两年有可能又被注射,则将其归入到“被注射过避孕药但在两年内不再被注射的雌性动物”内。因此,注射避孕药所产生的不确定性因

24、素之一即为“被注射过避孕药但在两年避孕期内被重复注射的雌性动物”。另外不确定因素之二即双胞胎的几率问题,所以这里我们加入一个参数。当第一年采用注射避孕药的方法时,是不会发生有雌性个体被重复注射的情况的,故有以下模型:其中:,表示每年没有注射避孕药的雌性动物生幼仔的几率;,表示被注射过避孕药但在两年内不再被注射的雌性动物生幼仔的几率;,表示被注射过避孕药但在两年内被重复注射的雌性动物生幼仔的几率;,表示新生幼仔的存活率;0.95,表示 160 岁动物的存活率;,表示新出生的幼仔中双胞胎的概率。利用 Matlab 软件求解(源程序见附录 5),求得 其中,说明该模型是稳定的,即该动物群落的数量被控

25、制在一定的范围内。由 可知,每年大约有 367头雌性动物要注射避孕药,才能使该群落的数量保持在11000头左右。由于考虑双胞胎的机率,故必须增加注射的数量。当注射避孕药一年后再次注射时,就会有某些数量的雌性个体被重复注射的情况出现,但这部分一定比前一年注射的雌性个体的数量少,故建立以下模型 模型四:代入已知数据,得到以下目标函数模型:其中 是前一年被注射避孕药的雌性个体的数量。利用 Matlab 软件编写程序求解,通过对 的不同取值进行调试,(源程序见附录 6)求得当 242时,模型稳定,此时 其中 与模型三的解相同,说明新生幼仔的数量比较稳定,而每年注射避孕药的雌性动物则减少到 352头,其

26、中有 110 头是在注射后一年又被重复注射的数量,而 则说明了该动物群落的个体数量是稳定的,被控制在一定范围内。由此可知当每年注射 352头时,就能把该动物群落的数量控制在 11000头范围内。问题三:假如每年转移 50至 300 头此动物到别处,其大致模型与问题二相近,不同之处在于要考虑到被运走的动物的数量(b),即 应表示该种群每年的新生幼仔的数量减去该年死亡个体的数量与运走个体数量的和的差值。相应的避孕措施将改变如下:模型五:其中 b表示该年被运走的动物的数量(50300);代入已有数据,并把方程标准化,得到以下模型:其中 b的值在 50300 之间变化,我们以 50 头为间距(即 b的

27、值分为 50,100,150,200,250,300六种情况),利用软件 MATLAB6.0 计算得到每年转移从 50至300 头到别处时所应采取的避孕措施(源程序见附录 7),当取 b50时,得到以下输出结果:由输出结果的提示可知,在 100000次迭代后仍然无法找到最优值;由 exitflag=-1可知,以上模型得到的数据是发散的,从而说明上述模型本身并不存在问题,只是计算机无法在有限的迭代次数内找到最优值。为此解决该问题,我们对以上模型进行修改,把目标函数 定义为该动物群落在年底时的总数量与年初的数量加上被运走的数量 b 的差值,从而得到以下模型:模型六:其中 式(1)表示目标函数,其值

28、趋于 0;式(2)表示该动物在第 k年初的数量,其值取 11000;式(3)和(4)表示该动物第 i 龄到了年底全部转化为(i1)龄;式(5)和(6)表示该动物各年龄段的变化;式(7)表示该动物新生的幼仔数量;式(8)表示该动物在 1360岁的雌性个体数量之和;对 b以 10 为间距,分别从 50取到 300头,利用 MATLAB软件进行求解(源程序见附录 8),得到以下表二:被运走的数量(头)50 60 70 80 90 100 110 120 130 140 被注射的数量(头)370 361 351 342 332 322 313 304 294 285 被运走的数量(头)150 160

29、170 180 190 200 210 220 230 240 被注射的数量(头)275 266 256 247 237 228 218 209 199 190 被运走的数量(头)250 260 270 280 290 300 被注射的数量(头)180 171 161 152 142 133 问题四:用人工手段可以使得该动物群落的数量减少,使其数量控制在一定范围内,但是,我们并不知道用了这种人工手段后,对于一次突发事件后要增加其数量时,该种群的复壮能力如何。因此,我们建立数学模型,分析研究其复壮能力。我们假设由于某种原因(例如由于一场大灾难导致该动物的死亡),使得该动物减少至 M 头,此时不得

30、不停止注射避孕的方法。在初步模型中,我们先假设灾难发生后该种群虽然数量减少,但其年龄结构没有改变。建立该动物群落重新壮大的能力的模型如下:模型七:对 M 取不同的值,利用 c语言进行编程求解,(源程序见附录 9)可以得到以下表:M 值 第 t 年 10000 9000 8000 7000 6000 5000 4000 3000 2000 t=1 增量 d1 665 10665 594 9594 526 8526 456 7456 388 6388 322 5322 250 4250 179 3179 113 2113 当前数量M1 t=2 增量 d2 707 11372 638 10232 5

31、62 9088 489 7945 414 6082 342 5664 267 4517 191 3370 122 2235 当前数量M2 t=3 增量 d3 757 恢复 699 10932 602 9690 521 8466 444 7246 365 6029 286 4803 205 3575 130 2365 当前数量M3 t=4 增量 d4 729 恢复 640 10330 557 9023 472 7718 390 6419 305 5108 219 3794 140 2505 当前数量M4 t=5 增量 d5 689 11019 596 9619 507 8225 418 6837

32、 325 5433 235 4029 145 2650 当前数量M5 t=6 增量 d6 741 恢复 638 10257 538 8792 445 7272 348 5781 251 4280 156 2806 当前数量M6 t=7 增量 d7 682 10929 581 9373 472 7744 371 6152 268 4548 166 2972 当前数量M7 t=8 增量 d8 729 恢复 623 9996 507 8251 401 6553 286 4548 178 3150 当前数量M8 t=9 增量 d9 665 10661 543 8794 426 6979 307 483

33、5 191 3341 当前数量M9 t=10 增量 d10 707 11368 581 9375 456 7435 327 5142 204 3545 当前数量M10 增长加速度:46.0000 46.6000 42.6857 38.8810 35.6424 28.6121 22.8061 16.4364 10.7636 该表对 M 进行不同的取值,分别表示某一年(t0)灾难发生后该动物群落剩下的数量。我们用第一题的 C 程序即可算出该群落在下一年(t1)的增量,把这个增量加上上一年群落的总数即为第一年(t1)群落的总数 M1,接着我们又用程序算出这一年的增量,加上 M1 即为第二年(t2)的个体总数 M2。以这样的算法推算下去,一直到群落数量恢复到 11000左右或者前十年(t10)为止。将计算出来的各年增量按时间 t(1,210)列在座标上,用 MATLAB进行曲线拟合(具体程序见附录

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

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