PS Angewandte Systemwissenschaften 1

Einheit 2: Recap Systemwissenschaften

David Maier
Institut für Umweltsystemwissenschaften
Universität Graz

Rückblick: Einheit 1

Was wir letzte Woche erlebt haben

Struktur

Machtasymmetrien, Hierarchie, implizite Regeln. Wer entscheidet?

Dynamik

Feedback, Emergenz, Kipppunkte, Pfadabhängigkeit. Was passiert danach?

Entscheidung

Koordinationsspiel, Fokalpunkt, Normbildung. Wie koordinieren wir uns?

Heute: Wir formalisieren diese Konzepte und lernen den Ansatz kennen, den wir das ganze Semester verwenden: Agentenbasierte Modellierung.

Teil 1: Grundbegriffe der Systemwissenschaften

"Systems science is ultimately about gaining more complete understanding. What it does, above and beyond the efforts of any domain-oriented science, is to make the whole enterprise of gaining better understanding explicit."
Mobus & Kalton (2015)

Was ist ein System?

Drei Perspektiven aus der Literatur

Meadows (2008)

"A system is an interconnected set of elements that is coherently organized in a way that achieves something. [...] A system must consist of three kinds of things: elements, interconnections, and a function or purpose."

Mobus & Kalton (2015)

"A system is a whole of some sort made up of interacting or interdependent elements, integrally related among themselves in a way that differs from the relationships they may have with other elements. This difference is what allows us to recognize a boundary."

Von Bertalanffy (1968)

"Systems cannot be explained in terms of traditional science because of the strong, often non-linear interactions among their parts, which means: the whole is more than the sum of its parts."

Meadows (2008), S. 11 · Mobus & Kalton (2015), Kap. 3 · von Bertalanffy (1968), nach Jackson (2024)

Was haben diese Definitionen gemeinsam?

Elemente

Die Bestandteile: Menschen, Zellen, Moleküle, Organisationen. Am leichtesten zu erkennen, aber oft am wenigsten wichtig für das Systemverhalten.

Verbindungen

Die Beziehungen zwischen den Teilen: Kräfte, Signale, Regeln, Informationsflüsse. Verändert man die Verbindungen, verändert sich das Verhalten.

Grenze

Was dazugehört und was nicht. Die Grenze kann konkret (Zellmembran), porös (Haustür) oder unscharf (Erdatmosphäre) sein. Wo wir sie ziehen, hängt von unserer Frage ab.

Ein System ist mehr als die Summe seiner Teile. Es kann Verhalten zeigen, das aus den Einzelteilen allein nicht vorhersagbar ist.

Meadows (2008) · Mobus & Kalton (2015) · Karsai, Schmickl & Kampis (2020)

Warum Systemwissenschaften?

Reduktionismus

Zerlege das Problem in Teile und verstehe jedes Teil einzeln.

Funktioniert bei einfachen Systemen mit wenigen Variablen.

Systemwissenschaften

Untersuche die Beziehungen zwischen den Teilen und wie das Ganze aus dem Zusammenspiel entsteht.

Nötig, wenn Wechselwirkungen das Verhalten bestimmen.

Was passiert, wenn man nur die Teile betrachtet?

Flussbegradigungen

Gerade Flüsse für Hochwasserschutz
→ verheerende Überschwemmungen flussabwärts. Lösung: Mäander wieder einbauen.

Finanzkrise 2008

Politikmodelle vereinfachten die Wechselwirkungen zwischen Banken weg
→ globale Krise.

Tollwut-Impfung

Gleichungsmodelle sagten 70% Impfrate voraus. Ein ABM zeigte: viel weniger nötig, Millionen Euro gespart.

Mobus & Kalton (2015), Kap. 1 · Railsback & Grimm (2019), Kap. 1

Systeme enthalten Modelle

Ein Modell ist eine vereinfachte Darstellung eines Systems, in einem Medium (z.B. Gehirn, Computer), in dem Tests durchgeführt werden können.

Vom Puzzleteil zum Gehirn

Moleküle

Die Form eines Atoms „modelliert" die Bindungsmöglichkeiten mit anderen Atomen.

Thermostat

Enthält ein Modell der gewünschten Temperatur und reagiert auf Abweichungen.

Gehirn

Baut komplexe Modelle der Welt auf, um die Zukunft vorherzusagen.

"A model is a system, and a system can be modeled."
Mobus & Kalton (2015)

Mobus & Kalton (2015), Kap. 1 & 13, Prinzipien 9 & 10

Die Stufenleiter des Verstehens

