Checks if the futility pruning can be applied for move_score
. The main idea here is similar to score pruning, but instead of checking
if the specified capture sequence loses some material or not, it checks if the final result added to the stand_pat
and q_futility_pruning_margin
will be below alpha - if yes, then we can assume that this move is not enough good to be relevant for the search.
Entry point of the quiescence search. The main idea here is to reduce the horizon effect by processing capture sequences and eventually
make a quiet position suitable for final evaluation. context
, ply
, alpha
and beta
are provided by the leaf of the regular search.
Checks if the score pruning can be applied for move_score
. The main idea here is to omit all capture sequances, which are clearly
loosing material (move_score
is less than q_score_pruning_treshold
) and with high probability won’t improve alpha.