CG 2006: Computers and Games pp 220-233

# On the Symbolic Computation of the Hardest Configurations of the RUSH HOUR Game

• Sébastien Collette
• Frédéric Servais
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4630)

## Abstract

Rush Hour is a sliding blocks game where blocks represent cars stuck in a traffic jam on a 6 ×6 board. The goal of the game is to allow one of the cars (the target car) to exit this traffic jam by moving the other cars out of its way. In this paper, we study the problem of finding difficult initial configurations for this game. An initial configuration is difficult if the number of car moves necessary to exit the target car is high. To solve the problem, we model the game in propositional logic and we apply symbolic model-checking techniques to study the huge graph of configurations that underlies the game. On the positive side, we show that this huge graph (containing 3.6 ·1010 vertices) can be completely analyzed using symbolic model-checking techniques with reasonable computing resources. We have classified every possible initial configuration of the game according to the length of its shortest solution. On the negative side, we prove a general theorem that shows some limits of symbolic model-checking methods for board games. The result explains why some natural modeling of board games leads to the explosion of the size of symbolic data-structures.

## References

1. 1.
Baldamus, M., Schneider, K., Wenz, M., Ziller, R.: Can American Checkers be Solved by Means of Symbolic Model Checking? In: Workshop on Formal Methods Elsewhere, Technical Report 00-11, pp. 3–17. University of Kent at Cantebury, UK (2000)Google Scholar
2. 2.
Bryant, R.E.: On the Complexity of VLSI Implementations and Graph Representations of Boolean Functions with Application to Integer Multiplication. IEEE Transactions on Computers 40(2), 205–213 (1991)
3. 3.
Bryant, R.E.: Graph-based Algorithms for Boolean Function Manipulation. IEEE Transactions on Computers 35(8), 677–691 (1986)
4. 4.
Burch, J.R., Clarke, E.M., McMillan, K.L., Dill, D.L.: Symbolic Model Checking: 1020 States and Beyond. In: Proceedings of the Fifth Annual IEEE Symposium on Logic in Computer Science, pp. 1–33. IEEE Computer Society Press, Los Alamitos (1990)Google Scholar
5. 5.
Cimatti, A., Clarke, E., Giunchiglia, E., Giunchiglia, F., Pistore, M., Roveri, M., Sebastiani, R.: NuSMV 2: An OpenSource Tool for Symbolic Model Checking. In: Proceedings of the International Conference on Computer-Aided Verification (2002)Google Scholar
6. 6.
Flake, G.W., Baum, E.B.: R$$\textsc{ush}$$ H$$\textsc{our}$$ is PSPACE-complete, or Why You Should Generously Tip Parking Lot Attendants. Theoretical Computer Science 270(1-2), 895–911 (2002)
7. 7.
Hearn, R.A., Demaine, E.D.: PSPACE-Completeness of Sliding-Block Puzzles and Other Problems through the Nondeterministic Constraint Logic Model of Computation. Theoretical Computer Science 343(1–2), 72–96 (2005)
8. 8.
Holzmann, G.J.: SPIN Model Checker, The: Primer and Reference Manual. Addison-Wesley, Boston (2004)Google Scholar
9. 9.
Meinel, C., Theobald, T.: Algorithms and Data Structures in VLSI Design: OBDD - Foundations and Applications. Springer, Heidelberg (1998)Google Scholar

## Authors and Affiliations

• Sébastien Collette
• 1