Max Orhai has written a simple elementary cellular automaton simulator in NetLogo,
called ElementaryCAs.nlogo.
As usual, you can download this from our course materials page.
Let me show you how it works.
You can choose the size of the lattice, the number of cells.
Here I've chosen 70 cells.
I've chosen for the lattice to be circular.
As we talked about, that is the left neighbor of this leftmost cell is
the rightmost cell.
Let's see. You can choose the rule code.
Here we're doing Rule 110.
This is the Wolfram code.
You can choose whether the initial configuration is a single black cell
that's off or on, a random start (so here I have a random start),
and then you just do "Setup".
OK, that gives you a random start.
And I can do "Go One", for one time step,
or "Go".
And to stop it I click "Go" again.
This also gives me the ability to look at and edit the rule.
That shows me the rule, where I have each possible neighborhood and
the update for the center cell.
Then it gives me the Wolfram encoding.
I can click on these to change the rule.
Click on it back, change to Rule 110.
And then if I do "Off" here, it goes back to simulating the rule.
So let's look at a couple of different rules.
Let's look at Rule 0.
All right, so what does that look like?
If I look at it on "Edit",
well the update state for every neighborhood is white.
And you can guess what that's going to do.
If we do a "Setup", and then "Go Once",
indeed here is our original random configuration and
everything updated to all white.
So that's a really simple fixed point.
That is, the iteration of the cellular automaton takes us to this
fixed point configuration where it always stays at all white.
What happens if we go to Rule 1?
Do this.
All the neighborhoods have their center cells update to white,
except for the all white neighborhood which updates to black.
So if I "Setup", "Go Once",
And what you can see, is this rule, from a random state typically produces an
oscillation between all white regions and all black regions,
so the all white regions update to all black,
and the black regions, update to white,
and then at the next time step, they reverse.
So you can see that happening.
So here we get an oscillation that's going to go on forever between
two different lattice configurations.
We can look at Rule 2.
This is the last one I'm going to show here.
All right. Rule 2 says everything changes to white -
the center cell changes to white -
except for this white white black configuration
and
if I do "Setup" and "Go",
you see these diagonal lines of cells start to emerge
where the whole pattern ends up repeating itself after some number of iterations.
Now, instead of a quiz, I'd like you to download this NetLogo simulation,
and I have a challenge for you.
The challenge is to find three elementary CA rules,
different from the ones that I've already shown you,
that respectively produce (after a few time steps):
fixed point behavior (where the whole lattice settles
down to a single configuration that doesn't change)
An oscillation of period 2 (where the
lattice oscillates from one configuration to another with a period of 2)
and complex behavior.
I'll leave you to be the judge of what complex behavior looks like.
And there's many different answers to these.
In the next video, I'll give a couple of examples, but first, you try it yourself.