Skip to content

pybullet simulation for minitaur and utils to create map elites maps

License

Unknown, CECILL-2.1 licenses found

Licenses found

Unknown
COPYING
CECILL-2.1
COPYING.fr
Notifications You must be signed in to change notification settings

resibots/pybullet_minitaur_sim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pybullet_minitaur_sim

This repository contains everythin needed to launch a minitaur pybullet simulation and to create map_elites maps for the minitaur The simulation is based on this work. Notice that here bullet3 is imported as a submodule in order to be able to access the minitaur urdf files in bullet3/data/

Dependencies (use pip or your favorite package manager)

  • python3
  • pybullet
  • numpy
  • gpy
  • tensorflow
  • gym

Clone this repository and run :

git submodule update --init --recursive

How to use this package ?

Launch a simple simulation

python simulation.py

It will run a 20seconds minitaur episode, the controller parameters have been designed by hand.

Note that you can also run it with a Map Elites map. It will then run the best behavior from the map:

python simulation.py path_to_centroid_file path_to_archive_file

Create map elites maps

python simulator_map_elites.py

You can tune map_elites parameters at the bottom simulator_map_elites.py. You can tune the episode duration and reward in the eval_minitaur function

If needed you can look at learn_mini.sh to launch several experiments on the cluster.

In this example the folder containing the experiment outputs is minitaur_20secs. You will need to create it before executing ./learn_mini.sh

References:

If you use this code in a scientific paper, please cite:

Main paper: Mouret JB, Clune J. Illuminating search spaces by mapping elites. arXiv preprint arXiv:1504.04909. 2015 Apr 20.

CVT Map-Elites: Vassiliades V, Chatzilygeroudis K, Mouret JB. Using centroidal voronoi tessellations to scale up the multi-dimensional archive of phenotypic elites algorithm. IEEE Transactions on Evolutionary Computation. 2017 Aug 3.

Variation operator: Vassiliades V, Mouret JB. Discovering the Elite Hypervolume by Leveraging Interspecies Correlation. Proc. of GECCO 2018.

Launch a simple simulation with a damaged minitaur

You can use the eval_minitaur function from simulator_map_elites_damaged.py to run a simulation with a damage.

Here the left front leg is blocked in a fully retracted and perpendicular to the ground position.

simulator_map_elites_damaged.py is the file that is used by the pyite package

Minitaur leg kinematics

The following is used in the simulation, to convert cartesian end leg position commands to angle commands. You can also directly look at the minitaur.pdf file

1 2 3

About

pybullet simulation for minitaur and utils to create map elites maps

Resources

License

Unknown, CECILL-2.1 licenses found

Licenses found

Unknown
COPYING
CECILL-2.1
COPYING.fr

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published