Model Lotki-Volterry
WPROWADZENIE
Model Lotki-Volterry to klasyczne narzędzie w ekologii, służące do opisania dynamicznych relacji między dwiema populacjami: drapieżnika i ofiary. Model zakłada, że wzrost populacji ofiar jest hamowany przez obecność drapieżników, a wzrost populacji drapieżników zależy od dostępności pożywienia, czyli liczebności ofiar.
Podstawowe założenia modelu:
- Są dwie populacje: W modelu występują tylko dwie populacje: drapieżniki i ofiary.
- Brak innych czynników: Nie uwzględnia się innych czynników, takich jak konkurencja międzygatunkowa, choroby czy zmiany środowiskowe.
- Proste zależności: Wzrost populacji ofiar jest hamowany przez obecność drapieżników, a wzrost populacji drapieżników zależy od dostępności pożywienia, czyli liczebności ofiar.
Równania modelu:
Równania są różniczkowe, bo pokazują zmiany liczebności w czasie:
$$\frac{dx}{dt} = x(\alpha –
\beta y)$$
$$\frac{dy}{dt} = y(\gamma x -\delta)$$
gdzie:
x – liczebność populacji
ofiar
y – liczebność populacji drapieżników
t – czas
α – współczynnik wzrostu
naturalnego populacji ofiar (w przypadku braku drapieżników)
β – współczynnik śmiertelności
ofiar spowodowany drapieżnictwem
γ – współczynnik wzrostu populacji drapieżników zależny od
ilości pożywienia
δ – współczynnik śmiertelności naturalnej populacji drapieżników (w przypadku
braku pożywienia)
KOD W JĘZYKU PYTHON
JAK DZIAŁA PROGRAM?
- Definicja funkcji
lotka_volterra:- Funkcja ta służy do symulacji modelu Lotki-Volterry, który opisuje dynamikę populacji dwóch gatunków: ofiar i drapieżników.
- Przyjmuje ona następujące parametry:
alpha: Współczynnik wzrostu naturalnego populacji ofiar.beta: Współczynnik śmiertelności ofiar spowodowany przez drapieżniki.gamma: Współczynnik wzrostu populacji drapieżników zależny od ilości pożywienia (ofiar).delta: Współczynnik śmiertelności naturalnej populacji drapieżników.x0: Początkowa liczba ofiar.y0: Początkowa liczba drapieżników.t: Czas symulacji.
- Wewnątrz funkcji zdefiniowano
dt(krok czasowy) i obliczonon(liczbę kroków). - Tworzone są dwie tablice
xiy, które przechowują odpowiednio populację ofiar i drapieżników w kolejnych krokach. - Pętle for symulują zmiany w populacjach w czasie, uwzględniając równania modelu.
- Funkcja zwraca tablice
xiy.
- Ustawienie parametrów modelu:
- Zdefiniowane są wartości dla
parametrów
alpha,beta,gamma,delta,x0,y0it. - Parametry te reprezentują współczynniki wzrostu i śmiertelności oraz początkowe populacje i czas symulacji.
- Zdefiniowane są wartości dla
parametrów
- Symulacja modelu:
- Wywołanie funkcji
lotka_volterraz ustalonymi parametrami. - Wynikiem są dwie tablice:
x(populacja ofiar) iy(populacja drapieżników) w kolejnych krokach symulacji.
- Wywołanie funkcji
- Tworzenie wykresu:
- Użycie biblioteki
matplotlib.pyplotdo utworzenia wykresu. plt.plot(x, label='Ofiary'): Rysuje linię reprezentującą populację ofiar w czasie.plt.plot(y, label='Drapieżniki'): Rysuje linię reprezentującą populację drapieżników w czasie.plt.xlabel('Czas'): Opis osi x (czas).plt.ylabel('Liczba osobników'): Opis osi y (liczba osobników).plt.legend(): Dodaje legendę, która identyfikuje, która linia reprezentuje ofiary, a która drapieżniki.plt.show(): Wyświetla wykres.
- Użycie biblioteki