Open-ended tools for infinite games
It is interesting to contemplate a tangled bank, clothed with many plants of many kinds, with birds singing on the bushes, with various insects flitting about, and with worms crawling through the damp earth, and to reflect that these elaborately constructed forms, so different from each other, and dependent upon each other in so complex a manner, have all been produced by [evolutionary] laws acting around us… whilst this planet has gone cycling on according to the fixed law of gravity, from so simple a beginning endless forms most beautiful and most wonderful have been, and are being, evolved.
Charles Darwin, 1859. “On the Origin of Species”
It is interesting to contemplate a tangled bank! Once upon a time, life began as a single prokaryotic cell. Now, it proliferates in a diversity of forms. Why? Why are there many species? Why didn’t evolution converge on one, or two, and stop there? Instead, we see nature continually discovering new ways to be alive. It never seems to stop. Nature has a seemingly infinite capacity for innovation.
How is it that nature is so… open-ended? What mechanisms produce this open-endedness? Could we learn from nature and construct our own open-ended systems?
Open-ended ecosystems are where innovation comes from
I’ve mentioned a few times that I want to build an open-ended tool for thought. Why? Here is my thesis:
Open-ended ecosystems are where innovation comes from. The innovation comes from the system surprising itself.
Drop a marble into a bowl, and it will roll around, eventually settling at the lowest point, where it stops. Many systems converge toward stable equilibrium states like this. Once they settle into that equilibrium state, they stop producing new outcomes. Not very interesting. A system frozen in equilibrium cannot produce new innovation.
If it is in equilibrium, it must be dead.
John H. Holland
Open-ended systems aren’t like this. They refuse to fall into equilibrium. Instead, they keep finding new ways to disrupt themselves, continually generating novel outcomes. More interesting still, these novel outcomes aren’t just formless, chaotic noise. Open-ended systems generate upward-spirals of evolutionary complexity.
And biological evolution might not be the only kind of open-ended system. Here are a few systems that appear to exhibit open-ended behavior:
🧬🦠 Biological evolution
👩💻🕸 The internet and the web
What do these all have in common? The set of forms that life can take, businesses that economies can generate, thoughts that language can express, technologies that inventors can construct, apps that web developers can build, all seem to be unbounded. Perhaps some of these systems fall short of being truly open-ended. Yet if they are a closed set, then that set is so vast we can’t tell the difference. The ability of these systems to generate innovation appears to be practically unlimited.
Building open-ended tools
What makes a system open-ended is an area of ongoing research. It seems that open-endedness is the outcome of evolution, and that evolution happens in any system with mutation, heredity, and selection. Yet, it is possible to construct evolutionary systems that aren’t open ended. In fact, evolutionary algorithms and other A-Life systems seem to stubbornly converge, at which point they cease producing novelty. So, we understand some of what is necessary for open-endedness, but we are still working out what is sufficient to provoke it.
At the same time, I suspect we can rough out some useful heuristics to apply in a design context. Can we look at tools and usefully ask whether they are more or less open-ended? I think so.
Picture a wooden airplane:
Now, picture a Lego airplane:
One of these can be one just thing. The other can express a wide range of meanings:
So, my first heuristic is that an open-ended tool is made up of an alphabet and a mechanism of composition. These two things are the DNA of the tool, and set up the conditions for evolution. For lego, this looks like bricks and dots. For Unix, this looks like programs and pipes.
My second heuristic comes from Van Valen’s Red Queen Hypothesis, a famous evolutionary hypothesis named for the Red Queen in Alice in Wonderland:
Now, here, you see, it takes all the running you can do, to keep in the same place.
When actors in a system compete, they get caught up in coevolutionary loops. If you stay in one place, you’ll fall behind, and this coevolutionary pressure generates all kinds of symbiotic upward-spiraling complexity.
My third heuristic comes from an A-Life paper, “Complex Adaptations and the Evolution of Evolvability" (Wagner, Altenberg, 1996).
In evolutionary computer science it was found that the Darwinian process of mutation, recombination, and selection is not universally effective in improving complex systems like computer programs or chip designs. For adaptations to occur, these systems must possess evolvability.
For open-ended evolution to occur, the system itself needs to be evolvable. One way to see this is that the system should be able to reprogram itself.
My fourth heuristic is a cheat—human beings are open-ended systems. We’re always changing, adapting, and generating novelty. If you put a human in the loop of an expressive enough system, that system will evolve in open-ended directions.
Building more infinite games
There are at least two kinds of games. One could be called finite, the other, infinite. A finite game is played for the purpose of winning, an infinite game for the purpose of continuing the play.
James Carse, 1986, “Finite and Infinite Games”
Startups play to win. Yet the entire ecosystem of silicon valley is built on top of open-ended ecosystems, and could not exist without them. Programming languages, open source software, Linux, the internet, the web, are all open-ended systems.
Given these open-ended systems provoked so much value creation, I wonder what might happen if we built a few more?
Open-Endedness: The Last Grand Challenge You’ve Never Heard Of (Stanley, 2017)
Why Greatness Cannot Be Planned (Stanley, 2015)
Evolved Open-Endedness, Not Open-Ended Evolution (Pattee, Sayama, 2019)
An Overview of Open-Ended Evolution (Packard, Bedau, Channon, Ikegami, Rasmussen, Stanley, Taylor, 2019)
Identifying Necessary Components for Open-Ended Evolution (Vostinar, Dolson, Wiser, Ofria)
Exploring Open-Ended Evolution in Web Services (Fadelli, 2019)
Zipf’s Law, unbounded complexity and open-ended evolution (Corominas-Murtra, Seoane, Solé, 2018)
Complexity, a Guided Tour (Mitchell, 2009)
The Nature of Technology (Arthur, 2009)