EcoComputing

Course Description

The NetLogo language is based on an intriguing eco-oriented paradigm:  virtual turtles swimming around in a virtual pond. Turtles are provincial.  They know nothing of the pond beyond their limited field of vision. A turtle's behavior is determined by a list of simple procedures that it perpetually executes. Turtles eat, mate, age, and die. They cheat and cooperate. They buy and sell. They hunt and flee. They spread rumors and diseases. They imitate their neighbors. Oh, I almost forgot, they can also draw.

Although turtles are provincial and their behavior simple, the behavior of the ecosystem as a whole (pond + turtles) can be surprisingly complex.  Patterns emerge: self regulation, self organization, boom and bust cycles,  synchronicity, flocking, rebelling, tipping points, evolution, even  standards of morality.

NetLogo can be viewed as a laboratory for studying the emergent behavior of agent-based systems. Its ease of use (NetLogo is based on Logo, which was  designed for children) makes it popular among biologists, economists,  sociologists, chemists, physicists, and artists. Agent-based architectures are also interesting to computer scientists attempting to leverage massively  parallel systems while avoiding the complexity of centralized control.
In this course we will use NetLogo to model complex systems. We will also explore the eco-oriented paradigm as an approach to games, ambient computing, and grid computing.

Instructor

Dr. Jon Pearce
I'm the chair of the Computer Science Department at San Jose State University. You can check out my home page if you're interested.

You can contact me at jon.pearce at sjsu.edu

Schedule

There are only five three-hour meetings. Probably the opening ceremony will eat into the first meeting. I will try to divide meetings into lecture sessions and lab sessions.

Day

Date

Start

End

Monday

9-Jul

915

1230

Tuesday

10-Jul

1330

1645

Wednesday

11-Jul

1330

1645

Wednesday

18-Jul

1330

1645

Friday

20-Jul

1330

1645

Note: EcoComputing is trading one lecture with Scala. We will meet 10 July instead of 16 July.

Lectures

EcoComputing

Grading

You will work in pairs. Ideally you will have the same partner for the entire course. Ideally your partner should be from a different university. There will be several NetLogo programming projects. Before the deadline for each project you will email the .nlogo file to me as an attachment. I will reply with an evaluation.

Links

http://www.stephan-robert.ch/SU12.php