3  Eindimensionale diskrete Modelle

Im vorherigen Kapitel haben wir ausgehend von Messwerten einen funktionalen Zusammenhang hergestellt. Häufig ist man aber nicht nur an der Rekonstruktion von Daten interessiert (oder es gibt gar keine Daten) sondern man möchte die Zusammenhänge und Prozesse eines natürlichen Systems verstehen. In diesem Fall fragt man die Experten, z.B. Biologen oder Physiker, wie sich das System, das man durch ein Modell beschreiben möchte, verhält1. Modelle, die auf den dem System zu Grunde liegenden Prozesse basieren, nennt man auch prozessorientierte Modelle.

3.1 Beispiel Bohnenwachstum

Aus den empirischen Messungen des Wachstums der Bohnenpflanze wissen wir, dass die Pflanze in der Hauptwachstumsphase mit einer Wachstumsrate von
\(m= 4.4\,cm/Tag\) wächst. Somit können wir ein Modell für die Hauptwachstumsphase aufstellen. Am Tag 0 der Hauptwachstumsphase (Tag 20 seit der Keimung) ist die Pflanze 15 cm hoch. Wir bezeichnen diesen Tag mal mit \(t_0\) und den zugehörigen Wert mit \(x_0\). Anhand dieser Information stellen wir folgendes Wachstumsmodell auf:

Zeit Bohnenhöhe
\(t_0\) (Tag 20) \(x_0\)
\(t_1\) (Tag 21) \(x_1= x_0 + m\)
\(t_2\) (Tag 22) \(x_2= x_1 +m =x_0 +m +m=x_0 + 2\cdot m\)
\(\vdots\) \(\vdots\)
\(t_n\) (Tag 20+n) \(x_n=x_{n-1}+ m = x_0 + n \cdot m\)
\(t_{n+1}\) (Tag 20+n+1) \(x_{n+1}=x_{n}+m = x_0 + (n+1)\cdot m\)

Dies ist das Modell des linearen Wachstums oder auch arithmetischen Wachstums. Für das Beispiel des Bohnenwachstums gilt das Modell nur für die Hauptwachstumsphase, also bis n=50 (Tag 70).

Allgemein können wird das Modell mit dem Startwert \(x_0\) auf verschiedene Arten aufschreiben:

  1. \(x_{n}=x_{n-1}+m \qquad n =1,2,...\)

  2. \(x_{n+1}=x_{n}+m \qquad n =0,1,2,...\)

  3. \(x_{n}=x_0+n \cdot m \qquad n =1,2,...\)

  4. \(x_{n+1}=x_0 + n\cdot m \qquad n =0,1,2,...\)

Die ersten beiden Formen nennt man implizite Darstellungen, da der Folgewert aus dem vorherigen berechnet wird. Die letzteren beiden sind explizite Darstellungen, da der Wert jeweils direkt aus dem Startwert \(x_0\) bestimmt wird. Es handelt sich aber bei allen Darstellungen um dasselbe Modell.

3.2 Beispiel Bakterienwachstum

Aus der Mikrobiologie sei bekannt, dass sich Bakterien einer bestimmten Art ca. alle 20 Minuten teilen. Wir nehmen vereinfachend an, dass sich dabei auch die Bakterienbiomasse alle 20 Minuten verdoppelt. Ein Bakterium hat in etwa einen Durchmesser von \(0.5\,\mu m\).
Zielfrage: Wie viele Bakterien entstehen aus einer vorgegebenen Anzahl in einer vorgegebenen Zeit?
Anhand der uns zur Verfügung stehenden Information stellen wir folgendes Wachstumsmodell auf:

Zeit Bakterienzahl
\(t_0=0\,min\) \(x_0\)
\(t_1=20\,min\) \(x_1=2\cdot x_0\)
\(t_2=40\,min\) \(x_2=2 \cdot x_1 = 2 \cdot 2\cdot x_0\)
\(\vdots\) \(\vdots\)
\(t_n=n\cdot20\,min\) \(x_n=2 \cdot x_{n-1} = 2 \cdot \cdots 2\cdot x_0 = 2^n \cdot x_0\)
\(t_{n+1}=(n+1)\cdot20\,min\) \(x_{n+1}=2 \cdot x_{n} = 2 \cdot \cdots 2\cdot x_0 = 2^{n+1} \cdot x_0\)

