mirror of
https://github.com/sockspls/badfish
synced 2025-04-29 08:13:08 +00:00
Retire NullMoveMargin
A code semplification that could even be a slight increase, anyhow is a reducing pruning patch, so it is good even at equal strenght. After 6342 games Mod - Orig: 1040 - 974 - 4328 ELO +3 (+- 3.5) Signed-off-by: Marco Costalba <mcostalba@gmail.com>
This commit is contained in:
parent
debc815352
commit
9ab0e1bb13
1 changed files with 1 additions and 10 deletions
|
@ -188,12 +188,6 @@ namespace {
|
|||
// Dynamic razoring margin based on depth
|
||||
inline Value razor_margin(Depth d) { return Value(0x200 + 0x10 * int(d)); }
|
||||
|
||||
// Step 8. Null move search with verification search
|
||||
|
||||
// Null move margin. A null move search will not be done if the static
|
||||
// evaluation of the position is more than NullMoveMargin below beta.
|
||||
const Value NullMoveMargin = Value(0x200);
|
||||
|
||||
// Maximum depth for use of dynamic threat detection when null move fails low
|
||||
const Depth ThreatDepth = 5 * ONE_PLY;
|
||||
|
||||
|
@ -1094,14 +1088,11 @@ namespace {
|
|||
return refinedValue - futility_margin(depth, 0);
|
||||
|
||||
// Step 8. Null move search with verification search (is omitted in PV nodes)
|
||||
// When we jump directly to qsearch() we do a null move only if static value is
|
||||
// at least beta. Otherwise we do a null move if static value is not more than
|
||||
// NullMoveMargin under beta.
|
||||
if ( !PvNode
|
||||
&& !ss->skipNullMove
|
||||
&& depth > ONE_PLY
|
||||
&& !isCheck
|
||||
&& refinedValue >= beta - (depth >= 4 * ONE_PLY ? NullMoveMargin : 0)
|
||||
&& refinedValue >= beta
|
||||
&& !value_is_mate(beta)
|
||||
&& pos.non_pawn_material(pos.side_to_move()))
|
||||
{
|
||||
|
|
Loading…
Add table
Reference in a new issue