2. Grundlagen

Die Implementierung erfolgt auf Grundlage der deutschen Übersetzung des World3-03 Modells von HARTMUT BOSSEL. „Die mathematischen Formulierungen sind exakt die gleichen wie im Original-Weltmodell World3-03 in der Fassung von 2003“9. Das Modell liegt demzufolge in der Simulationssoftware Vensim vor. Die Software verwendet die Symbolik der System Dynamics. Diese Symbolik war von Beginn an die konzeptionelle Grundlage für das World3-Modell. Im folgenden Unterpunkt wird zunächst auf die Simulationssoftware genauer eingegangen. Anschließend werden weitere Grundlagen hinsichtlich des Modellausbaus besprochen.

2.1 Simulationssoftware Vensim

Vensim ist eine vollwertige System-Dynamics-Software. Alle erdenklichen Systemmodelle können  mittels der Drag and Drop Methode erstellt werden. Das Grundkonzept der Software ist zunächst sehr leicht nachvollziehbar. Dazu wird ein Systemmodell einer einfachen Bevölkerungssimulation zu Hilfe genommen.

Beispielmodell Bevlkerungswachstums in Vensim
Abbildung 1: Beispielmodell Bevölkerungswachstum in Vensim10

Dieses Modell reicht bereits aus, um die grundlegenden Simulationselemente erklären zu können. Die Größen Geburtenrate und Lebenserwartung sind Konstanten.

Die Lebenserwartung wird auf 79,57 Jahre eingestellt. Diese Zahl entspricht der durchschnittlichen Lebenserwartung eines im Jahr 2007 geborenen Kindes in Deutschland11.

Die beiden Simulationselemente Geburten und Todesfälle werden als Zwischengrößen, bzw. Hilfsgrößen (engl. auxillary) bezeichnet. Hier wird nach jedem Zeitschritt eine Berechnung durchgeführt (im vorliegenden Fall entspricht der Zeitschritt einem Jahr). Die Pfeile deuten darauf hin, welche anderen Größen gebraucht werden, um diese Berechnung durchführen zu können.

Geburten = Geburtenrate * Bevölkerung.

Todesfälle = Bevölkerung / Lebenserwartung.

Nun ist es notwendig, einen Anfangswert für die Bevölkerungszahl zu kennen, um die Berechnung das erste Mal durchführen zu können bzw. zu ermitteln, von wie vielen Geburten und Sterbefällen im Jahr 2008 auszugehen ist. Dieser Initialwert wird in der Zustandsgröße (engl. Level) Bevölkerung  eingegeben.

Bevölkerung Neu = INTEG( Bevölkerung Alt + Geburten – Todesfälle )

Die zuletzt genannte Berechnungsvorschrift ist schon implizit gegeben. Die Integ-Funktion besagt, dass die Größe am Schluss noch über die Zeit integriert wird. Jede Zustandsgröße hat einen Zu- oder einen Abfluss, oder wie in diesem Falle beides. Das Symbol von dem das Zufließen entspringt stellt eine Quelle, das gleiche Symbol in dem das Abfließen mündet eine Senke dar. Quellen und Senken liegen außerhalb der Systemgrenze und haben keinen Einfluss auf das Systemverhalten.14
Nach der Eingabe, kann das Modell ausrechnen, wie sich das Bevölkerungswachstum in den folgenden Jahren z. B. bis zum Jahr 2015 entwickeln wird. Dabei wird vorausgesetzt, dass sich die Anfangsbedingungen (gleiche Geburtenrate und gleiche Lebenserwartung) nicht verändern. In der Tabelle ist das Ergebnis der Berechnung abgebildet:

Jahr Bevölkerung
2007 82 218 Tausend
2008 81 8589 Tausend
2009 81 5014 Tausend
2010 81 1454 Tausend
2011 80 791 Tausend
2012 80 4382 Tausend
2013 80 0868 Tausend
2014 79 7371 Tausend
2015 79 3888 Tausend

Modellverhalten bis 2015 15

