The Game of Life was invented by the mathematician John H. Conway to simulate the birth and death of cells in a society. The society exists on a rectangular grid (or board) of locations, which can be implemented as a 2-dimensional array. The Game of Life generates an animation. The board changes over time as cells are born and die. This 'game' was at one time very popular as a screen saver because of the interesting patterns it generates. It also is of some theoretical interest in the theory of computation. Below is a screen capture of a Game of Life screensaver.
The board evolves over a series of generations. The previous generation determines which cells are alive in this generation. Likewise, this generation determines which cells will be alive in the next generation. Cells come to life and die off according to certain rules. The following rules govern birth and death of these cells between two generations of the society. At time T:
The figures below represent a sequence of generations. Its initial configuration contains 5 live cells in a column. It stabilizes and starts repeating generations 7 and 8 over and over.
|
|
|
|
|
|
|
|
Try to work through these generations by hand, seeing how the rules produce each image. Assume the first generation includes cells in array positions: [2][4], [3][4], [4][4], [5][4] and [6][4].
The interesting part of this 'game' is that certain groups of patterns behave very differently. Some patterns change and then stabilize by repeating themselves as in the example above. Some patterns quickly evolve into extinction. Other patterns continue to exist but move across the board. Complex behaviors can be illustrated by combining these patterns together. Your results depend on both the starting arrangement of cells and the variations of rules you use to determine the changes.