Data Science and Artificial Intelligence

Agent-based programming

Integrated course, 2.50 ECTS


Course content

Part 1: Fundamentals of agent-based programming
- Cellular automata, self-organization and emergences
- Properties of agents or agent-based models
- Description of agent-based models using the ODD protocol
- Overview of known agent-based models
Part 2: Programming and evaluation of agent-based models
- Introduction to the conception and programming of agent-based models
- Introduction to the evaluation of agent-based models / simulations
- Advanced topics in agent-based modeling

Learning outcomes

The students have a basic understanding of cellular automata, self-organization, emergences and agent-based modeling or simulation. They are able to plan, create or program agent-based models independently and to evaluate simulation results in this regard. They are also able to describe agent-based models using the ODD protocol.

Recommended or required reading and other learning resources / tools

Recommended literature or books:
- Deimeke, D., Kania, S. et al (2018). Linux server: The comprehensive manual. Incl. Samba, Kerberos, databases, KVM and Docker, Ansible and much more (2019 edition). Reihnwerk Computing, 5th edition.
- Dille, N., Grote, M. et al (2017). Microsoft Hyper-V: Das Handbuch für Administratoren. Aktuell zu Windows Server 2016. Rheinwerk Computing, 3. Auflage.
- Gilbert N. (2008). Agent-based models. Series: Quantitative Applications in the Social Sciences 153. Sage Publications, 2nd edition.
- Kania, S., Wolf, J. (2019). Shell-Programmierung: Das umfassende Handbuch. Für Bourne-, Korn- und Bourne-Again-Shell (bash). Ideal für alle UNIX-Administratoren (Linux, macOS). Rheinwerk Computing, 6. Auflage.
- Karau, H., Kowinsky, A. et al (2015). Learning Spark: Lightning-Fast Data Analysis. O'Reilly and Associates, 1st edition.
- Kofler, M., Spenneberg, R. (2012). KVM für die Server-Virtualisierung - Von Konfiguration und Administration bis Clustering und Cloud. Addison-Wesley Verlag, 1. Auflage.
- Liebel, O. (2018). Skalierbare Container-Infrastrukturen: Das Handbuch für Admins & DevOps-Teams, inkl. Docker und Container-Orchestrierung mit Kubernetes und OpenShift. Rheinwerk Computing, 2. Auflage.
- Meier, J. H. (2018). Citrix XenApp und XenDesktop 7.15 LTSR: Das Praxishandbuch für Administratoren. Reihnwerk Computing, 6. Auflage.
- Öggl, B., Kofler, M. (2018). Docker: Das Praxisbuch für Entwickler und DevOps-Teams. Für Windows, Mac und Linux. Reihnwerk Computing, 1. Auflage.
- Railsback S. F., Grimm V. (2012). Agent-Based and Individual-Based Modeling. Princeton University Press, 2nd edition.
- Sayama, H. (2015). Introduction to the Modeling and Analysis of Complex Systems. Open SUNY Textbooks, 1st edition (print edition).
- White, T. (2015). Hadoop: The Definitive Guide. O'Reilly and Associates, 4th edition.
- Wilensky U., Rand W. (2015). An Introduction to Agent-Mased Modeling. Modeling Natural, Social, and Engineered Complex Systems with NetLogo. MIT Press, 1st edition.
- Wöhrmann, B., Baumgart, G. et al (2018). VMware vSphere 6.7: The comprehensive guide to virtualization with vSphere. Rheinwerk Computing, 5th edition.
Recommended journals or selected articles:
- Grimm V. et al. (2006): A standard protocol for describing individual-based and agent-based models. Ecological Modeling 198, Elsevier, pp. 115-126.
- Grimm V. et al. (2010): The ODD protocol: A review and first update. Evological Modeling 221, Elsevier, pp. 2760-2768.
- Railsback, S., Ayllon, D. et al. (2017): Improving Execution Speed of Models Implemented in NetLogo. In: Journal of Artificial Societies and Social Simulation20 (1) 3, 2017.

Other relevant journals and articles will be announced in the courses.

Typical software for this module:
NetLogo, Python / Spyder / PyCharm, R / RStudio, CUDA, OpenGL, Xen / OpenXen, KVM, VMware vSphere, Microsoft Hyper-V, OpenStack, Apache CloudStack, Apache Hadoop, Apache Cassandra, Ceph, GlusterFS, Apache Spark, Docker, LXC, Kubernetes, OpenShift, DockerSwarm etc.

Mode of delivery

1,25 ECTS Lecture, 1,25 ECTS Exercise

Prerequisites and co-requisites

module 2 and 5

Assessment methods and criteria

Lecture: final exam, Exercise: examination character