Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Google DeepMind's software stack for physics-based simulation and Reinforcement Learning environments, using MuJoCo.

License

NotificationsYou must be signed in to change notification settings

google-deepmind/dm_control

Repository files navigation

Google DeepMind's software stack for physics-based simulation and ReinforcementLearning environments, using MuJoCo physics.

Anintroductory tutorial for this package is available as a Colaboratorynotebook:Open In Colab

Overview

This package consists of the following "core" components:

Additionally, the following components are available for the creation of morecomplex control tasks:

If you use this package, please cite our accompanyingpublication:

@article{tunyasuvunakool2020,         title = {dm_control: Software and tasks for continuous control},         journal = {Software Impacts},         volume = {6},         pages = {100022},         year = {2020},         issn = {2665-9638},         doi = {https://doi.org/10.1016/j.simpa.2020.100022},         url = {https://www.sciencedirect.com/science/article/pii/S2665963820300099},         author = {Saran Tunyasuvunakool and Alistair Muldal and Yotam Doron and                   Siqi Liu and Steven Bohez and Josh Merel and Tom Erez and                   Timothy Lillicrap and Nicolas Heess and Yuval Tassa},}

Installation

Installdm_control from PyPI by running

pip install dm_control

Note:dm_control cannot be installed in "editable" mode (i.e.pip install -e).

Whiledm_control has been largely updated to use the pybind11-based bindingsprovided via themujoco package, at this time it still relies on some legacycomponents that are automatically generated from MuJoCo header files in a waythat is incompatible with editable mode. Attempting to installdm_control ineditable mode will result in import errors like:

ImportError: cannot import name 'constants' from partially initialized module 'dm_control.mujoco.wrapper.mjbindings' ...

The solution is topip uninstall dm_control and then reinstall it withoutthe-e flag.

Versioning

Starting from version 1.0.0, we adopt semantic versioning.

Prior to version 1.0.0, thedm_control Python package was versioned0.0.N,whereN was an internal revision number that increased by an arbitrary amountat every single Git commit.

If you want to install an unreleased version ofdm_control directly from ourrepository, you can do so by runningpip install git+https://github.com/google-deepmind/dm_control.git.

Rendering

The MuJoCo Python bindings support three different OpenGL rendering backends:EGL (headless, hardware-accelerated), GLFW (windowed, hardware-accelerated), andOSMesa (purely software-based). At least one of these three backends must beavailable in order render throughdm_control.

  • Hardware rendering with a windowing system is supported via GLFW and GLEW.On Linux these can be installed using your distribution's package manager.For example, on Debian and Ubuntu, this can be done by runningsudo apt-get install libglfw3 libglew2.0. Please note that:

    • dm_control.viewer can only be used with GLFW.
    • GLFW will not work on headless machines.
  • "Headless" hardware rendering (i.e. without a windowing system such as X11)requiresEXT_platform_device support in the EGL driver. Recent Nvidiadrivers support this. You will also need GLEW. On Debian and Ubuntu, thiscan be installed viasudo apt-get install libglew2.0.

  • Software rendering requires GLX and OSMesa. On Debian and Ubuntu these canbe installed usingsudo apt-get install libgl1-mesa-glx libosmesa6.

By default,dm_control will attempt to use GLFW first, then EGL, then OSMesa.You can also specify a particular backend to use by setting theMUJOCO_GL=environment variable to"glfw","egl", or"osmesa", respectively. Whenrendering with EGL, you can also specify which GPU to use for rendering bysetting the environment variableMUJOCO_EGL_DEVICE_ID= to the target GPU ID.

Additional instructions for Homebrew users on macOS

  1. The above instructions usingpip should work, provided that you use aPython interpreter that is installed by Homebrew (rather than thesystem-default one).

  2. Before running, theDYLD_LIBRARY_PATH environment variable needs to beupdated with the path to the GLFW library. This can be done by runningexport DYLD_LIBRARY_PATH=$(brew --prefix)/lib:$DYLD_LIBRARY_PATH.

About

Google DeepMind's software stack for physics-based simulation and Reinforcement Learning environments, using MuJoCo.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Contributors50


[8]ページ先頭

©2009-2026 Movatter.jp