数学建模A题动物群落的稳定发展docWord文档下载推荐.docx
《数学建模A题动物群落的稳定发展docWord文档下载推荐.docx》由会员分享,可在线阅读,更多相关《数学建模A题动物群落的稳定发展docWord文档下载推荐.docx(52页珍藏版)》请在冰豆网上搜索。
6.题设该动物在10~12岁开始怀孕,我们这里设定为11岁开始,经过22个月(约两年)的怀孕期后生幼仔,即可认为该雌性动物在13~60岁的时间内可以生幼仔。
7.该群落的自然死亡是在生完幼仔后才发生的,产幼仔只发生在每年的年初时段,而被运走只发生在年底时段。
(二)符号说明
:
新生幼儿的存活率,其值为0.75;
1~60岁个体的存活率,其值为0.95;
双胞胎出生的几率,其值为0.0135;
该动物第k年时刻的数量;
该动物第k年初i龄动物的数量;
该动物第k年初底i龄动物的数量
第j年被运走的动物的数量;
表示该动物第k年初时的总数量;
:
表示每年没有注射避孕药的雌性动物生幼仔的几率,其值为
;
表示被注射过避孕药但在两年内不再被注射的雌性动物生幼仔的几率,其值为
表示被注射过避孕药但在两年内被重复注射的雌性动物生幼仔的几率,其值为
表示从13~60岁该动物的雌性个体的总数;
表示从1~59岁该动物的个数总和;
表示60岁该动物的个体总和;
表示13~60岁雌性动物没有被注射避孕药部分的数量;
表示13~60岁雌性动物被注射过避孕药但在两年内不再被注射部分的数量;
表示13~60岁雌性动物被注射过避孕药但在两年内被重复注射部分的数量;
表示每年出生幼仔的数量与该年个体死亡的数量的差值;
表示该种群每年的新生幼仔的数量减去该年死亡个体的数量与运走个体数量的和的差值;
表示该动物群落在年底时的总数量与年初的数量加上被运走的个体数量b的差值。
三.问题分析与模型建立
问题一:
1.我们要研究该动物群落的稳定性问题,首先要根据存活率确定其当前的年龄结构。
该动物的新生幼仔存活率较低,题设是70%到80%之间,为了讨论的需要,我们这里设定为75%。
在1岁后的存活率比较高,在这里设为95%,直到60岁,而超过60岁则认为退出该系统。
因此,我们先建立出该动物群落中年龄在2岁到60岁之间的合理的存活率的模型。
模型一:
式
(1)表示该动物第k年增长的数量;
式
(2)表示该动物第k年初时的总数量,可由已有的数据计算出
来;
式(3)表示该动物被运走的数量;
式(4)和(5)表示该动物第i龄到了年底全部转化为(i+1)龄;
式(6)和(7)表示该动物各年龄段的变化;
式(8)表示该动物新生的幼仔数量。
2.通过对该公园近两年内从这个地区运出的该动物的年龄和性别的数据进行统计分析,并利用编程工具TurboC2.0对该模型进行编程计算(源程序及计算过程见附录1),可得到当前该动物群落的年龄结构,如下表所示:
表一该动物的年龄结构统计表
年龄(岁)
前一年数量(头)
前一年运走数量(头)
前一年剩下数量(头)
前兩年数量(头)
前兩年运走数量(头)
前两年剩下数量(头)
假设无运走数量(头)
今年数量(头)
792
786
806
746
800
1
594
604
559
600
2
564
573
20
553
531
569
3
535
544
21
523
504
540
4
508
505
516
13
503
478
512
5
482
490
12
454
486
6
457
7
450
465
452
431
461
434
414
441
22
419
409
437
8
412
9
403
418
14
404
388
415
391
15
376
397
40
357
368
394
10
371
362
377
363
349
374
11
352
330
358
26
332
331
355
334
340
327
314
337
317
23
294
322
308
298
320
301
296
305
27
278
283
303
285
272
289
286
268
287
16
270
249
274
250
254
17
256
260
248
241
258
18
243
221
246
226
228
245
19
230
216
233
25
208
232
218
213
204
205
220
207
194
209
195
196
186
198
188
184
197
174
187
24
176
163
178
165
177
167
30
137
169
166
156
168
158
144
160
148
159
150
138
151
147
140
28
142
143
132
29
134
114
135
133
125
127
121
128
118
31
120
117
108
112
32
113
98
106
33
107
99
95
100
34
101
89
102
92
94
35
85
96
86
36
90
87
91
79
84
37
78
70
38
80
66
81
69
75
39
65
76
71
55
72
60
67
41
46
68
49
63
42
50
64
51
59
43
56
44
53
45
47
48
-1
52
54
57
58
-10
-2
生幼仔的雌性数量
784
734
789
13—60岁雌性数量
2735
2503
2772
302
2470
2569
总数量
11714
622
11092
11876
876
11000
11006
11808
注1:
0岁表示新生幼仔。
注2:
由于每个年龄段的数据均为推测值,而实际上运走的各年龄段的数量不一定全部与预测值相符,故表中“剩下数量”两组数据中出现负数可认为是独异点,不影响模型整体的准确性。
每年新生幼仔的数量(
)减去生幼仔的雌性的数量(
,由于雄性与雌性的数量比接近1:
1,我们可近似地认为13——60岁个体的雌雄数量相等),其差值即为双胞胎的数量,这个差值与生幼仔的雌性数量之比即为双胞胎的几率(
)1.35%。
由表中数据可得,
,
,这些比例都基本上接近题设的双胞胎的几率0.0135,说明以上推测得出的数据是准确的。
利用Matlab软件对以上四组数据用图形表示,并进行比较,得到该动物群落的基本分布情况图(源程序见附录2),如下图所示
图1
分析该图,可以看出,这四组曲线的轨迹、分布情况基本相同。
由于“预测当前的年龄结构情况(无运走)”一组数据没有减去被运走的个体数量,故其每个年龄层的数量都略多于前三组的数量,因此其曲线比前三组的曲线略高一点,
利用SAS软件对模型进行相关性的分析检验(源程序见附录3),得到如下结果:
图2
程序的分析及统计结论:
程序中的x1是前一年的该动物群落的年龄结构,x2是前两年该动物群落的年龄结构,x3是该动物群落没有被运出是的年龄结构,x4是预测的当前的该动物群落的年龄结构。
过程中的PROCCORR是分析变量中两两变量之间的PEAROS简单相关的。
输出结果中的结果1是一些基本的描述统计量,结果2是两两变量之间的相关矩阵,其中包括相关系数和显著性检验的概率。
由结果可知前一年的该动物群落的年龄结构(x1)与前两年的该动物群落的年龄结构(x2)的相关系数R=0.99744,P=0.0001<
0.01,所以前一年的该动物群落的年龄结构(x1)与前两年的该动物群落的年龄结构(x2)之间存在着极显著的正相关;
前一年的该动物群落的年龄结构(x1)与没有运走是的该动物群落的年龄结构(x3)的相关系数R=0.99896,P=0.0001<
0.01,所以前一年的该动物群落的年龄结构(x1)与没有运走时的该动物群落的年龄结构(x3)之间存在着极显著的正相关;
同理可知x1与x4的相关系数R=0.99896,P=0.0001<
0.01;
x2与x3的相关系数R=0.99846,P=0.0001<
0.01;
x2与x4的相关系数R=0.99854,P=0.0001<
x3与x4的相关系数R=0.99999,P=0.0001<
0.01。
由以上的分析可知,x1,x2,x3,x4之间的相关系数接近1,可见模型一的稳定行很强,而且由公式推出的前一两年的数据与该公园已有的数据基本相符合,可见模型是很优的。
由于目前该动物已经很少被移出或移入,而且偷猎枪杀的情况微乎其微,所以暂时不列入考虑范围内。
因此对该动物群落若不采用人工手段控制,则其在一定时间范围内会大幅度增加,从而破坏该种群的动态平衡。
为了保持该种群的平衡,而又不必每年运走一定数量动物,现在使用一种避孕注射法,可使该动物群落的数量固定在一定范围内,用这种方法注射一次可以使得一头成熟雌性动物在两年内不会受孕,但不会引起其它附加的反应。
我们所要做的就是估计出每年在该群落中要注射避孕药的雌性动物的数量,并且要考虑到各种不确定性因素的影响。
为了分析的方便,我们先建立初步模型,该模型暂时不考虑注射避孕药所产生的不确定性因素的影响,即不考虑两年内被重复注射的雌性数量及双胞胎的几率。
在这里我们只认为新生幼仔的数量由两部分组成,一部分为没注射过避孕药的雌性个体所生,另一部分为被注射过避孕药的雌性个体所生。
另外,由于已经没有个体被运走或被偷猎的情况,为此我们把该种群的稳定性转化为求目标函数
(该种群每年的新生幼仔的数量减去该年死亡个体的数量的差值),当
趋于0时,即认为该群落的个体数量是稳定的,从而把问题的稳定性问题转化为求单目标的最优化问题。
从而建立模型如下:
模型二:
其中:
=
,表示每年没有注射避孕药的雌性动物生幼仔的几率。
,表示被注射过避孕药但在两年内不再被注射的雌性动物生幼仔的几率;
这里设
=2596,表示从13~60岁该动物的雌性个体的总数为2596;
设
=10243,表示从1~59岁该动物的个数总和为10243;
=17,表示60岁该动物的个体总和为17;
表示该种群每年的新生幼仔的数量与该年死亡个体的数量总和的差值。
把已知的数据代入上述模型,从而得到以下模型:
利用Matlab软件进行编程(源程序见附录4),求得
.
其中
,说明该模型是稳定的,即该动物群落的数量被控制在一定的范围内。
由
可知,每年大约有276头雌性动物要注射避孕药,才能使该群落的数量保持在11000头左右。
模型三(模型二的改进):
由于每年被注射的雌性动物数量一定,所以被注射过后两年有可能又被注射,则将其归入到“被注射过避孕药但在两年内不再被注射的雌性动物”内。
因此,注射避孕药所产生的不确定性因素之一即为“被注射过避孕药但在两年避孕期内被重复注射的雌性动物”。
另外不确定因素之二即双胞胎的几率问题,所以这里我们加入一个参数
。
当第一年采用注射避孕药的方法时,是不会发生有雌性个体被重复注射的情况的,故有以下模型:
,表示每年没有注射避孕药的雌性动物生幼仔的几率;
,表示被注射过避孕药但在两年内被重复注射的雌性动物生幼仔的几率;
,表示新生幼仔的存活率;
=0.95,表示1~60岁动物的存活率;
表示新出生的幼仔中双胞胎的概率。
利用Matlab软件求解(源程序见附录5),求得
可知,每年大约有367头雌性动物要注射避孕药,才能使该群落的数量保持在11000头左右。
由于考虑双胞胎的机率,故必须增加注射的数量。
当注射避孕药一年后再次注射时,就会有某些数量的雌性个体被重复注射的情况出现,但这部分一定比前一年注射的雌性个体的数量少,故建立以下模型
模型四:
代入已知数据,得到以下目标函数模型:
是前一年被注射避孕药的雌性个体的数量。
利用Matlab软件编写程序求解,通过对
的不同取值进行调试,(源程序见附录6)求得当
=242时,模型稳定,此时
与模型三的解相同,说明新生幼仔的数量比较稳定,而每年注射避孕药的雌性动物则减少到352头,其中有110头是在注射后一年又被重复注射的数量,而
则说明了该动物群落的个体数量是稳定的,被控制在一定范围内。
由此可知当每年注射352头时,就能把该动物群落的数量控制在11000头范围内。
问题三:
假如每年转移50至300头此动物到别处,其大致模型与问题二相近,不同之处在于要考虑到被运走的动物的数量(b),即
应表示该种群每年的新生幼仔的数量减去该年死亡个体的数量与运走个体数量的和的差值。
相应的避孕措施将改变如下:
模型五:
其中b表示该年被运走的动物的数量(50~300);
代入已有数据,并把方程标准化,得到以下模型:
其中b的值在50~300之间变化,我们以50头为间距(即b的值分为50,100,150,200,250,300六种情况),利用软件MATLAB6.0计算得到每年转移从50至300头到别处时所应采取的避孕措施(源程序见附录7),当取b=50时,得到以下输出结果:
:
由输出结果的提示可知,在100000次迭代后仍然无法找到最优值;
由exitflag=-1可知,以上模型得到的数据是发散的,从而说明上述模型本身并不存在问题,只是计算机无法在有限的迭代次数内找到最优值。
为此解决该问题,我们对以上模型进行修改,把目标函数
定义为该动物群落在年底时的总数量与年初的数量加上被运走的数量b的差值,从而得到以下模型:
模型六:
式
(1)表示目标函数,其值趋于0;
式
(2)表示该动物在第k年初的数量,其值取11000;
式(3)和(4)表示该动物第i龄到了年底全部转化为(i+1)龄;
式(5)和(6)表示该动物各年龄段的变化;
式(7)表示该动物新生的幼仔数量;
式(8)表示该动物在13~60岁的雌性个体数量之和;
对b以10为间距,分别从50取到300头,利用MATLAB软件进行求解(源程序见附录8),得到以下表二:
被运走的数量(头)
110
130
被注射的数量(头)
370
361
351
342
313
304
170
180
190
200
210
240
275
266
247
237
199
280
290
300
171
161
152
用人工手段可以使得该动物群落的数量减少,使其数量控制在一定范围内,但是,我们并不知道用了这种人工手段后,对于一次突发事件后要增加其数量时,该种群的复壮能力如何。
因此,我们建立数学模型,分析研究其复壮能力。
我们假设由于某种原因(例如由于一场大灾难导致该动物的死亡),使得该动物减少至M头,此时不得不停止注射避孕的方法。
在初步模型中,我们先假设灾难发生后该种群虽然数量减少,但其年龄结构没有改变。
建立该动物群落重新壮大的能力的模型如下:
模型七:
对M取不同的值,利用c语言进行编程求解,(源程序见附录9)可以得到以下表:
M值
第t年
10000
9000
8000
7000
6000
5000
4000
3000
2000
t=1
增量d1
665
10665
9594
526
8526