Back to directory

gym-pybullet-drones

A Gymnasium-compatible PyBullet simulation environment for single- and multi-agent reinforcement learning of quadcopter control, with Betaflight software-in-the-loop and classical PID control examples.

gym-pybullet-drones

gym-pybullet-drones is a minimalist refactoring of the original quadcopter simulation environment, updated for compatibility with Gymnasium, Stable-Baselines3 2.0 and Betaflight software-in-the-loop. It provides physics-based drone simulation in PyBullet that can be driven by classical controllers, such as PID and PID-velocity control examples, or trained with reinforcement learning algorithms such as PPO from Stable-Baselines3, including single- and multi-agent setups.

Example scripts cover basic control, a downwash-effect simulation between multiple drones, and running the environment against real Betaflight flight-controller firmware in software-in-the-loop mode by building a SITL executable per simulated drone. A test suite runs with pytest, and the project has been featured in GitHub's Maintainer Spotlight.

It is tested on Intel x64 Ubuntu and Apple Silicon macOS, written in Python, and released under the MIT license.

More in Libraries

See all 292
  • OpenDecision

    deepanwadhwa.github.io

    An open-source Python package that answers typed questions about application state or documents using a local natural-language-inference model, returning structured choice, score, yes/no or evidence-relation values instead of free text.

  • TradeCanvas

    bonguynvan.github.io

    A zero-dependency canvas charting engine for building TradingView-style trading charts in JavaScript, with 66 technical indicators, 24 drawing tools, 17 chart types, and real-time streaming.

  • 3d retro graphics

    3d-retro.com

    A free, CC0-licensed library of copy-paste retro 3D and demoscene graphics effects, such as plasma, raytracing, and voxel terrain, runnable as WebGL 1 or plain 2D canvas.