Da eine Bevölkerungsabnahme erkennbar ist, ergibt sich ein negatives Bevölkerungswachstum. Neben der Geburten- und Sterberate, kann das Modell mit zusätzlichen Größen erweitert werden. So könnten auch die Zu- und Fortzüge einbezogen werden oder die Abhängigkeiten der Geburten- und Sterberate beispielsweise vom Lebensstandard. Der Lebensstandard müsste wiederum durch andere Größen berechnet werden (u. s. w.). Ab einer gewissen Zahl von hinzugenommenen Größen, um eine gute Trendexploration zu erhalten, ist ein  komplexes Wirkungsgefüge abgebildet.

2.2 Komplexität von World3-03

In World3-03 sind insgesamt 68 Konstanten, 164 Zwischengrößen und 15 Zustandsgrößen miteinander verknüpft. Hinzu kommen noch etliche ungezählte Parameter in so genanten Lookup-Tables. In der deutschsprachigen Literatur werden diese Tabellen auch Nachschautabellen genannt was ganz gut umschreibt, wozu sie dienlich sind. Sie enthalten durch empirische Messungen gewonnene oder durch plausible Annahmen gemachte Tabellenwerte. Auf diese und weitere Besonderheiten wird in den  nächsten Unterpunkten eingegangen. Zunächst soll noch einiges zur Komplexität von World3-03 gesagt werden. Die folgende Graphik gibt eine Übersicht über die Kompliziertheit und Komplexität von Systemen.


Abbildung 2: Kompliziertheit und Komplexitt16

Der Begriff Kompliziert steht in diesem Zusammenhang für eine hohe Anzahl von unterschiedlichen Systemelementen. Komplex wird ein System dann genannt, wenn es zusätzlich noch seine Zustände im zeitlichen Ablauf ändert und viele verschiedene Systemelemente von anderen abhängen17. Es ist anzumerken, dass die individuelle Komplexitätswahrnehmung in hohem Maße subjektiv geprägt ist. Ein Taxifahrer, der bereits seit 20 Jahren in einer Stadt sein Geld verdient, empfindet das dortige Straßensystem weniger komplex als ein Tourist, der sich das erste Mal in der Stadt aufhält.
H. BOSSEL hat versucht, die Komplexität des World-3-03-Systems, durch die „Gliederung“ des Gesamtsystems in verschiedene Teilsysteme zu vereinfachen. Auf CD-Rom (Anhang 1) ist eine Gesamtübersicht des World3-03-Modells mit den verschiedenen Teilsystemen zu finden. Das System hätte auch in andere Teilsysteme gegliedert werden können, wie es z. B. die Autoren des Modells selbst gemacht haben oder wie es in einer englischen Fassung der Vesim Software als Beispiel vorliegt. Wichtig ist einzig und allein, dass die Beziehungen zwischen den Systemelementen, sowie natürlich auch die Parameterwerte und Berechnungsvorschriften erhalten bleiben. Die äußerliche Abgegrenztheit der Subsysteme wird in Vensim durch so genannte Shadow Variablen erreicht. Diese Variablen dürfen nicht als Konstanten missverstanden werden, sondern stellen einen Link auf eine andere Größe (z.B. in einem anderen Teilsystem) dar.
Die Komplexität von World3-03 und jedem anderen komplexen System wird dann deutlich, wenn versucht wird herauszufinden, von welchen Faktoren eine Größe abhängt. Es gibt auch Größen, die (transitiv) nur von wenigen anderen Größen abhängen, jedoch ist das im World3 Modell meist die Ausnahme. In Vensim ist die Abhängigkeitshierarchie jeder Größe über die Buttons Causes Tree und Uses Tree einsehbar. Der Causes Tree gibt an, von welchen Faktoren eine Größe abhängt und der Uses Tree zu welchen anderen Größenberechnungen die Größe benötigt wird. Beispielhaft ist in Abbildung 3 dargelegt, von welchen Größen die Zwischengröße LebensErwartung abhängt.


