[數學建模]數學建模算法和模型(B站視頻)(六)

[數學建模]數學建模算法和模型(B站視頻)(六)

種羣競爭模型

模型背景

當兩個種羣爲爭奪同一食物來源和生存空間相互競爭時,常見的結局是,競爭力弱的滅絕,競爭力強的達到環境容許的最大容量。

使用種羣競爭模型可以描述兩個種羣相互競爭的過程,分析產生各種結局的條件。

模型假設

有甲乙兩個種羣,他們獨自生存時,數量變化服從logistic規律
在這裏插入圖片描述
兩種種羣在一起生存時,乙對甲的增長的阻滯作用與乙的數量成正比,甲亦然。

競爭模型

在這裏插入圖片描述
其中x(t),y(t)分別爲甲乙兩種羣的數量,r1 r2爲它們的固有增長率,n1 n2爲它們的最大容量。s1的含義是對於供養甲的資源來說,單位數量的乙(相對n2)的消耗爲單位數量甲(相對n1)消耗的s1倍,s2同理。

Matlab求解

程序代碼

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);%使用5級4階龍格—庫塔公式計算
plot(t,x(:,1),'r',t,x(:,2),'b','LineWidth',2),grid;
pause;
plot(x(:,1),x(:,2),'LineWidth',2),grid  %作相軌線


結果分析

圖1
圖2
圖1表示兩種族隨時間的變化的數量變化;
圖2x軸表示x1種族的數量,y軸表示x2種族的數量
最後數值穩定在x=100,y=0上,即物種甲達到最大值,物種乙滅絕。

改變n1,n2:
n1=10000,n2=100
在這裏插入圖片描述
在這裏插入圖片描述
由於一開始甲物種的數量相對較少,所以乙物種得以快速增長,數量一度達到90以上,但最終仍然滅絕。物種容量的改變並不能影響最終誰會滅絕。

改變x10,x20:
x10=10,x20=100:
在這裏插入圖片描述
乙物種的初始數量大使其滅絕時間稍稍延後,但它滅絕的趨勢不變。綜上,無論怎樣改變r1,r2,n1,n2,x0,y0,都改變不了最後甲物種存活並達到數量最大且乙物種滅絕的結果。

s1>1,s2<1
s1=1.5,s2=0.7
在這裏插入圖片描述
最後甲物種滅絕,乙物種存活並達到數量極限。

s1<1,s2<1
s1=0.8,s2=0.7
在這裏插入圖片描述
最後穩定在x= 45.4546 y=68.1818上。兩物種共存。

適用情況

不同企業推出的類似產品可應用種羣競爭模型

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章