
Motion planning · Control & Planning
v1.0.0
frontier_exploration_ros2 is an open-source autonomous exploration package for occupancy-grid-based mobile robots. It detects frontiers on the boundary between known free space and unknown space and drives the robot so that it systematically maps its surroundings until frontiers are exhausted.
The package extends the classic wavefront frontier detection (WFD) backbone with decision-map optimization before detection and target ordering based on the Minimum Ratio Traveling Salesman Problem (MRTSP) formulation. Two solver modes are available: greedy matrix traversal and a bounded-horizon dynamic programming solver that searches a short route ahead and dispatches only the first target, then replans as the map evolves.
Written in modern C++, it integrates with Nav2 (navigation goals are dispatched through Nav2) and exposes a reusable C++ core library for custom integrations. It has been validated on Ubuntu 24.04 / ROS 2 Jazzy and Ubuntu 22.04 / ROS 2 Humble, with Gazebo Harmonic, Slam Toolbox and a TurtleBot3 Waffle Pi robot. In the reported warehouse comparison, the dynamic programming configuration reduced travel distance by 22.1% and exploration time by 24.7% relative to m-explore_ros2.
The package is authored by Mert Güler and Erkan Uslu (Yıldız Technical University); it is developed as open-source software under the Apache 2.0 license.
Verified on TurtleBot3 Waffle Pi; benchmarked in warehouse and bookstore simulation scenarios (Gazebo Harmonic).
107 GitHub stars and 21 forks (October 2026).
A family of open-source operating systems based on the Linux kernel, common on servers, in the cloud and in robotics.
Ubuntu 24.04 LTS 'Noble Numbat' — supported until April 2029. The host for ROS 2 Jazzy.
License family: Permissive
First release.
Added visible-reveal-gain preemption to reduce path complexity and traveled distance.
Smarter frontier ordering (MRTSP), map optimization before search, and performance improvements.
Runtime control service and CLI, cold-idle support, and optional RViz control plugin.
Demo repository and improved Nav2 stability.
Bounded-horizon dynamic programming ordering, bug fixes, and performance and stability improvements.
Accurate distance calculation, grid-based caching, better MRTSP scoring, Nav2 failure guarding; deprecated nearest mode.
Added ROS 2 Humble support; improved launch parameter compatibility and debug marker handling.