1
0
Fork 0
mirror of https://github.com/sockspls/badfish synced 2025-04-30 08:43:09 +00:00

Another small tweak to skills

No functional change.
This commit is contained in:
Marco Costalba 2015-01-31 13:22:06 +01:00
parent 60c121f3b1
commit 81d6c4a0d6
2 changed files with 9 additions and 11 deletions

View file

@ -199,7 +199,7 @@ void Search::think() {
if (RootMoves.empty())
{
RootMoves.push_back(MOVE_NONE);
RootMoves.push_back(RootMove(MOVE_NONE));
sync_cout << "info depth 0 score "
<< UCI::value(RootPos.checkers() ? -VALUE_MATE : VALUE_DRAW)
<< sync_endl;
@ -1383,15 +1383,13 @@ moves_loop: // When in check and at SpNode search starts from here
// then we choose the move with the resulting highest score.
for (size_t i = 0; i < multiPV; ++i)
{
int score = RootMoves[i].score;
// This is our magic formula
score += ( weakness * int(RootMoves[0].score - score)
+ variance * (rng.rand<unsigned>() % weakness)) / 128;
int push = ( weakness * int(RootMoves[0].score - RootMoves[i].score)
+ variance * (rng.rand<unsigned>() % weakness)) / 128;
if (score > maxScore)
if (RootMoves[i].score + push > maxScore)
{
maxScore = score;
maxScore = RootMoves[i].score + push;
best = RootMoves[i].pv[0];
}
}
@ -1444,7 +1442,7 @@ string UCI::pv(const Position& pos, Depth depth, Value alpha, Value beta) {
<< " nps " << pos.nodes_searched() * 1000 / elapsed;
if (elapsed > 1000) // Earlier makes little sense
ss << " hashfull " << TT.hashfull();
ss << " hashfull " << TT.hashfull();
ss << " tbhits " << TB::Hits
<< " time " << elapsed

View file

@ -55,15 +55,15 @@ struct Stack {
struct RootMove {
RootMove(Move m) : score(-VALUE_INFINITE), previousScore(-VALUE_INFINITE), pv(1, m) {}
explicit RootMove(Move m) : pv(1, m) {}
bool operator<(const RootMove& m) const { return score > m.score; } // Ascending sort
bool operator==(const Move& m) const { return pv[0] == m; }
void insert_pv_in_tt(Position& pos);
bool extract_ponder_from_tt(Position& pos);
Value score;
Value previousScore;
Value score = -VALUE_INFINITE;
Value previousScore = -VALUE_INFINITE;
std::vector<Move> pv;
};