Binary Two-Dimensional Cellular Automata

Your browser needs to support the <canvas> element to use this page. Firefox 3, Safari, Opera, Google Chrome, or any WebKit- or Gecko-based browsers have support. Sorry MSIE folks.

Two-dimensional binary cellular automata^ (CA) are simple iterative simulations where each cell on a 2D grid can be in one of two states: alive or dead. As the simulation iterates, the state of a cell changes depending on how many of it's neighbours are alive. The transition rules are general describe as how many live neighbours are needed to bring a dead cell to life (birth) and how many are required to keep it alive (survival).

The default configuration is known as Conways Game of Life ^, and is one of the classic examples of a binary CA. in Conway's, new cells are born when they are surrounded by 3 live cells. To stay alive, a cell needs to have 2 or 3 live neighbours. In all other situations, the cell dies.


Options for CA simulations can only be set before you start a run. If you want to change an option, you need to stop any running simulation, change your setting and restart a new run.

Cells high
The number of cells high the simulation's grid is.
Cells wide
The number of cells wide the simulation's grid is.
Starting Denisty
The percentage of cells that are alive at the beginning of the simulation. Alive cells are randomly placed on the grid.
The number of seconds that pass between iterations of the simulation.
Birth states
For each checked value, a dead cell will come to life if it has one of the specified values of living cells surrounding it. In all other cases it will remain dead.
Survival states
For each checked value, a live cell will remain alive if it has one of the specified values of living cells surrounding it. In all other cases it will die.
A collection of premade rulesets to try. In the notation x/y, x refers to the survival states and y to the birth states. These only adjust birth and survival states. You may need to adjust starting density to get good effects. Taken from Wikipedia

Page by: Dan D'Alimonte