Man erhält das Wachstumsmodell des exponentiellen Wachstums in expliziter Darstellung.2. Das Modell wird in Form einer mathematischen Folge aufgeschrieben (siehe Anhang A.1.1) , entweder explizit als

\[x_n=2^n \cdot x_0\quad n=1,2,...\]

oder in impliziter (rekursiver) Darstellung

\[x_{n}=2\cdot x_{n-1}\; \quad n=1,2,...\]

wobei jeweils \(x_0\) als Anfangswert vorgegeben wird. Die implizite Darstellung wird häufig auch in der Form

\[x_{n+1}=2\cdot x_{n}\; \quad n=0,1,2,...\]

geschrieben. Beide Darstellungen beschreiben dasselbe Modell. Der Unterschied liegt nur in der Indizierung.

Das Modell kann man auch mit der e-Funktion aufschreiben. Dazu formt man die explizite Darstellung mit Hilfe der Rechenregeln für Exponentialfunktionen und Logarithmen (siehe Anhang A.4) um:

\[2^n = exp(ln \,2^n) = exp(n \cdot (ln \,2))\]

3.2.1 Überprüfung der Plausibilität des Modells

Zunächst müssen wir überprüfen, ob das Modell plausibel ist, d.h., dass es der Realität entspricht. Wir stellen die Frage:
Wie viele Bakterien gibt es nach einem Tag und welches Volumen nehmen sie ein ?
Ein Tag hat \(24\cdot 3\cdot 20\) Minuten, entspricht also 72 Zeitschritten. Unter der Annahme, dass zu Anfang ein Bakterium existiert, hat man nach 72 Zeitschritten

\[x_{72}=2^{72} = 10^{72 \log 2} \approx 10^{21.674} \approx 4.7 \cdot 10^{21} \qquad\text{ Bakterien}.\]

Nun, solch eine Zahl sagt uns anschaulich nicht viel 3 Schauen wir uns daher das Volumen an. Wir nehmen der Einfachheit halber an, dass die Bakterien kugelförmig sind und trotzdem dicht an dicht (ohne Lücken) gepackt liegen. Damit unterschätzen wir das tatsächliche Volumen. Das Volumen \(V_B\) eines Bakteriums mit einem Durchmesser von
\(d=0.5\,{\mu} m =0.5\cdot 10^{-6}\, m\) beträgt

\[V_B = \frac{4}{3} \pi \left (\frac{d}{2} \right )^3 = \frac{4}{3} \pi \left (0.25\cdot 10^{-6} \right )^3 m^3 = \frac{1}{48} \pi \cdot 10^{-18} m^3\]

Das Gesamtvolumen \(V\) beträgt also nach einem Tag

\[V= x_{72} \cdot V_B = 47 \cdot 10^{20} \cdot \frac{1}{48} \cdot \pi \cdot 10^{-18} m^3 \approx 3\cdot 10^2 \, m^3\]

Dieses Volumen entspricht einem Quader der Kantenlänge \(3\,m\times10\,m\times10\,m\), also in etwa einem großen Seminarraum. Upps, das kann irgendwie nicht richtig sein! Vielleicht ist die von uns angenommene Wachstumsrate zu groß. Bisher ist die Zahl der Bakterien, die pro Zeitschritt hinzukommt, genauso groß wie die Zahl bereits existierender Bakterien. Die Änderung der Zellzahl ist also zu jeder Zeit die Zellzahl selbst:

\[x_{n+1} = 2\cdot x_n = x_n + x_n =x_n + 1\cdot x_n\]

Die Wachstumsrate beträgt somit 1. Bei einem Zeitschritt von 20 min entspricht dies also gerade der Verdopplung, die uns aus der Mikrobiologie genannt wurde. Vielleicht müssen wir diese Wachstumsrate verringern. Setzen wir anstelle von 1 nun den Kontrollparameter \(r\) ein, so erhalten wir folgendes Modell:

