This is a beautiful combination, and reminiscent of Rudy Rucker's hybrid cellular automata rule "EcoLiBra", that combined Life and Brian's Brain by switching between them on a per-pixel basis, based on another cellular automata rule, Anneal, running in a parallel plane.<p>Anneal decides whether each cell is land or water, and clumps cells into oceans and continents that look like cow spots, with smoothly eroded shorelines and long beaches. Life runs on land, and brain runs in water, and they interact and stimulate each other along the beaches where land and water meet.<p>Actually EcoLiBra uses "AntiLife" (aka "Death") on land, the ones-complement of life, because that makes the empty space "1" for AntiLife stimulate Brain, and the empty space "0" for brain stimulate Life, so the beach is a fertile breeding ground that never dies out, and there's much more cross-species stimulation and humping and birthing along the shores, then the children disperse by swimming down into the deep ocean, or climbing up into the inland hills.<p><a href="http://www.rudyrucker.com/oldhomepage/celdoc/rules.html#EcoLiBra" rel="nofollow">http://www.rudyrucker.com/oldhomepage/celdoc/rules.html#EcoL...</a><p>>ECOLIBRA<p>>The JC EcoLiBra rule, a cross between Life and Brain.<p>>This rule is a cross between Life and Brain. The basic idea is that the cells are divided between dark "sea" cells and light "land" cells. We run Brain in the sea, and on land we run not Life but AntiLife. All the land cells are normally firing cells, and the presence of an active AntiLife cell is signaled by having a land cell which is not firing. Full details on EcoLiBra are in §<p>>The name EcoLiBra suggests 1) an ecology of Life and Brain, 2) a balanced situation (equilibrium), and 3) the human intestinal bacteria Escherichia coli, known as E. coli for short. The third connection is perhaps a bit unsavory, but remember that E. coli cells are in fact the favorite "guinea pigs" for present day genesplicing experiments. As one of the goals of CelLab is to promote the development of artificial life, the designer gene connection is entirely appropriate. I've given EcoLiBra a nice, symmetric start pattern, but it also does fine if you press R to randomize the screen. You can make a randomized screen a little more interesting by using the screen editor to drill a big black hole in the center. This can be done by using the following keystrokes<p>Here is an earlier somewhat simpler cellular automata rule that Rudy Rucker made when he first started playing with the CAM-6 in 1987.<p><a href="http://www.rudyrucker.com/oldhomepage/celdoc/rules.html#BraiLife" rel="nofollow">http://www.rudyrucker.com/oldhomepage/celdoc/rules.html#Brai...</a><p>>BRAILIFE<p>>The JC BraiLife rule after 213 generations. A hauler is about to hit a butterfly just above and to the right of the center of the diamond shape.<p>>When I first started hacking cellular automata on the CAM-6 in 1987, I couldn't quite see how to think of a completely new rule. So I decided a good way to start might be to try combining some of the old rules, particularly the rules Life and Brain.<p>>Life is very interesting, but it tends to die out. Brain, on the other hand, is extremely hard to kill off; if anything, Brain is too persistent. So I thought I might try running Life and Brain in parallel, using Brain to stimulate Life, and using Life to dampen Brain.<p>>At first I had every firing Brain cell turn on a Life cell, and had every firing Life cell turn off a Brain cell, but, run fullscreen, this reaction quickly wipes Brain out. You can see the fullscreen reaction by loading BraiLife, clearing all the screens, setting plane 4 to 1, and randomizing plane 2. The keystrokes are as follows. Note that you do not press Enter after answering the "Initialize planes" prompts called up by pressing I:<p>Rudy referrs to Anneal as "Vote" (with a twist of chaos is a tie-breaker):<p><a href="http://www.rudyrucker.com/oldhomepage/celdoc/rules.html#Vote" rel="nofollow">http://www.rudyrucker.com/oldhomepage/celdoc/rules.html#Vote</a><p>>VOTE<p>>The JC Vote rule, a few generations after a random start.
Vote is a one-bit rule where each cell calculates the NineSum of itself and its eight neighbors, and then determines its new state on the basis of the NineSum. We can regard this as EveryCell conducting a little election between 0 and 1 among the nine cells in its neighborhood. If either 0 or 1 wins by a clear majority of 6 votes or more out of the nine votes, then that is the state which EveryCell will take on. But if either 0 or 1 wins by a scant, sneaky majority of 5 votes out of the nine, then the election is overturned, and EveryCell takes on the color of the "losing" state. Vote is discussed in more detail in the Theory chapter.<p>>The version of Vote shown here uses bit #1 as an "echo" of bit #0. This means that cells will take on different colors if they have changed state in the last generation. You can keep rerandomizing Vote by pressing R. It's a bit startling to see what organic-looking shapes can arise from such a simple rule acting on a rectangular grid.