This course introduces and explores multi-agent simulation while providing an introduction to computer science and to programming using the NetLogo programming language. The course has no prerequisites and assumes no prior knowledge of computer science or of programming. It serves as any or all of the following:
- An introduction to the computer science major, (fulling the prerequisite requirement for CSCI 201.)
- A science elective in the Environmental Studies major.
- An introduction to computing, computer simulation, and programming for majors in other fields, especially economics (complex adaptive systems), the natural sciences and biology (individual-based modeling), and mathematics.
- An overview of some important topics in the field of computer science, including abstraction, algorithms, top-down design, Boolean logic, data storage, and some basic systems and programming concepts.
The course uses the NetLogo programming language, a programming language that is simple and intuitive but powerful enough to support some advanced multi-agent simulation and modeling. A considerable amount of the semester will be devoted to learning the NetLogo programming language.
In the later part of the semester, as student grow more familiar with NetLogo, increasing attention will be given to the design of multi-agent simulations, and to what makes a good and useful multi-agent model. The course will end with a term project in which students will design their own NetLogo model from a problem domain of their own choice.