“Conway’s Game of Life is a cellular automaton based zero player game. It can be used to create some brilliant lighting effects.
A few weeks ago I showed a project I had created to monitor the temperature in my son’s bedroom. Like many toddlers he is fascinated by lights and patterns of lights.
This got me thinking to how I could create a interesting light effect for his bed room based of science and technology.
After a little consideration I decided to implement the Game of Life created by Conway in 1970. The Game of Life is a Cellular Automaton zero player game in which the player watches evolution over a number of generations.
Based on a two dimensional grid each cell within the grid lives, dies or reproduces based upon the following rules.
Any live cell with fewer than two live neighbors dies, replicating under population.
Any live cell with two or three live neighbors lives on to the next generation.
Any live cell with more than three live neighbors dies, replicating overpopulation.
Any dead cell with exactly three live neighbors becomes a live cell, replicating reproduction.
To display the Game of Life, it’s evolution I decided to use a number of NeoPixel 8 by 8 panels. This allowed me to create a 256 pixel array on which I can display the game of life in up to 16 million colors.
The initial state from which the Game of Life runs can be anything although there are several groupings of initial settings. These include
Oscillators - Return to their original pattern after a number of evolution.
Static or Still Life - These are patterns which do not evolve from one generation to the next.
Space Ships - These move across the grid, there are many classes of space ship from the simple glider to the recently found knightship (The first new elementary spaceship find in 48 Years)
If you read into the Game of Life you will find initial states can be Turing complete. That is they can replicate AND, OR, NOT and even finite state machines. Looking into the Game of Life can become very addictive very quickly.
NeoPixels are digitally controlled three color LEDs which can display up to 16 million colors thanks to there 24 bit Red Green Blue format.
Each NeoPixels output color is determined by a 24 bit serial word. What is really cool about NeoPixels is they can be daisy changed together. If a NeoPixel begins receiving another serial word within 50 microseconds it will output the previously received word to the next NeoPixel in line.”