This module is a python implementation of IT&E.
IT&E code for developing hexapod experiments similar to Cully et al. (2015), Nature. This code is not replicating the exact experiments of the Nature paper, but can be seen as a more modern implementation of the underlying algorithm.
If you use our code for a scientific paper, please cite:
Antoine Cully, Jeff Clune, Danesh Tarapore, and Jean-Baptiste Mouret. "Robots that can adapt like animals." Nature 521, no. 7553 (2015): 503-507.
In BibTex:
@article{cully_robots_2015,
title = {Robots that can adapt like animals},
volume = {521},
pages = {503--507},
number = {7553},
journal = {Nature},
author = {Cully, Antoine and Clune, Jeff and Tarapore, Danesh and Mouret, Jean-Baptiste},
year = {2015}
}
Here are some IT&E use cases. You can click on the GIFs to watch the full videos.
Dependencies (use pip or your favorite package manager)
- python3
- matplotlib
- pybullet
- numpy
- tensorflow
- gym
Clone this repository and run :
git submodule update --init --recursive
IT&E will be used with the maps contained in maps folter. The damages used here are defined in the pybullet_minitaur_sim and pyhexapod repositories.
To create new maps or change the damages please refer to the pybullet_minitaur_sim and pyhexapod repository.
You can disable the gui by modifying the params at the end of ite.py
python ite.py maps/minitaur/centroids_40000_16.dat maps/minitaur/archive_20000.dat 0 minitaur
python ite.py maps/hexapod/centroids_40000_6.dat maps/hexapod/archive_20000.dat 0 hexapod
In order to run it with the real minitaur robot please refer to the minitaur_framework
Note that ite_maps.py has been configured to test 10 different maps from 10 different experiments
In order to run it with the real pexod robot, you will need to use the C++ API : IT&E