Repolode
learnsyslab

learnsyslab/gym-pybullet-drones

쿼드콥터용 단일·멀티 에이전트 강화학습 컨트롤러를 훈련하는 PyBullet 기반 Gymnasium 환경입니다.

스타
2,201
포크
578
열린 이슈
111
마지막 커밋
어제

어떤 프로젝트인가요?

gym-pybullet-drones는 PyBullet 물리 엔진과 Gymnasium API를 기반으로 쿼드콥터 시뮬레이션 환경을 제공합니다. 연구자와 학생은 이 환경에서 호버링, 대형 비행, 드론 간 다운워시 상호작용 등의 과제를 위해 단일 드론 및 멀티 에이전트 제어 강화학습 정책을 훈련할 수 있습니다.

이 프로젝트는 IROS 2021에서 발표된 이전 코드베이스를 간결하게 리팩터링한 것으로, Gymnasium과 Stable-Baselines3 2.0에 맞게 업데이트되었습니다. 기본 PID 및 속도 컨트롤러, MRAC 적응형 컨트롤러가 포함되어 있으며, learn.py로 PPO 에이전트를 훈련하고 play.py로 재생하는 예제 스크립트도 제공합니다.

또한 Ubuntu에서 여러 시뮬레이션 비행 컨트롤러를 환경에 연결해 실행하는 Betaflight SITL 예제도 포함되어 있습니다.

핵심 기능

  • 01Gymnasium 호환 단일 에이전트 및 멀티 에이전트 쿼드콥터 환경
  • 02PyBullet 물리 시뮬레이션 기반
  • 03PID, 속도 제어 및 MRAC 컨트롤러 예제 포함
  • 04Stable-Baselines3 PPO 훈련 및 재생 스크립트
  • 05드론 간 다운워시 효과 모델링
  • 06Ubuntu에서 Betaflight SITL 통합

활용 사례

  • 쿼드콥터의 호버링 또는 궤적 추적을 위한 강화학습 컨트롤러 훈련
  • 멀티 드론 협응 및 대형 비행 연구
  • 소프트웨어 인더 루프 환경에서 Betaflight 펌웨어를 대상으로 제어 알고리즘 테스트

빠른 시작

  1. 1

    저장소를 클론합니다

    git clone https://github.com/learnsyslab/gym-pybullet-drones.git
  2. 2

    Python 3.12 conda 환경을 만들고 활성화합니다

    conda create -n drones python=3.12 && conda activate drones
  3. 3

    패키지를 editable 모드로 설치합니다

    pip3 install -e .
  4. 4

    PID 제어 예제를 실행합니다

    cd gym_pybullet_drones/examples/ && python3 pid.py

사용 전 알아둘 점

  • Python 3.11 이상에서 pybullet을 빌드하려면 컴파일러나 macOS 전용 CFLAGS 우회 방법이 필요할 수 있습니다.
  • Betaflight SITL 예제는 Ubuntu에서만 작동합니다.

포함된 컬렉션

토픽

자주 묻는 질문

gym-pybullet-drones은(는) 무엇인가요?
쿼드콥터용 단일·멀티 에이전트 강화학습 컨트롤러를 훈련하는 PyBullet 기반 Gymnasium 환경입니다. gym-pybullet-drones는 PyBullet 물리 엔진과 Gymnasium API를 기반으로 쿼드콥터 시뮬레이션 환경을 제공합니다. 연구자와 학생은 이 환경에서 호버링, 대형 비행, 드론 간 다운워시 상호작용 등의 과제를 위해 단일 드론 및 멀티 에이전트 제어 강화학습 정책을 훈련할 수 있습니다.
gym-pybullet-drones은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
gym-pybullet-drones은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
gym-pybullet-drones은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. gym-pybullet-drones의 마지막 커밋은 2026년 11월 6일입니다.
gym-pybullet-drones은(는) 어디에 사용할 수 있나요?
쿼드콥터의 호버링 또는 궤적 추적을 위한 강화학습 컨트롤러 훈련 멀티 드론 협응 및 대형 비행 연구 소프트웨어 인더 루프 환경에서 Betaflight 펌웨어를 대상으로 제어 알고리즘 테스트
gym-pybullet-drones는 어떻게 설치하나요?
저장소를 클론합니다: git clone https://github.com/learnsyslab/gym-pybullet-drones.git Python 3.12 conda 환경을 만들고 활성화합니다: conda create -n drones python=3.12 && conda activate drones 패키지를 editable 모드로 설치합니다: pip3 install -e . PID 제어 예제를 실행합니다: cd gym_pybullet_drones/examples/ && python3 pid.py
gym-pybullet-drones은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/learnsyslab/gym-pybullet-drones

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트