Reversing Conway's Game of Life: Problem
Reversing Conway's Game of Life: Problem
Jonathan Goetz
Problem
Conway’s game of life is a classic example of Cellular Automata, which is a 2d grid of 0/1 values that
follow a basic set of 4 rules:
The process of implementing these rules going forward in time is trivial, but on the other half it is fairly
simple to show that applying these rules in reverse is impossible to determine the specific previous
steps for certain. For Example:
Proposed Solution
Looking at this problem, it is fairly simple to see that this reversibility problem is actually a
recursive classification problem, which due to the nature of the game would be especially well suited for
implementation with a multilayered perceptron which can easily be trained to approximate values of
cells leading to a given cell state. The largest issue facing this solution to the problem is determining
how to correctly define the training function for a variable depth MLP, though this can be simplified as
every repetition of layers will have by definition the same weights making it a matter of properly
averaging the weight changes and making sure the output values are acceptable as input values to each
repeated MLP.
References
Currently Kaggle.com is running a contest about this particular subject at
http://www.kaggle.com/c/conway-s-reverse-game-of-life, which provides a basic description of the
problem involved, a pre generated training dataset for the problem, and a basic description of a process
by which to generate more training data.
The second resource I have discovered is a presentation by Neil Bickford about computing the reverse of
Conway’s game of life, and just why it isn’t practical to do using brute force, as well as discussing a few
algorithms for generating all possible predecessors to a given game state.(
http://nbickford.wordpress.com/2012/04/15/reversing-the-game-of-life-for-fun-and-profit/)