Vier Ebenen, auf denen wir Systeme erfassen

1 Systeme in der Welt — Das reale Phänomen, so wie es existiert 2 Systeme im Kopf — Mentale Modelle: ungenau, aber schnell 3 Systeme in der Abstraktion — Mathematik, Logik: präzise Vorhersagen 4 Systeme in Software — Computermodelle: komplexe Szenarien testen
Problem: Mentale Modelle haben Lücken, Widersprüche, und wir können Rückkopplungen schlecht im Kopf verfolgen. Deshalb brauchen wir formale Modelle und Simulation.

Mobus & Kalton (2015), Kap. 1, Fig. 1.1

Was ist ein System?

Ein System ist ein Ganzes, bestehend aus wechselwirkenden Komponenten, die untereinander in einer Weise verbunden sind, die sich von ihren Beziehungen zu anderen Elementen unterscheidet. Dieser Unterschied definiert eine Grenze.

Grenze

Was gehört dazu, was ist Umgebung?

Komponenten

Die Teile, selbst wieder Systeme

Relationen

Flüsse von Materie, Energie, Information

Emergenz

"Das Ganze ist mehr als die Summe seiner Teile"

Hierarchie

Subsysteme innerhalb von Systemen

Umgebung

Quellen und Senken außerhalb der Grenze

"A system is a set of things (people, cells, molecules, or whatever) interconnected in such a way that they produce their own pattern of behavior over time."
Donella Meadows (2008)

Mobus & Kalton (2015), Kap. 3

Was ist Komplexität?

Weaver (1948): Drei Klassen von Problemen

Einfache Probleme

Wenige Variablen, quantifizierbar. Analyse reicht: zerlegen und lösen.

z.B. Planetenbahnen, Fallgesetze

Desorganisierte Komplexität

Sehr viele Variablen, aber zufällig. Statistik reicht: Durchschnitte und Wahrscheinlichkeiten.

z.B. Gasgesetze, Versicherungsmathematik

Organisierte Komplexität

Viele Variablen, die zusammenhängen. Weder Analyse noch Statistik reicht.

z.B. Adipositas, Stadtentwicklung, Ökosysteme

Kompliziert ≠ komplex. Das Komplizierte ("mit Falten") kann man auseinanderfalten und analysieren. Das Komplexe ("mit Verflechtung") nicht: die Verflechtung selbst erzeugt das Verhalten.

Weaver (1948) · Cilliers (1998) · Lissack in Metcalf et al. (2021), Kap. 4

Komplexität aus einfachen Regeln

Conway's Game of Life (1970)

Komplexität aus einfachen Regeln

Game of Life simuliert sich selbst

Was macht ein System komplex?

Merkmale komplexer Systeme

1 Dynamische Interaktion: Viele Elemente beeinflussen sich gegenseitig

2 Nicht-Linearität: Kleine Ursachen, große Wirkungen

3 Lokale Interaktion: Hauptsächlich mit unmittelbaren Nachbarn

4 Rückkopplung: Direkte oder indirekte Feedback-Schleifen

5 Unvorhersagbarkeit: Systemverhalten nicht aus Einzelverhalten ableitbar

6 Evolution: Die Vergangenheit prägt die Gegenwart

Brücke zur ABM

Genau diese Merkmale sind es, die agentenbasierte Modelle einfangen können:

  • Lokalität → Sensing
  • Nicht-Linearität → Adaptives Verhalten
  • Rückkopplung → Interaktion
  • Unvorhersagbarkeit → Emergenz

Cilliers (1998) via Jackson (2024), Kap. 2

Was ist ein Modell?

Definition

Ein Modell ist eine zweckgerichtete Darstellung eines realen Systems. Der Zweck entscheidet, was ins Modell gehört und was nicht. Er ist der Filter.

"All decisions are made on the basis of models. Most models are in our heads. […] Mental models have serious shortcomings."
Jay W. Forrester (1994)
Problem mentaler Modelle: Lücken, Widersprüche, und wir können Rückkopplungen schlecht im Kopf verfolgen. Deshalb: Modelle explizit machen.

Railsback & Grimm (2019), Kap. 1

Beispiel: Pilzsuche im Wald

Wie sucht man am effizientesten nach Pilzen?

Beobachtung

Pilze wachsen in Clustern. Wenn man einen findet, sind weitere in der Nähe.

Intuition

Breit scannen, bei Fund lokal suchen. Aber: "breit" und "lokal" sind quantitative Fragen, die der Kopf nicht lösen kann.

Modell

