Skip to content

MyoSuite is a collection of environments/tasks to be solved by musculoskeletal models simulated with the MuJoCo physics engine and wrapped in the OpenAI gym API.

License

Notifications You must be signed in to change notification settings

dongfangzhizhu/myosuite

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Support Ukraine PyPI Documentation Status PyPI - License PRs Welcome Downloads Open In Colab

MyoSuite is a collection of musculoskeletal environments and tasks simulated with the MuJoCo physics engine and wrapped in the OpenAI gym API to enable the application of Machine Learning to bio-mechanic control problems

Below is an overview of the tasks in the MyoSuite. Full task details are available here, and baseline details are available here TasksALL

Getting Started

You will need Python 3.7.1 or later versions. At this moment the library has been tested only on MacOs and Linux with MuJoCo v2.1.0.

It is recommended to use Miniconda and to create a separate environment with

conda create --name myosuite python=3.7.1
conda activate myosuite

It is possible to install MyoSuite with:

pip install -U myosuite

for advance installation see here.

Test your installation using (this will return also a list of all the current environments):

python myosuite/tests/test_myo.py

You can also visualize the environments with random controls using the command below:

$ python myosuite/utils/examine_env.py --env_name myoElbowPose1D6MRandom-v0

NOTE: If the visualization results in a GLFW error, this is because mujoco-py does not see some graphics drivers correctly. This can usually be fixed by explicitly loading the correct drivers before running the python script. See this page for details.

Examples

It is possible to create and interface with MyoSuite environments like any other OpenAI gym environments. For example, to use the myoElbowPose1D6MRandom-v0 environment it is possible simply to run: Open In Colab

import myosuite
import gym
env = gym.make('myoElbowPose1D6MRandom-v0')
env.reset()
for _ in range(1000):
  env.sim.render(mode='window')
  env.step(env.action_space.sample()) # take a random action
env.close()

You can find tutorials on how to load MyoSuite models/tasks, train them and visualize their outcome. Also, you can find baselines to test some pre-trained policies.

License

MyoSuite is licensed under the Apache License

Citation

If you find this repository useful in your research, please consider giving a star ⭐ and cite it by using the following BibTeX entrys.

@Misc{MyoSuite2022,
  author =       {Vittorio, Caggiano AND Huawei, Wang AND Guillaume, Durandau AND Massimo, Sartori AND Vikash, Kumar},
  title =        {MyoSuite: A fast and contact-rich simulation suite for musculoskeletal motor control},
  howpublished = {\url{https://github.com/facebookresearch/myosuite}},
  year =         {2022}
}

About

MyoSuite is a collection of environments/tasks to be solved by musculoskeletal models simulated with the MuJoCo physics engine and wrapped in the OpenAI gym API.

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 99.2%
  • Shell 0.8%