Alex2262 / AltairChessEngine

A strong chess engine made in c++
MIT License
56 stars 5 forks source link

datagen.h #166

Closed Negatil07 closed 7 months ago

Negatil07 commented 7 months ago

Please try to change on datagen.h

49 const int max_time_per_move = 200;

to..... const int max_time_per_move = 0;

tissatussa commented 7 months ago

why was 200 set ? And why should it be 0 ? I guess '0' means 'infinite' ?

btw. edit that line number 49 without the '#' because GitHub makes it into a Issue link ..

Alex2262 commented 7 months ago

Hello,

200 is an arbitrary number that denotes the maximum number of milliseconds the engine should think per move. It is a redundant measure to ensure that the node limit will not fail. In Altair, 0 would not mean infinite thinking time, but rather, no time at all, which is not meaningful for data generation.

The current maximum, 200 milliseconds is more than plenty, as it is meant to stop the engine only when the node count limit has not stopped the engine in a short enough time. It attempts to prevent search explosions, it is not the primary limit.