Skip to content

frontier_exploration_ros2

  • Software
  • Navigation and mapping
  • Library

A ROS 2 package for autonomous frontier exploration of occupancy-grid mobile robots, with MRTSP-based target ordering and optional bounded-horizon dynamic programming.

Source on GitHub: github.com/mertgulerx/frontier_exploration_ros2 (opens in a new tab). Facts read at commit 11864e4 (opens in a new tab).

Licenses

Code
Apache-2.0 (opens in a new tab)

Read by Robotheca from LICENSE (opens in a new tab) (Apache-2.0) at commit 11864e4 (opens in a new tab), on 22 Oct 2026.

Commercial use
Yes

What it does

  • Detects frontiers between known free space and unknown space, after optional map optimization that runs before frontier extraction.
  • Orders exploration targets with an MRTSP-based policy, using either a greedy matrix traversal or a bounded-horizon dynamic programming solver.
  • Dispatches the first target of the selected sequence through Nav2 and replans as the map updates, until no frontiers remain.
  • Provides runtime controls for preemption, blocked-goal skipping, frontier suppression, QoS settings and completion events.
  • Offers a control service with a CLI helper and an optional RViz plugin to start, stop or delay exploration.
  • Benchmarked against other exploration packages in shared simulation scenarios, reporting path complexity, time, distance and CPU and RAM use.

Written by Robotheca from the project's README (opens in a new tab) at commit 11864e4.

Getting started

Difficulty
Intermediate
Hardware it needs, as the project states it
Verified on Ubuntu 24.04 with ROS 2 Jazzy and Ubuntu 22.04 with ROS 2 Humble, using Gazebo Harmonic, Nav2, Slam Toolbox and a TurtleBot3 Waffle Pi with a 360-degree 12.0 m 2D LiDAR. Default parameters are tuned for that robot and need adjusting for other sensors and platforms.

Maintenance

Status
Active: a commit in the last 90 days
Newest commit
22 Oct 2026 on main
Latest release
Release Version 1.6.2 - A New Chapter (25 Sept 2026)

Checked on GitHub on 22 Oct 2026.

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.