Pebble motion problems
Template:Short description 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]Template:R/superscript 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]Template:R/superscript
- a square grid,[3]Template:R/superscript
- a bi-connected graph.[4]Template:R/superscript
Another set of variations consider the case in which some[5]Template:R/superscript or all[3]Template:R/superscript 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 solution sequence in the pebble motion on graphs problem (with labeled pebbles) is known to be NP-hard[6]Template:R/superscript and APX-hard.[3]Template:R/superscript 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]Template:R/superscript
References
<templatestyles src="Reflist/styles.css" />
Script error: No such module "Check for unknown parameters".