Evolution is a fact of life, it is the defining characteristic of life itself, but that doesn’t mean a stupid robot can’t evolve. For his entry into the Hackaday Pi Zero contest, diemastermonkey is doing just that: evolution for robots built around microcontrollers and a Raspberry Pi.
The project is a physical extension to genetic algorithms. Just like DNA and proteins have no idea what they’re actually doing, microcontrollers don’t either. Instead of randomly switching up base pairs and amino acids, his project makes random connections pins depending on the values of those pins.
The potential of these randomly programmed robots is only as good as the fitness function, and so far he has seen some surprising success. When putting these algorithms into a microcontroller connected to a tilting table mechanism and a PIR sensor, the robot eventually settled on a bit of code that would keep a ball in motion. You can check out the video of this below.