mit-acl/mighty

MIGHTY: Hermite spline-based real-time trajectory planner for single- and multi-agent UAVs and ground robots (ROS 2). Accepted to IEEE RA-L.

MIGHTY – Hermite‑spline based trajectory planner

概要 – MIGHTYは、空中および地上ロボットの高速かつ滑らかな軌道計画のための、ROS 2ベースのオープンソースライブラリです。エルミートスプラインを使用して、リアルタイムで衝突のない経路を生成し、単一エージェント、マルチエージェント、および探索シナリオをサポートします。

主な機能

  • マルチUAVスワップ – 数十機のクアッドローターが円状に配置され、互いに衝突を避けながら位置を交換します。
  • 地上ロボットの探索 – Pioneer 3-ATが未知のオフィスを自律的にマッピングし、出発点に戻ります。
  • 動的障害物への対応 – 障害物が移動すると、プランナーが即座に再計画を行います。
  • シミュレーションとハードウェア – Gazebo、RViz2、または実機ロボット(UAV、Pioneer 3-AT)で動作します。組み込み展開用にJetson互換のビルドが提供されています。

試用方法

  1. Docker (Linux/macOS)make build を実行すると、すべての固定された依存関係を含む再現可能なイメージが作成されます。その後、make run-* ターゲットのいずれかを使用してシナリオを実行します。例:UAVスワップデモには make run-multiagent、Pioneerテストには make run-ground-exploration を使用します。
  2. ネイティブ (Ubuntu 22.04, ROS 2 Humble) – リポジトリをクローンし、./setup.sh を実行します(ROS 2のインストール、mighty.repos の依存関係の取得、C++コードのビルド、~/.bashrc へのソース追加を行います)。その後、統合ランチャー src/mighty/scripts/run_sim.py を使用して任意のシナリオを起動します。
  3. Jetson – 同じ setup.sh スクリプトがJetsonハードウェアを検出し、Gazeboをスキップして軽量なARM64バージョンをビルドします。

典型的なコマンドライン (単一UAVでインタラクティブなRVizゴールを使用する場合のネイティブ例):

python3 src/mighty/scripts/run_sim.py \
    --mode interactive \
    -s ~/code/mighty_ws/install/setup.bash

--modemultiagentgazeboexploration-singleagent-ground などに置き換え、ヘッドレス実行には --num-agents 5--env easy_forest--no-rviz などのフラグを使用してください。

論文とビデオ – この手法は、IEEE Robotics & Automation Lettersの論文 MIGHTY: Hermite Spline‑based Efficient Trajectory Planning (2026) および付随するarXivのプレプリントに記載されています。完全なデモビデオはYouTube (https://youtu.be/Pvb-VPUdLvg) で公開されており、READMEには複雑な森林、動的な環境、および長時間飛行におけるプランナーを示す多くのGIFが含まれています。

対象ユーザー – ロボット研究者、UAVスウォームの開発者、またはシミュレーションと実機の両方で即座に動作する軽量なリアルタイムプランナーを必要とするすべての人。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト