Ever wonder how birds can fly in formation without a leader? How traffic
jams occur even without an accident? How neighborhoods can become segregated
even with tolerant people? How ants coordinate and communicate optimal
foraging? CSC 107 explores how computers and mathematics can be used to
model these complex phenomena in the world through the simple behavior of
agents and their interactions over time. We will examine the mathematical
properties that emerge from these agent interactions and discover some
underlying mechanisms common across many fields.
Centenary assures students with disabilities equal opportunity to reach the same level of
achievement as other students. Strict confidentiality will be maintained on students with
disabilities. Services for students with disabilities are available through the
, located on the ground floor of Rotary Residence Hall, phone (318) 869-5424.
All students are bound by the Honor System. The Honor System is applicable to all academic
work. See the Centenary College Handbook
for the complete Honor Code
All code you write and turn in for a grade is understood to be pledged. You
may discuss topics with other students and tutors, but all code you write must be your
own, and you must be able to explain to me how it works. In this
course, it is a violation of the honor code to look at code from previous semesters or
in other students' directories.
Extensions and rescheduling for labs, projects, exams and quizzes are only given when
circumstances beyond your control (e.g. being sick, choir or sports travel)
prevent you from completing a project on time. You must notify me either by
email or phone of your circumstances well in advance of the due date.
No extensions are given for requests made within three days of the due date.
Quizzes and Participation
You are encouraged to attend class and participate in discussions every day.
Sporadically throughout the semester, there will be short quizzes covering
material from the
previous class. These quizzes will serve as records of your attendance, and in total they
will comprise 5% of your final grade. Active participation in class discussions will
comprise another 5% of your final grade. This will be awarded for answering questions, asking questions,
presenting material, etc.
You will be expected to sign up for a Twitter account and
use it regularly to post status updates about the class and your progress in labs and projects
with the #csc107 hashtag.
This is a tentative list of topics and readings, subject to change. I will fill in the dates
as we move through the topics.
- Overview (Mitchell 1, Fischer 1, Resnick 1, Kleinberg 1) - Jan 9-11
- Wisdom of crowds (Fisher 5) - Jan 13-20 (notes)
- Voting behavior (Fisher 6, Kleinberg 23) - Jan 23-27
- Cellular Automata - Game of Life (Mitchell 10) - Jan 30 - Feb 3
- Forest Fires (Resnick p103) - Feb 6-8 (code)
- Termites (Resnick p75)
- Segregation (Resnick p81, Kleinberg 4) (code, Final code)
- Population, Fibonacci (Mitchell 2) Logistic Model and Timeseries Applet (code)
- Predator-Prey (Mitchell 2) (code)
- Game theory, IPD (Mitchell 14, Kleinberg 6) Repeated Strategy Website, Triangle Plots
- Auctions (Kleinberg 9)
- Networks and Power Laws (Fischer 7, Mitchell 15,17, Kleinberg)
Much of your experience with programming in this course will be through weekly labs and
which will comprise 35% of your final grade.
You may discuss concepts and ideas with your classmates, but the code you turn in
must be your own. You will be graded not only on correctness, but also technique,
documentation and evaluation
of your solution. Further details on the grading standards and handin instructions
for each lab and homework will be given when they are assigned.
You will have one final project in this course for a total of
20% of your final grade. More details concerning the project can be
found on the Project
This project will be due and presented during the final
exam period for this class.
You may work with a partner on this project.
There will be three in-class exams, each worth 12% of your final grade.
Your final grade for this course will be based on the Labs, Projects, Quizzes, Exams and
Participation described above.
© Mark Goadrich, Centenary College of Louisiana