Improvements to Langton's Loops

Improvements to Langton's Loops

This is a part 2 to Langton's Loops, so read the introduction first.

I'm going to talk about two variations to the original loops which were the work of post-doc student Hiroki Sayama in the early 2000s. His site has a lot of wonderful gifs presenting some of the important cases, but I'll link to the important ones.

The first improvement is the ability to dissolve a previously made loop in order to gain new space for growth. These are termed Structurally Dissolvable Self-Reproducing (SDSR) Loops and they have essentially the same structure as Langton's Loops. However they have an extra state which their cells can take (9 rather than the original 8) which is used to order the destruction of a loop.

Picture it like this: in the original loops, when a loop tried to extend into another loop it would fail which would trigger its genome to stop and for it to die out into a shell. Here's a neat gif from Sayama's website.

Instead, in an SDSR Loop, when the new loop tries to extend into an old one, the old one puts up its defences and triggers the 9th state to eliminate the entirety of its attacker. This allows for move space for growth and we can have our first glimpses of competition which will important for driving evolution further down this article. Here's a gif of this destruction.

This ability to destroy random insulation left by other loops is also useful for cleaning up the field in order to build into it. As a creating arm grows it checks for obstacles and eliminates them before it creates its child. The loops are surprisingly resistant to static (which isn't true of many other cellular automata like Conway's Game of Life).

But we can go one better at simulating life with these critters, since they can change their dimensions as a rectangle and still be capable of reproducing. By changing the number of 7s in the genome before you get to the two 4s we can make longer chains which larger sides. Large loops take a long time to recreate themselves and so they can often be interfered with by other loops before they recreate themselves. Here is a gif where two large loops interact to make a smaller loop between them.

Small loops reproduce quickly compared with their larger competitors and so they have an advantage over the long run. Here is the spontaneous evolution of loops where the trend is for the loops to get smaller over time.

Even better, loops can evolve out of just random bits of data on a mostly empty grid. This is life from nothing; a primordial soup. 

An Infinite Orchard

An Infinite Orchard

Modelling Rabbit Populations; an Introduction to Chaos Theory

Modelling Rabbit Populations; an Introduction to Chaos Theory