Adrian Herbez Rotating Header Image

Posts Tagged ‘cellular automata’

Rule 30: the game

I recently bought a conus textile seashell to give to a young relative of mine that loves science. Conus Textile shells are really cool, because the pattern on their surface is almost identical to that created by a simple 1-dimensional cellular automata with 30 as the ruleset. But instead of just giving her the shell, I wanted to make her earn the gift through a game-like exploration of cellular automata, with the shell being the big reveal after she’s completed it.

This is a first pass at such a game. At the start, a single line with random state is presented to the player, along with a blank line. Mousing over any of the cells will highlight the three previous cells that determine the state of the mouse-over cell, and clicking on the cell will toggle its state. Once all of the cells in the new line are correct, a new line is added to the display. Over time, the distinctive pattern found with rule30, and on conus textile shells, will emerge.

projects , ,

Cellular Automata Toy

cell_autoThis was a small software toy for playing with two-dimensional cellular automata. As the program runs, new lines are calculated based on simple rules, wherein the state of each cell is determined by the state of that cell and its two neighbors in the previous line.

Since three cells are taken into account, there are eight (two cubed) possible states, any one of which can lead to either an on state or an off state. While the program is running, the function keys F1-F8 can be used to toggle the result for each combination, resulting in different visual patterns being created.

If you’d like to try it for yourself, the program can be downloaded here. Sorry, windows only.

EDIT, 2013-07-14: Note that if you do run the program, it will run almost too fast to see the patterns. Sorry- I wrote this a decade ago, and it just renders frames as fast as it can. I tuned it to look good on my 2003 laptop, but things are… a bit faster now

projects , , ,