Skip to content

Commit

Permalink
Fix comments, rename variables
Browse files Browse the repository at this point in the history
Thanks everybody for the various hints in the perpetual renaming thread:
#1426

No functional change
  • Loading branch information
snicolet committed Jun 2, 2018
1 parent 6cc5614 commit a0486ec
Show file tree
Hide file tree
Showing 8 changed files with 58 additions and 61 deletions.
10 changes: 3 additions & 7 deletions src/pawns.cpp
Expand Up @@ -31,18 +31,14 @@ namespace {
#define V Value
#define S(mg, eg) make_score(mg, eg)

// Isolated pawn penalty
// Pawn penalties
constexpr Score Isolated = S(13, 16);

// Backward pawn penalty
constexpr Score Backward = S(17, 11);
constexpr Score Doubled = S(13, 40);

// Connected pawn bonus by opposed, phalanx, #support and rank
Score Connected[2][2][3][RANK_NB];

// Doubled pawn penalty
constexpr Score Doubled = S(13, 40);

// Strength of pawn shelter for our king by [distance from edge][rank].
// RANK_1 = 0 is used for files where we have no pawn, or pawn is behind our king.
constexpr Value ShelterStrength[int(FILE_NB) / 2][RANK_NB] = {
Expand All @@ -53,7 +49,7 @@ namespace {
};

// Danger of enemy pawns moving toward our king by [distance from edge][rank].
// RANK_1 = 0 is used for files where the enemy has no pawn, or their pawn
// RANK_1 = 0 is used for files where the enemy has no pawn, or their pawn
// is behind our king.
constexpr Value UnblockedStorm[int(FILE_NB) / 2][RANK_NB] = {
{ V( 25), V( 79), V(107), V( 51), V( 27), V( 0), V( 0) },
Expand Down
13 changes: 7 additions & 6 deletions src/position.cpp
Expand Up @@ -1193,14 +1193,15 @@ bool Position::has_game_cycle(int ply) const {
|| (j = H2(moveKey), cuckoo[j] == moveKey))
{
Move move = cuckooMove[j];
Square from = from_sq(move);
Square to = to_sq(move);
Square s1 = from_sq(move);
Square s2 = to_sq(move);

if (!(between_bb(from, to) & pieces()))
if (!(between_bb(s1, s2) & pieces()))
{
// Take care to reverse the move in the no-progress case (opponent to move)
if (empty(from))
move = make_move(to, from);
// In the cuckoo table, both moves Rc1c5 and Rc5c1 are stored in the same
// location. We select the legal one by reversing the move variable if necessary.
if (empty(s1))
move = make_move(s2, s1);

if (ply > i)
return true;
Expand Down
8 changes: 4 additions & 4 deletions src/position.h
Expand Up @@ -407,10 +407,10 @@ inline void Position::move_piece(Piece pc, Square from, Square to) {

// index[from] is not updated and becomes stale. This works as long as index[]
// is accessed just by known occupied squares.
Bitboard from_to_bb = SquareBB[from] ^ SquareBB[to];
byTypeBB[ALL_PIECES] ^= from_to_bb;
byTypeBB[type_of(pc)] ^= from_to_bb;
byColorBB[color_of(pc)] ^= from_to_bb;
Bitboard fromTo = SquareBB[from] ^ SquareBB[to];
byTypeBB[ALL_PIECES] ^= fromTo;
byTypeBB[type_of(pc)] ^= fromTo;
byColorBB[color_of(pc)] ^= fromTo;
board[from] = NO_PIECE;
board[to] = pc;
index[to] = index[from];
Expand Down
64 changes: 32 additions & 32 deletions src/search.cpp
Expand Up @@ -353,17 +353,17 @@ void Thread::search() {
for (RootMove& rm : rootMoves)
rm.previousScore = rm.score;

size_t PVFirst = 0;
PVLast = 0;
size_t pvFirst = 0;
pvLast = 0;

// MultiPV loop. We perform a full root search for each PV line
for (PVIdx = 0; PVIdx < multiPV && !Threads.stop; ++PVIdx)
for (pvIdx = 0; pvIdx < multiPV && !Threads.stop; ++pvIdx)
{
if (PVIdx == PVLast)
if (pvIdx == pvLast)
{
PVFirst = PVLast;
for (PVLast++; PVLast < rootMoves.size(); PVLast++)
if (rootMoves[PVLast].TBRank != rootMoves[PVFirst].TBRank)
pvFirst = pvLast;
for (pvLast++; pvLast < rootMoves.size(); pvLast++)
if (rootMoves[pvLast].tbRank != rootMoves[pvFirst].tbRank)
break;
}

Expand All @@ -373,7 +373,7 @@ void Thread::search() {
// Reset aspiration window starting size
if (rootDepth >= 5 * ONE_PLY)
{
Value previousScore = rootMoves[PVIdx].previousScore;
Value previousScore = rootMoves[pvIdx].previousScore;
delta = Value(18);
alpha = std::max(previousScore - delta,-VALUE_INFINITE);
beta = std::min(previousScore + delta, VALUE_INFINITE);
Expand All @@ -398,7 +398,7 @@ void Thread::search() {
// and we want to keep the same order for all the moves except the
// new PV that goes to the front. Note that in case of MultiPV
// search the already searched PV lines are preserved.
std::stable_sort(rootMoves.begin() + PVIdx, rootMoves.begin() + PVLast);
std::stable_sort(rootMoves.begin() + pvIdx, rootMoves.begin() + pvLast);

// If search has been stopped, we break immediately. Sorting is
// safe because RootMoves is still valid, although it refers to
Expand Down Expand Up @@ -438,10 +438,10 @@ void Thread::search() {
}

// Sort the PV lines searched so far and update the GUI
std::stable_sort(rootMoves.begin() + PVFirst, rootMoves.begin() + PVIdx + 1);
std::stable_sort(rootMoves.begin() + pvFirst, rootMoves.begin() + pvIdx + 1);

if ( mainThread
&& (Threads.stop || PVIdx + 1 == multiPV || Time.elapsed() > 3000))
&& (Threads.stop || pvIdx + 1 == multiPV || Time.elapsed() > 3000))
sync_cout << UCI::pv(rootPos, rootDepth, alpha, beta) << sync_endl;
}

Expand Down Expand Up @@ -613,7 +613,7 @@ namespace {
posKey = pos.key() ^ Key(excludedMove << 16); // Isn't a very good hash
tte = TT.probe(posKey, ttHit);
ttValue = ttHit ? value_from_tt(tte->value(), ss->ply) : VALUE_NONE;
ttMove = rootNode ? thisThread->rootMoves[thisThread->PVIdx].pv[0]
ttMove = rootNode ? thisThread->rootMoves[thisThread->pvIdx].pv[0]
: ttHit ? tte->move() : MOVE_NONE;

// At non-PV nodes we check for an early TT cutoff
Expand Down Expand Up @@ -751,7 +751,7 @@ namespace {
&& ss->staticEval >= beta - 36 * depth / ONE_PLY + 225
&& !excludedMove
&& pos.non_pawn_material(us)
&& (ss->ply > thisThread->nmp_min_ply || us != thisThread->nmp_color))
&& (ss->ply > thisThread->nmpMinPly || us != thisThread->nmpColor))
{
assert(eval - beta >= 0);

Expand All @@ -773,19 +773,19 @@ namespace {
if (nullValue >= VALUE_MATE_IN_MAX_PLY)
nullValue = beta;

if (thisThread->nmp_min_ply || (abs(beta) < VALUE_KNOWN_WIN && depth < 12 * ONE_PLY))
if (thisThread->nmpMinPly || (abs(beta) < VALUE_KNOWN_WIN && depth < 12 * ONE_PLY))
return nullValue;

assert(!thisThread->nmp_min_ply); // Recursive verification is not allowed
assert(!thisThread->nmpMinPly); // Recursive verification is not allowed

// Do verification search at high depths, with null move pruning disabled
// for us, until ply exceeds nmp_min_ply.
thisThread->nmp_min_ply = ss->ply + 3 * (depth-R) / 4 - 1;
thisThread->nmp_color = us;
// for us, until ply exceeds nmpMinPly.
thisThread->nmpMinPly = ss->ply + 3 * (depth-R) / 4 - 1;
thisThread->nmpColor = us;

Value v = search<NonPV>(pos, ss, beta-1, beta, depth-R, false);

thisThread->nmp_min_ply = 0;
thisThread->nmpMinPly = 0;

if (v >= beta)
return nullValue;
Expand Down Expand Up @@ -870,16 +870,16 @@ namespace {
// Move List. As a consequence any illegal move is also skipped. In MultiPV
// mode we also skip PV moves which have been already searched and those
// of lower "TB rank" if we are in a TB root position.
if (rootNode && !std::count(thisThread->rootMoves.begin() + thisThread->PVIdx,
thisThread->rootMoves.begin() + thisThread->PVLast, move))
if (rootNode && !std::count(thisThread->rootMoves.begin() + thisThread->pvIdx,
thisThread->rootMoves.begin() + thisThread->pvLast, move))
continue;

ss->moveCount = ++moveCount;

if (rootNode && thisThread == Threads.main() && Time.elapsed() > 3000)
sync_cout << "info depth " << depth / ONE_PLY
<< " currmove " << UCI::move(move, pos.is_chess960())
<< " currmovenumber " << moveCount + thisThread->PVIdx << sync_endl;
<< " currmovenumber " << moveCount + thisThread->pvIdx << sync_endl;
if (PvNode)
(ss+1)->pv = nullptr;

Expand Down Expand Up @@ -995,11 +995,11 @@ namespace {

if (captureOrPromotion) // (~5 Elo)
{
//Increase reduction by comparing opponent's stat score
if ( (ss-1)->statScore >= 0
// Increase reduction by comparing opponent's stat score
if ( (ss-1)->statScore >= 0
&& thisThread->captureHistory[movedPiece][to_sq(move)][type_of(pos.captured_piece())] < 0)
r += ONE_PLY;

r -= r ? ONE_PLY : DEPTH_ZERO;
}
else
Expand Down Expand Up @@ -1576,14 +1576,14 @@ string UCI::pv(const Position& pos, Depth depth, Value alpha, Value beta) {
std::stringstream ss;
TimePoint elapsed = Time.elapsed() + 1;
const RootMoves& rootMoves = pos.this_thread()->rootMoves;
size_t PVIdx = pos.this_thread()->PVIdx;
size_t pvIdx = pos.this_thread()->pvIdx;
size_t multiPV = std::min((size_t)Options["MultiPV"], rootMoves.size());
uint64_t nodesSearched = Threads.nodes_searched();
uint64_t tbHits = Threads.tb_hits() + (TB::RootInTB ? rootMoves.size() : 0);

for (size_t i = 0; i < multiPV; ++i)
{
bool updated = (i <= PVIdx && rootMoves[i].score != -VALUE_INFINITE);
bool updated = (i <= pvIdx && rootMoves[i].score != -VALUE_INFINITE);

if (depth == ONE_PLY && !updated)
continue;
Expand All @@ -1592,7 +1592,7 @@ string UCI::pv(const Position& pos, Depth depth, Value alpha, Value beta) {
Value v = updated ? rootMoves[i].score : rootMoves[i].previousScore;

bool tb = TB::RootInTB && abs(v) < VALUE_MATE - MAX_PLY;
v = tb ? rootMoves[i].TBScore : v;
v = tb ? rootMoves[i].tbScore : v;

if (ss.rdbuf()->in_avail()) // Not at first line
ss << "\n";
Expand All @@ -1603,7 +1603,7 @@ string UCI::pv(const Position& pos, Depth depth, Value alpha, Value beta) {
<< " multipv " << i + 1
<< " score " << UCI::value(v);

if (!tb && i == PVIdx)
if (!tb && i == pvIdx)
ss << (v >= beta ? " lowerbound" : v <= alpha ? " upperbound" : "");

ss << " nodes " << nodesSearched
Expand Down Expand Up @@ -1686,16 +1686,16 @@ void Tablebases::rank_root_moves(Position& pos, Search::RootMoves& rootMoves) {
{
// Sort moves according to TB rank
std::sort(rootMoves.begin(), rootMoves.end(),
[](const RootMove &a, const RootMove &b) { return a.TBRank > b.TBRank; } );
[](const RootMove &a, const RootMove &b) { return a.tbRank > b.tbRank; } );

// Probe during search only if DTZ is not available and we are winning
if (dtz_available || rootMoves[0].TBScore <= VALUE_DRAW)
if (dtz_available || rootMoves[0].tbScore <= VALUE_DRAW)
Cardinality = 0;
}
else
{
// Assign the same rank to all moves
for (auto& m : rootMoves)
m.TBRank = 0;
m.tbRank = 0;
}
}
4 changes: 2 additions & 2 deletions src/search.h
Expand Up @@ -69,8 +69,8 @@ struct RootMove {
Value score = -VALUE_INFINITE;
Value previousScore = -VALUE_INFINITE;
int selDepth = 0;
int TBRank;
Value TBScore;
int tbRank;
Value tbScore;
std::vector<Move> pv;
};

Expand Down
10 changes: 5 additions & 5 deletions src/syzygy/tbprobe.cpp
Expand Up @@ -973,7 +973,7 @@ uint8_t* set_sizes(PairsData* d, uint8_t* data) {
d->symlen.resize(number<uint16_t, LittleEndian>(data)); data += sizeof(uint16_t);
d->btree = (LR*)data;

// The comrpession scheme used is "Recursive Pairing", that replaces the most
// The compression scheme used is "Recursive Pairing", that replaces the most
// frequent adjacent pair of symbols in the source message by a new symbol,
// reevaluating the frequencies of all of the symbol pairs with respect to
// the extended alphabet, and then repeating the process.
Expand Down Expand Up @@ -1491,12 +1491,12 @@ bool Tablebases::root_probe(Position& pos, Search::RootMoves& rootMoves) {
int r = dtz > 0 ? (dtz + cnt50 <= 99 && !rep ? 1000 : 1000 - (dtz + cnt50))
: dtz < 0 ? (-dtz * 2 + cnt50 < 100 ? -1000 : -1000 + (-dtz + cnt50))
: 0;
m.TBRank = r;
m.tbRank = r;

// Determine the score to be displayed for this move. Assign at least
// 1 cp to cursed wins and let it grow to 49 cp as the positions gets
// closer to a real win.
m.TBScore = r >= bound ? VALUE_MATE - MAX_PLY - 1
m.tbScore = r >= bound ? VALUE_MATE - MAX_PLY - 1
: r > 0 ? Value((std::max( 3, r - 800) * int(PawnValueEg)) / 200)
: r == 0 ? VALUE_DRAW
: r > -bound ? Value((std::min(-3, r + 800) * int(PawnValueEg)) / 200)
Expand Down Expand Up @@ -1532,12 +1532,12 @@ bool Tablebases::root_probe_wdl(Position& pos, Search::RootMoves& rootMoves) {
if (result == FAIL)
return false;

m.TBRank = WDL_to_rank[wdl + 2];
m.tbRank = WDL_to_rank[wdl + 2];

if (!rule50)
wdl = wdl > WDLDraw ? WDLWin
: wdl < WDLDraw ? WDLLoss : WDLDraw;
m.TBScore = WDL_to_value[wdl + 2];
m.tbScore = WDL_to_value[wdl + 2];
}

return true;
Expand Down
4 changes: 2 additions & 2 deletions src/thread.cpp
Expand Up @@ -118,7 +118,7 @@ void Thread::idle_loop() {
}

/// ThreadPool::set() creates/destroys threads to match the requested number.
/// Created and launched threads wil go immediately to sleep in idle_loop.
/// Created and launched threads will go immediately to sleep in idle_loop.
/// Upon resizing, threads are recreated to allow for binding if necessary.

void ThreadPool::set(size_t requested) {
Expand Down Expand Up @@ -191,7 +191,7 @@ void ThreadPool::start_thinking(Position& pos, StateListPtr& states,

for (Thread* th : *this)
{
th->nodes = th->tbHits = th->nmp_min_ply = 0;
th->nodes = th->tbHits = th->nmpMinPly = 0;
th->rootDepth = th->completedDepth = DEPTH_ZERO;
th->rootMoves = rootMoves;
th->rootPos.set(pos.fen(), pos.is_chess960(), &setupStates->back(), th);
Expand Down
6 changes: 3 additions & 3 deletions src/thread.h
Expand Up @@ -60,9 +60,9 @@ class Thread {
Pawns::Table pawnsTable;
Material::Table materialTable;
Endgames endgames;
size_t PVIdx, PVLast;
int selDepth, nmp_min_ply;
Color nmp_color;
size_t pvIdx, pvLast;
int selDepth, nmpMinPly;
Color nmpColor;
std::atomic<uint64_t> nodes, tbHits;

Position rootPos;
Expand Down

0 comments on commit a0486ec

Please sign in to comment.