On Achieving History-Based Move Ordering in Adversarial Board Games Using Adaptive Data Structures

  • Spencer PolkEmail author
  • B. John Oommen
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9655)


This paper concerns the problem of enhancing the well-known alpha-beta search technique for intelligent game playing. It is a well-established principle that the alpha-beta technique benefits greatly, that is to say, achieves more efficient tree pruning, if the moves to be examined are ordered properly. This refers to placing the best moves in such a way that they are searched first. However, if the superior moves were known a priori, there would be no need to search at all. Many move ordering heuristics, such as the Killer Moves technique and the History Heuristic, have been developed in an attempt to address this problem. Formerly unrelated to game playing, the field of Adaptive Data Structures (ADSs) is concerned with the optimization of queries over time within a data structure, and provides techniques to achieve this through dynamic reordering of its internal elements, in response to queries. In earlier works, we had proposed the Threat-ADS heuristic for multi-player games, based on the concept of employing efficient ranking mechanisms provided by ADSs in the context of game playing. Based on its previous success, in this work we propose the concept of using an ADS to order moves themselves, rather than opponents. We call this new technique the History-ADS heuristic. We examine the History-ADS heuristic in both two-player and multi-player environments, and investigate its possible refinements. These involve providing a bound on the size of the ADS, based on the hypothesis that it can retain most of its benefits with a smaller list, and examining the possibility of using a different ADS for each level of the tree. We demonstrate conclusively that the History-ADS heuristic can produce drastic improvements in tree pruning in both two-player and multi-player games, and the majority of its benefits remain even when it is limited to a very small list.


