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

Fix time parameters for blitz games

The ideal setting for super-blitz might be something like:

    "Emergency Base Time" = 50
    "Emergency Move Time" = 5

This would give a total emergency time buffer of:

    50 + 40 * 5 = 250 ms

This setup replaces the previous half cooked hack
"Don't blunder under extreme time pressure".

Test results are very good at super blitz, but keep good even
at 60 secs.

At 5+0.05
ELO: 24.30 +-2.4 (95%) LOS: 100.0%
Total: 37802 W: 10060 L: 7420 D: 20322

At 15+0.05
ELO: 13.41 +-2.9 (95%) LOS: 100.0%
Total: 22271 W: 4853 L: 3994 D: 13424

At 60+0.05
ELO: 5.30 +-3.2 (95%) LOS: 99.9%
Total: 16000 W: 2897 L: 2653 D: 10450

No functional change.
This commit is contained in:
Joona Kiiski 2013-09-15 21:54:26 +02:00 committed by Marco Costalba
parent af750bd2ef
commit 77b5ee0117
2 changed files with 3 additions and 8 deletions

View file

@ -110,12 +110,7 @@ void TimeManager::init(const Search::LimitsType& limits, int currentPly, Color u
// Initialize to maximum values but unstablePVExtraTime that is reset
unstablePVExtraTime = 0;
optimumSearchTime = maximumSearchTime = limits.time[us]; // In msec
// Scale down emergencyBaseTime if we are under very high time pressure to
// avoid moving immediately and so blundering.
if (maximumSearchTime)
emergencyBaseTime /= std::max(emergencyBaseTime * 100 / maximumSearchTime, 1);
optimumSearchTime = maximumSearchTime = limits.time[us];
// We calculate optimum time usage for different hypothetic "moves to go"-values and choose the
// minimum of calculated search time values. Usually the greatest hypMTG gives the minimum values.

View file

@ -80,8 +80,8 @@ void init(OptionsMap& o) {
o["MultiPV"] = Option(1, 1, 500);
o["Skill Level"] = Option(20, 0, 20);
o["Emergency Move Horizon"] = Option(40, 0, 50);
o["Emergency Base Time"] = Option(200, 0, 30000);
o["Emergency Move Time"] = Option(70, 0, 5000);
o["Emergency Base Time"] = Option(50, 0, 30000);
o["Emergency Move Time"] = Option( 5, 0, 5000);
o["Minimum Thinking Time"] = Option(20, 0, 5000);
o["Slow Mover"] = Option(50, 10, 1000);
o["UCI_Chess960"] = Option(false);