I added futility pruning to MadChess 2.0 Beta. In the main search, for non-capture moves, if the static score plus the futility margin is less than alpha, the move is considered too weak and is skipped. In the quiescence search, for capture moves, if the static score plus the material value of the captured piece plus the futility margin is less than alpha, the move is considered too weak and is skipped. The futility margin depends on the distance to the horizon, and is subject to other constraints, illustrated in the code below.
To Horizon | Futility Margin (centipawns) |
---|---|
<1 (Quiescence Search) | 100 |
1 | 150 |
2 | 250 |
3 | 400 |
4 | 600 |
>4 | Not Futile |
This added 54 Elo to the playing strength of MadChess 2.0 Beta.
MadChess 2.0 2004 : 800 (+322,=144,-334), 49.3 % vs. : games ( +, =, -), (%) : Diff, SD, CFS (%) BikJump v2.01 : 100 ( 18, 18, 64), 27.0 : -98, 12, 0.0 Matheus-2.3 : 100 ( 28, 17, 55), 36.5 : -75, 11, 0.0 Monarch 1.7 : 100 ( 26, 16, 58), 34.0 : -54, 13, 0.0 BigLion 2.23w : 100 ( 45, 11, 44), 50.5 : -17, 10, 5.6 Sharper 0.17 : 100 ( 50, 13, 37), 56.5 : -1, 12, 46.4 Faile 1.4 : 100 ( 42, 32, 26), 58.0 : +24, 10, 98.8 Jabba13032012 : 100 ( 54, 22, 24), 65.0 : +58, 11, 100.0 Roce 0.0390 : 100 ( 59, 15, 26), 66.5 : +123, 11, 100.0
Feature | Category | Date | Rev1 | WAC2 | Elo Rating3 | Improvement |
---|---|---|---|---|---|---|
Futility Pruning | Search | 2014 Dec 29 | 37 | 256 | 2004 | +54 |
Null Move Quiescence Recaptures |
Search | 2014 Dec 28 | 34 | 242 | 1950 | +46 |
King Safety | Evaluation | 2014 Dec 24 | 32 | 225 | 1904 | +27 |
Piece Mobility | Evaluation | 2014 Dec 16 | 29 | 225 | 1877 | +64 |
Draw By Repetition Bug | Evaluation | 2014 Dec 10 | 27 | 225 | 1813 | +47 |
Passed Pawns | Evaluation | 2014 Dec 09 | 26 | 225 | 1766 | +72 |
Time Management | Search | 2014 Dec 08 | 25 | 231 | 1694 | +24 |
Delay Move Generation Aspiration Window Bug |
Search | 2014 Dec 02 | 23 | 231 | 1670 | +44 |
MVV / LVA Move Order Draw By Insufficient Material Move List Overflow Bug |
Search | 2014 Dec 01 | 22 | 235 | 1626 | +30 |
Tapered Evaluation MG and EG Piece Location |
Evaluation | 2014 Nov 29 | 21 | 234 | 1596 | +107 |
Alpha / Beta Negamax Aspiration Windows Quiescence, Hash Material, Piece Squares |
Baseline | 2014 Nov 25 | 20 | 236 | 1489 | – |
- Subversion source code revision
- Win At Chess position test, 3 seconds per position
- Bullet chess, 2 min / game + 1 sec / move