53
9

A Linear Time Algorithm for the Feasibility of Pebble Motion on Graphs

Jingjin Yu
Abstract

Given a connected, undirected, simple graph G=(V,E)G = (V, E) and pVp \le |V| pebbles labeled 1,...,p1,..., p, a configuration of these pp pebbles is an injective map assigning the pebbles to vertices of GG. Let SS and DD be two such configurations. From a configuration, pebbles can move on GG as follows: In each step, at most one pebble may move from the vertex it currently occupies to an adjacent unoccupied vertex, yielding a new configuration. A natural question in this setting is the following: Is configuration DD reachable from SS and if so, how? We show that the feasibility of this problem can be decided in time O(V+E)O(|V| + |E|) (and therefore optimal), providing a positive answer to an open problem raised by Auletta et al. The pebble motion problem on graphs finds applications in multi-robot path planning, deflection routing in data networks, and memory management in distributed systems. Fast feasibility test for this problem can help eliminate infeasible instances, thus avoiding unnecessary computation on parts of these instances.

View on arXiv
Comments on this paper