Matt, I think you’ll dig this (if you ever get a break from babies, haha).
BoxCar2D is a program that learns to build a little boxcar using a genetic algorithm. Starting off with a population of 20 cars in generation 0, the 20 cars all run (or don’t, some of them are pretty pathetic, haha) and those that run the longest “reproduce.” If you let it run long enough, you really see pretty dramatic improvement from the 0th to the nth generation. There is also a mutation rate in play that you can set on a sliding scale from no mutations to “100% mutations”, where all components of the car are changeable.
I’ve got a run going in the background as I type this. It’s on generation 6 and some of the cars are running for a whole minute.
Read about the algorithm here.
Check it out, it’s really cool! You can also design your own.