Ein Agent (Sucher) auf einem Gitter mit Clustern. Zwei Strategien: Weitsuche und Nahsuche. Wann umschalten?

Der Zweck als Filter

Die Frage lautet: "Welche Suchstrategie maximiert den Ertrag, wenn Ressourcen in Clustern verteilt sind?"

Dieser Zweck sagt uns: Bäume, Boden, Pilzarten können wir ignorieren. Nur das Cluster-Muster und das Suchverhalten zählen.

Pointe: Selbst bei einem so einfachen Problem brauchen wir ein Modell, weil der Kopf die quantitativen Zusammenhänge nicht durchrechnen kann.

Railsback & Grimm (2019), Kap. 1

Der Modellierungszyklus

Modellierungszyklus nach Railsback & Grimm: Formulate the question → Assemble hypotheses → Choose model structure → Implement the model → Analyze the model → Communicate the model. Patterns fließen an mehreren Stellen ein.
Wichtig: Modellierung ist iterativ. Die erste Version ist immer falsch. Das ist in Ordnung.
"It is the very purpose of the model to teach us what is important."

Railsback & Grimm (2019), Kap. 1

Modellierungsansätze im Vergleich

Analytische Modelle

Gleichungen direkt lösen, keine Simulation nötig. Wenige Variablen, geschlossene Lösungen.

z.B. Lotka-Volterra (Räuber-Beute), Gravitationsmodelle

System Dynamics

Stocks, Flows und Feedback-Schleifen simulieren. Systemverhalten über Zeit, kontraintuitives Verhalten.

z.B. Limits to Growth (Club of Rome), Lieferketten, SIR-Modelle

Statistische Modelle

Muster in Daten finden, Vorhersagen treffen. Korrelationen, Regression, maschinelles Lernen.

z.B. Klimaprognosen, Wahlvorhersagen, Epidemiologie

Agentenbasierte Modelle

Individuen und ihre Regeln modellieren. Systemverhalten entsteht von selbst. Heterogenität, Raum, Emergenz.

z.B. Tollwutbekämpfung, Segregation (Schelling), Schwarmverhalten

Der Schlüssel: Analytische Modelle und System Dynamics beschreiben das System als Ganzes. Statistische Modelle beschreiben Zusammenhänge in Daten. ABMs beschreiben die Individuen, das Systemverhalten entsteht von selbst.

Mobus & Kalton (2015), Kap. 13 · Railsback & Grimm (2019), Kap. 1

System Dynamics: Stocks & Flows

Stock-and-Flow-Diagramm: Stocks als Behälter (Rechtecke), Flows als Zu- und Abflüsse (Pfeile mit Ventilen), Variablen als Kreise, verbunden durch Informationsflüsse.
Stocks sind Behälter (Bevölkerung, Lagerbestand, CO₂). Flows sind Zu- und Abflüsse (Geburten, Verkäufe, Emissionen). Feedback-Schleifen verbinden beides.

Visual Paradigm · Forrester (1961) · Sterman (2000)

Quick Check

Welcher Ansatz eignet sich am besten, um die Entstehung von Staus auf der Autobahn zu untersuchen?

Teil 2: Agentenbasierte Modellierung

Wir wissen, was Systeme sind, was sie komplex macht, und welche Werkzeuge es gibt. Jetzt tauchen wir in unseren Ansatz ein.

Im Rest des Semesters werden wir einen ganz bestimmten Ansatz verwenden: Agent-Based Modeling (ABM).

Was ist Agentenbasierte Modellierung?

ABMs sind Modelle, in denen Individuen oder Agenten als einzigartige und autonome Entitäten beschrieben werden, die lokal miteinander und mit ihrer Umgebung interagieren.

Vier Eigenschaften von Agenten

1 Einzigartig

Agenten unterscheiden sich voneinander: Größe, Ort, Ressourcen, Geschichte.

2 Autonom

Sie handeln unabhängig und verfolgen eigene Ziele.

3 Lokale Interaktion

Sie interagieren mit Nachbarn, nicht mit allen gleichzeitig.

4 Adaptives Verhalten

Sie passen ihr Verhalten an Veränderungen in ihrer Umgebung an.

Railsback & Grimm (2019), Kap. 1

Wo wird ABM eingesetzt?

Sozialwissenschaften

Schelling-Segregation: milde Nachbarschaftspräferenzen führen zu extremer räumlicher Trennung.

Schelling (1971)

Finanzmärkte

Börsensimulation: heterogene Trader erzeugen Crashs und Fat-Tail-Verteilungen, die Standardmodelle nicht erklären.

