Learning to Fly -- a Gym Environment with PyBullet Physics for Reinforcement Learning of Multi-agent Quadcopter Control

Jacopo Panerati, Hehui Zheng, SiQi Zhou, James Xu, Amanda Prorok +1 more
3/3/2021
cs.ROcs.LG

Official code: learnsyslab/gym-pybullet-drones (2,175 stars, MIT, last commit 2026-10-17).

Abstract

Robotic simulators are crucial for academic research and education as well as the development of safety-critical applications. Reinforcement learning environments -- simple simulations coupled with a problem specification in the form of a reward function -- are also important to standardize the development (and benchmarking) of learning algorithms. Yet, full-scale simulators typically lack portability and parallelizability. Vice versa, many reinforcement learning environments trade-off realism for high sample throughputs in toy-like problems. While public data sets have greatly benefited deep learning and computer vision, we still lack the software tools to simultaneously develop -- and fairly compare -- control theory and reinforcement learning approaches. In this paper, we propose an open-source OpenAI Gym-like environment for multiple quadcopters based on the Bullet physics engine. Its multi-agent and vision based reinforcement learning interfaces, as well as the support of realistic collisions and aerodynamic effects, make it, to the best of our knowledge, a first of its kind. We demonstrate its use through several examples, either for control (trajectory tracking with PID control, multi-robot flight with downwash, etc.) or reinforcement learning (single and multi-agent stabilization tasks), hoping to inspire future research that combines control theory and machine learning.

View on arXivView PDF

Code Implementations(1)

MIT

PyBullet Gymnasium environments for single and multi-agent reinforcement learning of quadcopter control

2,175572Shell, PythonAug 10, 20205 days agoMIT
betaflightcontrolcrazyfliegymgymnasium+9 more

Cite this paper

@article{panerati2021learning,
  title  = {Learning to Fly -- a Gym Environment with PyBullet Physics for Reinforcement Learning of Multi-agent Quadcopter Control},
  author = {Jacopo Panerati and Hehui Zheng and SiQi Zhou and James Xu and Amanda Prorok and Angela P. Schoellig},
  year   = {2021},
  eprint = {2103.02142},
  archivePrefix = {arXiv},
  url    = {https://arxiv.org/abs/2103.02142}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2103.02142.svg)](https://codeofpaper.com/paper/2103.02142)

Discussion