欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

数学建模 - 人口竞争模型

最编程 2024-05-03 21:33:55
...

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

种群竞争模型

当两个种群为争夺同一食物来源和生存空间相互竞争时,常见的结局是,竞争力弱的灭绝,竞争力强的达到环境容许的最大容量。

使用种群竞争模型可以描述两个种群相互竞争的过程,分析产生各种结局的条件。

有甲乙两个种群,它们独自生存时数量变化均服从Logistic规律

image.png

两种族在一起生存时,乙对甲增长的阻滞作用与乙的数量成正比;甲对乙有同样作用。

image.png

其中

x(t),y(t)分别为甲乙两种群的数量;

r1,r2为它们的固有增长率,n1,n2为它们的最大容量;

s1的含义是对于供养甲的资源来说,单位数量的乙(相对n2)的消耗为单位数量甲(相对n1)消耗的s1倍;

s2与s1同理。

代码:

文件fun.m

function dx=fun(t,x,r1,r2,n1,n2,s1,s2)
        r1=1;
        r2=1;
        n1=100;
        n2=100;
        s1=0.5;
        s2=2;
        dx=[r1*x(1)*(1-x(1)/n1-s1*x(2)/n2);r2*x(2)*(1-s2*x(1)/n1-x(2)/n2)];
        

文件p3.m

h=0.1;%所取时间点间隔
        ts=[0:h:30];%时间区间
        x0=[10,10];%初始条件
        opt=odeset('reltol',1e-6,'abstol',1e-9);%相对误差1e-6,绝对误差1e-9
        [t,x]=ode45(@fun,ts,x0,opt);%使用54阶龙格—库塔公式计算
        plot(t,x(:,1),'r',t,x(:,2),'b','LineWidth',2),grid;
        pause;
        plot(x(:,1),x(:,2),'LineWidth',2),grid  %作相轨线
        

应用

不同企业推出的类似产品的销售情况

image.png

相对于种群一,种群二的增长趋势。

image.png 最后数值稳定在x=100,y=0上,即物种甲达到最大值,物种乙灭绝