Dieser Abschnitt gibt einen Überblick über alle Bausteine, die wir in unseren System Dynamics Modellen verwenden, und wie sie miteinander verbunden werden können. Wir tun dies mithilfe eines sogenannten "Metamodells".
Metamodelle sind Modelle, die die Struktur eines anderen Modells definieren, in diesem Fall die Struktur von SD-Modellen.
In System Dynamics gibt es kein standardisiertes Metamodell für die Validierung der Struktur von Kausalschleifendiagrammen oder Bestands- und Flussdiagrammen, ja es gibt sogar kein standardisierendes Organ für System Dynamics. Der De-facto-Standard wird durch das Buch "Principles of Systems" ("Grundlagen der Systeme") (1968) von Jay Forrester definiert, aber jedes System Dynamics Tool implementiert diesen Standard auf leicht unterschiedliche Weise und unter Verwendung leicht unterschiedlicher Notationen. Das im Folgenden vorgestellte Metamodell definiert die Menge der Konstrukte, die wir in den System Dynamics Modellen und Diagrammen verwenden, die Sie auf dieser Website finden.
Ein einfaches Metamodell für System Dynamics ist in der folgenden Abbildung dargestellt, wobei die UML-Notation verwendet wird:
Das Metamodell hat die folgenden Konstrukte:
Fluss.
Bestände werden im Laufe der Zeit durch Flüsse akkumuliert. Die Flüsse stellen die Rate dar, mit der sich diese Bestände zu einem bestimmten Zeitpunkt ändern. Die Flüsse sind spezielle Arten von Konvertern. Die Flüsse wirken sich direkt auf die Bestände aus, in die oder aus denen sie fließen. Sie können auch Inputs für andere Konverter sein.
Konverter.
Konverter werden verwendet, um die komplexen Funktionen, die Flüsse definieren, in ihre Bestandteile aufzuschlüsseln. Konverter können von Beständen beeinflusst werden und können andere Konverter beeinflussen. Im Allgemeinen wandeln sie Inputs in einen Output um. Im Gegensatz zu Flüssen (die speziellen Arten von Konvertern sind), können sie einen Bestand nicht direkt beeinflussen.
Anfangswert.
Eine Konstante, die den Anfangswert einer Aktie angibt.
Funktion.
Ein mathematischer Ausdruck, der definiert, wie die Inputs des Konverters kombiniert werden, um einen Output zu erzeugen. Der Ausdruck kann Funktionen enthalten, die nur von der Zeit abhängen (z. B. das aktuelle Datum).
Gleichungen
Basierend auf diesem Metamodell können nun die Gleichungen, die das Herz des Simulationsmodells bilden, wie folgt definiert werden:
Bestand(0)= Anfangswert
Bestand(t) = Bestand(t-dt) + dt × (∑ Bestand.Zufluss(t-dt) − ∑ Bestand.Abfluss(t-dt))
Konverter(t) = Konverter.Funktion(Konverter.Input(t))
Fluss(t) = Fluss.Funktion(Fluss.Input(t))
Diese Gleichungen setzen voraus, dass wir die Euler-Integration verwenden.