Thread
Emergent Microcosms 🌎💻

Time to think about snippets of computer code that can generate complex + delightful virtual worlds.

This playful approach to emergence—algorithms that can unfurl entire virtual universes—are essentially “Emergent Microcosms”

🧵
1/

“Emergent Microcosms” is a fuzzy category and I’m still thinking about it, but with its roots in artificial life, this space spans ALife, complexity science, simulation, and creative coding. And it’s amazing.

(LLMs + AI art are all the rage, but we’ve forgotten this space!)

2/

Here are a few major areas where emergent microcosms are found:

🦠 Cellular automata
⏳ Falling-sand games
đź”· Physics-based simulations, eg rigid body and particle simulators

3/
You also see emergent microcosms using such techniques as:

🎮 Shaders
🕸️ Agent-based models
🦤 Evolutionary computation
🌱 L-systems

(Note: this is more than just complex visuals, such as fractals; there needs to be a dynamic and emergent quality)

4/
The granddaddy of these kinds of creative coding programs is John Horton Conway’s Game of Life, a class of cellular automaton (CA) that involves a grid with rules for how squares change from one timestep to the next.

en.wikipedia.org/wiki/Conway%27s_Game_of_Life

5/
But there has been so much innovation in the CA world at the intersection of ALife, most wonderfully with Lenia, by @BertChakovsky:

chakazul.github.io/lenia.html

Lenia has an entire bestiary of “creatures” discovered within its virtual world, from orbium to Quadridae gyrans

6/

There is also some amazing work being done by @slackermanz focused on Multiple Neighborhood Cellular Automata:

slackermanz.com/understanding-multiple-neighborhood-cellular-automata/

(PS cellular automata can work well when implemented as shaders)

7/

Here’s an open-ended CA where you can specify the rules by writing your own code:

aperocky.com/cellular-automata/

8/
Falling-sand games are close cousins of CA, but allow the user to paint and play with different types of particles: en.wikipedia.org/wiki/Falling-sand_game

For example, check out @MaxBittker’s Sandspiel:

sandspiel.club/

9/

Here’s a programmable version of Sandspiel!

studio.sandspiel.club/

This allows the user to easily code bespoke emergent microcosms.

10/
Sandpond is another example of falling-sand games, but in 3D (made by @todepond):

sandpond.cool/

11/

Another project by @maxbittker is Orb.Farm, which is a tiny self-contained aquatic ecosystem, which combines ecology and complex systems with falling-sand games:

orb.farm/

12/
In an entirely different realm, there is the demoscene (+ code golf world I suppose), devoted to creating mind-blowing demos in tiny computer programs:

en.wikipedia.org/wiki/Demoscene

13/
There are L-systems, which use a recursively executed ruleset to generate plant-like structures:

en.wikipedia.org/wiki/L-system

14/
Here’s an exploration into building a procedurally generated world, using voxels:

procworld.blogspot.com/

15/
Physics simulations, including particle systems and rigid body simulations, can also be used to develop emergent microcosms.

An early system that allowed for the creation of a whole host of “creatures” was Soda Constructor: en.wikipedia.org/wiki/Soda_Constructor

16/

Soda Constructor is now defunct, but you can play with a web-based open source version here:

peterfidelman.github.io/constructor/

17/
LiquidFun is a physics simulation library from Google:

google.github.io/liquidfun/

18/

Systems of particles can do lots of things, including demonstrating flocking, swarming, and other collective behaviors:

processing.org/examples/flocking.html

19/

Examples from the agent-based model world, some of which are more emergent microcosms than others, can be found here: ccl.northwestern.edu/netlogo/

(And many of these are also much smaller and simpler microcosms)

20/
Here’s a “primordial particle system” that uses a small set of rules in an agent-based system to yield some delightful complexity:

www.youtube.com/watch?v=makaJpLvbow

21/

Related to biology, here’s a great example of an emergent microcosm that relies on digital evolution by @JJVentrella:

www.swimbots.com/genepool/

22/

There are also mechanisms for combing biological inspiration with CA, such as "Neural Cellular Automata"

distill.pub/2020/growing-ca/

23/

More broadly, I recommend checking out the work of evolving “organisms” in silico to do a whole variety of things:

- @DoctorJosh: www.meclab.org/
- @ncheney_and_lab: www.uvm.edu/neurobotics/publications
- @drmichaellevin: drmichaellevin.org/

24/
Games are also great environments for creating emergent microcosms (eg via procedural generation).

Note: boundary is fuzzy, as many games use some of this (such as roguelikes), but might not fully count as an emergent microcosm.

25/
Nevertheless, here are some examples from the gaming world that could reasonably count as emergent microcosms:

- SimLife
- Spore
- No Man's Sky
- Noita

(note: the Falling Everything engine for Noita combines falling sand and rigid bodies: nollagames.com/fallingeverything/ )

26/
Want to know how to make some of these?

Processing is a great language for programming these kinds of emergent microcosms. @ProcessingOrg

processing.org/

27/

If you want to see lots of fantastic examples for Processing, @thecodingtrain by @shiffman is amazing:

thecodingtrain.com/

28/
. @GalaxyKate has done also some great work here:

www.galaxykate.com/

For, example, see this tutorial:

galaxykate0.tumblr.com/post/139774965871/so-you-want-to-build-a-generator

29/
"The Computational Beauty of Nature: Computer Explorations of Fractals, Chaos, Complex Systems, and Adaptation" by @flakenstein is a useful classic:

www.amazon.com/Computational-Beauty-Nature-Explorations-Adaptation/dp/0262561271

30/
I also highly recommend thinking about open-endedness.

For example, check out this by @kenneth0stanley, @joelbot3000, and @err_more:

www.oreilly.com/radar/open-endedness-the-last-grand-challenge-youve-never-heard-of/

31/
There is so much more, particularly since this has such a fuzzy and fractal boundary, but here are a couple more philosophical essays I wrote related to unspooling computational worlds:

arbesman.substack.com/p/-unspooling-computational-worlds

arbesman.substack.com/p/-the-philosophers-tree

32/
Anyway, there is a lot I've left out, but please send me more examples of emergent microcosms!

I’m always looking for the holy grail here, a sort of computational Standard Model for a digital cosmos.

33/
And if you enjoyed this, please feel free to sign up for my newsletter:

arbesman.substack.com/

34/
The thread on emergent microcosms is now an essay:

arbesman.substack.com/p/emergent-microcosms

35/
Mentions
See All