This course gives you a hands-on experience in creating models for complex systems. Roughly speaking, a complex system is one in which many interacting entities give rise to aggregate behaviors or patterns. Examples include molecules in a biological or molecular system; the flocking behavior among migratory birds; segregation behavior among people; the spread of information or disease in human networks; and patterns of traffic flow in a system of cars on a road network; to name just a few.
You will learn several basic methods relevant to the modeling of complex systems and how to implement those models on a computer. The “end-product” of the course will be a series of projects of increasing complexity, in each of which you build a computer-based simulation of some kind. You’ll get to choose your own final project, which you will write and present to your peers; our hope is that this project is substantial enough to become a part of your coding portfolio, because life is too short to waste time on canned assignments!
The precise list of topics is still under development. However, it will most likely include most or all of the following: queuing models, cellular automata, discrete-event modeling, chaotic dynamical systems, continuous time models, network models, and parallel discrete event simulation.
We will use Piazza for class discussion: https://piazza.com/gatech/spring2016/cx4230. Use it to get help quickly and efficiently from classmates and instructors. That is, rather than emailing questions directly to the teaching staff, try posting your questions on Piazza.
TA: Jordi Wolfson-Pou
Office hours: TBD
Klaus Alcove, between Rooms 1324 and 1332