Cellular Automata – Simulate life from chaos and code


Today, we’re diving into the world of cellular automata. A digital playground of sorts where simple rules lead to astonishing complexity. where order can arise from chaos and collapse back into chaos just as quickly.

First we have a look at One Dimensional Cellular Automata which were originally conceived by John Von Neumann in the 1950s.

These cellular automata operate on a grid of cells, using each successive row of cells to create the next generation. A large amount of research into this was done by British-American scientist Stephen Wolfram – whose organisation Wolfram Research developed Wolfram Alpha – the computational knowledge engine and website. Wolfram (the person) devised a classification system for 1D CAs. It turns out there’s quite a lot of them.

Then we move onto two dimensional cellular automata, beginning with the familiar and popular Conway’s Life. I look at some basic patterns such as the glider and then some more complex patterns including ones called methuselahs. Conway’s Life is sufficiently complex that it is Turing Complete and able to simulate logic gates.

Then I look at wireworld which is a kind of two dimensional cellular automata that simulates electricity flowing through wires. It is Turing Complete and can be used to create logic gates.

The video then ends with me explaining how I wrote the code in the video myself as a learning exercise using the Python programming language and the PyGame graphics library.

You can download my code from the github link below

https://github.com/ncot-tech/cellular-automata