April 11th, 2007
[ previous post: Universal Automatism - Everything is Computation ]
Another well known cellular automaton is Conway’s Game of Life, not to be confused with Hasbro’s Game of Life, which costs £9.99 and is nowhere near as interesting. In the 1970s the field of Computer Science was obsessed by this exercise. Super-computers were employed to churn through iterations of the game over periods of weeks. Today it can be simulated in the 5k Flash file embedded below. Click start to see it in action:
(technical note: while this is only a lightweight file, it can hog the processor quite a bit while running, so apologies if you have a slow machine)
Again, the basic algorithm is extremely simple. As with the Vichniac Vote, each cell lives or dies according to its neighbours. Rule 1: If a live (black) cell has 2 or 3 neighbours it continues to live, otherwise it dies of either loneliness or overcrowding. Rule 2: If a dead cell has exactly three neighbours it miraculously comes back to life.
Start it from a random seeding and you’ll get some idea of how patterns evolve. But try creating your own seeds (when the simulation above is stopped you can draw on the canvas with your mouse) and you can explore how your own creations survive in the game. There are many tried and tested patterns (thanks to our 70s Computer Scientist friends), open this page for a few examples to try.
Ok, so you might argue that these creations don’t really resemble anything you might call “life”, not unless you really squint – they only have form by the patterns we ascribe to them by our pattern recognition obsessed brains. But regardless, they adequately demonstrate the simple algorithm, complex result principle of Universal Automatism. And they are a nice way to waste a few hours.
Want more maths based fun? Have a play with the Cellular Automaton Toybox I’ve made.
tags: universal automatism, cellular automatons, game of life, stephen wolfram, rudy rucker, chaos theory, emergence, pattern recognition
Posted in flash, generative art, philosophy, tech, universal automatism |
April 8th, 2007
Universal Automatism is the theory that everything in the world boils down to simple algorithms. Everything; from the weather, to the shape of leaves on a tree or the continents of the Earth, the movement of the stars to the thought processes in our heads, are essentially computational processes. Even if most of the processes are entirely unpredictable, i.e. impossible to simulate with contemporary human resources.
Naturally, as a programmer, I’m happy to subscribe to this theory unreservedly.
It might sound a bit of a reach, and it seems to be an idea that hasn’t escaped the field of theoretical mathematics quite yet, but once you start playing with a few algorithms and get familiar with some common mathematically generated patterns (spirals, helices, Mandelbrot sets etc) you begin to see them everywhere you look, and the idea of Universal Automatism seems only logical. Or perhaps if you’re spending most of your days staring at computer simulations in darkened rooms the patterns eventually get burned into your retinas, who knows.
This weekend, while the sun was shining and my family were out enjoying the garden, I was inside on my laptop playing with cellular automatons, like the obsessive-compulsive computer nerd I’m meant to be. Cellular automata are abstract mathematical systems like the one below – 2d grids of cells that are either black or white, kinda like a completed Othello board. With a simple bit of programming (I did it in Flash ActionScript) you give all the cells a shared behaviour, and then set them off on a synchronised update cycle. The final stage is observation – using our uniquely human skill of pattern recognition to look for “life like” behaviour emerging. Below the cells are programmed according to an algorithm known as “Vichniac Voting“. Click start to see it in action before I explain below what is happening.
With each update, each cell looks at its eight neighbours and itself and decides if it is in the majority or not. If it is it will stay the same colour, otherwise it will swap. In this version a twist has been applied to make it a little more unstable – the decision for neighbour count of 4 and 5 are switched. Without the twist it settles into a static pattern quite quickly.
Every time you restart the process you’ll get something different. But every time you’ll end up with something that our human brains would identify as a recognisable “pattern”. Something like you might see on the hide of a cow, the physics of water droplets, or the contours of a landscape, or, if you are willing to subscribe to Universal Automatism, just about anything in the natural world.
With cellular automatons we are purposely limiting our simulation to the simplest possible model, to prove the principle of simple algorithm, complex result, which is Universal Automatism in a nutshell (maple leaf, frond, whirlpool, whatever). If we can accept that life-like patterns can emerge from two state cells with a one rule algorithm, we can perhaps accept that the states/algorithms don’t need to be much more complex in order to generate any and all patterns we might observe in the worlds of physics, biology, society, culture and even psychology.
I’m not making up this crazy theory by the way. Universal Automatism is still quite loosely defined, but it has a history. Cosmology has always thought of the universe in these terms, also genetics has long accepted the idea of DNA undergoing long recursive algorithms in its unravelling. The idea was present in Chaos Theory, popular in the eighties, and Emergence Theory, popular in the nineties. But it was the 2002 book A New Kind Of Science by Stephen Wolfram that made the first serious attempt to explain the whole universe as computation. Dr Rucker then put a name to the theory in The Lifebox, The Seashell and The Soul.
I’m not asking you to all come join me in this crazy maths cult, but you have to say, as big thinking goes, this theory makes a lot more sense than some of the other rubbish around.
[ follow-up post: Universal Automatism - The Game Of Life ]
[ follow-up post: "Free Will Is An Illusion" proved using Comic Book Quantum Mechanics ]
tags: universal automatism, cellular automatons, game of life, stephen wolfram, rudy rucker, chaos theory, emergence, pattern recognition
if you liked this article, please digg it, thanks.
Posted in generative art, philosophy, tech, universal automatism |