Polynomial-time Configuration Generator for Connected Unlabeled Multi-Agent Pathfinding

Takahiro Suzuki, Keisuke Okumura
10/22/2025
cs.MA

No confident code implementation found for this paper.

Abstract

We consider Connected Unlabeled Multi-Agent Pathfinding (CUMAPF), a variant of MAPF where interchangeable agents must be connected at all times. This problem is fundamental to swarm robotics applications such as self-reconfiguration and marching, where standard MAPF is insufficient as it does not guarantee the connectivity constraint. Despite its simple structure, CUMAPF remains understudied and lacks practical algorithms. We first develop an Integer Linear Programming (ILP) reduction to solve CUMAPF. Although this formulation provides a makespan-optimal plan, it is severely limited in terms of scalability and real-time responsiveness due to the large number of variables. We therefore propose a suboptimal but complete algorithm named PULL. It is based on a rule-based one-step function that computes a subsequent configuration that preserves connectivity and advances towards the target configuration. PULL is lightweight, and runs in $O(n^2)$ time per step in a 2D grid, where $n$ is the number of agents. Empirically, PULL can quickly solve randomly generated instances containing hundreds of agents, which ILP cannot handle. Furthermore, PULL's solution substantially improves upon a naive approach to CUMAPF.

View on arXivView PDF

Code Implementations

No confident code match yet

We couldn't find an author-owned or strongly-evidenced community implementation for this paper. Any repos shown below are weak matches — verify before relying on them.

No code implementations found yet.

Know of an implementation? Let us know in the comments below!

Cite this paper

@article{suzuki2025polynomialtime,
  title  = {Polynomial-time Configuration Generator for Connected Unlabeled Multi-Agent Pathfinding},
  author = {Takahiro Suzuki and Keisuke Okumura},
  year   = {2025},
  eprint = {2510.19567},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2510.19567v2}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2510.19567.svg)](https://codeofpaper.com/paper/2510.19567)

Discussion