Das Räuber-Beute-Modell nach Albert Lotka und Vito Volterra beschreibt mathematisch die Wechselwirkung zwischen den Populationsgrößen von Räubern und ihrer Beute.
Das Modell beruht auf folgenden Annahmen:
Die Beutetiere vermehren sich exponentiell.
Die Räuber verhungern exponentiell, wenn sie keine Beute vorfinden.
Sind die Räuber jedoch in der Lage, Beute zu ergreifen, so trägt dies zur Vermehrung der Räuber bei und reduziert gleichzeitig die Population der Beutetiere.
Als Gleichungssystem ausgedrückt:
![]()
![]()
| B | Anzahl der Beutetiere |
| R | Anzahl der Räuber |
| k1B | exponentielle Vermehrung der Beute mit der Konstante k1 |
| -k2R | exponentielles Verhungern der Räuber mit der Konstante k2 (das negative Vorzeichen gibt die Abnahme an) |
| k3BR | die 'Interaktion' zwischen Räubern und Beute mit der Konstante k3 (negatives Vorzeichen in der Beute-Gleichung und somit Abnahme der Beutepopulation, positives Vorzeichen in der Räuber-Gleichung und folglich Zunahme der Räuberpopulation) im Sinne einer Erbeutungseffizienz |
Zu beachten ist, dass in Matlab nur eine Funktion N definiert wird, weshalb die Darstellung von B mittels N(1) und von R mittels N(2) erfolgt.
function dN = PredatorPrey(t, N)
dN = zeros(2, 1);
k1 = 0.5;
k2 = 0.9;
k3 = 0.01;
dN(1) = k1*N(1)-k3*N(1)*N(2);
dN(2) = -k2*N(2)+k3*N(1)*N(2);
Speichern unter 'PredatorPrey' und ausführen im Command Window mit (Laufzeit 0 bis 50, Anfangswerte 50 bzw. 10)
[t, N] = ode45('PredatorPrey', [0 50], [50 10]);
und anzeigen mit
plot(t, N);

Das Diagramm zeigt einen oszillierenden Verlauf der Populationsgrößen von Räubern (grüne Linie) und Beute (blaue Linie), wobei charakteristischerweise die Maximalwerte der Räuber jeweils nach jenen der Beute erreicht werden.
Die Annahme einer exponentiellen Vermehrung der Beute in Abwesenheit von Räubern ist aufgrund der begrenzten Ressourcen eines Lebensraums unrealistisch. In Frage kommt jedoch ein logistisches Wachstum, und das Gleichungssystem kann dahingehend modifiziert werden:
![]()
![]()
Der einzige Unterschied zum originalen Modell ist der k1-modifizierende Term innerhalb der Klammer, der die maximal mögliche Anzahl an Beutetieren Bmax berücksichtigt.
Zu beachten ist, dass in Matlab nur eine Funktion N definiert wird, weshalb die Darstellung von B mittels N(1) und von R mittels N(2) erfolgt.
function dN = PredatorPreyLogistic(t, N)
dN = zeros(2, 1);
k1 = 0.5;
k2 = 0.9;
k3 = 0.01;
Bmax = 500;
dN(1) = k1*N(1)*(1-N(1)/Bmax)-k3*N(1)*N(2);
dN(2) = -k2*N(2)+k3*N(1)*N(2);
Speichern unter 'PredatorPreyLogistic' und ausführen im Command Window mit (Laufzeit 0 bis 200, Anfangswerte 50 bzw. 10)
[t, N] = ode45('PredatorPreyLogistic', [0 200], [50 10]);
und anzeigen mit
plot(t, N);

Es ist bemerkenswert, dass in diesem Fall die Oszillationen progredient abnehmen und (bei ausreichend langer Laufzeit des Modells) verschwinden; die Populationszahlen bleiben schließlich praktisch konstant (siehe auch Gedämpfte Schwingung).
Kategorie: Modelling
Letzte Änderung: 17.11.2008