Eine Einführung von Uri Wilensky Hi, ich bin Uri Wilensky von der Northwestern Universität. Ich bin der Autor von NetLogo. Ich freue mich, heute mit Ihnen hier zu sein. Sie können sich glücklich schätzen in den fähigen Händen von Bill Rand zu sein. Bill hat mit mir an der Northwestern zusammengearbeitet und wir haben ein Lehrbuch über agentenbasierte Modellierung mit NetLogo geschrieben. Ich werde einige Worte zur Einführung in agentenbasierte Modellierung und NetLogo sagen. Geschichte: Römisch zu Indisch-Arabisch Europa an der Wende des ersten Jahrtausends - Vor der verbreiteten Übernahme der indisch-arabischen Ziffern konnten nur wenige multiplizieren / dividieren - Wissenschaftlern war die Überlegenheit sofort klar - Aber die allgemeine Verbreitung dauerte sehr lange - wurde heimlich verwendet aber nicht offiziell Diese Einführung werde ich mit einem etwas ungewöhnlichen Beispiel beginnen. Begeben wir uns zurück in die Zeit um 1000 n. Chr. als die indisch-arabischen Ziffern erstmals Europa erreichten. Bis dahin wurden in Europa römische Ziffern verwendet. Römische Ziffern haben kein Stellenwertsystem. Zahlen können also sehr groß werden und Multiplikation und insbesondere Division war sehr schwierig. Obwohl Wissenschaftler bald erkannten, dass indisch-arabische Zifferen eine überlegene Weise darstellten um Arithmetik zu betreiben, dauerte es eine lange Zeit bis sich diese Ideen und Methoden in Europa weit verbreiteten. Restrukturierungen Strukturierungen - die Kodifizierung des Wissens in einem Fachgebiet als Funktion der begrifflichen Infrastruktur, die verwendet wird um das Wissen auszudrücken Restrukturierungen - ein Wechsel von einer Strukturierung eines Fachgebietes zu einer anderen, der sich aus einem Wechsel der begrifflichen Infrastruktur ergibt Wilensky & Papert 2006, 2010 Dieses Phänomen, die Veränderung der Kodierung des Wissens in einem Fachgebiet, bezeichnen mein Kollege Seymour Papert und ich als Restrukturierung. Eine Strukturierung ist die Kodifizierung des Wissens in einem Fachgebiet als Funktion der begrifflichen Infrastruktur und eine Restrukturierung ist der Wechsel von einer Kodifizierung zu einer anderen. Einer der mächtigen Aspekte der römisch zu indisch-arabischen Restrukturierung war, dass davor nur wenige Menschen Multiplikationen und Divisionen ausführen konnten. Man musste sein Problem einem wichtigen Menschen übergeben, der lange daran arbeitete und dann das Ergebnis zurückgab. Dagegen konnte nach der Restrukturierung fast jeder die grundlegenden arithmetischen Algorithmen lernen. Die Wissenschaft konnte sich bedeutend weiterentwickeln, weil jetzt große Zahlen und das Stellenwertsystem verwendet werden konnten. Was ist wichtig und schwierig für die Menschen von heute? Ähnlich wichtig wie Rechenfähigkeiten für die Wissenschaft: Schwierigkeiten beim Verstehen komplexer Systeme Nach dieser Einführung können wir die Frage stellen: Was sind die harten Nüsse, die wichtig sind und die die Menschen heute nur schwer knacken können? Ein wichtiges Gebiet sind komplexe Systeme und die Schwierigkeiten sie zu verstehen. Und dieses Gebiet ist bereit für diese Art von Restrukturierung. Was sind komplexe Systeme? - Systeme mit vielen interagierenden Teilen, die sich im Lauf der Zeit entwickeln - Dezentrale Entscheidungen vs. zentrale Kontrolle - GLOBALE Muster entstehen aus LOKALEN Entscheidungen und Interaktionen - Beispiele: Ökosysteme, Wirtschaftssysteme, Immunsysteme, Molekulare Systeme, Verstand, Aktienmarkt, demokratische Regierung... Unter komplexen Systemen verstehe ich einfach Systeme, die aus vielen verschiedenen Teilen zusammengesetzt sind, und bei denen diese verschiedenen Teile interagieren. Und ohne jegliche zentrale Kontrolle oder einen zentralen Planer, entstehen globale Muster aus diesen lokalen Interaktionen. Einige typische Beispiele dafür sind Ökosysteme, Wirtschaftssysteme, Immunsysteme, der Aktienmarkt. Bei all diesen Beispielen interagieren die Teile und erzeugen ein globales Muster. Emergente Phänomene - Struktur (Regeln) auf der Mikroebene führen zu Mustern auf der Makroebene - Ordnung ohne Planung - Kein Anführer oder Dirigent - Probabilistische, dezentrale Steuerung; Interaktionen von verteilten Agenten Beispiele: Ameisenkolonie; Bebauung einer Stadt; Veränderungen der Populationen in einem Ökosystem; Wahlverhalten; Gasdruck; Stau; Preise von Waren Dafür verwende ich das Wort "emergent": als emergentes Phänomen bezeichnen wir das organisierte Muster, das aus den Interaktionen der verschiedenen, verteilten Agenten entsteht bzw. emergiert. Und diese sind berüchtigt dafür, schwer verstehbar zu sein. Emergenz ist schwierig - wenn man die Mikroebene kennt, ist die Makroebene schwer vorherzusagen - wenn man die Makroebene kennt, ist es schwer die Mikroebene herauszufinden, die sie erzeugt Emergenz ist also in zweierlei Weise schwierig: Wenn man das Mikroverhalten der Elemente kennt, kann man wissen wie sie interagieren; trotzdem bleibt es sehr schwierig die globalen Muster vorherzusagen. Umgekehrt kann es, wenn das globale Muster bekannt ist, sehr schwierig sein, die zugrundeliegende Mikrostruktur zu finden; die Regeln die, angewendet von den Agenten, dieses Muster erzeugen. Gewissermaßen ist dieses zweite Ziel ein großer Teil der Wissenschaft überhaupt: Wir beobachten die Regelmäßigkeiten der Welt auf der Makroebene und wie versuchen zu verstehen welche Elemente zusammen solche Muster möglich machen. Technologie kann helfen - Mit Hilfe neuer computerbasierter Modellierungs-Sprachen können wir komplexe Muster simulieren und besser verstehen, wie sie in Natur und Gesellschaft entstehen - Alte Methode: vereinfachte (aber mathematisch hochentwickelte) Beschreibungen von Komplexität um Analyse zu ermöglichen - berechne Antworten - Neue Methode: Computer können (tausende) individuelle Systemelemente (Agenten) simulieren, ermöglicht neue, zugänglichere Wege um komplexe Systeme zu untersuchen - simuliere um zu verstehen Technologie kann uns helfen, neue Repräsentationen zu erschaffen. So wie die indisch-arabische Repräsentation den Menschen dabei geholfen hat, komplexe mathematische und wissenschaftliche Probleme zu lösen. In ähnlicher Weise kann Computertechnologie uns ermöglichen neue Repräsentationen dieser komplexen Systeme zu erschaffen und sie zu verstehen. Das tun wir jetzt indem wir diese komplexen Systeme tatsächlich simulieren: wir erstellen diese individuellen Agenten, geben ihnen die Regeln für die Interaktion und lassen sie sich entfalten. Was ist agentenbasierte Modellierung? Ein AGENT ist ein unabhängiges, individuelles Element mit Eigentschaften und Aktionen, in einer Computersimulation. AGENTENBASIERTE MODELLIERUNG beruht auf der Idee, dass die Welt modelliert werden kann durch eine Vielzahl an verteilten Agenten, die alle einfachen Verhaltensregeln folgen. Agentenbasierte Modellierung ist genau das. Ein Agent ist ein autonomes, individuelles Element einer Simulation, mit Eigenschaften, Taten und einem characteristischen Verhalten. Die Tätigkeit der agentenbasierten Modellierung besteht darin, Phänomene der Welt zu betrachten und zu versuchen, sie in diese Elemente oder Agenten zu zerlegen, und diesen Agenten die Regeln zu geben, die tatsächlich das betreffende Phänomen erzeugen. Diese agentenbasierte Modellierung wird heute in großem Umfang und auf vielerlei Weise verwendet, in Naturwissenschaften, Sozialwissenschaften, Ingenieurwissenschaften. NetLogo - Mehr-Agenten Modellierungs-Sprache - 3 Typen von Agenten: Turtles (Schildkröten), Patches (Flecken), Links (Verbindungen) - Tausende von Agenten verhalten sich parallel - für die Modellierung von komplexen Systemen: emergente Phänomene, Evolution, dynamische Netzwerke - entwickelt von CCL mit Unterstützung von NSF - Tausende Nutzer (und wissenschaftliche Artikel) aus aller Welt und allen Fachbereichen Vor etwa 20 Jahren have ich die Sprache NetLogo für agentenbasierte Modellierung entwickelt. Dabei haben mich zwei Prinzipien geleitet: Niedrige Schwelle: es sollte sehr einfach zugänglich sein, so dass man sehr schnell mit der Modellierung beginnen kann. Sie werden bald beurteilen können, ob ich das geschafft habe. Das andere ist eine hohe "Decke", oder Obergrenze: es sollte mit dieser Entwicklungsumgebung möglich sein, wirklich komplexe, schwierige, wegbereitende Forschung zu betreiben. Modellierung von entstehenden Mustern in Natur und Gesellschaft - Feuer - Räuber/Beute - Segregation Nutzwert von agentenbasierter Modellierung - verbindet Mikro- mit Makro- - Heterogenität / individuelle Unterschiede - diskret - stochastisch - modifizierbar - räumlich - Netzwerk Ich werde Ihnen jetzt anhand von drei Beispielen zeigen, wie sie komplexe Systeme und daraus entstehende Muster mit NetLogo modellieren können. Das erste beschreibt einen Waldbrand. Dafür setze ich dieses Modell in NetLogo auf. Die grünen Pixel sollen Bäume darstellen. Dieser "density" (Dichte)-Regler ist auf 57% eingestellt. Das bedeutet, (etwa) 57% der freien Fläche ist von Bäumen bedeckt. Der linke Rand ist die Front eines Waldbrandes. Die Regeln in diesem Modell sind sehr einfach: Jeder Baum kennt seine Nachbarpixel im Norden, Osten, Süden und Westen. Wenn es dort irgendwo brennt, brennt der Baum selbst. Sonst geschieht nichts. Das sind die gesamten Regeln dieses Modells. Daneben gibt es nur noch ein paar für die Farben. Wenn ich "go" anklicke, beginnt das Modell zu laufen. Wie Sie sehen, verbreitet sich das Feuer ein bisschen. Und jetzt ist es ausgebrannt. Sie sehen, es ist nur ein kleiner Teil des Waldes abgebrannt. Wir können es nochmal mit der selben Dichte laufen lassen. Jedes Mal wird es ein bisschen anders, weil die Verteilung der Bäume und damit das Feuer anders ist. Dennoch können Sie sehen, dass in beiden Fällen mit 57% Dichte nur ein kleiner Teil des Waldes abgebrannt ist. Wenn ich die Dichte erhöhe, sagen wir auf 64% bekommen wir einen viel dramatischeren, viel umfassenderen Waldbrand. Das ist vielleicht etwas erstaunlich, denn wir sind daran gewöhnt zu denken, dass eine kleine Veränderung in der Dichte, also etwas mehr x zu etwas mehr y, also etwas mehr verbrannter Fläche führt. Wir sind keine derart dramatischen Veränderungen gewöhnt. Aber in komplexen Systemen ist das ein sehr verbreitetes Phänomen. Man kann das als Grenzwert, kritischen Punkt oder Wendepunkt bezeichnen, an dem ein kleines bisschen mehr Dichte ein dramatisch und qualitativ anderes Ergebnis beim Feuer bewirkt. Das nächste Beispiel ist das Räuber-Beute-Modell für Wölfe und Schafe. Es gibt Wölfe und Schafe in einem Ökosystem, die miteinander interagieren. Die Regeln dieses Modells sind nur ein bisschen komplizierter: Jeder Wolf beginnt mit etwas gespeicherter Energie, Bewegung kostet ihn etwas Energie und wenn er auf ein Schaf stößt, frisst er es und gewinnt dabei Energie. Fällt sein Energieniveau unter 0, so stirbt er. In dieser einfachen Version sind die Bewegungen von Wölfen und Schafen zufällig. Beide vermehren sich mit einer gegebenen Wahrscheinlichkeit. Lassen Sie uns also sehen was passiert, wenn man das Modell laufen lässt. Wir können, sowohl in dem kleinen Graphen unten links, als auch in dem Hauptbild sehen, dass es einen gewissen Zyklus der Anzahl von Wölfen und Schafen gibt, zumindest am Anfang. Aber jetzt sind alle Wölfe ausgestorben: es gab zu wenig Schafe, sie konnten keine mehr fressen und starben alle. Und weil die Schafe sich in diesem Modell ohne Wölfe unbeschränkt vermehren und nicht sterben, werden es immer mehr. Wenn wir es nochmal laufen lassen, kann es sich in die gleiche Richtung entwickeln, aber auch anders. Es könnte passieren, dass die Wölfe alle Schafe fressen und nur Wölfe übrig blieben. Da sie dann aber nichts mehr zu fressen hätten, würden sie auch aussterben. Dies sind also die zwei Attraktoren oder möglichen Zielzustände dieser Art von Modell. Und es sieht aus als ob auch diesmal wieder die Schafe gewinnen. Ich denke, Sie verstehen die Idee: Sie geben individuellen Wölfen und Schafen diese Regeln und sehen dann ein Muster auf der Ebene der Populationsgrößen. Mein letztes Beispiel stammt aus den Sozialwissenschaften. Es stammt ursprünglich von dem Ökonomen Thomas Schelling, der in den 1960ern in Harvard war und ein bedeutendes Buch über "Mikromotive und Makroverhalten" geschrieben hat. Darin betrachtet er diese Art von Fragen: Wie beeinflussen die Interaktionen von Individuen die Ergebnisse für die Gesamtbevölkerung? Ihn interessierte das Phänomen der Segregation, d.h. dass unterschiedliche Bevölkerungsgruppen in getrennten Wohnvierteln leben. In seinem Modell gibt es zwei Typen von Agenten, Rote und Grüne, die bereit sind zusammen zu leben. Aber sie haben eine bestimmte Toleranz, wieviele vom anderen Typ sie in ihrer Nachbarschaft akzeptieren. Wenn ein Roter von zu vielen Grünen umgeben ist, wird er unglücklich und zieht weg - umgekehrt auch ein Grüner zwischen Roten. Ihn interessierte, was dann geschehen würde. Der Regler "%-similar-wanted" steht bei 30%: ein Roter oder Grüner ist zufrieden, wenn in seiner Nachbarschaft bis zu 70% vom anderen Typ leben; bei mehr als 70% vom anderen Typ wird er wegziehen. Wenn wir das Modell laufen lassen, sehen wir, dass sich sehr getrennte Nachbarschaften ergeben. Als Schelling diese Arbeit ursprünglich machte, verwendete er Schachbretter und verschiedene Münzen, und er brauchte viele Monate um dieses Ergebnis zu erzielen. Sie sehen, wie schnell wir dagegen mit agentenbasierter Modellierung dieses Segregationsmuster bekommen. Agentenbasierte Simulation in den Sozialwissenschaften war lange umstritten und ist es vielleicht immer noch ein bisschen. Manche wenden ein, dass Menschen nicht sind wie Ameisen, dass es für sie keine so einfachen Regeln gibt. Vorurteile könnten ein wichtiger Grund für Segregation sein. Aber was Schelling zeigen wollte war: Wenn das soziale Ziel ist, Segregation zu verhindern, dann reicht es nicht aus, bei den Vorurteilen anzusetzen. Denn selbst wenn man nur ein klein wenig lieber mit der eigenen Bevölkerungsgruppe zusammen ist , wird sich die Segregation durchsetzen. Nutzwert von ABM - verbindet Mikro- und Makroebene - Heterogenität / individuelle Unterschiede - diskret - stochastisch - modifizierbar - räumlich - Netzwerk Dies sind also drei Beispiele, wie man NetLogo nutzen kann um komplexe Phänomene zu modellieren und repräsentieren. Ich möchte Sie darauf hinweisen, dass es auch komplexe Gleichungen gibt, mit denen man für gewöhnlich diese Phänomene modelliert. Dies ist das Beispiel der Ausbreitung des Waldbrandes, wofür man eine Gleichung für das Fließen von Flüssigkeiten und eine Wärmegleichung verwendet. Es sind partielle Differentialgleichungen. In NetLogo können sie durch einfache Regeln und einfachen Code repräsentiert werden. Ähnlich gibt es für das Räuber-Beute-Modell eine Reihe von Differentialgleichungen, die auch durch einfachen Code repräsentiert werden können. Die ABM-Perspektive - Muster auf der Makroebene resultieren aus: den Interaktionen und dem Zusammenwirken von vielen kleinen Komponenten, jede mit charakteristischem Verhalten Das Geheimnis, um einen großen Teil der Komplexität der Welt zu verstehen ist, diese Komplexität zu simulieren als Ergebnis vieler verteilter Individuen (Agenten), die einfachen Regeln folgen. Zusammenfassend: die Perspektive der agentenbasierten Modellierung ist, dass die großen Muster auf der Makroebene in Natur und Gesellschaft, oft, vielleicht immer, das Ergebnis der Interaktion und des Zusammenwirkens von vielen Elementen sind, von denen jedes seinen eigenen Regeln für Aktion und Interaktion folgt. Und dass viele Phänomene dadurch verstanden werden können, dass wir sie modellieren und simulieren können, durch Elemente, die ein paar einfachen Regeln folgen. Vielen Dank und noch viel Spaß mit dem Kurs bei Bill!