Submitted by plusadmin on May 1, 2002
Despite the name of the game, when John Conway developed the system he called Life he wasn't aiming to simulate life at all. All the same, the game's lifelike nature, with its endless complexities and unpredictabilities, has captured imaginations all over the world. Conway's original aim was entirely mathematical - he was trying to find a so-calleduniversal system, that is, a system capable of carrying out arbitrary computations - a sort of infinitely programmable computer.
In the 1950's von Neumann, a pioneer in the field of cellular automata, succeeded in inventing a universal system. His system involved cellular automata on a two-dimensional plane, with the state of each cell at time t+1 depending only on the state of its neighbours at time t. Von Neumann's system was incredibly complicated - requiring 29 states - as a consequence of how he had derived the system. Conway describes the process von Neumann used to develop this complicated system thus: "If he wanted a certain ability, like the ability to transmit messages, he added a few more states and gave himself that ability. And if he wanted something else, he added a few more and so he got to 29 states. And the appendix to his paper is a big long list of transition tables...it's a real mess!"
By contrast, Conway's aim was to find a "spectacularly simple" universal system. Rather than explicitly forcing his system to behave in desired ways - the approach of von Neumann - he believed that the best approach was to pick a system with suitable-looking behaviour, live with it and, over time, learn how to program it to do arbitrary computations.
Is it Universal?
"For instance, take a whole lot of bits of electronics and connect them together at random in a warehouse. Then probably you have got a universal computing machine," Conway says. It's just a matter of living with the system and learning how it works. "You might press a button here and you notice that a little red light comes on, and then you try and understand how these buttons correspond to these things and discover a way of adding two numbers. You press this button 5 times and then you do something else, and then you press it 8 times, and detect that the answer is 13. And, if the warehouse is big enough, and if the behaviour is interesting enough, you gradually learn how to use little bits of it to do whatever you like. So that's the dream. And the question now is how small can you make the warehouse, how simple can you make the connections?"
Rules to live by...
Life is played on a grid of squares where each cell is either alive (occupied) or dead (empty). You start with an initial configuration of live cells, and the game progresses through generations as the life and death rules are applied.
A live cell survives to the next generation if it has two or three neighbours.
A live cell dies if it has four or more neighbours (overcrowding) or if it has only one neighbour or none (isolation).
A dead cell becomes a live cell in the next generation if it has exactly three neighbours (birth).