Skip to content
Version 12 released with new components: Null Move Pruning, and Late Move Reductions !
For now, I kept the code very simple:
- a Null Move Search is done if depth > 1 and the last null move is at least (ply * 2) distant from current node, to avoid consecutive null moves to abort search too quickly. Depth is reduced by 3, and a recheck with no null move is done with same reduction if depth was greater than 9 (zugzwang checking).
- a Late Move Reduction is applied when at least 3 legal moves have been analysed with no fail-high encountered. All subsequent nodes are analysed 1 ply less deeper.