Skip to content

Commit

Permalink
Simplify capture pruning margin formula
Browse files Browse the repository at this point in the history
Using just `PawnValueEg * depth` as Capture Prune Margin. There was a bunch
of patches that passed recently regarding captures, maybe this part of the
master code redundant? The patch was tested as a simplification:

STC:
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 20833 W: 4218 L: 4096 D: 12519
http://tests.stockfishchess.org/tests/view/5b1cf2100ebc5902ab9c6651

LTC:
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 27050 W: 3975 L: 3864 D: 19211
http://tests.stockfishchess.org/tests/view/5b1cfdc80ebc5902ab9c6776

Closes official-stockfish#1643

Bench: 4980482
  • Loading branch information
candirufish authored and snicolet committed Jun 11, 2018
1 parent 86e4675 commit 88de112
Showing 1 changed file with 1 addition and 11 deletions.
12 changes: 1 addition & 11 deletions src/search.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -71,16 +71,6 @@ namespace {
return Value((175 - 50 * improving) * d / ONE_PLY);
}

// Margin for pruning capturing moves: almost linear in depth
constexpr int CapturePruneMargin[] = { 0,
1 * PawnValueEg * 1055 / 1000,
2 * PawnValueEg * 1042 / 1000,
3 * PawnValueEg * 963 / 1000,
4 * PawnValueEg * 1038 / 1000,
5 * PawnValueEg * 950 / 1000,
6 * PawnValueEg * 930 / 1000
};

// Futility and reductions lookup tables, initialized at startup
int FutilityMoveCounts[2][16]; // [improving][depth]
int Reductions[2][2][64][64]; // [pv][improving][depth][moveNumber]
Expand Down Expand Up @@ -963,7 +953,7 @@ namespace {
}
else if ( depth < 7 * ONE_PLY // (~20 Elo)
&& !extension
&& !pos.see_ge(move, -Value(CapturePruneMargin[depth / ONE_PLY])))
&& !pos.see_ge(move, -Value(PawnValueEg * (depth / ONE_PLY))))
continue;
}

Expand Down

0 comments on commit 88de112

Please sign in to comment.