Alpha-Beta with Sibling Prediction Pruning in Chess

Alpha-Beta with Sibling Prediction Pruning in Chess

Alpha-Beta with Sibling Prediction Pruning in Chess Jeroen W.T. Carolus Masters thesis Computer Science Supervisor: Prof. dr. Paul Klint Faculteit der Natuurwetenschappen, Wiskunde en Informatica University of Amsterdam Netherlands 2006 1 Table of Contents Abstract..................................................................................................................................................... 4 Organization..............................................................................................................................................4 1 Introduction.............................................................................................................................................5 1.1 Chess computer history................................................................................................................... 5 1.2 Basics...............................................................................................................................................5 1.5 Complexity...................................................................................................................................... 7 2 Overview of search algorithms............................................................................................................... 8 2.1 Minimax.......................................................................................................................................... 8 2.2 Alpha-Beta.....................................................................................................................................10 2.3 Nega Max...................................................................................................................................... 11 2.4 Transposition tables (*).................................................................................................................13 2.5 Aspiration search (*)..................................................................................................................... 15 2.6 Minimal (Null) Window Search / Principle Variation Search (*).................................................15 2.7 Iterative deepening (*)...................................................................................................................16 2.8 Best first search (*)........................................................................................................................17 2.8.1 SSS*.......................................................................................................................................17 2.8.2 MTD(f).................................................................................................................................. 18 2.9 Forward pruning............................................................................................................................18 2.9.1 Null Move heuristic (*)......................................................................................................... 19 2.9.2 ProbCut .................................................................................................................................19 2.10 Move ordering (*)....................................................................................................................... 20 2.10.1 Killer heuristic..................................................................................................................... 20 2.10.2 Refutation tables.................................................................................................................. 20 2.10.3 History heuristic...................................................................................................................20 2.11 Quiescent search..........................................................................................................................20 2.12 Horizon effect..............................................................................................................................21 2.13 Diminishing returns.....................................................................................................................22 2.14 Search methods measured........................................................................................................... 22 3 Sibling Prediction Pruning Alpha-Beta.................................................................................................24 3.1 Evaluation function....................................................................................................................... 24 3.2 Maximum difference..................................................................................................................... 26 3.3 SPP Alpha-Beta.............................................................................................................................27 3.4 Expected behavior......................................................................................................................... 30 3.4.1 Evaluation function and MPD............................................................................................... 30 3.4.1 Move ordering....................................................................................................................... 31 3.4.2 Stacking................................................................................................................................. 32 3.4.3 Balance and material..............................................................................................................32 4 Test setup.............................................................................................................................................. 32 4.1 Search algorithms for comparison.................................................................................................33 4.2 Evaluation function dependencies.................................................................................................33 4.3 The test set.....................................................................................................................................34 4.3.1 The positions..........................................................................................................................34 4.4 Measurements................................................................................................................................35 2 4.5 Correctness.................................................................................................................................... 35 4.6 Testing environment & software used...........................................................................................36 5 Results...................................................................................................................................................36 5.1 Exceptional results........................................................................................................................ 37 5.2 Presentation & Interpretation of the results...................................................................................37 5.2.1 AB vs SPP............................................................................................................................. 38 5.2.2 ABT vs AB............................................................................................................................ 38 5.2.3 SPPT vs SPP..........................................................................................................................38 5.2.4 SPPT vs ABT.........................................................................................................................39 5.3 Correctness............................................................................................................................... 39 6 Conclusions...........................................................................................................................................39 7 Future investigation...............................................................................................................................40 Acknowledgments...................................................................................................................................41 Abbreviations.......................................................................................................................................... 41 References & Bibliography.....................................................................................................................42 Appendix A, Test Results........................................................................................................................ 44 Appendix B, Positions of the test set....................................................................................................... 51 3 Abstract A lot of computation time of chess computers is spent in evaluating leafs of the game tree. Time is wasted on bad positions. In this research, a method that predicts the maximum evaluation result of sibling chess positions is defined. The idea is to prune brothers of a bad position without information loss. The resulting algorithm is a forward pruning method on leafs of the game tree, which gives correct minimax results. A maximum positional difference of the evaluation function on siblings must be correctly measured or assessed for the algorithm to work properly. The results of this thesis

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    52 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us