Abbildung 3: Abhängigkeitsbaum der Zwischengröße LebensErwartung18

Der Abbildung kann entnommen werden, dass für die Berechnung der Lebenserwartung fünf andere Größen notwendig sind. Norm Lebenserwartung stellt eine Konstante dar, da keine Striche zu der Größe hinführen. Dagegen sind für die Berechnung der unterschiedlichen Effekte wieder andere Größen notwendig. Jedoch ist das, was abgebildet ist, nicht das Ende der Abhängigkeitshierarchie, da immer nur die zwei unteren Ebenen angezeigt werden. So kann für die Größe Anteil der StadtBevölkerung die folgende Hierarchie ausgegeben werden:


Abbildung 4: Abhängigkeitsbaum der Größe Anteil der StadtBevlkerung19

Dieses Spiel ließe sich solange Fortsetzen, bis man auf eine Größe stößt die von der Ausgangsgröße abhängt und hätte damit eine Rückkopplungsschleife identifiziert. Insgesamt werden von Vensim für die Zwischengröße Lebenserwartung 6146 Rückkopplungsschleifen gefunden, in denen die Größe eingebunden ist20. Auf verschiedene Ausprägungen von Rückkopplungsschleifen wird im nächsten Unterpunkt ausführlich eingegangen.

2.3 Typen von Rückkopplungen

Zwischen verschiedenen Systemselementen lassen sich unterschiedliche Wirkungsbeziehungen aufzeigen. In dem einleitend gemachten Bevölkerungsmodell kann schnell festgestellt werden, dass es zwei Möglichkeiten zur Steuerung des Systems gibt21. Zum einen führt eine höhere Geburtenrate zu einem rascheren Bevölkerungsanstieg. Zum anderen führt eine höhere Lebenserwartung zu einer geringeren Anzahl von Todesfällen. Diese zwei Größen (Geburtenrate und Lebenserwartung) sind die Steuerungsfaktoren für die in der folgenden Graphik abgebildeten Rückkopplungsmechanismen.


Abbildung 5: Rückkopplungen im Bevlkerungsmodell22

Der Zusammenhang von Geburten und Bevölkerung stellt einen selbstverstärkenden Wirkungszusammenhang dar.
Je mehr Geburten, desto  größer der Bevölkerungsbestand
Diese gleichgerichtete Wirkungsbeziehung ist auch als positive Rückkopplungsschleife oder positiver Regelkreis bekannt, da das Vorzeichen im algebraischen Sinne gleich bleibt.
Auf der anderen Seite lässt sich feststellen, dass zwischen Bevölkerung und Todesfällen eine entgegen gesetzte Beziehung vorzufinden ist, da das Vorzeichen wechselt.
Je mehr Todesfälle, desto geringer der Bevölkerungsbestand.
Diese unterschiedlichen Arten der Rückkopplungsbeziehungen werden von Steuerungsfaktoren beeinflusst. Die daraus resultierende Gesamtwicklung kann in Form dreier Graphen anschaulich wiedergegeben werden (siehe Abbildung 6).


Abbildung 6: Positiver und negativer Rückkoppelungsmechanismus, sowie Gleichgewichtszustand23

Der erste Graph kommt zustande, wenn der positive Regelmechanismus durch den negativen nicht kompensiert werden kann. Der zweite Graph ist das Resultat, wenn die negative Rückkopplung größer ist. Der dritte Graph zeigt ein absolutes Gleichgewicht, wenn sich beide Faktoren genau ausgleichen. Die zwei ersten Graphen machen deutlich, dass die Zu- bzw. Abnahme nicht linear erfolgt, sondern exponentiell. Der erste Graph zeigt, dass in jedem folgenden Zeitschritt die Größe um einen höheren Betrag zunimmt. Im Gegensatz dazu weißt der zweite Graph darauf hin, dass die Abnahme für jede weitere Zeiteinheit in absoluten Zahlen geringer ist, als die vorhergehende.
Zur Klarstellung:
Für einen Rückkopplungsmechanismus ist nicht entscheidend, ob der resultierende Graph nach oben oder unten gerichtet ist, sondern ob eine eskalierende oder stabilisierende Wirkung von ihm ausgeht. Die nächste Abbildung zeigt zwei weitere mögliche Graphen für einen positiven und einen negativen Rückkopplungsmechanismus. Es ist also lediglich das Vorzeichen vertauscht worden, mit der Folge, dass der Graph an der X-Achse gespiegelt wurde.


