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.
1Systeme in der Welt — Das reale Phänomen, so wie es existiert↓2Systeme im Kopf — Mentale Modelle: ungenau, aber schnell↓3Systeme in der Abstraktion — Mathematik, Logik: präzise Vorhersagen↓4Systeme 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
1Dynamische Interaktion: Viele Elemente beeinflussen sich gegenseitig
2Nicht-Linearität: Kleine Ursachen, große Wirkungen
3Lokale Interaktion: Hauptsächlich mit unmittelbaren Nachbarn
4Rückkopplung: Direkte oder indirekte Feedback-Schleifen
5Unvorhersagbarkeit: Systemverhalten nicht aus Einzelverhalten ableitbar
6Evolution: 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
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.
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
1Einzigartig
Agenten unterscheiden sich voneinander:
Größe, Ort, Ressourcen, Geschichte.
2Autonom
Sie handeln unabhängig und
verfolgen eigene Ziele.
3Lokale Interaktion
Sie interagieren mit Nachbarn,
nicht mit allen gleichzeitig.
4Adaptives 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.
Gemeinsames Muster:
In all diesen Fällen entsteht das Systemverhalten aus den
Entscheidungen und Interaktionen der Individuen.
Genau dafür braucht man ABM.
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 Systemwegen der
Individuen, und was passiert mit den Individuenwegen 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.
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
1Nicht additiv
Das Ergebnis ist nicht die Summe
der Einzeleigenschaften.
2Anderer Typ
Es ist ein anderer Typ von Ergebnis
als die Eigenschaften der Individuen.
3Nicht 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.
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?
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 paketnamePaket installieren
uv run script.pySkript 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.
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.