You may be asking at this point,
"What, exactly, is interesting about the game of Life from the perspective of complex systems
science?" Well, to my mind, the game of Life and other cellular automata are perhaps the
simplest idealized models of complex systems, and they illustrate many of the qualities of the
real-world complex systems
that we're interested in.
For example, in the game of Life, we have the ingredients of real-world complex systems that
I listed in the first unit. We have large numbers of simple components, that is, the cells; obeying
relatively simple rules, we saw the rules of the game of Life; they have limited communication --
each cell only directly communicates with its nearest neighbors; and there's no central control.
We also see, in an idealized way,
the outcomes of complex systems that we
find the most interesting, namely complicated
dynamics, emergent self-organizing behavior, meaning that the collective outcome
of the components, following their simple rules, can produce interesting, hard-to-predict yet
organized behavior. For example, if we set up
from a random initial configuration which has
high entropy, in the sense of a random box of gas,
and let the system run, we see a complicated
transition to rather organized structures,
these fixed points, or periodic structures,
these "blinkers," and so on, that have
low entropy configurations with interesting
regularities. So there's a connection here
between the game of Life or cellular automata
and information theory. Via the rules, the entropy
of initial configuration is reduced. We'll also see
that in the game of Life and many other
cellular automata, we can use these
structures to produce sophisticated information
processing. We'll also show how evolution,
via genetic algorithms, can shape their information
processing abilities to be useful for the survival
of the system. One other aspect of interest
that we haven't seen yet is that John Conway designed Life to be open-ended,
in the sense that its behavior wouldn't be limited
to a finite set of configurations.
In this model, minilife.nlogo, we have a finite grid
that wraps around the edges. This finite configuration actually limits the potential
of what we can see in the game of Life. One of our
teaching assistants, Max Orhi, has developed
a fantastic, open-ended simulation of Life called
gameoflife.nlogo, which you can also download
from our course materials site. Let me open it now.
This is the interface for this more complicated simulation. And it is somewhat complicated.
But let me just give you a little tour of it,
and then you can play with it on your own.
This version of the game of Life lets us do several things we couldn't do in the mini-Life version.
First, it lets us insert patterns, specific patterns;
if we go to Patterns, here, these are different
patterns that people in the game of Life community
have discovered as being quite interesting,
and we can insert these. So I'm going to --
right now we can insert a glider.
To do that, we click on Edit, and then
just click here, and there's a glider.
And then I can go for one
iteration ... again, or I can just go.
And what's interesting here
is that now we don't have
a finite configuration anymore.
Here, in this "map of the universe,"
we see where this world over
here ends, right down here,
and the glider has gone off
into space, to be forever
lost in space. It doesn't
wrap around. All right,
so let's stop that.
Let's set up again to
clear everything. Now,
let's just, let's do the same thing,
but now, let's put in lots of
different gliders to see
what happens.
Now, if we go,
they all fly off and we can
see them kind of flocking
to, to go off into space
forever. It's open-ended,
in that sense. Okay,
let's set up again and look
at one other structure -- a glider
gun. This is a fairly complicated
structure. This was invented by
somebody playing around with the
game of Life, and what this
structure does, just obeying
those same rules, is the following.
I'm going to slow it down a little bit,
and go. What this does is it
kind of acts as a machine to produce
gliders. And you can see that the
gliders go off in this direction.
You can see the stream of them
going off this way in the map of
the universe. And you can see
the workings of the
machine here, that are
building these gliders,
in some sense. So this is
a very open-ended kind of
process, where you can just
build an infinite number of
gliders to have them go off
into infinity here. Okay, so that's
another structure. It turns out
that the glider gun and the
gliders are very important
when we go to try and perform
information processing tasks
using the game of Life.
We'll talk about that a little
bit later. There's a lot of other patterns
you can play with, and a lot of features
that you can read about in the Info tab,
and we'll have some exercises on the homework
dealing with this model, as well as mini-Life.