Abbildung 7: Weitere Beispiele fr negativen (links) und positiven (rechts) Rckkopplungsmechanismus24

Positive Rückkopplungsschleifen haben immer noch größere – eskalierende – Wirkungen zur Folge. Negative Rückkopplungsschleifen ziehen demgegenüber kompensierende, zielsuchende Auswirkung nach sich25. In Abbildung 8 ist das Grundmodell des Regelkreises aufgeführt. Das Modell weist darauf hin, dass jede Entscheidung eine Aktion zur Folge hat, die den Systemzustand ändert. Determiniert ist das Modell durch seinen Kausalkreislauf.


Abbildung 8: Grundmodell des Regelkreises 26

2.4. Weitere wichtige Funktionstypen im World3-03-Modell

Im World3-03-Modell ist der Großteil der Gleichungen der jeweiligen Systemelemente einfacher mathematischer Natur. Meist genügen die Grundrechenarten der Arithmetik um die unterschiedlichen Elemente miteinander zu verknüpfen. Darüber hinaus gibt es jedoch noch einigere weitere Funktionstypen welche angewendet werden und im folgendem erklärt sind.

2.4.1. Den Informationsfluss verzögernde oder glättende Funktionen

In der Realität treten Verzögerungen bei allen Strömen auf. Die in System Dynamics verwendeten Glättungsfunktionen sind der Versuch die charakteristischen Dynamiken von verzögerten Reaktionen zu standardisieren27. In World3-03 kommen solche Funktionen auch zum Einsatz.
SMOOTH:

Wie die Smooth-Funktion funktioniert, lässt sich anschaulich durch das Glätten einer Step-Funktion zeigen. Für eine Zwischengröße wird folgende Funktion definiert: STEP(1000, 1).
Die Funktion steht für folgende triviale if-then-else Anweisung: if(time>=1) 1000 else 0.

Eine Verzögerungszeit von beispielsweise drei Zeitschritten bedeutet nun, dass nach einem Zeitschritt28 ein Drittel der Information29 sein Ziel erreicht hat. Nach dem zweiten Zeitschritt kommt ein weiteres Drittel der noch verbleibenden Information hinzu. Es wird also der Istwert (Output) iterativ an den Sollwert (Input) angenähert. Die nächste Abbildung zeigt auf der linken Seite den Graphen der Step-Funktion und die geglättete bzw. iterativ angenäherte Smooth-Funktion rechts daneben.

Abbildung 9: Step- und Smooth-Funktion30

Dieses dynamische Systemverhalten lässt sich auch mit den bereits kennengelernten Systembauteilen erreichen, wie in der nächste Abbildung dargestellt wird.


Abbildung 10: Alternative Konstruktion der Smooth-Funktion31

Die Formel für das Verzögerungsglied ist implizit vorgegeben, da es sich um eine Zustandsgröße handelt:
neuer Wert = alter Wert + INTEG( Output – Input )
Der Initialwert ergibt sich aus dem ersten Inputwert. Die Outputgröße kann auf diese Änderung zugreifen und muss sie durch die Verzögerungszeit teilen. Das Verzögerungsglied greift im nächsten Schritt auf den Input und Outputwert zu und kumuliert die Differenz zwischen beiden Werten. Im nächsten Schritt greift die Outputgröße wieder auf den kumulierten Mittelwert zu und teilt diesen durch die Verzögerungszeit u. s. w.
SMOOTHI:
Die SmoothI-Funktion wird in World3-03-Modell einmal angewendet. Sie funktioniert genauso wie die zuletzt besprochene smooth-Funktion, nur mit der Ausnahme, dass ein definierter Initialwert festgelegt wird und sich dieser dadurch nicht aus der Inputgröße ergibt. Im Grunde ist dadurch eine anfängliche Step-Funktion eingebaut.
SMOOTH3:

