复杂系统学习(三):ODE模型I:捕食者—猎物

目录

1. Lotka-Volterra 模型

1.1 模型假设

1.2 模式制定

2. 解决ODEs问题的一些方法

2.1 用欧拉法解决ODEs问题

2.2 使用中点来提高准确性

2.3 使用Runge-Kutta方法解决ODEs问题

2.4 使用Matlab解决ODEs

3. Lotka-Volterra模型的行为

3.1 Lotka-Volterra模型的数值解法

3.2 分析Lotka-Volterra模型

4. 对Lotka-Volterra模型的扩展

4.1 有多个物种的Lotka-Volterra模型 


1. Lotka-Volterra 模型

Lynxes and hares

复杂系统学习(三):ODE模型I:捕食者—猎物_第1张图片

1.1 模型假设

捕食者:红狐狸——猎物:兔子

  • 兔子的数量是可持续的(它们有充足的食物)。
  • 如果没有红狐狸,兔子数量的增长速度与它的规模成正比
  • 红狐狸只吃兔子
  • 如果没有兔子吃,红狐狸的数量就会以与其规模成正比的速度下降。
  • 环境是静止的,对种群的增长和衰亡速度没有影响 

1.2 模式制定

猎物(兔子):

捕食者(红狐狸):

 参数:

参数 含义
\alpha 兔群的增长率
\beta 狐狸捕食(吃)兔子的速度
\delta 狐狸种群的增长率
\gamma 狐狸数量因死亡和迁徙而衰减的速度

2. 解决ODEs问题的一些方法

2.1 用欧拉法解决ODEs问题

给定一组微分方程和一个初始条件,我们如何计算系统的未来状态?在系统中,有:

其中f定义了变量y及其导数之间的关系,欧拉正向差分法计算逼近序列

作为基本行为的时间梯度模拟

2.2 使用中点来提高准确性

与其说我们对下一个点的估计是基于区间起点的斜率,不如说我们可以通过使用中间点的斜率来提高准确性:

复杂系统学习(三):ODE模型I:捕食者—猎物_第2张图片

这种方法会更缓慢地偏离真实情况,但缺点是每次迭代需要更多的计算量。

2.3 使用Runge-Kutta方法解决ODEs问题

欧拉方法往往不够准确。通过利用t_{n}t_{n+1}之间的更多的点,可以提高准确度。

Runge-Kutta系列方法采用了这种方法,最常用的是RK4,它计算的是

其中k_{n}值是斜率的中间估计值:

复杂系统学习(三):ODE模型I:捕食者—猎物_第3张图片

2.4 使用Matlab解决ODEs

用于Lotka-Volterra模型的Matlab函数:

复杂系统学习(三):ODE模型I:捕食者—猎物_第4张图片

Matlab测试脚本:

复杂系统学习(三):ODE模型I:捕食者—猎物_第5张图片

3. Lotka-Volterra模型的行为

3.1 Lotka-Volterra模型的数值解法

复杂系统学习(三):ODE模型I:捕食者—猎物_第6张图片

复杂系统学习(三):ODE模型I:捕食者—猎物_第7张图片

上边的图是limited cycle,是不稳定的,排斥的。 

3.2 分析Lotka-Volterra模型

该系统的长期行为是什么?

平衡点:系统变量(种群水平R和F)不改变的点;

 两个平衡点:

解释:

  • 平衡1:两个种群都灭绝了
  • 平衡2:两个种群都无限期地维持在非零水平上

系统行为如何取决于其初始条件?

稳定性分析显示:

  • 第一个平衡(两个种群都灭绝)是不稳定的;只有当猎物水平被设定为零时才会出现,这时捕食者也会消亡 
  • 第二个平衡是稳定的;具体来说,它是中性稳定的,周围有无限多的周期性轨道。

这有多现实呢?另一个限制:

复杂系统学习(三):ODE模型I:捕食者—猎物_第8张图片

这张图有什么问题?

4. 对Lotka-Volterra模型的扩展

没有关于猎物种群承载能力的概念

logistic方程描述了种内竞争

基本的Lotka-Volterra模型捕捉了种间竞争

我们可以通过在Lotka-Volterra模型中增加一个额外的术语来综合这些观点,以解释同一物种成员之间的竞争:

复杂系统学习(三):ODE模型I:捕食者—猎物_第9张图片

复杂系统学习(三):ODE模型I:捕食者—猎物_第10张图片

右边的图是limited cycle,是稳定的,有吸引力的,有中心点,中心点是不动点。

还提出了其他的模型改进方案,以提高捕捉观察到的现象的能力 

4.1 有多个物种的Lotka-Volterra模型 

双物种竞争模型也可以写成:

复杂系统学习(三):ODE模型I:捕食者—猎物_第11张图片

其中\alpha _{ij}是物种j对物种i的影响,然后可以推广到n个物种的模型。

其中x_{i}代表第i个物种,\alpha _{ij}是相互作用项的矩阵。

多物种模型的另一个代表是:

这个版本将承载能力K_{i}和相互作用项\alpha _{ij}拉到相互作用矩阵A内。对于三个物种,生长率r_{1}=1.1;r_{2}=-0.5;r_{3}=\alpha +0.2,互动矩阵

复杂系统学习(三):ODE模型I:捕食者—猎物_第12张图片

 对于\alpha\geq1.5的值,可以产生混乱的行为。

复杂系统学习(三):ODE模型I:捕食者—猎物_第13张图片

你可能感兴趣的:(复杂系统建模,学习)