Multi-Cut

a speculative pruning mechanism for chessplaying programs created by Yngvi Björnsson. The basic idea is to perform a reduced search of the first C (i.e. 3) up to M (i.e. 6) moves, to prove an expected Cut-node is not singular, that is multiple (C) moves fail high, and to prune the whole subtree in that case by returning the hard beta bound. Mark Winands' enhanced forward pruning applies Multi-Cut even at expected All-nodes, with slight modifications on a PVS framework. In his 2011 B.Sc. thesis //Investigation of Multi-Cut Pruning in Game-Tree Search//, Hrafn Eiríksson proposed to apply Multi-cut if a transposition table probe indicates a beta-cutoff without sufficient draft stored. || toc =Abstract= from the Workshop Chess and Mathematics, 2008 :
 * Home * Search * Selectivity * Pruning * Multi-Cut**
 * [[image:Master_Pine_Pruner_cropped.jpg link="http://commons.wikimedia.org/wiki/File:Master_Pine_Pruner_LACMA_M.2006.136.205a-b.jpg"]] ||~  || **Multi-Cut**,
 * Katsushika Hokusai - Master Pine Pruner ||~  ||^   ||

||

=Pseudo Code= Multi-Cut inside a null window- or zero window search of a fail-hard PVS framework, applied at expected Cut-nodes: code format="cpp" // M is the number of moves to look at when checking for mc-prune. // C is the number of cutoffs to cause an mc-prune, C < M. // R is the search depth reduction for mc-prune searches.

int zwSearch( int beta, int depth, bool cut) { if ( depth <= 0 ) return quiesce( beta-1, beta );

if ( depth >= R && cut ) { int c = 0; for ( first M moves ) score = -zwSearch( 1-beta, depth-1-R, !cut); if ( score >= beta ) { if ( ++c == C ) return beta; // mc-prune }     }   }   for ( all moves ) { score = -zwSearch( 1-beta, depth-1, !cut); if ( score >= beta ) return beta; }  return beta - 1; } code

=See also= > Multi–ProbCut
 * Enhanced Forward Pruning
 * Null Move Pruning
 * ProbCut
 * Singular Extensions
 * Uncertainty Cut-Offs

=Publications=
 * Yngvi Björnsson, Tony Marsland (**1998**). //[|Multi-cut Pruning in Alpha-Beta Search]//. CG 1998, see also MC2001 for an expanded version.
 * Yngvi Björnsson, Tony Marsland (**2000**). //Risk Management in Game-tree Pruning//. Information Sciences, Vol. 122, No. 1, [|pdf]
 * Yngvi Björnsson, Tony Marsland (**2001**). //Multi-cut Alpha-Beta Pruning in Game Tree Search.// Theoretical Computer Science, Vol. 252, [|pdf]
 * Yngvi Björnsson (**2002**). //[|Selective Depth-First Game-Tree Search]//. Ph.D. thesis, University of Alberta
 * Mark Winands, Jaap van den Herik, Jos Uiterwijk, Erik van der Werf (**2003**). //Enhanced forward pruning.// [|pdf]
 * Hrafn Eiríksson (**2011**). //Investigation of Multi-Cut Pruning in Game-Tree Search//. B.Sc. Thesis, [|Reykjavík University], [|pdf]

=Forum Posts=
 * [|Mult-cut, SE and ETC] by Ricardo Gibert, CCC, August 05, 2010 » Singular Extensions, Enhanced Transposition Cutoff
 * [|Re: Some thoughts on QS] by Vincent Diepeveen, CCC, July 30, 2012
 * [|Multi-cut and fail-soft] by Matthew R. Brades, CCC, June 30, 2016 » Fail-Soft

=External Links= > media type="youtube" key="-wYmq2Vz5yM" width="480"
 * [|Björk] - [|Big Time Sensuality], [|YouTube] Video

=References= =What links here?= include page="Multi-Cut" component="backlinks" limit="40"
 * Up one Level**