Two Dimensional Cellular Automata

A two dimensional cellular automaton is a discrete mathematical model for simulating complex systems. The environment is a 2D grid of cells where each cell can have one several possible states.

The state of each cell in the next stage, or time step, is determined by its current state and the states of its neighbors. How neighbors are selected can vary, but the two most common choices are the Von Neumann neighborhood (4 adjacent neighbors) and the Moore neighborhood (8 surrounding cells).

The next state of a cell is determined according to a rule. A rule is a mapping from arrangements of current cell states to the next cell state. Generally, rules in the two dimensional case consider only the number of neighboring cells with each state, rather than the actual spacial arrangement of those cells and states. For example, a rule can specify that any neighbor with three living neighbors that is currently alive stays alive, and dies otherwise.

Game of Life

Conway's Game of Life is a classic rule for two dimensional cellular automata. There are two possible states, generally interpreted as alive and dead, and the system uses the Moore neighborhood. The rules are as follows:

  1. Any living cell with fewer than two live neighbors dies from isolation
  2. Any living cell with two or three live neighbors stays alive
  3. Any dead cell with exactly three live neighbors comes to life
  4. Any living cell with more than three live neighbors dies from overcrowding