mirror of
https://github.com/sockspls/badfish
synced 2025-04-30 08:43:09 +00:00
Restore PorbCut name
Actually MultiCut is too different from current scheme. Note that neither ProbCut is exactly what we do because we try just a handful of captures instead of all moves, nevertheless it seems more in line with what we do. Suggested by Joona. No functional change.
This commit is contained in:
parent
7bdb8c9c5c
commit
62c0dc5dea
2 changed files with 6 additions and 6 deletions
|
@ -30,7 +30,7 @@ namespace {
|
||||||
EVASION, EVASIONS_S2,
|
EVASION, EVASIONS_S2,
|
||||||
QSEARCH_0, CAPTURES_S3, QUIET_CHECKS_S3,
|
QSEARCH_0, CAPTURES_S3, QUIET_CHECKS_S3,
|
||||||
QSEARCH_1, CAPTURES_S4,
|
QSEARCH_1, CAPTURES_S4,
|
||||||
MULTICUT, CAPTURES_S5,
|
PROBCUT, CAPTURES_S5,
|
||||||
RECAPTURE, CAPTURES_S6,
|
RECAPTURE, CAPTURES_S6,
|
||||||
STOP
|
STOP
|
||||||
};
|
};
|
||||||
|
@ -128,9 +128,9 @@ MovePicker::MovePicker(const Position& p, Move ttm, const HistoryStats& h, Piece
|
||||||
|
|
||||||
assert(!pos.checkers());
|
assert(!pos.checkers());
|
||||||
|
|
||||||
stage = MULTICUT;
|
stage = PROBCUT;
|
||||||
|
|
||||||
// In MultiCut we generate only captures that are better than the parent's
|
// In ProbCut we generate only captures that are better than the parent's
|
||||||
// captured piece.
|
// captured piece.
|
||||||
captureThreshold = PieceValue[MG][pt];
|
captureThreshold = PieceValue[MG][pt];
|
||||||
ttMove = (ttm && pos.pseudo_legal(ttm) ? ttm : MOVE_NONE);
|
ttMove = (ttm && pos.pseudo_legal(ttm) ? ttm : MOVE_NONE);
|
||||||
|
@ -281,7 +281,7 @@ void MovePicker::generate_next_stage() {
|
||||||
end = generate<QUIET_CHECKS>(pos, moves);
|
end = generate<QUIET_CHECKS>(pos, moves);
|
||||||
return;
|
return;
|
||||||
|
|
||||||
case EVASION: case QSEARCH_0: case QSEARCH_1: case MULTICUT: case RECAPTURE:
|
case EVASION: case QSEARCH_0: case QSEARCH_1: case PROBCUT: case RECAPTURE:
|
||||||
stage = STOP;
|
stage = STOP;
|
||||||
case STOP:
|
case STOP:
|
||||||
end = cur + 1; // Avoid another next_phase() call
|
end = cur + 1; // Avoid another next_phase() call
|
||||||
|
@ -309,7 +309,7 @@ Move MovePicker::next_move<false>() {
|
||||||
|
|
||||||
switch (stage) {
|
switch (stage) {
|
||||||
|
|
||||||
case MAIN_SEARCH: case EVASION: case QSEARCH_0: case QSEARCH_1: case MULTICUT:
|
case MAIN_SEARCH: case EVASION: case QSEARCH_0: case QSEARCH_1: case PROBCUT:
|
||||||
++cur;
|
++cur;
|
||||||
return ttMove;
|
return ttMove;
|
||||||
|
|
||||||
|
|
|
@ -659,7 +659,7 @@ namespace {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Step 9. Multi-Cut (skipped when in check)
|
// Step 9. ProbCut (skipped when in check)
|
||||||
// If we have a very good capture (i.e. SEE > seeValues[captured_piece_type])
|
// If we have a very good capture (i.e. SEE > seeValues[captured_piece_type])
|
||||||
// and a reduced search returns a value much above beta, we can (almost) safely
|
// and a reduced search returns a value much above beta, we can (almost) safely
|
||||||
// prune the previous move.
|
// prune the previous move.
|
||||||
|
|
Loading…
Add table
Reference in a new issue