2024 MCM数学建模美赛2024年A题复盘,思路与经验分享:资源可用性与性别比例 | 七鳃鳗的性别比例变化对生态系统稳定性的影响(四)

审题

第三问要我们评估七鳃鳗的性别比例变化对生态系统稳定性的影响。

这里我们就要去查一下生态系统稳定性的定义。

通过查资料我们知道,生态系统稳定性包括生态系统的抵抗力和恢复力。

OK,到这里问题就变成了,七鳃鳗的性别比例对生态系统的抵抗力和恢复力的影响。

那怎么去评估,生态系统的抵抗力和恢复力就是接下来的问题。

通过查资料我们发现,评估生态系统的抵抗力和恢复力是没有一个统一的方法的。这就需要我们具体问题具体分析,但是我们也可以别人是怎么去评估生态系统的抵抗力和恢复力的。

这里评估台风对生态系统的抵抗力和恢复力的文章:

它这里提出的方法就是计算台风出现前后,植被的面积的变化率作为评价生态系统抵抗力的指标。

回复力同理,也是计算植被面积的分辨率作为评价生态系统的恢复力。

抓住重点,就是种群数量前后的变化率,是评价生态系统稳定性的关键。

借鉴上面的方法,我们提出了我们这道题的生态系统稳定性评价方法。

生态系统抵抗力

这里我们假设,生态系统中原本生存了700条湖鳟,生态系统稳定。这时生态系统中有100条七鳃鳗入侵,对生态系统造成了破坏,湖鳟数量开始下降。好了,这时我们就看七鳃鳗入侵一定时间后,比如700天,湖鳟鱼的数量下降了多少。通过计算入侵前后的湖鳟数量变化率来评价生态系统的抵抗力。

注意,我们这里可以让100条七鳃鳗以不同性别比例入侵这个生态系统,这样湖鳟鱼的最后的变化率也是不同的。以此我们来评价不同性别比例对生态系统抵抗力的影响。

这里计算湖鳟鱼的种群数量用到第一问的公式,变化率用如下公式:

变化率 = (初始种群数 - 一段时间后的种群数)/ 初始种群数

生态系统恢复力

恢复力同理,700天后让100条七鳃鳗移除生态系统,这时湖鳟种群数量已经低于初始值。我们再计算多少天的时间,湖鳟鱼的数量可以恢复到初始值,以此评价生态系统的恢复力。

同理,我们也是让100条七鳃鳗以不同性别比例入侵这个生态系统,让后再以此,这时生态系统的恢复力也是不同的。以此我们来评价不同性别比例对生态系统恢复力的影响。

公式如上, 恢复率 = (初始种群数 - 一段时间后的种群数)/ 恢复天数

计算结果

性别比例对抵抗力的影响

湖鳟鱼为700,七鳃鳗为100,在性别比例不同下,湖鳟鱼的变化曲线。

去掉七鳃鳗后湖鳟鱼的数量

计算抵抗力,并作性别比例和变化率的关系图。

可以看到,雄性占比为0.5时,湖鳟鱼的变化率更大,意味着对生态系统的破坏更大,导致生态系统抵抗力下降。随着雄鱼占比增加,湖鳟鱼的变化率减小,意味着对生态系统破坏小。

性别比例对恢复力的影响

700天后,将七鳃鳗去除,湖鳟鱼在去除后的数量进行增长,看多少天能恢复到初始值。

同样,做性别比例和恢复率的关系图

同样,可以看到雄性占比在0.5时,恢复速度较快,意味着恢复力较强。随着雄性占比减少,恢复速度降低,恢复力减弱。

代码

Matlab 复制代码
% 参数定义
r = 0.03; % 增长率
K = 700; % 环境承载能力
N0 = K; % 初始种群数量
d = 0.01;%死亡率
alpha = 0.5;
alpha_lis = [alpha];
N_l = 100;%七鳃鳗数量
a = 0.023*alpha*N_l + 0.029 * (1-alpha) * N_l;%捕食量
w = 4;
W = a/w;
% 时间跨度
tspan = [0, 700]; % 从0到100个时间单位

% 定义微分方程
%odefun = @(t, N) r*N(1) * (1 - N(1)/K) - a - d*N;

for i=1:6
    % 定义微分方程
    odefun = @(t, N) r*N(1) * (1 - N(1)/K) - a - d*N;
    % 使用ode45求解微分方程
    [t, N(:,i)] = ode45(odefun, tspan, N0);
    alpha = alpha + 0.07;
    alpha_lis = [alpha_lis,alpha];
    a = 0.023*alpha*N_l + 0.029 * (1-alpha) * N_l;
    W = a/w;
end
% 绘制结果
figure
plot(t, N);
xlabel('Time');
ylabel('Population N');
title('Population Dynamics');
%text('K=1000','FontSize','right');

% 在曲线末尾的x值处添加文本
text(t(end), N(end,1), ['N= ', num2str(N(end,1)),'   ','K=',num2str(K)], 'HorizontalAlignment', 'right');

yline(0,'r')
% 设置图例位置
legend(['alpha = ',num2str(alpha_lis(1))], ...
   ['alpha = ',num2str(alpha_lis(2))], ...
   ['alpha = ',num2str(alpha_lis(3))], ...
   ['alpha = ',num2str(alpha_lis(4))], ...
   ['alpha = ',num2str(alpha_lis(5))], ...
    ['alpha = ',num2str(alpha_lis(6))]);
%grid on;

figure
plot(alpha_lis(:,1:6),(700-N(end,:))/700,'r-*');
title('The rate of loss of the sex ratio to the ecosystem')
ylabel('loss rate')
xlabel('sex ratio')


n = N(end,:);
N = [];
alpha = 0.5;
alpha_lis = [];
figure
for i =1:6
    % 定义微分方程
    odefun = @(t, N) r*N(1) * (1 - N(1)/K) ;
    
    % 使用ode45求解微分方程
    [t, N] = ode45(odefun, tspan, n(i));
    
    subplot(2,3,i);
    plot(t, N, 'g', 'LineWidth', 2,'Color','r'); % 种群总数N(t)
    xlabel('Time');
    ylabel('Population (N)');
    title(['alpha=',num2str(alpha)]);
    yline(200,'b','LineWidth',2)
    alpha = alpha + 0.07;
    alpha_lis = [alpha_lis,alpha];
end
相关推荐
Virgil13910 小时前
数学建模练习题——多元统计分析
数学建模
通信射频老兵10 小时前
卫星通信基础知识---自由空间衰减和天线增益计算
经验分享·5g·数学建模·信号处理·射频工程
wwer1425263632 天前
数学建模_时间序列
数学建模
wwer1425263632 天前
数学建模_拟合
数学建模
FF-Studio2 天前
【硬核数学 · LLM篇】3.1 Transformer之心:自注意力机制的线性代数解构《从零构建机器学习、深度学习到LLM的数学认知》
人工智能·pytorch·深度学习·线性代数·机器学习·数学建模·transformer
葫三生3 天前
如何评价《论三生原理》在科技界的地位?
人工智能·算法·机器学习·数学建模·量子计算
wwer1425263633 天前
数学建模_图论
数学建模·图论
wwer1425263633 天前
数学建模_熵权法确定权重
数学建模
FF-Studio3 天前
【硬核数学】3. AI如何应对不确定性?概率论为模型注入“灵魂”《从零构建机器学习、深度学习到LLM的数学认知》
大数据·人工智能·深度学习·机器学习·数学建模·自然语言处理·概率论
阑梦清川3 天前
Colormind:优秀大模型赋能国产求解器,打造自主可控建模平台
数学建模