LeBaron (2001)

Epidemiologie

Krankheitsausbreitung: individuelle Kontakte, Immunstatus, Mobilität. Lokale statt globaler Strategien.

Epstein & Axtell (1996)

Schwarmverhalten

Boids: drei einfache Regeln pro Vogel, Schwarmformation emergiert. Auch für Fisch- und Roboterschwärme.

Reynolds (1987)

Stadtentwicklung

Urban Sprawl: Haushalte und Investoren treffen lokale Entscheidungen, die die Stadtlandschaft formen.

Parker et al. (2003)

Künstliche Gesellschaften

Sugarscape: Agenten sammeln Ressourcen, handeln, konkurrieren. Handel, Ungleichheit und Kultur entstehen.

Epstein & Axtell (1996)

Gemeinsames Muster: In all diesen Fällen entsteht das Systemverhalten aus den Entscheidungen und Interaktionen der Individuen. Genau dafür braucht man ABM.

Railsback & Grimm (2019), Kap. 1 · Metcalf et al. (2021), Kap. 13

ABM vs. traditionelle Modelle

Gleichungsmodell

dI/dt = β·S·I − γ·I

Aggregierte Variablen: der Anteil Infizierter. Keine Individuen, kein Raum.

Agentenbasiertes Modell

Individuelle Füchse mit Territorien, Wanderung, lokaler Ansteckung.

→ Systemverhalten emergiert aus dem Verhalten der Individuen.

Kernidee: Ebenen-übergreifende Modelle

Was passiert mit dem System wegen der Individuen, und was passiert mit den Individuen wegen des Systems?

Railsback & Grimm (2019), Kap. 1

Warum ABM? Ein Beispiel

Tollwutbekämpfung in Europa

Das Problem

Tollwut breitet sich über Rotfüchse in "Wellen" aus. Bekämpfung durch Impfköder aus Flugzeugen, extrem teuer.

Klassisches Modell

Differentialgleichungen → Vorhersage: 70% der Füchse müssen geimpft werden. Strategie: Gürtel-Impfung um den Ausbruch.

ABM (Jeltsch et al. 1997)

Individuelle Fuchsfamilien mit Revieren + wandernde Jungfüchse. Ergebnis: Ausrottung bei viel niedrigerer Impfrate. Kompakte Kreis-Impfung statt Gürtel.

Warum war das ABM besser?

Die Wellenausbreitung der Tollwut ist ein emergentes Muster, sie entsteht aus lokalen Kontakten zwischen Füchsen. Dieses Muster erleichtert die Ausrottung, weil die Krankheit sich selbst "kanalisiert".

Das Gleichungsmodell konnte diese räumliche Struktur nicht erfassen. Das ABM schon → Millionen Euro eingespart.

Lektion: ABMs sind besonders nützlich, wenn das Systemverhalten aus dem Zusammenspiel heterogener, räumlich verteilter Individuen entsteht.

Railsback & Grimm (2019), Kap. 1 · Jeltsch et al. (1997) · Eisinger & Thulke (2008)

Quick Check

Welches dieser Probleme braucht am ehesten ein agentenbasiertes Modell?

Emergenz: Das Herzstück von ABM

Emergenz bedeutet: Systemdynamiken, die aus den Interaktionen und dem adaptiven Verhalten der Individuen entstehen, oft unerwartet und schwer vorhersagbar.

Drei Kriterien

1 Nicht additiv

Das Ergebnis ist nicht die Summe der Einzeleigenschaften.

2 Anderer Typ

Es ist ein anderer Typ von Ergebnis als die Eigenschaften der Individuen.

3 Nicht vorhersagbar

Es lässt sich nicht leicht vorhersagen aus den Regeln der Individuen.

"Can you grow it?"
Epstein & Axtell (1996)

Railsback & Grimm (2019), Kap. 8

Emergenz in der Natur

Emergenz in Aktion: Flocking

Jeder Vogel folgt drei einfachen Regeln

Align

Gleiche Richtung wie Nachbarn einschlagen.

Cohere

Bewege dich zu Nachbarn hin.

Separate

Halte Mindestabstand.

→ Komplexe, sich ständig verändernde Schwärme emergieren. Niemand koordiniert. Kein Vogel kennt die Form des Schwarms.

Reynolds (1987) · Railsback & Grimm (2019), Kap. 8

Boids: Schwarmverhalten simuliert

Das ODD-Protokoll

ABMs standardisiert beschreiben