Alpha-beta search Adaptive data structures Move ordering History heuristic Killer moves 


  1. 1.
    Albers, S., Westbrook, J.: Self-organizing data structures. In: Fiat, A. (ed.) Online Algorithms 1996. LNCS, vol. 1442, pp. 13–51. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  2. 2.
    Coe, R.: It’s the effect size, stupid: what effect size is and why it is important. In: Annual Conference of the British Educational Research Association, University of Exeter, Exeter, Devon (2002)Google Scholar
  3. 3.
    Corman, T.H., Leiserson, C.E., Rivest, R.L., Stein, C.: Introduction to Algorithms, 3rd edn, pp. 302–320. MIT Press, Upper Saddle River (2009)Google Scholar
  4. 4.
    Estivill-Castro, V.: Move-to-end is best for double-linked lists. In: Proceedings of the Fourth International Conference on Computing and Information, pp. 84–87 (1992)Google Scholar
  5. 5.
    Gonnet, G.H., Munro, J.I., Suwanda, H.: Towards self-organizing linear search. In: Proceedings of the Annual Symposium on Foundations of Computer Science (FOCS 1979), pp. 169–171 (1979)Google Scholar
  6. 6.
    Hester, J.H., Hirschberg, D.S.: Self-organizing linear search. ACM Comput. Surv. 17, 285–311 (1985)CrossRefGoogle Scholar
  7. 7.
    Knuth, D.E., Moore, R.W.: An analysis of alpha-beta pruning. Artifi. Intell. 6, 293–326 (1975)CrossRefzbMATHMathSciNetGoogle Scholar
  8. 8.
    Levene, M., Bar-Ilan, J.: Comparing typical opening move choices made by humans and chess engines. Computing Research Repository (2006)Google Scholar
  9. 9.
    Luckhardt, C., Irani, K.: An algorithmic solution of n-person games. In: Proceedings of the AAAI 1986, pp. 158–162 (1986)Google Scholar
  10. 10.
    Papadoupoulus, A.: Exploring optimization strategies in board game abalone for alpha-beta search. In: Proceedings of the 2012 IEEE Conference on Computational Intelligence and Games (CIG 2012), pp. 63–70 (2012)Google Scholar
  11. 11.
    Pettie, S.: Splay trees, davenport-schinzel sequences, and the deque conjecture. In: Proceedings of the Nineteenth Annual ACM-SIAM Symposium on Discrete Algorithms (2008)Google Scholar
  12. 12.
    Polk, S., Oommen, B.J.: On applying adaptive data structures to multi-player game playing. In: Bramer, M., Petridis, M. (eds.) Research and Development in Intelligent Systems XXX, pp. 125–138. Springer, Heidelberg (2013)CrossRefGoogle Scholar
  13. 13.
    Polk, S., Oommen, B.J.: On enhancing recent multi-player game playing strategies using a spectrum of adaptive data structures. In: Proceedings of the 2013 Conference on Technologies and Applications of Artificial Intelligence (TAAI 2013) (2013)Google Scholar
  14. 14.
    Polk, S., Oommen, B.J.: Enhancing history-based move ordering in game playing using adaptive data structures. In: Núñez, M., Nguyen, N.T., Camacho, D., Trawiński, B. (eds.) ICCCI 2015. LNCS, vol. 9329, pp. 225–235. Springer, Heidelberg (2015). doi: 10.1007/978-3-319-24069-5_21CrossRefGoogle Scholar
  15. 15.
    Polk, S., Oommen, B.J.: Novel AI strategies for multi-player games at intermediate board states. In: Ali, M., Kwon, Y.S., Lee, C.-H., Kim, J., Kim, Y. (eds.) IEA/AIE 2015. LNCS, vol. 9101, pp. 33–42. Springer, Heidelberg (2015)Google Scholar
  16. 16.
    Polk, S., Oommen, B.J.: Space and depth-related enhancements of the history-ADS strategy in game playing. In: Proceedings of the 2015 IEEE Conference on Computational Intelligence and Games (CIG 2015) (2015)Google Scholar
  17. 17.
    Reinefeld, A., Marsland, T.A.: Enhanced iterative-deepening search. IEEE Trans. Pattern Anal. Mach. Intell. 16, 701–710 (1994)CrossRefGoogle Scholar
  18. 18.
    Rendell, P.: A universal turing machine in conway’s game of life. In: Proceedings of the International Conference on High Performance Computing and Simulation (HPCS 2011), pp. 764–772 (2011)Google Scholar
  19. 19.
    Rivest, R.L.: On self-organizing sequential search heuristics. In: Proceedings of the IEEE Symposium on Switching and Automata Theory, pp. 63–67 (1974)Google Scholar
  20. 20.
    Russell, S.J., Norvig, P.: Artificial Intelligence: A Modern Approach, 3rd edn. Prentice-Hall Inc., Upper Saddle River (2009)zbMATHGoogle Scholar
  21. 21.
    Sacksin, S.: A Gamut of Games. Random House, New York (1969)Google Scholar
  22. 22.
    Schadd, M.P.D., Winands, M.H.M.: Best reply search for multiplayer games. IEEE Trans. Comput. Intell. AI Games 3, 57–66 (2011)CrossRefGoogle Scholar
  23. 23.
    Schaeffer, J.: The history heuristic and alpha-beta search enhancements in practice. IEEE Trans. Pattern Anal. Mach. Intell. 11, 1203–1212 (1989)CrossRefGoogle Scholar
  24. 24.
    Schrder, E.: Move ordering in rebel. Discussion of move ordering techniques used in REBEL, a powerful chess engine (2007)Google Scholar
  25. 25.
    Shannon, C.E.: Programming a computer for playing Chess. Phil. Mag. 41, 256–275 (1950)CrossRefzbMATHMathSciNetGoogle Scholar
  26. 26.
    Sleator, D.D., Tarjan, R.E.: Amortized efficiency of list update and paging rules. Commun. ACM 28, 202–208 (1985)CrossRefMathSciNetGoogle Scholar
  27. 27.
    Sturtevant, N.R.: A comparison of algorithms for multi-player games. In: Schaeffer, J., Müller, M., Björnsson, Y. (eds.) CG 2002. LNCS, vol. 2883, pp. 108–122. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  28. 28.
    Sturtevant, N., Games, M.-P.: Algorithms and Approaches. Ph.D. thesis, University of California (2003)Google Scholar
  29. 29.
    Sturtevant, N., Bowling, M.: Robust game play against unknown opponents. In: Proceedings of the International Joint Conference on Autonomous Agents and Multiagent Systems (AAMAS 2006), pp. 713–719 (2006)Google Scholar
  30. 30.
    Sturtevant, N., Zinkevich, M., Bowling, M.: Prob-Maxn: playing n-player games with opponent models. In: Proceedings of the National Conference on Artificial Intelligence (AAAI 2006), pp. 1057–1063 (2006)Google Scholar
  31. 31.
    Szita, I., Chaslot, G., Spronck, P.: Monte-carlo tree search in settlers of catan. In: van den Herik, H.J., Spronck, P. (eds.) ACG 2009. LNCS, vol. 6048, pp. 21–32. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  32. 32.
    Zuckerman, I., Felner, A., Kraus, S.: Mixing search strategies for multi-player games. In Proceedings of the Twenty-first International Joint Conferences on Artificial Intelligence (IJCAI 2009), pp. 646–651 (2009)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2016

Authors and Affiliations

  1. 1.School of Computer ScienceCarleton UniversityOttawaCanada

Personalised recommendations