当前课程知识点:数学建模 > 第3章 平衡原理与机理模型 > 3.3 捕食者模型 > 3.3 捕食者模型
同学们大家好
我们刚才讲过了Malthus模型跟Logistic模型
实际上呢这两个模型呢都是针对一个单种群
来考虑它的种群动态行为
那么我们今天开始讲述一个捕食者模型
捕食者模型但从字面上可以来
理解为一个叫捕食一个叫被食
所以这个时候呢
可能就涉及到两个种群的事情了 两个种群的事情
那么在捕食者模型里面又可以跟它
熟称为种群的弱肉强食模型
就是为一个强者要吃掉一个弱者
然后两个种群还要跟它生存下去
那这个时候怎么办
那么实验自然界中有大量的这种事情
种群两个种群互相被食跟食
还有互相还要共存下去
那在这面通常最简单例子
就是我们说的大鱼跟小鱼的事情
好的这有个特别的故事或者有个特殊的背景
在上个世纪中期那么第一次世界大战期间呢
意大利 一个生物学家U.D’Ancona
那么他在研究1914年到1923年
在意大利的一个亚德里亚海湾
鱼群 鱼类种群变化的时候
他发现一个特别有趣的一个现象
什么有趣的现象呢 就是说 随着渔业捕捞
因为世界大战发生渔业的捕捞量呢
大家都在下降
而这个时候呢
发现食用鱼跟食肉鱼
按道理同时都没有捕捞或者捕捞都在下降
结果发现由鲨鱼组成的一个食肉鱼
它的比例会明显增加
按道理来说
按道理来说
大家都没有捕捞
那么原来该怎么着还是怎么着的事情
为什么食肉鱼的比例
会明显增加 而作为小鱼
作为它们食饵它的食用鱼的比例呢
就开始明显下降
它从生物学来解释结果呢
试图解释解释不通
解释不通
那怎么办呢
然后他就把相关的一些数据呢
就开始天天摘录下来
例如从这里面来看14年15年16年17 18 19
到20 21 22 23年
我们差不多快十年的数据里面
那么这个时候我们发现所有食用鱼比例呢
大概是11.9 21.4 22.2 21.2 36 27
慢慢的就开始变到16 15.9 14 8
作为生物学家来说
他非常清楚这个比例什么是比较恰当的
他说是16%的时候是比较恰当
但为什么结果在14到20这么多年里面呢
我们其实发现呢21
22甚至还有36这么高的比例
为什么食肉鱼的比例会高达这么高
这个时候他确实是琢磨不清楚
从生物学里面不好解释
于是呢
他把这问题呢
就开始请教一个数学家
叫Volterra
希望他从数学上能够给他一种解释
或者能够解释这件事情为此呢
Volterra开始考虑用数学建模的办法来解释这件事情
Volterra做了几条假设
做了几条假设
首先
第一条假设呢
他把鱼呢 分成为两类
一类呢
是我们通常说的小鱼食用鱼记做为x
另外一类呢
就是我们的食肉鱼也叫大鱼把它记做为y
大家都是时间的函数
所以这边叫xt
那边叫yt
好的如果没有食肉鱼的话
也就是那些小鱼
它会非常非常开心在海里面游泳
那么这些鱼能将会按到一个
速度为r的来指数增长
也就换句话说
如果没有食肉鱼的话
那些食用鱼将会按照指数 r 来呈指数增长
于是沿着他走一个Malthus模型
种群变化
第三个假设说
如果没有小鱼没有食用鱼的话
那么这些大鱼我们开玩笑说
它去缺乏食物的提供者了
缺乏食物的提供者呢
它怎么办呢
那就开始慢慢的要衰减下去
能衰减的速度呢
就是d 按照d
指数衰减下去
我们开玩笑说
就开始慢慢的要走向灭亡了
结果呢
过了一段时间以后
大家还能够和平共处
它意味着什么东西
意味着这两个极端都没有了
对吧这两个极端都没有了
不会食肉鱼也没有食用鱼互相都能够互相支撑
也就换句话说
也就是说
有小鱼给大鱼提供
能量或者说小鱼
由大鱼被吃掉的这种可能性那怎么来吃呢
怎么被吃呢
那么这个时候肯定要取决它们之间见面的机会
也就取决它们之间相遇的机会了
怎么估算食肉鱼跟食用鱼之间的相遇的机会呢
做了个假设说这种机会我们说正比它们俩数量的乘积
也就换句话说
x要越大 y也越大
那么相遇的机会也就越大
那么这条假设非常非常重要
那么这条假设有一些
在我们的传染病模型里面
那么一个健康者一个感染者
那么见面的机会或者接触机会越大
那么很自然的话
我们说感染的速度或者说
致病的速度也将越来越快的事情
好的这么一来的话
根据我们的这四条假设
那么很自然的话
我就可以写出一个
我们说关于x关于y的一个微分方程模型出来了
首先我们得考虑一下食用鱼也就小鱼 xt
首先我们得考虑一下食用鱼也就小鱼 xt
如果说没有大鱼
没有大鱼的话
小鱼我们说将按照一个速度为r的
Malthus模型增长
也就换句话说
x 点等于rxt 也就我们说
x的导数等于r倍的x
这就是Malthus模型 结果呢
我们说有大鱼存在
大鱼存在以后的话就看
导致小鱼要减少那减少多少呢
减少多少呢
那么我们说减少
那是它们俩相遇的机会
那么相遇呢的那就是x乘上y了
于是呢 我们就开始得到
x的导数等于r乘上x减掉a倍的x乘上y
这是我们说小鱼的变化的过程
是按照这么一个微分方程往下再走的
那么接下来我们来看看大鱼的情况
大鱼
我们说
如果没有小鱼给它提供的话
那大鱼将是按照指数d的这么一个衰减下去
指数为d的衰减的话
那就是y的导数等于负d y了呢
这也是Malthus模型
那么在这里面
我们可以看出来
大鱼也没有全部死掉
也没有全部灭亡
那是意味着什么件事情呢
有小鱼跟它提供能量 小鱼跟它提供能量
怎么来提供它呢
那么就取决于它们两个相遇的机会
x要越大y也就越大
那么提供它们机会的可能性也就越大
所以呢
我们可以把它写成
负d y加上b x y
相应来说
通过b呢
我们可以解释为就是我们的大鱼所获取食物的能力
我们刚才说减掉的那个a呢
xy a呢
我们就可以解释为小鱼 对吧
它能够逃出它的一种能力
它能够逃出它的一种能力
好的为了方便我们在地方设个参数
好的 为了方便我们在地方设个参数
r a d b呢
r a d b呢
我们都认为是大于0的
这是我们说的 好的
这样一来的话
我们就得到这么一个微分方程组了
x的导数等于我们的rx减去axy
或者我们把它写成x提出来就写成
r减去ay乘上x
y的导数变化的情况等于负d y
加上 b x y
或者把y提出来的话就变成负d减去
b x
那么对于这么一个微分方程组
那么尤其在这里面有x跟y在这么个交叉项
所以很自然的话
对着微分方程组求解就比较费劲了
比较困难的
所以我这地方简单做点解释
那么对于它来说
我们可以怎么办呢
我们首先做的第一件事情
就是分别让它的导数等于0
让它的导数等于0呢
可以得到什么事情呢
我们可以得到一个平衡点
也就是在这个地方是不是稳定
是不是平衡对吧
那一样的就跟我们刚才说一样的
如果让x的导数等于0
让y的导数等于0的话
那么很容易
我们得到一个平衡点
一个是00
一个是00 00的话
大家我们可以想象出来
如果是x等于0 y等于0的话
这个点 能
稳定吗
肯定是不能稳定
立马从0就开始逃出去
因为种群都要存在的事情
如果从00的话意味着两个种群都灭绝掉了
所以我们说这个点 肯定是
不稳定的那么考虑另外个点
另外一个点的话那就谁呢
那就是我们说的
r减ay 等于0 或者说d减bx等于0了
那么把它解释出来的话呢
那就是x等于d分之b 或者y等于a分之r
那么得到另外一个平衡点
那么另外一个平衡点的一样道理来说
我们可以跟它建立它的行列式对它进行分析
我们发现另外个平衡点
它将是一个稳定的平衡点了
这是我说的第一件事情
因为它的行列式是
它是大于0的
好的 为了对它求解
那么首先呢
我们采取一种数值的方法求解
利用计算机来仿真一下
那么来仿真一下的话
也就说我们用数学用计算器来跟它
理想化处理它
那么大家从这个表里面可以看得出来
当到时间从t从0 0.1 0.2 0.3一直往下在走到9.7
那么xt呢
我们还有个变化
从20 21.2 22.5一直变化变到一定的时候又变到9 9呢
慢慢又开始回到了20了
y呢
可以看得出来
一个是4一个3.9 3.4 3.92要慢慢就变到16 16呢
慢慢慢慢又开始变到4变到3.99了
那么从这里面呢
实际上数据我们可以发现
x y呢好像在转圈似的
对吧
从那时开始
长长长长的又降降降又开始
又涨回去了y呢
也是从4开始涨涨
涨涨上去以后又开始降回去了
所以这么一来了后
我们发现从我的数值计算的结果可以看出了x y呢
好像是个周期变化的一种样子
好像是一个周期变化的一个样子
这是有我们的计算的结果
给我们一种提示 当然了
具体是不是周期变化
我们将来要用数学上来进行讨论它
好的对这个模型呢
我们就开始来
希望做一些数学上的分析
那么从这里面
我们刚才看到看到了微分方程组x的导数
y的导数对吧
我们通过数值通过我们的图形
我们观测到了我们说
xt跟yt呢好像似乎是一个周期函数
那么既然是一个周期函数的话
很自然的话
它将来就有个周期了
那么 在这个过程当中
对吧 我们可以看出来
周期大概是多少呢
大概9.6 9.7的样子 对吧
那么x y在这边有最大值
也有最小值
我们说最大值呢y的最大值呢可能20多 对吧
最小值可能3.9
x最大值可能65点多
最小值可能是6
这是我们说的这么种情况
这是我们刚从数值计算的结果
里面可以看得出来
那进一步来说的话
我们开始来对它做一些数学分析
那么在这数学分析里面的话
首先我们来看这两个微分方程
一个是 dxdt等于r减ay乘上一个x
这边是个dydt等于负d加上bx乘上一个y
那么按着我们第一个箭头来看
两边同时消去dt话也就说
左右两边相除左右两边相除的话
那变成了dx除以dy了
右边呢就变成我们说x乘上一个r减去ay
再除
所以分母呢就是一个y乘上一个负d
加上一个bx
那么
对这个微分方程来说呢我们非常容易的想到了一件事情
就是把x相关的把y相关的都搁在一块去
就是把x相关的把y相关的都搁在一块去
把x相关的跟y相关的搁在一块去的话
把x相关的跟y相关的搁在一块去的话
那么我们就可以得到
x分别积分y也分别积分就得到我们说这么一个函数
那用这个函数可以发现呢
我们说
x乘d的负次方 乘上e的负的
指数函数那么y的
我们说的一个密函数乘上一个y的一个指数函数
把它俩乘上一块就 结果等于c
c呢是由谁呢
c是一个常数
那用常数决定的
就表示它们这两个函数存起来
我们那个函数把它叫做fx
这函数把它叫gy的话
那我们可以发现
fx乘上gy呢这个函数 是一个定值
这就很蹊跷的一个事情了
好的 既然
是个定值 那么很自然的话
我就可以跟它做些相轨线的一些分析
相轨线的一些分析分别对fx对g这两个函数的
做这种分析这种分析
那么函数fx跟g呢
非常类似我们只要分析一个就可以了
那么我们就拿f来说
那么从这个函数里面可以看得出来
f(0)到f的无穷
它都会渐渐的到0上去
那么f在x(0)这点呢
它会取到一个值 对吧 x(0)呢
等于这么一个值
这是我们说的
它实际上是一个封闭的一个曲线
也是个单封点的事情
这是我们说的这么一个图像好的利用相轨线呢
我们进一步还可以讨论
我们说这个平衡点对吧
b分之d跟a分之r
它的稳定性
它的稳定性
好的
在这稳定性里面我们需要特别特别注意的一个事情
就是我们接下来要做的这点计算结果
刚刚我没说清楚
对于x这个种群对于y这个种群来说
它是一个周期性的
那既然是个周期的话
那么现在假设周期是T了
那么很容易想到一个一件事情就是说
那么
作为小于x来说
它在这个周期里面
它的一个平均值是多少
我们把其平均值记着 x杠
作为大于食肉鱼来说
在这个周期里面
它的平均值是多少呢
我们把它记着为 y杠
好的 那么从数学表达式里来看
可以看得出来
x杠 就应该等于什么
等于在这个周期里面
它的数量
它的数量呢也就是我们一个积分
0到T(x)的一个积分
竟然是平均值
那就除以它整个时间长度
是一个T所以x上等于T 分之 0到x x到t的积分
这是它的平均值
那我们接着来看
那么这个积分怎么算呢
那么这个积分怎么算呢
那么这个积分怎么算呢
那么这个积分呢
那么这个积分呢
就根据我们刚才的表达式
根据我们刚才的表达式 什么一个表达式呢
就y的导数
y的导数等于负d加上bx乘上一个y了
那么在这里面的话
那么很自然的话
我就可以把这个表达式可以给它写过来
首先呢把这个y呢跟它甩到左边去
甩到左边去
以后的话
我的bx就可以写出来了
bx写出来
我再把b甩出去
所以呢就可以得到我们说的
b分之1 乘上一个 y撇分之y
再加上一个d这关于我们的x的一个函数
把x这个函数呢带到我们刚才的平均值的那个表达式里面去----
把x这个函数呢带到我们刚才的平均值的那个表达式里面去----
那么我们对它做积分处理了
就等于我们的这么一个表达式了
好的最后计算出来是谁呢
x杠 也就是我们说
在这整个周期里面的平均值正好是谁呢
正好
就是我们这个b分之d
b分之d是谁呢
正好
就是我们平衡点的
x坐标的值了或者说x(0)的值了
同样道理呢
我们可以计算
大鱼或者食肉鱼在这个周期里面
它的平均值是多少呢
它的平均值正好就是我们的a分之r a分之r 是谁呢
正好就是我们说平衡点
y(0)的值了也就换句话说
y(0)的值了也就换句话说
我们说得到的平均值x杠等于x(0) y杠等于y(0)
那我们接下来看看
看这个表达式
那么食肉鱼的比例就是我们刚刚说的平均值
y杠等于a分之r
y杠等于a分之r
那么我们对于小鱼也就食用鱼它的
在这个周期内平均值是谁呢
是d
b分之d 是b分之d
好的有了这个表达式
我们现在开始考虑另外一种情况了
这是我们说的
在整个过程当中
在整个过程当中
那么大家是按照这个方式往下在走的
按照我们说的Malthus模型增长
然后再刨掉它被它吃掉的
然后呢
这边是按照Malthus模型衰减
然后呢
再给它补充
这是我们的一个模型了
那么你接着了下来就开始考虑
在一个第一次世界大战期间那么一夜的捕捞
它是下降的
那么下降将会导致是一种什么样的结果出来呢
那么大家非常非常浓烈的想到了一件事情
那么我们说尽量捞下降
那么很自然的话
我们就可以得到另外一个微分方程出来了
好的那我们接下来看一看
针对第一次世界大战期间
里面我们它的一夜的捕捞的情况进行一下分析
那么我们刚开始本来就有个模型
我们说是
X的导数等于我们说r减去ay乘上一个x
这是我们原来的有个模型了
y的导数等于负的d减去bxy
这是我们原来的模型好的
那我把它展开的话
我们就可以写成rx减去axy
这是我们说的
小鱼自身就可以按着
Malthus模型增长能抛掉的被吃掉了一部分
抛掉axy另外呢大鱼呢
它自身是按照一个
Malthus模型衰减 负d y
然后呢因为有小鱼给它补充能量
所以加上一个 bxy 出来了
这是我们原来的模型
如果加上捕捞的话
那大家可以设想
那么捕捞的过程当中既会捕捞小鱼
也会捕捞大鱼
那么捕捞小鱼我们就假设捕捞的情况的是ε1
所以我们在这边x的变化里面就开了
继续要刨掉一个x乘上ε1
那么
在捕捞过程当中
一样可以捕捞大鱼啊
所以讲了大鱼的捕捞率为ε2的话
那么很自然的话
我们就看着继续要抛了一个y乘上ε2了
大家可以想象那么把这x跟
提一下对于变成我们的
r减去ε1乘上一个x
这边呢 变成我们说的 把y提一下呢
变成我们的负的d加上εy了
那这么一来的话
这个模型跟我们原来的模型是一回事情
既然一回事情的话
我也可以对这个新的模型进行我们的平衡点的分析
进行平衡点的分析
原来的模型的平衡点是在哪呢
我们在b分之d a分之r
也是 平均 周期的水平是在b分之d
大鱼的平均水平是在a分之r
那么从现在可以看得出来
这个r呢
就开始变化了
r就变成谁呢
r就变成我们说啊
r减去ε1了
d呢 d就变成什么呢
变成d加上ε2了
这就意味着
如果要是捕捞的话
如果要是捕捞的话那么意味着什么呢
大鱼的平均率平均水平
因为是 a分之r a不动
r是在减小的也就在捕捞的过程当中那么r呢
大鱼的平均量是减少的
那么小鱼呢
我们说我们的 b分之d
那么d是在增大那么很自然的话
那么小鱼
是增长的
这是我们在捕捞的情况之下
好的考虑一种特殊情况
我们是战时的情况
那么战时的捕捞是什么呢 战时的捕捞率是降低的
或者说甚至是停止的
那么意味着什么件事呢
意味着
我们很容易想到首先原来的小鱼呢
对吧原来的小鱼
那么就开始由原来的d到d减去ε
那么反过来说就开始d加ε了
所以我们就说小鱼呢
就开始在减少下去
食用鱼的比例肯定就开始增加起来了
因为捕捞的时候有利于谁呢
有利于是小鱼
小鱼率x-杠是大的
那么反过来说的话
那么不捕捞
或者说停止捕捞或者捕捞的情况减少的话
那么谁有利呢
就应该是食肉鱼有利
也叫说大鱼有利了
大鱼有利
那么从这个阶段里面
我们就可以解释清楚
为什么在一战期间
亚德里亚海湾
它的食肉鱼或者大鱼
它的比率它会增加
一旦过了这段时间以后正常起来以后
那么它的比例又开始慢慢恢复起来
这是我们说这一个模型的非常重要的一个结论
好的 把这个结论我们稍微整理一下的话
说的是这么件事情
说捕捞的活动虽然对谁有利呢
实际上是对食用鱼对小鱼它的平均量的增加是有益的
而对于食肉鱼来说
它的平均量是减少的
那么这尤其是在我们自然生活当中的话
很多的时候将会出现我们说的
益虫跟害虫之间的一种问题
我们开玩笑说
在益虫和害虫之间杀虫剂的使用将会使得谁呢
那将会使得害虫增加
而益虫 还要减少
而益虫 还要减少
这是我们说Volterra的一个建模
或者说一个数学建模给我们自然界
或者由生态系统里面一个非常重要的一个警示
也就是说
人为的控制人为的捕捞
这种行为将有利于谁呢
有利于我们说的被食者
好的 关于 捕食者的模型
我们今天就说到这个地方
下课 再见
-1.1 案例分析
-1.2 数学建模绪论
-1.3 数学建模活动
-第1章 习题
--第1章 习题
-2.1 最小二乘方法
-2.2 拟合函数的扩展
-2.3 最小二乘方法应用
-2.4 线性插值
--2.4 线性插值
-2.5 样条插值
--2.5 样条插值
-第2章 习题
--第2章 习题
-3.1 Malthus模型
-3.2 Logistic模型
-3.3 捕食者模型
-3.4 差分方程模型
-3.5 随机动态模型
-第3章 习题
--第3章 习题
-4.1 成对比较矩阵
-4.2 一致性指标
-4.3 权重向量的计算
-4.4 量纲分析
--4.4 量纲分析
-4.5 轮廓模型
--4.5 轮廓模型
-第4章 习题
--第4章 习题
-5.1 名额分配
--5.1 名额分配
-5.2 Hamilton方法
-5.3 Q方法
--5.3 Q方法
-第5章 习题
--第5章 习题
-6.1 两变量的线性规划
-6.2 单纯形方法
-6.3 整数规划
--6.3 整数规划
-第6章 习题
--第6章 习题
-7.1 模糊集合
-7.2 模糊关系
--7.2 模糊关系
-7.3 模糊综合决策
-7.4 模糊聚类分析
-第7章 习题
--第7章 习题