engine/search.h¶
Search algorithms and transposition table.
Typedefs
-
using SearchInfoHook = std::function<void(const SearchIteration&)>¶
Functions
-
void clearTranspositionTable()¶
-
int getHashFull()¶
Table occupancy in permille, for the UCI
hashfullinfo field.Sampled over the first 1000 entries rather than swept, per the usual convention — the field is reported every iteration and must not cost a pass over the table.
-
int readHashEntry(int alpha, int beta, int depth)¶
-
void recordHash(int score, int depth, int hashFlag, int move)¶
-
int scoreMove(int move, int hashMove)¶
-
int staticExchangeEvaluation(int move)¶
-
void setUseSEE(bool enabled)¶
-
bool getUseSEE()¶
-
void setUseSEEOrdering(bool enabled)¶
-
bool getUseSEEOrdering()¶
-
void setUseSEEPruning(bool enabled)¶
-
bool getUseSEEPruning()¶
-
void setUsePVS(bool enabled)¶
-
bool getUsePVS()¶
-
void setUseNullMovePruning(bool enabled)¶
-
bool getUseNullMovePruning()¶
-
void setUseLMR(bool enabled)¶
-
bool getUseLMR()¶
-
void setUseFutilityPruning(bool enabled)¶
-
bool getUseFutilityPruning()¶
-
void setUseSingularExtensions(bool enabled)¶
-
bool getUseSingularExtensions()¶
-
void setUseProbCut(bool enabled)¶
-
bool getUseProbCut()¶
-
void setUseInternalIterativeDeepening(bool enabled)¶
-
bool getUseInternalIterativeDeepening()¶
-
void setUseAspirationWindows(bool enabled)¶
-
bool getUseAspirationWindows()¶
-
void setUseHistoryOrdering(bool enabled)¶
-
bool getUseHistoryOrdering()¶
-
void setUseContinuationHistory(bool enabled)¶
-
bool getUseContinuationHistory()¶
-
void setFutilityMargin(int depth, int centipawns)¶
-
int getFutilityMargin(int depth)¶
-
void setProbCutMargin(int centipawns)¶
-
int getProbCutMargin()¶
-
void setSingularMarginPerDepth(int centipawns)¶
-
int getSingularMarginPerDepth()¶
-
void setLmrBaseHundredths(int hundredths)¶
-
int getLmrBaseHundredths()¶
-
void setLmrDivisorHundredths(int hundredths)¶
-
int getLmrDivisorHundredths()¶
-
void setHashMegabytes(int megabytes)¶
-
int getHashMegabytes()¶
-
int getMaxHashMegabytes()¶
-
int getActiveHashEntries()¶
-
int isRepeating()¶
-
int repetitionCount()¶
-
bool isMateScore(int score)¶
-
std::optional<int> mateDistanceIn(int score)¶
-
void setSearchInfoHook(SearchInfoHook hook)¶
-
int quiescence(int alpha, int beta)¶
-
int negamax(int alpha, int beta, int depth)¶
-
void searchPosition(int depth)¶
Variables
-
int historyMoves[12][64]¶
-
int followPV¶
-
int scorePV¶
-
int bestMove¶
-
int mvvLVA[12][12]¶
-
int skillLevel¶
-
struct SearchIteration¶
- #include <search.h>