Nach Forrester sind Rückkopplungsschleifen erster Ordnung eher bei technischen Systemen anzutreffen und für komplexe soziale Systeme nicht charakteristisch.32 In Abbildung 11 ist neben dem bereits bekannten Graphen der Smooth-Funktion, nun zusätzlich der Funktionsgraph für die Smooth2- und Smooth3-Funktion abgebildet. Alle drei resultieren aus der genannten Step-Funktion.

Abbildung 11: Smooth-Funktion ersten, zweiten und dritten Grades33

Bei der herkömmlichen Smooth-Funktion ist die maximale Änderungsrate, bzw. die größte Steigung der Outputfunktion, einen Zeitschritt nach der Änderung der Inputfunktion feststellbar. Für die smooth2- und smooth3-Funktion ist in diesem Moment keine Änderung auszumachen.34Bei der smooth2-Funktion fängt der Graph im zweiten und bei der smooth3-Funktion im dritten Zeitschritt an, sich dem Sollwert anzunähern. Das ist nicht verwunderlich, da eine smooth-Funktion n-ten Grades quasi eine Verschachtelung n vieler smooth-Funktionen ineinander darstellt. Anders ausgedrückt ist die smooth3-Funktion eine Reihenschaltung dreier Verzögerungsglieder. Eine Folge davon ist, dass sich für Funktionen höherer Ordnung ein Wendepunkt ergibt. Das bedeutet: der Informationsfluss läuft erst langsam an, erreicht dann einen Maximalwert und nimmt schließlich wieder ab. Die nächste Abbildung zeigt alle Möglichkeiten auf, wie Smooth-Funktionen ersten bis dritten Grades in Vensim konstruiert werden können. Natürlich ist es am einfachsten die bereits implementierten smooth(i/3)-Funktion zu verwenden und auch um bessere Übersicht zu gewährleisten.


Abbildung 12: Verschiedene Möglichkeiten für die Konstuktion von Smooth-Funktionen in Vensim35

(vz = Verzögerungszeit; order = Anzahl der Verzögerungsglieder;)
Abschließend sei noch angemerkt, dass Verzögerungen die Hauptursache der Instabilität eines

komplexen Systems ausmachen, weshalb ihre Betrachtung von großer Wichtigkeit ist.36

2.4.2 Tabellierte Funktionen

Neben den bereits kennengelernten Funktionen und Typen von Rückkopplungen werden im World3-03-Modell so genannte Nachschautabellen (Lookup-Tables) eingesetzt, um nicht-lineare Beziehungen herzustellen. Diese Tabellen beinhalten auf plausiblen Annahmen beruhende oder durch empirische Messungen gewonnene X-Y-Wertereihen. Plausible Annahmen (engl. „educated guesses“) stützen sich nicht auf statistischen Verfahren, sondern werden durch Schätzung‑, Bewertung- oder Expertenurteile festgelegt – so wurde es auch häufig im World3-Modell gemacht37. Eine Größe stellt nun eine Anfrage an eine solche Tabelle und erhält für einen Wert X einen Wert Y.


Abbildung 13: Lookup-Table in Vensim38

Die letzte Abbildung zeigt eine solche Nachschautabelle in Vensim. Wird beispielsweise der Wert 2e+009 angefragt wird 0.2 zurückgegeben. Häufig, wie auch in diesem Fall, liegt der Rückgabewert zwischen 0 und 1 und dient damit als Multiplikator39. Der Eingabewert wird dadurch multiplikativ verändert. Werden Werte angefragt, welche nicht in der Tabelle enthalten sind, wird der fehlende Wert durch lineare Interpolation gebildet. Für einen Wert außerhalb des Wertebereichs, wird der niedrigste bzw. höchste vorkommende Wert zurückgegeben.