Smooth Life

Chances are you’ve seen Conway’s Game of Life, the checkerboard cellular automaton featuring stable structures, replicators, and all sorts of cool designs. (Plenty of implementations available online.) It’s called “life” because the processes of movement and evolution bear some tangential resemblance to regular organic life, although there are plenty of other reasons to be interested — for example, you can construct a universal computer within the game.

Now John Baez points us to a version called SmoothLife, in which the evolution looks dramatically more “biological.” (Technical paper by Stefan Rafler here, and a playlist with many videos is here.) Rather than just looking at the nearest neighbor sites on a square grid, SmoothLife integrates over a region in the vicinity of each point, with a specified filter function. As a result, everything looks, well, a lot smoother.

While SmoothLife is undeniably more lifelike in appearance, I think the differences between these kinds of simulations and biological life are as important as the similarities. Conway’s original game supports an impressive variety of structures, but it’s not really robust; if you start with a random configuration, chances are good that it will settle down to something boring before too long. My uninformed suspicion is that this is partly due to the fact that cellular automata typically feature irreversible dynamics; you can’t recover the past state from the present. (There are many initial states that evolve to a completely empty grid, for example.) As a result, evolution is not ergodic, exploring a large section of the possible state space; instead, it settles down to some smaller region and stays there. There are some reversible automata, which are quite interesting. To really model actual biology, you would want an automaton that was fundamentally reversible, but in which the system you cared about was coupled to a “low entropy” environment. Don’t know if anyone has attempted anything like that (or whether it would turn out to be interesting).

While I’m giving away all my wonderful ideas, it might be fun to look at cellular automata on random lattices rather than strict rectilinear grids. If the nodes were connected to a random number of neighbors, you would at least avoid the rigid forty-five-degree-ness of the original Life, but it might be harder to think of interesting evolution rules. While we’re at it, we could imagine automata on random lattices that evolved (randomly!) with time. Then you’d essentially be doing automata in the presence of gravity, since the “spacetime” on which the dynamics occurred would be flexible. (Best of all if you could update the lattice in ways that depended on the states of the cells, so that matter would be affecting the geometry.)

Musings along these lines make me more sympathetic to the idea that we’re all living in a computer simulation.

This entry was posted in Math. Bookmark the permalink.

8 Responses to Smooth Life

  1. Jason Dick says:

    Hmm, I’m rather skeptical that reversibility is important for life-like dynamics. As I understand it, evolution is inherently irreversible (well, obviously not at the level of atomic interactions, but evolution operates at a much, much higher level). I think there are two main problems with the game of Life:
    1. Structures that stably spawn other shapes are rare. They can occur, but not frequently, and they tend to be very complex.
    2. Few shapes are robust against collisions with other shapes: in a large random grid, it’s really, really easy for that complex glider that spawns other gliders to smack into some stationary stable configuration and be destroyed.

    The new game might make things seem more organic by making destruction less probable, or by increasing the rate at which gliders are spawned from random collisions.

    Either way, to build a life simulator, you need to be able to have some configurations that at least occasionally self-replicate and are reasonably robust against interactions with other configurations. I don’t think the game of life can do that, at least not without an incredibly complex configuration that is really unlikely to happen randomly. I would be interested if the new game could, however.

  2. David Yerle says:

    You’re probably familiar with it already, but what you suggest is quite similar to experiments Stephen Wolfram tries out in “A New Kind of Science.” However, he’s not trying to replicate life but the laws of physics. According to him, he’s managed to get systems that reproduce the main features of quantum mechanics and special relativity. I don’t know how far he’s got with general relativity though.

  3. Andy ilachinski says:

    Coupling site variables with link variables dates back to 1987 and the first issue of Wolfram’s Complex Systems journal (the model system was called structurally dynamic ca):

  4. Job van der Zwan says:

    That last paragraph, I think I have an idea how to do that:

    – start with weighted Voronoi map with randomly distributed generators as the random lattice
    – let the weight be determined by their on/off state
    – apply Lloyd’s algorithm,
    – update state of the cells,
    – repeat previous two steps's_algorithm

    It probably would need some tweaking in practice, but it’s a start.

  5. James Cross says:

    Any thoughts on The Algorithmic Origins of Life by Sara Imari Walker, Paul C. W. Davies?

    “Here we propose that the origin of life may correspond to a physical transition associated with a shift in causal structure, where information gains direct, and context-dependent causal efficacy over the matter it is instantiated in. Such a transition may be akin to more traditional physical transitions (e.g. thermodynamic phase transitions), with the crucial distinction that determining which phase (non-life or life) a given system is in requires dynamical information and therefore can only be inferred by identifying causal architecture. “

  6. Low Math, Meekly Interacting says:

    To make it life-like, make the environment dynamic, and allow the rules governing automaton behavior to change on an individual basis. Allow offspring of mutants to inherit the mutant rules. I think there’s every reason to think that real biological systems would tend to become extremely boring if their environment was static and they had a very low or absent mutation rate. What makes life interesting is that attractors don’t last forever; and even if they did, genetic drift could still lead to interesting variations simply by chance.

  7. DanielS says:

    If the universe is completely predictable, than we leave for sure in a computer simulation.

    If the universe has at list one randomly parameters, than again we live in a computer simulation, govern by rules and probability.

    If all the rules are just highly probability principles, born from chaos, than again we live in a computer simulation, rule by probability.

    If we leave in a computer simulation, than all other entities leave in computer simulations, creating and “virusating” each other.