Computational Geometry: Theory and Applications
We prove NP-hardness of a wide class of pushing-block puzzles similar to the classic Sokoban, generalizing several previous results [E.D. Demaine et al., in: Proc. 12th Canad. Conf. Comput. Geom., 2000, pp. 211-219; E.D. Demaine et al., Technical Report, January 2000; A. Dhagat, J. O'Rourke, in: Proc. 4th Canad. Conf. Comput. Geom., 1992, pp. 188-191; D. Dor, U. Zwick, Computational Geometry 13 (4) (1999) 215-228; J. O'Rourke, Technical Report, November 1999; G. Wilfong, Ann. Math. Artif. Intell. 3 (1991) 131-150]. The puzzles consist of unit square blocks on an integer lattice; all blocks are movable. The robot may move horizontally and vertically in order to reach a specified goal position. The puzzle variants differ in the number of blocks that the robot can push at once, ranging from at most one (Push-1) up to arbitrarily many (Push-*). Other variations were introduced to make puzzles more tractable, in which blocks must slide their maximal extent when pushed (PushPush), and in which the robot's path must not revisit itself (Push-X). We prove that all of these puzzles are NP-hard.
Combinatorial games, Computational complexity, Motion planning
© the authors
Demaine, Erik D.; Demaine, Martin L.; Hoffmann, Michael; and O'Rourke, Joseph, "Pushing Blocks is Hard" (2003). Computer Science: Faculty Publications, Smith College, Northampton, MA.