Teaching creatures how to walk using a genetic algorithm
This is a study based on Karl Sims' paper on evolving virtual creatures. Uses python and the physics engine PyBullet with a test-driven development methodology.
distance calculated using basic euclidean distance:
[np.linalg.norm(a-b)]
For more effective evolution, my genetic algorithm supports the following mutation types:
- crossover mutation
- point mutation
- shrink mutation
- grow mutation
- elitism
Hyperparameters in the URDF file were changed and compared, results can be seen in the "elites" folder Files containing the hyperparameters of each test are the test_x.URDF files.