Conway's Game of Life
The Game of Life, also known as Conway's Game of Life (sometimes abbreviated as CGoL) or simply Life, is a cellular automaton devised by the British mathematician John Horton Conway in 1970. It is a zero-player game, meaning that its evolution is determined by its initial state, requiring no further input. One interacts with the Game of Life by creating an initial configuration and observing how it evolves in discrete time steps called generations. There is no limit to the number of generations (computational resources permitting) or win condition.
The Game of Life is played on an infinite square grid, with each cell being in one of two states: live or dead. Cells in configurations called patterns evolve over generations according to the number of live and dead cells in their Moore neighborhood, that is, the eight cells in their immediate proximity.
Patterns can be grouped into different types, such as still lifes, oscillators, and spaceships.
The Game of Life was first simulated manually, with computerized simulations arriving soon afterwards. Nowadays, more modern programs such as Golly are used. These programs often do not store cells as a two-dimensional arrays, instead using algorithms such as Hashlife which represent patterns as a tree structure.
The Game of Life has spawned a number of other cellular automata, known as Life-like cellular automata. Examples include Highlife and Seeds. Other variations may include more than two states or use a non-square grid.