Automatic Generation of Search Engines

  • Markian Hlynka
  • Jonathan Schaeffer
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4250)


A plethora of enhancements are available to be used together with the αβ search algorithm. There are so many, that their selection and implementation is a non-trivial task, even for the expert. Every domain has its specifics which affect the search tree Even seemingly minute changes to an evaluation function can have an impact on the characteristics of a search tree. In turn, different tree characteristics must be addressed by selecting different enhancements. This paper introduces Pilot, a system for automatically selecting enhancements for αβ search. Pilot generates its own test data and then uses a greedy search to explore the space of possible enhancements. Experiments with multiple domains show differing enhancement selections. Tournament results are presented for two games to demonstrate that automatically generated αβ search performs at least on a par with what is achievable by hand-crafted search engines, but with orders of magnitude less effort in its creation.


Evaluation Function Search Engine Search Tree Automatic Generation Greedy Search 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Akl, A.G., Newborn, M.M.: The Principle Continuation and the Killer Heuristic. In: ACM Annual Conference, pp. 466–473 (1977)Google Scholar
  2. 2.
    Björnsson, Y.: Selective Depth-First Game-Tree Search. PhD thesis, University of Alberta (2002)Google Scholar
  3. 3.
    Buro, M.: Rules of Ataxx (2004),
  4. 4.
    Buro, M.: Generic Game Server (2005),
  5. 5.
    Buro, M.: ProbCut: An Effective Selective Extension of the αβ Algorithm. ICCA Journal 18(2), 71–76 (1995)MathSciNetGoogle Scholar
  6. 6.
    Cook, D.J., Varnell, R.C.: Adaptive Parallel Iterative Deepening Search. Journal of Artificial Intelligence Research 9, 167–194 (1999)MathSciNetGoogle Scholar
  7. 7.
    Fürnkranz, J.: Machine Learning in Games: A Survey. In: Fürnkranz, J., Kubat, M. (eds.) Machines that Learn to Play Games, ch. 2, pp. 11–59. Nova Science Publishers, Huntington (2001)Google Scholar
  8. 8.
    Hlynka, M., Schaeffer, J.: Pre-Searching. ICGA Journal 27(4), 203–208 (2004)Google Scholar
  9. 9.
    Hoffman, P.: Archimedes’ Revenge: The Joys and Perils of Mathematics. W. W. Norton & Company (May 1988)Google Scholar
  10. 10.
    Knuth, D.E., Moore, R.: An analysis of Alpha-Beta Pruning. Artificial Intelligence 6(4), 293–326 (1975)MATHCrossRefMathSciNetGoogle Scholar
  11. 11.
    Plaat, A.: Research Re: Search & Re-search. PhD thesis, Erasmus University, Rotterdam (June 1996)Google Scholar
  12. 12.
    Romein, J.W., Bal, H.E.: Solving Awari with Parallel Retrograde Analysis. IEEE Computer 36(10), 26–33 (2003)Google Scholar
  13. 13.
    Schaeffer, J.: The History Heuristic and Alpha-Beta Search Enhancements in Practice. IEEE Transactions on Pattern Analysis and Machine Intelligence PAMI-11(11), 1203–1212 (1989)CrossRefGoogle Scholar
  14. 14.
    Schaeffer, J.: One Jump Ahead. Springer, New York (1997)Google Scholar
  15. 15.
    Schaeffer, J.: A Gamut of Games. AI Magazine 22(3), 29–46 (2001)Google Scholar
  16. 16.
    Schaeffer, J., Hlynka, M., Jussila, V.: Temporal Difference Learning Applied to a High Performance Game. In: International Joint Conference on Artificial Intelligence (IJCAI 2001), pp. 529–534 (2001)Google Scholar
  17. 17.
    Schaeffer, J., Plaat, A.: New Advances in Alpha-Beta Searching. In: ACM Computer Science Conference, pp. 124–130 (1996)Google Scholar
  18. 18.
    Schaeffer, J., Plaat, A., Junghanns, A.: Unifying Single-Agent and Two-Player Search. Information Sciences 135(3-4), 151–175 (2001)MATHCrossRefGoogle Scholar
  19. 19.
    Zillions Development Corporation. Zillions of Games – Unlimited Board Games & Puzzles (1998–2005),

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Markian Hlynka
    • 1
  • Jonathan Schaeffer
    • 1
  1. 1.Department of Computing ScienceUniversity of AlbertaEdmonton, AlbertaCanada

Personalised recommendations