Changes

Jump to: navigation, search

Null Move Reductions

2,215 bytes added, 20:37, 29 April 2018
Created page with "'''Home * Search * Selectivity * Reductions * Null Move Reductions''' '''Null Move Reductions''',<br/> not to confused with the widespread Null Mo..."
'''[[Main Page|Home]] * [[Search]] * [[Selectivity]] * [[Reductions]] * Null Move Reductions'''

'''Null Move Reductions''',<br/>
not to confused with the widespread [[Null Move Pruning]], work similar to [[Rainer Feldmann|Feldmann's]] [[Fail-High Reductions]], but use a [[Null Move]] Search rather than static [[Evaluation|evaluation]] and reduces by a amount of '''four''' plies rather than one. [[Omid David]] and [[Nathan S. Netanyahu]] introduced so called '''Extended Null-Move Reductions''' <ref>[[Omid David]], [[Nathan S. Netanyahu]] ('''2008'''). ''[http://link.springer.com/chapter/10.1007/978-3-540-87608-3_19 Extended Null-Move Reductions]''. [[CG 2008]], [http://www.oedavid.com/pubs/nmr.pdf pdf]</ref> with an adaptive [[Depth Reduction R|R]] based on [[Depth|depth]].

If a null move [[Fail-High|fail-high]] occurs - opposed to Null Move Pruning - the search is reduced by '''four''' plies, rather than pruned. Thus, '''Null Move Reductions''' are therefor less vulnerable to [[Zugzwang]] and might even applied in (late) endings.

<pre>
if ( nullMoveAllowed && ...) {
R = depth > 6 ? 4 : 3;
makeNullMove()
score = -zwSearch(1-beta, depth-R-1) // -AlphaBeta (0-beta, 1-beta, depth-R-1)
unmakeNullMove();
if (score >= beta ) {
depth -= 4; // reduce search
if ( depth <= 0 )
return Evaluate(); // Quiescence
}
}
// continue search
</pre>
''For zwSearch, see [[Principal Variation Search#ZWS|Zero Window Search]] inside the [[Principal Variation Search]].''

=See also=
* [[Double Null Move]]
* [[Fail-High Reductions]]
* [[Null Move Observation]]
* [[Null Move Pruning]]
* [[Quiescence Search#StandPat|Standing Pat]] in [[Quiescence Search]]

=Forum Posts=
* [http://www.talkchess.com/forum/viewtopic.php?p=367283 Extended Null-Move Reductions] by [[Alvaro Cardoso]], [[CCC]], August 20, 2010
* [http://www.talkchess.com/forum/viewtopic.php?t=41104 Null move alterative in endgames] by [[Aleks Peshkov]], [[CCC]], November 16, 2011
* [http://www.talkchess.com/forum/viewtopic.php?t=56672 thoughts on null-move reduction] by [[Youri Matiounine]], [[CCC]], June 14, 2015 » [[Null Move Pruning]]

=References=
<references />

'''[[Reductions|Up one level]]'''

Navigation menu