Just What Are Emergent Properties?

Photo by Goh Rhy Yan on Unsplash

It’s the year 2050. Flying cars are a thing, we’ve figured out nuclear fusion, and swarms of drones are flying about in the sky. One morning, while you’re out for your daily walk, you stop and look up at those drones. The computer that controls them must be extremely powerful, able to plot all of their courses in real-time. Nope! They’re doing it all by themselves thanks to emergent properties.

Emergent properties are, in general, properties held by a system that is not defined by any of its individual components. What do I mean by that? Well, let’s take a look at an example.

The Game of Life is a simple zero-player game created by British Mathematician, John Conway. In this game, the world is made up of cells that can either be alive or dead. Once the game starts, the following four rules are applied every frame to determine the state of each cell.

  1. Live cells with fewer than two living neighbours die.
  2. Live cells with two or three living neighbours live.
  3. Live cells with more than three living neighbours die.
  4. Dead cells come to life if they have exactly three living neighbours.

Given these four simple rules, you might expect to see very little happen when you run the simulation. However, you would actually find an environment that can make stable systems, moving collections of cells, and even, in theory, calculate anything that your computer can!

Flyers created in the Game of Life

So, emergent properties can be used to make extremely complex systems without having to define all possible interactions. Just stating a few basic rules can sometimes create infinite possibilities. However, if you’ve ever tried to make your own version of the Game of Life as I have, you might find that it’s harder than it seems. So, how do we create systems with emergent properties?

Emergent properties appear where your rules can interact with themselves in unpredictable ways. What does that mean? Well, think of it like this. Using the Game of Life as an example, say you had a unique rule for every possible state. Since you’ve defined what happens at every possible instant, it’s impossible for anything unexpected to happen! If you want emergent properties you need to create flexible rules that can interact with each other in new and exciting ways.

One of my favourite examples of emergent properties is in the game Minecraft. Minecraft has an item called Redstone which works like electrical wires. Using the basic blocks that Minecraft provides you with, wires, inputs, and other basic logic gates, you can build fully functional computers inside the game. This was never intended by the developers, rather it was a logical extension of the rules that they purposely created.

An 8-bit computer with 32 bytes of memory and 3Kbytes of program memory. Very impressive for a video game!

So, being able to make Turing complete machines inside of games is all well and good, but what can we actually do with these emergent properties? Well, I’d like to propose one possible application in the field of robotics.

Let’s go back to the year 2050. How were those drones calculating their courses? Well, let’s figure out what they need to do.

  • They need to not fly into anything
  • They need to get where they are going

That’s a pretty basic list of requirements, yet it would take a lot of work to hard code something capable of following these instructions. So, why don’t we look at something in nature for inspiration?

What about birds? That don’t like crashing into things, and they generally have a destination in mind when flying. So, how do the birds do it? Well, though a collection of very complex systems in their brain that we still don’t understand. But we do know the gist of it. They, just like the Game of Life, follow basic rules when moving about. Enter the boid, a simulated agent able to follow basic rules and replicate complex flocking behaviour found in birds.

The three rules used by basic boid simulations

Implementing these rules will allow the boids to move around in seemingly complex ways while being directed by extremely simple rules. If you want to see a live demo of this, I’ve made an implementation of this simulation in JavaScript that you can play around with here.

So, why can’t we build these rules into the drones? They’d be able to navigate in a coordinated fashion without the need for any centralized computing, creating a simplistic system that would be extremely powerful.

This is just one possible use case for emergent properties. Autonomous nanobots, self-driving cars, even biological structures created with emergent properties in mind would all be vastly more efficient than those without. So, when you’re designing your next big project, try to leave room for unexpected functionality. You just might find that it vastly improves your product.

  • Properties of a system not defined by any one of its components are emergent.
  • Emergent properties can lead to complex interactions that would be difficult to hardcode.
  • These interactions can be manipulated to create intricate systems with simplistic rules.
  • The inspiration for this article came from a YouTube video by Sebastian Lague.
  • Here is a demo of the Game of Life from academo.org and a demo of boids made by myself.
  • And here is a video by the Coding Train on how to make a boid simulation in p5.js.

Thanks for reading my article! Feel free to message me on LinkedIn if you have anything to say, or follow me on Medium to get notified when I post another article!

Innovator at TKS Ottawa, AI enthusiast, Game developer, and lover of all the spacy nonsense I can find!

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store