The WBS Cellular Automata app generates patterns according to rules specified by the user. Sometimes very simple rules generate patterns of astonishing complexity. The patterns are generated on a two-dimensional lattice of cells. Each cell can be in one of two states: alive (on) or dead (off). A transition between the states is influenced by the cell’s neighbourhood – the eight cells surrounding the one in question.
Initially, the lattice is populated randomly with alive and dead cells. After starting the simulation, the cells evolve by reproducing, dying, or surviving according to the user-defined rules. These rules are applied simultaneously to all the cells on the lattice.
The WBS Cellular Automata app is able to generate smooth transitions wherein each cell can be in up to 240 intermediate stages between alive and dead states. These transitional stages are represented by the shades of the two user-defined colors.
There is also an option of drawing the initial state of the automaton field with a mouse or, on touch devices, with fingers.
The app may be useful for creating seamless tiles. A seamless tile is an image where opposite edges match up when placed side by side.
- A set of sample automata including Conway’s Game of Life.
- Adding new cellular automata and defining custom rules.
- Adjusting simulation parameters: the speed, the cell size, the initial density, etc.
- Sharing an automaton image or saving it to a file.
- Simulating smooth transitions with the specified number of steps.
- Drawing the initial state of the automaton field with a mouse or with fingers.
The main screen displays a list of sample automata. Each automaton has its own thumbnail for easy identification:
You can select an automaton by swiping a tile (on touch devices) or by right clicking it (on desktops). Once an automaton has been selected, the bottom app bar shows the following options:
- Copy - copies the selected automaton
- Remove - deletes the selected automaton
- Add Samples - adds all sample automata
- Add New - opens a new screen which allows you to add a new automaton
Automaton Screen / Simulation
You can proceed to simulation by tapping (or clicking) an automaton tile in the main screen. Here, we selected the Conway’s Game of Life:
There are two panels on the automaton screen:
- The control panel (on the left) allows you to change the automaton name, adjust visualization settings, define automaton rules, start the simulation, and control simulation speed.
- The automaton field (on the right) shows the progress of simulation graphically.
Three additional options are available from the automaton screen's app bar:
- Set Thumbnail allows you to change the thumbnail for the current automaton.
- Save Image allows you to save the automaton field image to a selected storage (a disk, a cloud, etc.) as a PNG file.
- Save Changes saves any changes made to the automaton.
The main purpose of the automaton screen is to change the automaton’s visualization settings and its rules.
With visualization settings you can change the following parameters:
- The initial cell density
- The cell size
- The processing mode
Changing the initial cell density
This option determines how dense the initial automaton field is.
For example, the following field has low initial density:
While this field has high initial density:
Switching processing mode
There are two processing modes:
- All Cells – all cells are processed in every generation.
- Random Cells – cells are picked randomly for processing.
The default processing mode is All Cells but if you want to experiment, the Random Cells mode opens additional possibilities. For example, the following two simulations differ only in the processing mode. After 500 generations their output looks quite different:
The Colors section gives you even more room for experimentation by assigning colors to cell transitions. It works as follows:
- With only two colors, let’s say black and white, the cells can only be black or white.
- With shades enabled, the cells can have intermediate colors which, in the case of black and white, are shades of gray.
When the cell reaches its end color (in our example, black), there are two possibilities:
- The color jumps to the starting point (white).
- The color goes back gradually from the end color (black) toward the starting point (white).
The above two choices are provided by the wrapping switch:
Another important customization area is definition of automaton rules:
Each rule has a symbol assigned. For example, Conway’s Game of Life has a symbol: S23 / B3. The first number indicates the live neighbour count necessary for a cell to survive to the next generation. The second number indicates the live neighbour count necessary for a cell to be born in the next generation.
Each column indicates the number of neighbours.
There is also an option to include the cell itself as its own “neighbour”. This way the cell can have nine neighbours rather than usual eight. This is signified by a pictorial depiction of the cell's neighbours:
Another interesting option is drawing the initial state of the automaton field with a mouse or with fingers. While you can draw the field any time, a good starting point is to clear the field first by pressing the Clear Field button:
After that, you can draw whatever you want and then start the simulation to see how your drawing ends up. You can even keep drawing while the simulation is running.
The following pictures show the Majority Automaton field before and after running a simulation:
The app comes with a set of 14 sample automata.
Symbol: S56789 / B56789
This automaton's rule includes the central cell as its own neighbour. This way every cell has nine neighbours rather than eight:
The "majority" in the automaton’s name can be interpreted as follows:
- If a cell has five or more neighbours it stays alive or is born.
- If a cell has less than five neighbours it dies.
It means that only the cells with the majority of neighbours being alive are able to survive or be born.
This is a picture of the Majority Automaton after a couple of generations. It quickly creates a stable pattern that does not change over time:
Symbol: S46789 / B46789
The Moore’s Automaton differs slightly from the Majority Automaton:
- If a cell has four, six, or more than six neighbours the cell stays alive or is born.
- If a cell has less than four or five neighbours it dies.
This small change creates a different pattern. Unlike the Majority Automaton, the Moore’s Automaton is unstable; the edges of the black areas are in constant turmoil. This is how it looks after 100 generations:
Over time the edges start to smooth out. This is how it looks after 2,000 generations:
Because of its unstable nature, the Moore’s Automaton is well-suited for visualization using shades. Here, we selected shades between white and green colors:
Game of Life
Symbol: S23 / B3
The Conway’s Game of Life is without a doubt the most famous cellular automaton. Its simple rules generate a wide variety of shapes that even have their own names: beehive, loaf, boat, blinker, toad, and much more.
Note that unlike two previous automata (Majority and Moore’s), the Game of Life has an asymmetrical rule definition i.e. different rules are applied to live cells and to dead cells:
There are a few more sample automata in the app. Some of them achieve a stable state quite quickly, others churn for a while before they stabilize. There is also an automaton that can go both ways depending on the initial field conditions: it can go on forever, generating new patterns or it can stabilize. It’s the Black Waves automaton:
Below there are pictures of other sample automata: