Saturday, May 2, 2009

Modeling Complexity with Massively Parallel Microworlds

This is an overview of two books taken together – Turtles, Termites, and Traffic Jams and Adventures in Modeling. Both of these books describe the StarLogo system create and programmed by Mitchel Resnick, the author of the first book and a coauthor of the second book.

StarLogo is a programmable modeling environment for exploring the workings of decentralized systems -- systems that are organized without an organizer, coordinated without a coordinator. With StarLogo, you can model (and gain insights into) many real-life phenomena, such as bird flocks, traffic jams, ant colonies, and market economies.

In decentralized systems, orderly patterns can arise without centralized control. Increasingly, researchers are choosing decentralized models for the organizations and technologies that they construct in the world, and for the theories that they construct about the world. But many people continue to resist these ideas, assuming centralized control where none exists -- for example, assuming (incorrectly) that bird flocks have leaders. StarLogo is designed to help students (as well as researchers) develop new ways of thinking about and understanding decentralized systems.

StarLogo is a specialized version of the Logo programming language. With traditional versions of Logo, you can create drawings and animations by giving commands to graphic "turtles" on the computer screen. StarLogo extends this idea by allowing you to control thousands of graphic turtles in parallel. In addition, StarLogo makes the turtles' world computationally active: you can write programs for thousands of "patches" that make up the turtles' environment. Turtles and patches can interact with one another -- for example, you can program the turtles to "sniff" around the world, and change their behaviors based on what they sense in the patches below. StarLogo is particularly well-suited for Artificial Life projects

StarLogo is developed at Media Laboratory and Teacher Education Program, MIT, Cambridge, Massachusetts, with support from the National Science Foundation and the LEGO group. It is available free for download and works on PCs and Macs. The free downloads have numerous preprogrammed examples, demonstrations and a user group.

Turtles, Termites, and Traffic Jams is a book about the development of the program, the reasons for its existence and some applications. Adventures in Modeling is a guide for a teacher to introduce the concepts of complexity and modeling, and to get the students to program their own models. I would recommend reading Turtles, Termites, and Traffic Jams first.

Turtles, Termites, and Traffic Jams begins with an excellent description of the foundations of decentralized complex systems with emergent characteristics.

“A flock of birds sweeps across the sky. Like a well-choreographed dance troupe, the birds veer to the left in unison. Then, suddenly, they all dart to the right and swoop down toward the ground. Each movement seems perfectly coordinated. The flock as a whole is as graceful-maybe more graceful-than any of the birds within it.

How do birds keep their movements so orderly, so synchronized? Most people assume that birds play a game of follow-the-leader: the bird at the front of the flock leads, and the others follow. But that's not so. In fact, most bird flocks don't have leaders at all. There is no special "leader bird." Rather, the flock is an example of what some people call "self-organization." Each bird in the flock follows a set of simple rules, reacting to the movements of the birds nearby it. Orderly flock patterns arise from these simple, local interactions. None of the birds has a sense of the overall flock pattern. The bird in front is not a leader in any meaningful sense - it just happens to end up there. The flock is organized without an organizer, coordinated without a coordinator.

Bird flocks are not the only things that work that way. Ant colonies, highway traffic, market economies, immune systems-in all of these systems, patterns are determined not by some centralized authority but by local interactions among decentralized components. As ants forage for food, their trail patterns are determined not by the dictates of the queen ant but by local interactions among thousands of worker ants. Patterns of traffic arise from local interactions among individual cars. Macroeconomic patterns arise from local interactions among millions of buyers and sellers. In immune systems, armies of antibodies seek out bacteria in a systematic, coordinated attack-without any "generals" organizing the overall battle plan.

In recent years, there has been a growing fascination with these types of systems. Ideas about decentralization and self-organization are spreading through the culture like a virus, infecting almost all domains of life. Increasingly, people are choosing decentralized models for the organizations and technologies that they construct in the world - and for the theories that they construct about the world.”

Yet there is still deep seated resistance to the ideas of decentralization and emergence. We seem to have buried deep within us a centralized mindset that is so strong that we tend to look for leaders or causes behind every result. “The problems is that people have, too often, relied almost entirely on centralized strategies. Decentralized approaches have been ignored, undervalued, and overlooked.” This, in spite of the fact that the evidence supporting a decentralized model is everywhere in our lives.

In the foundations chapter, Resnick explores decentralization in five domains – organizations, technologies, scientific models, theories of self and mind, and theories of knowledge.

He writes, “As we enter the era of Decentralization, there is an important educational challenge: How can we help people become intellectually engaged with the new types of systems and new types of thinking that characterize this new era? To date, schools, and other educational institutions have done little, if anything, to engage students with the ideas of decentralization. Indeed they often perpetuate centralized explanations and approaches.” StarLogo and StarLogo TNG are responses to this impulse.

The models you can create with StarLogo are unlike any models you’ve probable created before. The approach in the past would have been to work out a mathematical model from assumptions about the system you were trying to model. Quite often simplifications would have to be made in order to represent the problem with mathematical equations.

If the system was an oscillator, the math would likely include sine functions. With StarLogo, each agent in the system is given simple rules to follow, the simpler the better, and then turned loose to interact with each other and the environment. The result is the emergence of a sine wave.


In the above case, the green curve represents the amount of grass on a field and the red curve represents the number of rabbits.

Adventures in Modeling is beautifully designed as a teacher’s handbook to teach the concepts and modeling to high school students. However, it could easily be used for adults as well. I particularly like activity – challenge pairing. I’ve not used the activities, but they would seem to be very useful ways to get students to understand the concept before trying to program a model.

The programming of StarLogo is relatively simple reminiscent of older programming languages with simple logical rules and commands. A guide to the language is provided online. Note: The agents are called “turtles” and they operate on “patches”.

The topics in the book are:

Introduction
Chapter 1: Travels with StarLogo
Chapter 2: Models in Science and Education
Chapter 3: Planning Your Adventure
Chapter 4: Frequently Asked Questions
Chapter 5: Adventures in a Secondary School Environment
Chapter 6: StarLogo World
Activities and Challenges
Activity 1: A Round of Applause
Challenge 1: A StarLogo Modeler Is Born
Activity 2: 27 Blind Mice
Challenge 2: Turtles, I Command Thee
Activity 3: Pixelated Paths
Challenge 3: Landmark Decisions
Activity 4: Watch Your Investments Grow
Challenge 4: Turning Turtles Into Termites
Activity 5: Survival of the Fittest Paper Catchers
Challenge 5: State of the Turtles
Activity 6: Sold! to the Highest Bidder
Challenge 6: Teaching Turtles to Talk
Activity 7: Foraging Frenzy
Challenge 7: Quest for Communication
Activity 8: Majority Rules
Challenge 8: The Plot Thickens
Activity 9: Flight of the Humanboids
Challenge 9: How to Track a Turtle
Activity 10: The Gambler's Dilemma
Challenge 10: Breeds-The Final Frontier
Student Handouts
Appendices
Appendix A: Notes for MacStarLogo Users
Appendix B: Collected Hints
Appendix D: Common StarLogo Error Messages
Bibliography

Turtles, Termites, and Traffic Jams: Explorations in Massively Parallel Microworlds
Mitchell Resnick, MIT Press, 1994, 163 p

Adventures in Modeling: Exploring Complex, Dynamic Systems with StarLogo
Vanessa Stevens Colella, Eric Klopfer and Mitchel Resnick, Teachers College Press, 2001, 188 p

No comments:

Post a Comment