ODD = Overview, Design concepts, Details.

Entwickelt von Grimm et al. (2006). Bis 2017 in über 1500 Publikationen verwendet.

Problem: Viele ABMs sind unvollständig beschrieben → nicht reproduzierbar → unwissenschaftlich. ODD löst das durch ein einheitliches Format.

Nicht nur Dokumentation

ODD ist ein Denkwerkzeug. Es hilft euch von Anfang an, die richtigen Fragen zu stellen: Was modelliere ich? Welche Entitäten gibt es? Was tun sie? In welcher Reihenfolge?

Railsback & Grimm (2019), Kap. 3 · Grimm et al. (2006, 2010)

Die 7 Elemente des ODD

Block#ElementLeitfrage
Overview 1Purpose & patternsWas modellieren wir und warum?
2Entities, state variables, scalesWelche Dinge gibt es? Was charakterisiert sie?
3Process overview & schedulingWas tun die Entitäten? In welcher Reihenfolge?
Design 4Design concepts11 Konzepte: Emergenz, Adaptation, Sensing, …
Details 5InitializationWie wird das Modell gestartet?
6Input dataWelche externen Daten fließen ein?
7SubmodelsWie funktioniert jeder Prozess im Detail?
Nächste Woche: Wir verwenden ODD mit Stift & Papier, um gemeinsam ein erstes Modell zu entwerfen. Dazu lest ihr als Vorbereitung die ODD-Beschreibung des Butterfly-Hilltopping-Modells.

Railsback & Grimm (2019), Kap. 3

Teil 3: Entwicklungsumgebung einrichten

Python & uv

Wir verwenden Python 3.12+ für alle Modelle im Kurs. Ihr müsst Python nicht selbst installieren: uv erledigt das für euch.

uv verwaltet Python-Versionen, Pakete und virtuelle Umgebungen. Die zwei wichtigsten Befehle:

uv add paketname Paket installieren

uv run script.py Skript ausführen

uv installieren

  • Windows (PowerShell):
    powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
  • macOS / Linux:
    curl -LsSf https://astral.sh/uv/install.sh | sh
    Oder via Homebrew: brew install uv
Überprüfen: uv --version im Terminal. Python wird beim ersten uv run automatisch heruntergeladen.

docs.astral.sh/uv

Visual Studio Code

Unser Editor für Python, Git und Copilot

VS Code ist unser zentrales Werkzeug: Code schreiben, Git-Versionierung, und KI-Unterstützung mit Copilot, alles an einem Ort.

Nach der Installation: Python-Extension installieren (von Microsoft). VS Code schlägt sie automatisch vor, wenn ihr eine .py-Datei öffnet.

Download

code.visualstudio.com

Git

Versionsverwaltung für euren Code

Git speichert die Geschichte eures Codes. Ihr könnt damit "Wiederherstellungspunkte" erstellen und es bildet die Basis um gemeinsam am gleichen Code zu arbeiten. Wir verwenden Git über die VS Code-Oberfläche.

Überprüfen: Terminal öffnen und git --version eingeben. Wenn eine Versionsnummer angezeigt wird, ist Git installiert.

Download

git-scm.com

GitHub & Copilot

Code-Plattform und KI-Assistent

GitHub Account

Erstellt einen Account auf github.com. Darüber gebt ihr euren Code ab und arbeitet im Team. Verwendet für die Registrierung eure Uni-E-Mail-Adresse.

GitHub Education

Mit eurer Uni-E-Mail bekommt ihr das Student Developer Pack kostenlos. Damit wird Copilot freigeschaltet.

GitHub Copilot

KI-Unterstützung direkt in VS Code: Code-Vorschläge, Erklärungen, Fehlerbehebung.

Setup: In VS Code mit eurem GitHub Account einloggen

Zusammenfassung & Ausblick

Heute gelernt

  • Systeme: Elemente, Verbindungen, Grenze, Emergenz
  • Komplexität: Organisierte Komplexität, Cilliers' Merkmale
  • Modelle: Zweckgerichtete Vereinfachungen, vier Ansätze
  • ABM: Autonome Agenten, Emergenz, ODD-Protokoll
  • Setup: Python & uv, VS Code, Git, GitHub, Copilot

Nächstes Mal

Einheit 3: Vom System zum Modell. Wir entwerfen gemeinsam mit "Stift & Papier" ein erstes ABM nach dem ODD-Protokoll.

Bis zum nächsen Mal

Setup abschließen: uv, VS Code, Git installieren. GitHub-Account erstellen und GitHub Education beantragen.