Neu in meinem Wiki: Simulationen mit SimPy und Mesa
Während einer eher zufälligen Diskussion kam meine Erinnerung an die 1972 veröffentlichte Studie »Die Grenzen des Wachstums. Bericht des Club of Rome zur Lage der Menschheit« wieder hoch. Ich hatte – wie viele andere – das Buch seinerzeit verschlungen und das dort verwendete Weltmodell hatte damals schon meine Begeisterung für Modellbildung und Simulation geweckt. Dies brachte mich darauf, daß ich zu diesem Thema schon lange nicht mehr gearbeitet hatte und ich beschloß, dies zu ändern.
Wie immer in solchen Fällen kam bei mir natürlich zuerst die Frage nach der zu verwendenden Software hoch. Geneigte Leserinnen und Leser des Schockwellenreiters wissen, daß die Antwort bei mir natürlich nur Python heißen kann, doch welche Bibliotheken kann oder soll ich verwenden? Eine kurze Recherche ließ mich auf SimPy und Mesa stoßen.
Simpy (nicht zu verwechseln mit SymPy, einem Python-Paket für symbolische Mathematik) ist ein prozessbasiertes Simulationsframework für diskrete Ereignisse, das auf Standard-Python basiert. Es ermöglicht Benutzern, aktive Komponenten wie Kunden, Fahrzeuge oder Agenten als einfache Python-Generatorfunktionen zu modellieren. SimPy wird als Open-Source-Software unter der MIT-Lizenz veröffentlicht.
Zu SimPy sind mir folgende Tutorials untergekommen:
- Jaya Zhané: SimPy: Simulating Real-World Processes With Python, Real Python, ohne Jahr
- Yasser Mushtaq: Object-Oriented Discrete Event Simulation — with SimPy, Toward Data Science vom 24. November 2022
- Dr. Kostas Alexis: Vehicle Dynamics Simulation using SimPy – A Quick Introduction to SimPy for ODE Simulations, ohne Jahr
Und diese Links runden das Ergebnis ab:
Dann ist da noch Mesa, ein ist ein freies (Apache-2-Lizenz), agentenbasiertes Modellierungs- (oder ABM-) Framework in Python. Damit können Nutzer mithilfe integrierter Kernkomponenten (zum Beispiel räumlicher Raster und Agentenplaner) oder benutzerdefinierter Implementierungen schnell agentenbasierte Modelle erstellen. Mesas Ziel ist es, ein Python 3-basierte Gegenstück zu NetLogo, Repast oder MASON zu sein.
Zu Mesa gibt es eine Reihe von YouTube-Videos (die hebe ich mir jedoch für den nächsten Freitag auf). Daneben gab das Netz auch noch folgende Tutorials frei:
- Ng Wai Foong: Introduction to Mesa: Agent-based Modeling in Python, Towards Data Science vom 1. Novmber 2019
- Mesa: Introductory Tutorial
- Thomas Pike, Jackie Kazil: Agent-Based Models with Python: An Introduction to Mesa, Santa Fe Institute 2023
Die Mesa-Homepage ist auf ReadTheDocs zu finden und natürlich besitzt die Bibliothek ebenfalls ein GitHub-Repositorium.
SimPy und Mesa haben erst einmal je eine Seite in meinem Wiki spendiert bekommen. Ich möchte damit in der nächsten Zeit etwas Sinnvolles anstellen, dazu habe ich erst einmal meine Bibliothek geplündert. Neben dem Originalbericht an den Club of Rome haben meine Regale auf die Schnelle diese Bücher freigegeben:
- E.F. Schumacher: Small is Beautiful. Die Rückkehr zum menschlichen Maß. Meine Ausgabe ist 1985 im Rowohl Taschenbuch-Verlag erschienen.
- Joël de Rosnay: Das Makroskop – Systemdenken als Werkzeug der Ökogesellschaft, der Klassiker (meine Ausgabe ist 1979 bei Rowohlt erschienen), der schon damals über Computer und Simulationen (und ihr Folgen) nachdachte.
- Christine Ax, Friedrich Hinterberger: Wachstumswahn: Was uns in die Krise führt - und wie wir wieder herauskommen, München (Ludwig-Verlag) 2013.
- Robert und Edward Skidelsky: Wie viel ist genug? Vom Wachstumswahn zu einer Ökonomie des guten Lebens, München (Verlag Antje Kunstmann) 2013.
- Donella H. Meadows: Die Grenzen des Denkens – Wie wir sie mit System erkennen und überwinden können, München (Oekom) 2019. Donella H. Meadows war schon Mitautorin beim ersten Bericht an den Club of Rome.
- Hartmut Bossel: Modellbildung und Simulation – Konzepte, Verfahren und Modelle zum Verhalten dynamischer Systeme, Braunschweig (Vieweg) 2. veränderte Auflage 1994. Mein Klassiker, der mich damals monatelang Simulationssoftware in Pascal programmieren ließ.
- Dazu gab es dann auch noch den Zusatzband vom gleichen Autor: Systeme, Dynamik, Simulation – Modellbildung, Analyse und Simulation komplexer Systeme, der 2005 bei BoD herausgekommen ist.
Und dann natürlich alles von Frederic Vester, was meine Bibliothek hergab – und das ist nicht wenig. Vester war ebenfalls (seit 1993) Mitglied im Club of Rome und sein Buch Die Kunst vernetzt zu denken – Ideen und Werkzeuge für einen neuen Umgang mit Komplexität wurde 1999 als der »neue Bericht an den Club of Rome« veröffentlicht (ich besitze die Taschenbuchausgabe, die 2002 aktualisiert und erweitert bei dtv in München herauskam).
Das ist doch mal wieder ein Programm, nicht nur für mich, sondern ich hoffe auch für Euch. Und habt Nachsicht mit den Kids, die sich derzeit an den Asphalt festkleben. Denn seit dem ersten Bericht an den Club of Rome vor über 50 Jahren hat sich in der Politik nichts verändert (wie auch? Jede Veränderung stellt die Systemfrage). Die Kids sind daher zu recht sauer.