Back to Software Evaluations

If you like Cellular Automata, and have a computer that runs Windows programs, you'll want to try Mirek's Cellebration.
http://www.mirwoj.opus.chelm.pl/ca/index.html
This program allows you to explore not only John Horton Conway's Game of Life but also other outer totalistic rules, as well as: weighted rules, binary rules, Margolus rules, cell history, and much more. In fact, this program even allows user defined rules.

Once you have Mirek's Cellebration, you may want to Click here for a zip file of some stuff that I made specifically for it. The DLL files are for the user defined rules feature of Mirek's Cellebration and I have also included C++ source code for most of them, as well as some custom color palette files and even some Mirek's Cellebration files to demonstrate the new rules so that you can quickly get an intuitive idea of how they work.

For those who would like a better idea of what these custom files are about before they take the time to download them, here are descriptions of a few...

TZ-Cycle5 is a simple color palette that repeats the same five colors over and over except for having the zero state black, the first five non-zero states lighter than the rest, and the last five states dark. The rule I designed this one for is not included in the downloads, but you may still find this palette useful for something.
With TZ Saturation I was attempting to make a compromise between colors that flow nicely from one to the next and color that are easy to tell apart. It's not easy to design a set of 256 colors without having some of them look an awful lot alike, and I made the problem even more difficult for myself in this case by trying to keep it bright and colorful with a high level of chromatic saturation. The results are not as good as I had hoped for, but still pretty nice to have available.
One brightly colored palette is TZ Colorful. This is one of my favorites. Maybe you'll like it too. :)
Then there's TZ Array which has it's emphasis more on being able to tell the various state colors apart.
Okay, enough about the color palettes.

I've also included several DLL files which can be placed into the DLLs directory inside of MCell's UserDLLs folder, to provide additional user defined rules.

flipSpace is a bit of a cross between a Margolus space and a 1 dimensional cellular automata stace, with half of the cells paying attention only to their North and South neighbors and the other half nly paying attention to their East and West neighbors. Which half looks at which neighbors alternates so that every other generation they're looking at the same pair of neighbors again. It can have some interesting effects. If you're a programmer, you may want to try your own version of flipSpace once you've tried mine.
The Grubs rule takes advantage of the ability to have multiple alive states and produces an assortment of somewhat comet-like artificial life forms. I've also included specific outer-totalistic rules so that the grubs can interact with them, but with a slight twist that allows them to evolve into each other. State #1 is Conway's Game of Life... almost. :)
The rules named TimeLife and LifeTime each have different ways of handling multiple live state interactions, but are otherwise alike. The rules are simple for any given live state. Birth on 3 neighbors, and survival on 2 or 3. Yep. It's Conway's Game of Life again. There's a catch though. Only state #1 is calculated every generation, while any other state, n, skips all but one generation out every n generations. This makes for some interesting possibilities for interactions between cellular automata running at different speeds in the same space.
The TZ Layers rule is just Conway's Game of Life on 8 bit-planes. There is no interaction between individual planes, but states with multiple planes will interact with each-other according to the rules of Conway's Game of Life within bit-planes that they have in common.
The rule named TZ Layers CA is a variation on the TZ Layers rule, and will run any Conway's Game of Life pattern in started in a single bit-plane, but also allows the bit-planes to effect each other.
TZ Lag CA is a bit-shift rule. I had never seen anything like it and thought it would be interesting to try. This one keeps track of it's past state by passing it onto the next higher bit-plane each generation until it's pushed off the end. A simple row of 4 dots will result in a pair of gliders. In fact, a random distribution of live states will generally result in many gliders and some interesting interactions. The possibilities for new rules of this type are endless, and I am curious to see what this one might inspire. I've also done some work on a related type of rule that keeps some information about the past state of each cell's neighborhood. If I see an interest, perhaps I'll add something of that nature for download here.
TimeLayers is another rule with independant bit-planes running Conway's Game of Life, except that each cell is processed only once every n generations, where n is the sum of the live bit-plane numbers, plus 1. Complete patterns from Conway's Game of Life can be run side-by-side at different speeds, or even at the same speed in different cell-states, depending on the bit-planes used. Only state #1 runs ar full speed though, and Mirek's Cellebration will consider the pattern to have died if there is no activity, so you may want to have at least a single state#1 blinker somewhere on the board if you're running patterns that otherwise use only slower states. For example, try a symmetrical collision between otherwise identical state#6 and state #7 gliders.

If you have any interest in Cellular Automata or Artificial Life, then I'm sure you'll enjoy Mirek's Cellebration. If you don't haver any interest in such things, try this program out ans you may just develop an interest. I hope you also find that the files that I've made available here will increase your enjoyment of both Mirek's Cellebration and your exploration of these fascinating subjects.

Donald A. Kronos, PhD.

Back to Software Evaluations