For this project, I created a walking simulation, that is trained using a genetic algorithm. The walkers are created using multiple parameters such as node radius, restitution, friction, joint length and many more. The genetic algorithm works by taking the best parameters from a pool (each generation) and permuting those parameters by a normal model. Eventually the walkers learn how to walk! Each generation contains a set number of walkers (the population) and the parent count is some subset that will be used to "mate" and create the following generation. Take a look at the DEVELOPMENT.md if you want to see the development process I went through!
In order to run this you must have OpenFrameworks and xCode.
Hope this helped! And if you have any questions email: derekli2@illinois.edu