\[ x_{n+1} =x_n + r\cdot x_n = (1+r) \cdot x_n \qquad r \in \mathbb{R}^+ \tag{3.1}\]

Wir erhalten nun folgende explizite Darstellung:

\[x_{n+1} = (1+r) \cdot x_n = (1+r) \cdot(1+r) \cdot x_{n-1}= \ldots = (1+r)^{n+1} \cdot x_0\]

oder anders geschrieben

\[x_{n} =x_0 \cdot (1+r)^{n} =x_0 \cdot e^{\ln(1+r)^n} = x_0 \cdot e^{n\cdot \ln(1+r)}\]

Es handelt sich also auch hier um das Modell des exponentiellen Wachstums. Für r=1 haben wir unser bisheriges Modell. Wir könnten nun r verringern, aber für jede Wachstumsrate \(r>0\) wächst die Zahl der Bakterien schließlich über alle Grenzen. (Abbildung 3.1).

Abbildung 3.1: Vergleich des exponentiellen Wachstums für die Wachstumsrate \(r=1\) (grün) und \(r=0.8\) (blau).

Ein Matlab-Code zur expliziten Berechnung des exponentiellen Wachstums ist in Listing 3.1 angegeben.

r=1;          % parameter
n=1:10;       % time steps
x0=1;         % initial value
x=x0*(1+r).^n;% calculating values
plot(x,'k*')  % plotting values
Listing 3.1: Matlab-Code zur expliziten Berechnung des exponentiellen Wachstums

Die implizite Darstellung kann man in Matlab wie in Listing 3.2 angegeben numerisch lösen4.

Achtung: MatLab beginnt mit der Indizierung bei 1. Somit ist der Startwert in x(1) und der 10. Wert in x(11).

x(1)=1; % initial value
N=10;   % number of time steps
r=1;    % parameter
% loop until N
for n=1:N 
   x(n+1)=x(n)+r*x(n);
end
plot(x,'k*')  % plotting values
Listing 3.2: Matlab-Code zur impliziten Berechnung des exponentiellen Wachstums

3.3 Logistisches Wachstum

Nun, irgendetwas ist also im Bakterienmodell immer noch falsch. Wir haben bisher eine sehr grobe Zielfrage im Auge gehabt. Anfangs wurde nicht spezifiziert, für welche Zeiträume das Modell Gültigkeit haben soll. Wenn wir die Zahl der Bakterien nach wenigen Stunden bestimmen, so scheint das Modell plausible Ergebnisse zu liefern.

Wir müssen also entweder den Gültigkeitsbereich einschränken oder das Modell an den gewünschten Gültigkeitsbereich anpassen. Zuerst stellt sich die Frage, warum der Gültigkeitsbereich eingeschränkt ist.

Bakterien brauchen zum Wachstum Nährstoffe und Sauerstoff5. Lässt man eine Bakterienkultur in einer Petrischale auf Nährlösung wachsen, so wird die Nährlösung nach und nach verbraucht. Je dicker der Bakterienrasen wird, desto schlechter werden innen liegende Zellen mit Sauerstoff und Nährstoffen versorgt. Es gibt also eine Nährstofflimitierung und eine Limitierung durch den zur Verfügung stehenden Platz. Bakterien werden also mit abnehmendem Nährstoff- und Raumangebot immer langsamer wachsen und sich dementsprechend auch immer seltener teilen. Wir müssen die Wachstumsrate mit zunehmender Bakterienzahl abnehmen lassen, also

\[x_{n+1} =x_n +R(x_n)\cdot x_n \,\]

wobei \(R\) nun eine Funktion der Bakterienzahl ist, die monoton fallend sein soll, also z.B. \(R(x) = r\cdot (1-\frac{x}{K})\) (Abb. 3.2)

Abbildung 3.2: Verringerung der Wachstumsrate mit zunehmender Bakterienzahl. Die Funktion \(R(x) = r\cdot (1-\frac{x}{K})\).

mit der Kapazität \(K\) und der maximalen Wachstumsrate \(r\). Für sehr kleine Bakterienzahlen beträgt \(R\) nahezu \(r\), und wird immer kleiner, je mehr sich die Zahl der Bakterien der Kapazität \(K\) nähert. Wir erhalten also das verbesserte Modell:

