multi_uav_simulator
- Software
- Drones and boats
- Simulator
A ROS2 simulator for swarms of quadrotors, with physics, that runs more than 10 heterogeneous drones on one desktop. It adds distributed trajectory optimization with collision avoidance.
Source on GitHub: github.com/malintha/multi_uav_simulator (opens in a new tab). Facts read at commit f2cc09b (opens in a new tab).
Licenses
- Code
- GPL-3.0-only (opens in a new tab)
Read by Robotheca from LICENSE (opens in a new tab) (GPL-3.0-only) at commit f2cc09b (opens in a new tab), on 22 Oct 2026.
- Commercial use
- Yes
Copyleft: Modified source must be published.
What it does
- Simulates heterogeneous quadrotor swarms of more than 10 robots on a single desktop with physics.
- Uses a Lee geometric tracking controller, tuned out of the box for two quadrotor models.
- Performs fully distributed trajectory optimization with collision avoidance via sequential convex programming.
- Includes receding horizon planning.
- Example script publishes formation goals so the drones can form a word, one letter at a time, using bipartite matching.
- Self-contained: depends only on simulator_interfaces, with the code kept in header files for easy reuse as a library.
Written by Robotheca from the project's README (opens in a new tab) at commit f2cc09b.
Getting started
- Difficulty
- Intermediate
- Hardware it needs, as the project states it
- Requires Eigen, Armadillo and the GNU Scientific Library (GSL) installed. Tested with ROS2 Jazzy.
- How to start
- The project's README (opens in a new tab)
Maintenance
- Status
- Maintained: a commit in the last 12 months
- Newest commit
- 6 Jun 2026 on ros2
- Latest release
- Mavswarm2 (ros2 support for Mavswarm) (6 Jun 2026)
Checked on GitHub on 22 Oct 2026.
Links
Robots that can run it
No robot on Robotheca is linked to it yet. Links come from a robot's robot.yaml, from its dependency files read as text, or from Robotheca's editors.
Robotheca lists software as a reference: nothing is hosted or run here, and every fact links to where it was read.