Finding Life-Like Cellular Automata Rules and Initial States with Guaranteed Still End States

120 Views Asked by At

My goal is to find all rulesets of life-like cellular automata and initial states that, when simulated in a toroidal grid (although non-toroidal would be interesting as well) of arbitrary finite dimensions, eventually end up in a fixed end state that doesn't oscillate and can be trivial (empty or full).

It seems like there are multiple classes of solutions:

  1. Rulesets that always generate a stationary end state from any arbitrary initial state (e.g. All "no death" rules B0/S012345678, B1/S012345678). However, I'm unsure if there any more rulesets with this fixed end state guarantee.

  2. Non-trivial initial states in rulesets not contained in the first category that end in all still life, or trivial states. This section seems like it would be extremely large and difficult to generate these initial states computationally.

  3. Trivial initial states in any ruleset that don't change, or simply flip to the other state.

For my purposes I am interested in the first class of these solutions mostly, so that I can simply generate random initial states and guarantee it will eventually reach a fixed end state.

And also, some way of randomly generating arbitrary initial states that conform to the second class, but my hunch is it's not easy.

1

There are 1 best solutions below

3
On

I don't have a ton of experience with CA, but I have some. I can at least say that you may have problems with your first requirement, as in general, it's very much impossible to predict these things from the outset. That said, maybe you'll have some luck checking around and seeing what's worked for others.

Generating non-trivial states is also going to be rough. The problem is the massive, massive amount of options you'll have to work with, almost all of which produces garbage. Even the tiniest rule set options are tough to sort through and have enormous ramifications.

Again, in the past to deal with this, I've picked a middle-of-the-ground framework (meaning some 2^128 possible rulesets, maybe), chose at random over and over, ran them shortly, and kept an eye out for "interesting" behavior, which is tough to define. For my purposes, I was interested in computation more than life, so I was watching for behavior that might indicate something analogous to a computer gate.

Perhaps more relevantly to you, I kept an eye out for how quickly or slowly information propagated through the universe. Paradoxically, the slower information travels, the better, so long as it's not actually stagnant and stuck. It means that there's richer, more robust interaction there.

Dunno, that's my two cents. Out of curiosity, do you know what you're using to run it, if you do?


One last thought that I'm reminded of$-$I didn't have much luck, but the idea seemed sound. You could try selecting a few physical mechanisms that you think are conducive to life, like gravity, or extremely basic chemistry-like interaction, maybe consumption and some recognizable form of energy or fuel. Some of these should be easy to spot if you're lucky enough to stumble onto one.