# Pebble motion problems

The **pebble motion problems**, or **pebble motion on graphs**, are a set of related problems in graph theory dealing with the movement of multiple objects ("pebbles") from vertex to vertex in a graph with a constraint on the number of pebbles that can occupy a vertex at any time. Pebble motion problems occur in domains such as multi-robot motion planning (in which the pebbles are robots) and network routing (in which the pebbles are packets of data). The best-known example of a pebble motion problem is the famous 15 puzzle where a disordered group of fifteen tiles must be rearranged within a 4x4 grid by sliding one tile at a time.

## Theoretical formulation

The general form of the pebble motion problem is Pebble Motion on Graphs[1] formulated as follows:

Let be a graph with vertices. Let be a set of pebbles with . An arrangement of pebbles is a mapping such that for . A move consists of transferring pebble from vertex to adjacent unoccupied vertex . The Pebble Motion on Graphs problem is to decide, given two arrangements and , whether there is a sequence of moves that transforms into .

### Variations

Common variations on the problem limit the structure of the graph to be:

- a tree[2]
- a square grid,[3]
- a bi-connected graph.[4]

Another set of variations consider the case in which some[5] or all[3] of the pebbles are unlabeled and interchangeable.

Other versions of the problem seek not only to prove reachability but to find a (potentially optimal) sequence of moves (i.e. a plan) which performs the transformation.

## Complexity

Finding the shortest path in the pebble motion on graphs problem (with labeled pebbles) is known to be NP-hard[6] and APX-hard.[3] The unlabeled problem can be solved in polynomial time when using the cost metric mentioned above (minimizing the total number of moves to adjacent vertices), but is NP-hard for other natural cost metrics.[3]

## References

- Kornhauser, Daniel; Miller, Gary; Spirakis, Paul (1984), "Coordinating pebble motion on graphs, the diameter of permutation groups, and applications",
*Proceedings of the 25th Annual Symposium on Foundations of Computer Science (FOCS 1984)*, IEEE Computer Society Press, pp. 241–250, CiteSeerX 10.1.1.17.3556, doi:10.1109/sfcs.1984.715921, ISBN 978-0-8186-0591-8 - Auletta, V.; Monti, A.; Parente, M.; Persiano, P. (1999), "A linear-time algorithm for the feasibility of pebble motion on trees",
*Algorithmica*,**23**(3): 223–245, doi:10.1007/PL00009259, MR 1664708 - Călinescu, Gruia; Dumitrescu, Adrian; Pach, János (2008), "Reconfigurations in graphs and grids",
*SIAM Journal on Discrete Mathematics*,**22**(1): 124–138, CiteSeerX 10.1.1.75.1525, doi:10.1137/060652063, MR 2383232 - Surynek, Pavel (2009), "A novel approach to path planning for multiple robots in bi-connected graphs",
*Proceedings of the IEEE International Conference on Robotics and Automation (ICRA 2009)*, IEEE, pp. 3613–3619, doi:10.1109/robot.2009.5152326, ISBN 978-1-4244-2788-8 - Papadimitriou, Christos H.; Raghavan, Prabhakar; Sudan, Madhu; Tamaki, Hisao (1994), "Motion planning on a graph",
*Proceedings of the 35th Annual Symposium on Foundations of Computer Science (FOCS 1994)*, IEEE Computer Society Press, pp. 511–520, doi:10.1109/sfcs.1994.365740, ISBN 978-0-8186-6580-6 - Ratner, Daniel; Warmuth, Manfred (1990), "The -puzzle and related relocation problems",
*Journal of Symbolic Computation*,**10**(2): 111–137, doi:10.1016/S0747-7171(08)80001-6, MR 1080669