Skip to content

A wrapper framework for Reinforcement Learning in the Webots robot simulator using Python 3.

License

Notifications You must be signed in to change notification settings

tsampazk/deepbots

 
 

Repository files navigation

Version Dev Version Documentation Status Downloads License All Contributors

Deepbots is a simple framework which is used as "middleware" between the free and open-source Cyberbotics' Webots robot simulator and Reinforcement Learning (RL) algorithms. When it comes to RL, gym environments have been established as the most used interface between the actual application and the RL algorithm.

Deepbots is a framework which follows the gym interface logic and bridges the gap between the gym environment and the simulator to enable you to easily create custom RL environments in Webots.

Installation

Prerequisites

  1. Install Webots
  2. Install Python version 3.X (please refer to Using Python to select the proper Python version for your system)
  3. Refer to the Using Python guide provided by Webots
  4. Webots provides a basic code editor, but if you want to use PyCharm as your IDE refer to using PyCharm IDE provided by Webots

You will probably also need a backend library to implement the neural networks, such as PyTorch or TensorFlow. Deepbots interfaces with RL agents using the gym logic, so it can work with any backend library you choose to implement the agent with and any agent that already works with gym, such as stable-baselines3 implementations.

Install deepbots

Deepbots can be installed through the package installer pip running the following command:

pip install deepbots

If you encounter this issue please use pip install setuptools==65.5.0 before installing deepbots.

Official resources

Citation

Conference paper (AIAI2020): https://link.springer.com/chapter/10.1007/978-3-030-49186-4_6

@InProceedings{10.1007/978-3-030-49186-4_6,
    author="Kirtas, M.
    and Tsampazis, K.
    and Passalis, N.
    and Tefas, A.",
    title="Deepbots: A Webots-Based Deep Reinforcement Learning Framework for Robotics",
    booktitle="Artificial Intelligence Applications and Innovations",
    year="2020",
    publisher="Springer International Publishing",
    address="Cham",
    pages="64--75",
    isbn="978-3-030-49186-4"
}

Acknowledgments

This project has received funding from the European Union's Horizon 2020 research and innovation programme under grant agreement No 871449 (OpenDR). This publication reflects the authors’ views only. The European Commission is not responsible for any use that may be made of the information it contains.

Contributors ✨

Thanks goes to these wonderful people (emoji key):


Manos Kirtas

💻

Kostas Tsampazis

💻

Jiun Kai Yang

💻

MentalGear

🤔

Dreamtale

🐛

Nikolaos Kokkinis-Ntrenis

💻 📖 🤔

This project follows the all-contributors specification. Contributions of any kind welcome!

Special thanks to Papanikolaou Evangelia for designing project's logo!

About

A wrapper framework for Reinforcement Learning in the Webots robot simulator using Python 3.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 96.6%
  • Dockerfile 3.4%