Repolode
learnsyslab

learnsyslab/crazyflow

Симулятор квадрокоптеров на JAX для пакетного дифференцируемого моделирования дронов Crazyflie 2.x на CPU и GPU.

Звёзды
200
Форки
49
Открытые issues
9
Последний коммит
10 часов назад

Что это?

Crazyflow — исследовательский симулятор квадрокоптеров. Он построен на JAX и параллельно запускает множество независимых сред и роёв дронов на CPU или GPU, поэтому подходит для масштабного обучения и экспериментов в области робототехники и управления.

Симулятор поддерживает два типа динамики для семейства Crazyflie 2.x: уравнения, выведенные из первых принципов и использующие параметры, определённые по реальным измерениям, а также упрощённую абстрактную динамику в трёх вариантах, подогнанных по данным реальных полётов. Благодаря дифференцируемости всего конвейера градиенты проходят через всю цепочку динамики и управления с помощью jax.grad. Функции шага и сброса — обычные функции JAX, которые можно расширять или заменять.

Ключевые возможности

  • 01Пакетное моделирование множества миров и роёв дронов одновременно
  • 02Работа на CPU с опциональным ускорением на GPU с CUDA 12
  • 03Дифференцируемый конвейер динамики и управления с помощью jax.grad
  • 04Модели динамики, выведенные из первых принципов, и абстрактные модели для Crazyflie 2.x
  • 05Модульные конвейеры шага и сброса на основе обычных функций JAX
  • 06Интеграция с MuJoCo для рендеринга, трассировки лучей и обнаружения контактов

Сценарии использования

  • Обучение алгоритмов обучения с подкреплением или управления в тысячах параллельных сред с дронами
  • Масштабное моделирование роёв с несколькими дронами в каждом мире
  • Разработка настройки контроллеров на основе градиентов или идентификация динамики дронов
  • Создание прототипов алгоритмов управления Crazyflie перед испытаниями на реальном устройстве

Быстрый старт

  1. 1

    Установите версию для CPU из PyPI

    pip install crazyflow
  2. 2

    Установите версию для GPU (Linux x86-64, CUDA 12)

    pip install "crazyflow[gpu]"
  3. 3

    Читайте документацию с примерами и руководством пользователя

Что важно знать

  • Установка для GPU доступна только для Linux x86-64 с CUDA 12.
  • Документация размещена на внешнем сайте learnsyslab.github.io/crazyflow.

В подборках

Темы

Частые вопросы

Что такое crazyflow?
Симулятор квадрокоптеров на JAX для пакетного дифференцируемого моделирования дронов Crazyflie 2.x на CPU и GPU. Crazyflow — исследовательский симулятор квадрокоптеров. Он построен на JAX и параллельно запускает множество независимых сред и роёв дронов на CPU или GPU, поэтому подходит для масштабного обучения и экспериментов в области робототехники и управления.
crazyflow можно использовать бесплатно? Какая у него лицензия?
crazyflow распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
crazyflow всё ещё поддерживается?
Активно поддерживается. Последний коммит в crazyflow — 6 нояб. 2026 г..
Для чего можно использовать crazyflow?
Обучение алгоритмов обучения с подкреплением или управления в тысячах параллельных сред с дронами Масштабное моделирование роёв с несколькими дронами в каждом мире Разработка настройки контроллеров на основе градиентов или идентификация динамики дронов Создание прототипов алгоритмов управления Crazyflie перед испытаниями на реальном устройстве
Как установить crazyflow?
Установите версию для CPU из PyPI: pip install crazyflow Установите версию для GPU (Linux x86-64, CUDA 12): pip install "crazyflow[gpu]" Читайте документацию с примерами и руководством пользователя
Где скачать crazyflow?
Исходный код и инструкции по установке — на GitHub: https://github.com/learnsyslab/crazyflow

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Физический движок на базе JAX для массово-параллельного дифференцируемого моделирования твёрдых тел на ускорителях в исследованиях робототехники и RL.

3,3 тыс.+4 за неделю359Jupyter NotebookApache-2.0Обновлён 18 дней назад