Skip to content

Commit

Permalink
parent 8b67b7e
Browse files Browse the repository at this point in the history
author Tierynn Byrnes <[email protected]> 1708290806 +1000
committer Tierynn Byrnes <[email protected]> 1708638981 +1000

use current time instead of '1' for timeLeft
formula.

make timeLeft a double, timepoint seemed
unecessary since it was always casting back to double anyway.
  • Loading branch information
TierynnB committed Feb 22, 2024
1 parent 8b67b7e commit 7d0cd7b
Showing 1 changed file with 7 additions and 7 deletions.
14 changes: 7 additions & 7 deletions src/timeman.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -81,15 +81,15 @@ void TimeManagement::init(Search::LimitsType& limits,
limits.npmsec = npmsec;
}

// Maximum move horizon of 50 moves
// Maximum and default move horizon of 50 moves
int mtg = limits.movestogo ? std::min(limits.movestogo, 50) : 50;

// Make sure timeLeft is > 0 since we may use it as a divisor
// If there is a healthy increment and low mtg, timeLeft can exceed actual available
TimePoint timeLeft = std::max(limits.time[us], limits.time[us] + limits.inc[us] * (mtg - 1)
- moveOverhead * (2 + mtg));
// Make sure timeLeft is > 0 since we use it as a divisor
double timeLeft =
std::max(limits.time[us], limits.time[us] + limits.inc[us] * (mtg - 1) - moveOverhead * mtg);

// x basetime (+ z increment)
// If there is a healthy increment and low mtg, timeLeft can exceed actual available
// game time for the current move, so also cap to 20% of available game time.
if (limits.movestogo == 0)
{
Expand All @@ -102,15 +102,15 @@ void TimeManagement::init(Search::LimitsType& limits,
double maxConstant = std::max(3.4 + 3.0 * std::log10(limits.time[us] / 1000.0), 2.76);

optScale = std::min(0.0120 + std::pow(ply + 3.1, 0.44) * optConstant,
0.21 * limits.time[us] / double(timeLeft))
0.21 * limits.time[us] / timeLeft)
* optExtra;
maxScale = std::min(6.9, maxConstant + ply / 12.2);
}

// x moves in y seconds (+ z increment)
else
{
optScale = std::min((0.88 + ply / 116.4) / mtg, 0.88 * limits.time[us] / double(timeLeft));
optScale = std::min((0.88 + ply / 116.4) / mtg, 0.88 * limits.time[us] / timeLeft);
maxScale = std::min(6.3, 1.5 + 0.11 * mtg);
}

Expand Down

0 comments on commit 7d0cd7b

Please sign in to comment.