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

  • Sébastien Collette
  • Jean-François Raskin
  • Frédéric Servais
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4630)


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.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  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)CrossRefGoogle Scholar
  3. 3.
    Bryant, R.E.: Graph-based Algorithms for Boolean Function Manipulation. IEEE Transactions on Computers 35(8), 677–691 (1986)zbMATHCrossRefGoogle Scholar
  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)zbMATHCrossRefMathSciNetGoogle Scholar
  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)zbMATHCrossRefMathSciNetGoogle Scholar
  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

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Sébastien Collette
    • 1
  • Jean-François Raskin
    • 1
  • Frédéric Servais
    • 2
  1. 1.Département d’Informatique, Université Libre de Bruxelles, BrusselsBelgium
  2. 2.Department of Computer & Decision Engineering, CoDE, Université Libre de Bruxelles, BrusselsBelgium

Personalised recommendations