\[x_{n+1} = x_n + r\cdot \left (1-\frac{x_n}{K} \right ) \cdot x_n\]

Dieses ist das Modell des logistischen Wachstums. Für kleine Bakterienzahlen wächst die Population nahezu ungebremst. Je größer die Population wird, desto langsamer wächst sie (Abbildung 3.3).

Abbildung 3.3: Vergleich zwischen exponentiellem Wachstum und logistischem Wachstum mit \(r=1\) und \(K=3000\). Der Startwert ist jeweils \(x_0=1\).

Ist die Zellzahl sehr klein gegenüber der Kapazität, beträgt die Wachstumsrate nun in etwa \(r\).

Die rechte Seite kann man nun als Funktion der Zellzahl \(x\) schreiben. Sie gibt an, wie groß die Zellzahl im jeweils nächsten Zeitschritt ist:

\[f(x) = x + r \cdot \left (1-\frac{x}{K}\right ) \cdot x = -\frac{r}{K} x^2 + (1+r) \cdot x\]

Die Zellzahl ist also als Funktion der Zellzahl im vorherigen Zeitschritt zu verstehen. In Abbildung 3.4 ist der Graph der Funktion \(f\) für \(r=1\) gegeben. Es handelt sich um eine nach unten geöffnete und nach rechts verschobene Parabel.

Abbildung 3.4: “Rechte Seite” des Modells zum logistischen Wachstum für \(r=1\) (schwarz) und die Gerade \(y=x\) (grün).

Es gilt:

  • f(0)=0, d.h wenn keine Bakterien da sind, entstehen auch keine,

  • f(K)=K, wenn die Bakterienzahl gerade gleich der Kapazität ist, verändert sie sich nichts mehr,

  • für \(0<x<K\), gilt \(f(x)>x\), die Zellzahl nimmt zu,

  • für \(x>K\) , gilt \(f(x)<x\), die Zellzahl nimmt ab.

Der Schnittpunkt der Geraden \(y=x\) mit dem Graphen der Funktion gibt gerade die Zellzahlen an, bei denen sich nichts mehr ändert, also \(f(x)=x\) gilt. In unserem Beispiel also, wenn

\[x + r \cdot \left (1-\frac{x}{K}\right ) \cdot x = x \quad \mbox{ oder }\;\\ r \cdot \left (1-\frac{x}{K}\right ) \cdot x =0\]

gilt. Dies gilt für \(x=0\) und \(x=K\).

Man kann das Modell auch graphisch simulieren. Dazu wählt man einen Anfangswert für die Zellzahlen und bestimmt die Zellzahlen der folgenden Schritte, wie in Abbildung 3.5 dargestellt.

Abbildung 3.5: “Rechte Seite” des Modells zum logistischen Wachstum mit grafischer Lösung (Cobweb plot)

Vergrößert man die Wachstumsrate \(r\) passieren merkwürdige Dinge. Das System erreicht nicht mehr zwingend den Fixpunkt bei \(K\) sondern oszilliert oder macht sogar Chaos (Abbildung 3.6). Dies ist eine Folge des diskreten Zeitschritts. Befindet sich das System zur Zeit \(n-1\) unterhalb der Kapazität und ist die Wachstumsrate groß, schießt es mit dem nächsten Schritt \(n\) über die Kapazität hinaus. Im Schritt \(n+1\) fällt es dann wieder unter \(K\).

 

 

 
Abbildung 3.6: Logistisches Wachstum für die Wachstumsraten r = 1.0 (links), r = 2.1 (Mitte) und r = 2.7 (rechts). Startwert x0 = 0.1 Mio., K= 1 Mio.

Um dieses Verhalten zu vermeiden, muss man den Zeitschritt verkleinern, infinitesimal werden lassen. Dies wird in Kapitel 4 behandelt.

Trägt man die Lösung des Systems (ohne die ersten Schritte, in denen sich das System noch einschwingt) über der Wachstumsrate \(r\) auf so erhält man ein sogenanntes Bifurkationsdiagramm (Abbildung 3.7).

