Local rules
Nobody draws the pattern: it appears step by step.
The rule
A cell only looks at its neighbours. In Wolfram's elementary automaton, each cell is alive or dead, and the next row is worked out from the previous one: for each cell, you look at three squares, the one on the left, its own and the one on the right. Three squares with two states each give 8 cases, and a rule is simply the list of the 8 answers:
left, centre, right → 8 cases → 8 bits → rule 0 to 255
Those 8 bits read as a number between 0 and 255, which is the rule number. You start from a single live cell, apply the rule row after row, and the whole drawing comes out of that. Three rules are famous: 30 gives chaos, 90 a Sierpinski triangle, 110 a complexity able to compute anything (it is Turing-complete).
rule 90: the new cell lives if exactly one of its two neighbours (left or right) lives
Gray-Scott reaction-diffusion takes the idea further: two substances, A and B, spread over a grid and react with each other. A regenerates at a rate called feed, B multiplies by consuming A, and disappears at a rate called kill. This reaction, A + 2B → 3B, grows organic patterns, like fur, coral or dividing cells.
Your turn
Tick the eight boxes to write your own rule: the number updates and the drawing above is recomputed. The 30, 90 and 110 buttons set the three famous rules.
Below, the Gray-Scott reaction. The two sliders set feed and kill, within the algorithm's limits. One step moves on by a generation, “Play” animates it, and “Restart” starts again from the seed. Nudge a slider by a notch and the pattern changes nature.
Rule
The drawing above is a teaching sketch, not the artwork: it shows the rule, it does not replay the colours, the size of the dots or the grain of the print.
What changes from one algorithm to the next
- Cellular Automaton
- A one-dimensional automaton. A starting row, and each following row worked out from the previous one by an 8-bit rule over three neighbours. The edge is finite: cells outside the band are dead.
- Cyclic Cellular Automaton
- A toroidal grid, where each cell carries a state from 0 to N − 1. A cell moves to the next state if enough of its neighbours are already in it: this mutual devouring makes waves and spirals emerge. The neighbourhood is von Neumann (4) or Moore (8), and the start is random.
- Reaction-Diffusion
- Two-substance reaction-diffusion, on a toroidal grid, with the reaction A + 2B → 3B. It is the heaviest of the automata: the grid and the number of iterations are capped.
What chance decides
For each artwork, the program draws these settings at random, between bounds set in advance.
- Rule number Cellular Automaton among 30, 90, 110, 54, 150, 18, 22, 126, 182, 105
- Number of states Cyclic Cellular Automaton from 3 to 16
- Feed rate Reaction-Diffusion from 0.026 to 0.078
The algorithms in this family
- Cellular Automaton
- Cyclic Cellular Automaton
- Reaction-Diffusion