Practice

Our chess program DARKTHOUGHT relied on extended futility pruning with a cutoff margin of 6 Pawns during the 15th ICCA World Microcomputer Chess Championship (WMCC) in October 1997. DARKTHOUGHT finished the championship on a shared 4th place among 34 strong participants. Hence, the new pruning scheme already inaugurated its practical value with a successful real-life performance under tough tournament conditions.

In our quantitative experiments with all 2180 postions from the test suites ``Encyclopedia of Chess Middlegames'' (ECM, 879 positions), ``Win at Chess'' (WAC, 300 positions), and ``1001 Winning Chess Sacrifices'' (WCS, 1001 positions) extended futility pruning performed equally well. The version of DARKTHOUGHT used for the experiments was mostly identical with the one described in our article ``How DARKTHOUGHT plays chess'' [96].

DARKTHOUGHT is a fast yet sophisticated alpha-beta searcher using PVS/NEGASCOUT [51,174] with state-of-the-art enhancements like normal futility pruning, internal iterative deepening [7,184], dynamic move ordering (history+killer heuristic) [3,76,180,183,191], recursive null-move pruning [20,62,77], selective extensions [7,17], interior-node recognizers [94], and an extended transposition table [161,191]. On average, all enhancements taken together reduce the effective branching factor of DARKTHOUGHT to 2-3 and its search-tree size to roughly 55% of that of the according minimal tree [124]. Therefore, the program already generated very slim search trees without the new pruning scheme while routinely reaching search depths of 11-13 plies in normal middlegame positions at tournament time-controls.1.5

 
Table 1.1: Performance of Normal vs. Extended Futility Pruning.
Test Normal Normal Extd. Extd.  
Suite #Nodes #Solved $\Delta$Nodes $\Delta$Solved (No.)
ECM-08 1,232,004,798 552 / 879 -11.86% -1.81% (-10)
ECM-10 8,823,781,692 642 / 879 -13.41% -0.94% (-6)
ECM-12 83,443,531,950 704 / 879 -16.70% -1.14% (-8)
WAC-08 146,094,041 285 / 300 -14.10% 0.00% (0)
WAC-10 946,867,509 296 / 300 -20.38% -0.68% (-2)
WAC-12 8,998,551,515 296 / 300 -29.89% 0.00% (0)
WCS-08 750,804,397 841 / 1001 -11.86% -0.48% (-4)
WCS-10 5,398,696,585 866 / 1001 -17.22% -0.35% (-3)
WCS-12 52,801,555,626 874 / 1001 -26.58% +0.23% (+2)
Sum-08 2,128,903,236 1678 / 2180 -12.01% -0.83% (-14)
Sum-10 15,169,345,786 1804 / 2180 -15.20% -0.61% (-11)
Sum-12 145,243,639,091 1874 / 2180 -21.11% -0.32% (-6)
 

Even at fixed search depths, extended futility pruning exhibits hardly any loss of tactical strength when extd futil margin = 6 * pawn val. Yet it shrinks the search trees by additional 10%-20% in comparison with our state-of-the-art implementation of normal futility pruning. Table 1.1 gives the according performance data as obtained by searching all 2180 positions of the ECM, WAC, and WCS test suites to fixed depths of 8, 10, and 12 plies with the 1997 WMCC version of DARKTHOUGHT (see Appendix 1.3.8 for a detailed description of the exact experimental setup). The data shows that extended futility pruning scales nicely with higher search depths. The overall relative savings as counted in number of nodes visited increase from 12% at a fixed search depth of 8 plies to 21% at a fixed search depth of 12 plies. Simultaneously, the already extremely low quota of less overall solutions further decreases from 0.8% at a fixed search depth of 8 plies to 0.3% at a fixed search depth of 12 plies.

The preserved tactical strength clearly distinguishes extended futility pruning from pure razoring. As for our own experience, pure razoring greatly suffers from tactical misconceptions that often tend to delay critical findings for some search plies which in turn causes gross blunders with inacceptable frequency. Moreover, our new scheme may even be easier to implement than pure razoring.



Created by Ernst A. Heinz, Thu Dec 16 23:28:11 EST 1999