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.
What Are 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.
- Live cells with fewer than two living neighbours die.
- Live cells with two or three living neighbours live.
- Live cells with more than three living neighbours die.
- 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!
How Can We Make These Systems?
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.
Applications Of Emergent Properties
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.
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.
Resources & Acknowledgements
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!