Prof. Marisa Eisenberg (she/her) Email: marisae@umich.edu Office Hours: after class
Chethan Prakash Email: chethanp@umich.edu Office Hours: TBD
https://epimath.github.io/cscs-530-materials/
This course will offer an introduction to using computational approaches to model complex systems. Its primary purpose will be teaching you how to develop and analyze your own complex systems models, particularly agent-based models (ABMs). In the course of pursuing this goal, we will also discuss several other subject areas such as networks, cellular automata, basic probability distributions and statistics, parameter estimation and sensitivity methods, among other computational topics.
Emphasis in this course is placed on the modeling process itself, from model design through implementation to analyzing, documenting, and communicating results. To give you the technical skills required to build your own ABM, this course will also focus on developing your competency in python, as well as some exposure to NetLogo, a language built for agent-based modeling.
This course is not primarily focused on formal analysis of mathematical models of complex systems (such dynamical systems analysis of nonlinear differential equation systems or other approaches often focused on in standard introductory modeling courses), although we will touch on these and related topics. If you expect that the systems in which you are interested might be better captured by such models, you may also want to consider taking Complex Systems 511 or 541.
One goal of this class is that by the end of the semester, you will have developed and analyzed a model of your own that will be useful to you in your future research.
Prior coursework in Complex Systems is not required for this course, but hopefully you are coming in with some significant interest in the field. Some prior experience with at least beginner-level programming and basic statistical and math concepts is strongly encouraged. Having said that, the usual expectation for this class is that students will be coming in with a wide range of experience in these areas, so we will consequently be starting with the basics and then quickly working up to more advanced material. As such, even if you are coming in with only a bit of background, you should still be able to succeed in this class if you are willing to put in the effort. The payoff for doing so will be leaving this course with both your own ABM and an extremely useful new set of skills!
The course will consist of lectures, group discussions, and/or computer laboratory exercises, with approximately 1.5 hours per week spent on lab and 1.5 hours per week spent on lecture and discussion.
Readings will consist of selected articles and chapters primarily from the following textbooks:
Additional readings will be posted on the course website.