Skip to main content

Gym-Ignition: A toolkit for developing OpenAI Gym environments simulated with Ignition Gazebo.

Project description

gym-ignition

DescriptionSetupCitation


General C++ Standard Size Size
CI/CD CICD Docker Images Codacy Badge
gym-ignition


Description

gym-ignition is a framework to create reproducible robotics environments for reinforcement learning research.

The project consists of the following components:

  • ScenarI/O: Scene Interfaces for Robot Input / Output is a C++ abstraction layer to interact with simulated and real robots.
  • Gazebo ScenarI/O: Implementation of the ScenarI/O interfaces to interact with the Ignition Gazebo simulator. We provide Python bindings with functionalities comparable to popular alternatives like pybullet and mujoco-py.
  • gym_ignition: A Python package with the tooling to create OpenAI Gym environments for robot learning. It provides abstractions like Task and Runtime to help developing environments that can be executed transparently on all the ScenarI/O implementations (different simulators, real robots, ...). The package also contains resources for inverse kinematics and multi-body dynamics supporting floating-based robots based on the iDynTree library.
  • gym_ignition_environments: Demo environments created with gym_ignition and gym-ignition-models that show the recommended structure.

This project provides the complete implementation of ScenarI/O for the Ignition Gazebo simulator. We expose all the physics engines supported by Ignition Gazebo. Currently, the default and only physics engine is DART.

We are currently working on backends based on robotic middleware to transparently execute the environments developed with gym_ignition on real robots.

If you're interested to know the reasons why we started developing gym-ignition and why we selected Ignition Gazebo for our simulations, visit the Motivations section of the website.

Setup

  1. Install the Ignition suite following the official instructions.
  2. Execute pip install gym-ignition, preferably in a virtual environment.

Then, for some simple examples, visit the Getting Started section of the website.

You can decide to install only the C++ resources if you are not interested in using Python. We also offer a constantly updated pre-release channel with the last development updates. You can find all the details about the different types of installations we support in the website.

Citation

@INPROCEEDINGS{ferigo2020gymignition,
    title={Gym-Ignition: Reproducible Robotic Simulations for Reinforcement Learning},
    author={D. {Ferigo} and S. {Traversaro} and G. {Metta} and D. {Pucci}},
    booktitle={2020 IEEE/SICE International Symposium on System Integration (SII)},
    year={2020},
    pages={885-890},
    doi={10.1109/SII46433.2020.9025951}
} 

Disclaimer: Gym-Ignition is an independent project and is not related by any means to OpenAI and Open Robotics.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gym-ignition-1.0.1.dev7.tar.gz (215.5 kB view hashes)

Uploaded Source

Built Distribution

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page