/celldemo

Simple 1D Wolfram cellular automaton using HTML5/JS

Live version: http://devinacker.github.io/celldemo/

This is a small old HTML5 / JavaScript demo I wrote a few years ago. It simulates 1-dimensional cellular automata of the sort described by Steven Wolfram. I did this both as an exploration of these automata, which I had recently read about, and as a personal introduction to the HTML5 canvas element.

The demo draws each generation of the simulation as a successive row on the canvas. The rule set is determined by a series of checkboxes corresponding to each possible state of a cell and its two immediate neighbors; the state of the checkbox (on or off) determines whether a cell in a given neighborhood will be alive or dead in the following generation. The rule set can be changed on-the-fly while the simulation is running for some visually and mathematically interesting results.

Some relevant reading material about Wolfram's cellular automata, and the four presets featured in the demo:

http://mathworld.wolfram.com/ElementaryCellularAutomaton.html
http://en.wikipedia.org/wiki/Rule_30
http://en.wikipedia.org/wiki/Rule_90
http://en.wikipedia.org/wiki/Rule_110
http://en.wikipedia.org/wiki/Rule_184

This demo is copyright 2010 Devin Acker. It may be freely modified and distributed in any form as long as you attribute me in some way.