MadChess 3.0 Beta 6f3d17a (Late Move Pruning)

I added late move pruning to MadChess 3.0 Beta. Quiet moves (not captures, pawn promotions, castling, or check) near the search horizon that are sorted near the bottom of the move list- in order words, “late” moves- are skipped. These moves are “late” because history heuristics have recorded few instances of them causing a beta cutoff. Most likely they are futile (they will not raise the score to alpha), so the engine doesn’t waste time searching them. The search only examines two quiet moves immediately next to the search horizon, five quiet moves two ply from the horizon, up to… Continue Reading

MadChess 2.0 Beta Build 074 (Tune Reductions And Pruning)

I tuned parameters related to search reductions and move pruning.  The {3, 7} in the code below means reduce the 3rd quiet move one ply, and reduce the 7th quiet move two plies. This added 20 Elo to the playing strength of MadChess 2.0 Beta. MadChess 2.0 2262 : 1600 (+738,=325,-537), 56.3 % vs. : games ( +, =, -), (%) : Diff, SD, CFS (%) Glass 1.6 : 100 ( 16, 24, 60), 28.0 : -186, 10, 0.0 RomiChess P3L : 100 ( 18, 18, 64), 27.0 : -171, 12, 0.0 OliThink 5.3.2 : 100 ( 16, 24, 60),… Continue Reading

MadChess 2.0 Beta Build 044 (Late Move Pruning)

I added late move pruning to MadChess 2.0 Beta. Moves are sorted according to the history heuristic. If a quiet move qualifies for the largest late move reduction, but is less than or equal to four moves from the search horizon, it is skipped. The move is very unlikely to cause a beta cutoff and no time is wasted searching it. This added 39 Elo to the playing strength of MadChess 2.0 Beta. MadChess 2.0 Beta is now stronger than MadChess 1.4. MadChess 2.0 2154 : 800 (+347,=162,-291), 53.5 % vs. : games ( +, =, -), (%) : Diff,… Continue Reading