Abbildung 3.7: Bifurkationsdiagramm des logistischen Wachstums.

3.4 Zusammenfassung der Wachstumstypen

Bisher haben wir das lineare, dass exponentielle und das logistische Wachstum betrachtet. Das lineare Wachstum ist durch einen konstanten Zuwachs, das exponentielle Wachstum durch eine konstante Wachstumsrate gekennzeichnet. Beim exponentiellen Wachstum ist das Wachstum proportional zum aktuellen Wert, wobei die konstante Wachstumsrate gerade die Proportionalitätskonstante ist. Es ist durch einen unbegrenzten immer steiler werdenden Anstieg gekennzeichnet. Das exponentielle Wachstum lässt sich leicht in rekursiver und expliziter Darstellung aufschreiben. Beim logistischen Wachstum nimmt die Wachstumsrate mit zunehmenden Wert der betrachteten Größe linear ab. Das logistische Wachstum ist dadurch gekennzeichnet, dass das Wachstum mit zunehmender Größe (Abundanz) immer geringer wird und auf die sogenannte Kapazität zustrebt.

3.4.1 Arithmetisches Wachstum (lineares Wachstum)

rekursive Darstellung: \(x_{n+1}= x_n + m\)
explizite Darstellung: \(x_n= x_0 + n\cdot m\)

 

 

 

 
Abbildung 3.8: Arithmetisches Wachstum in linearer Darstellung (links) und logarithmischer Darstellung (rechts) für positiven Wachstumsparameter (oben) und negativen Wachstumsparameter (unten).

3.4.2 Exponentielles Wachstum

rekursive Darstellung: \(x_{n+1}=r\cdot x_n\)
explizite Darstellung: \(x_n= x_0 \cdot r^n = x_0\cdot e^{ln(r)\cdot n}\)

 

 

 

 
Abbildung 3.9: Exponentielles Wachstum in linearer Darstellung (links) und logarithmischer Darstellung (rechts) für r > 1 (oben) und r < 1 (unten).


3.4.3 Logistisches Wachstum

rekursive Darstellung: \(x_{n+1}= x_n + r \cdot (1-\frac{x_n}{K})\cdot x_n\), \(0 < x_0 < K\), \(r > 0\), \(r\) klein

 

 
Abbildung 3.10: Logistisches Wachstum in linearer Darstellung (links) und logarithmischer Darstellung (rechts) für kleines r > 0.


In der logarithmischen Darstellung sieht man, dass das Wachstum zu Beginn nahezu exponentiell ist.


  1. Das Wissen der Experten basiert dabei im allgemeinen natürlich auch auf Messungen und deren Interpretation.↩︎

  2. Beweis der expliziten Formel durch vollständige Induktion  *:
    Induktionsanfang: \(n=0\) : \(x_0=2^0\cdot x_0\)
    Induktionsschritt \(n-1\; \rightarrow n\;\):
    Es gelte \(x_{n-1}=2^{n-1} \cdot x_0 \;\), dann ist \(x_{n} = 2 \cdot x_{n-1} = 2\cdot 2^{n-1}\cdot x_0 = 2^{n} \cdot x_0\,.\)↩︎

  3. Zum Vergleich: Avogadro-Konstante (Anzahl Teilchen pro Mol): \(N_A\approx 6,022 \cdot 10^{23}\). Diese Anzahl ist also in etwa 128 mal größer als die von uns berechnete. Damit hat ein Diamant (12g Kohlenstoff/Mol) der Masse \(M=12\,g:128 \approx 0.093\, g\) die von uns bei den Bakterien errechnete Anzahl an Atomen. Das Volumen dieses Diamanten (Dichte \(\varrho=3.52\,g/cm^3\)) beträgt
    \(V=0.093\,g:3.52\,g/cm^3=0.0266 cm^3 =26.6\, mm^3\).
    Dies entspricht einem Würfel mit Kantenlänge \(3\, mm\).↩︎

  4. Geht in MatLab allerdings auch eleganter↩︎

  5. Sofern es sich um aerobe Bakterien handelt.↩︎