Turning off 50-move draw rule in Stockfish & other engines
Posted: Sun Mar 15, 2020 2:03 pm
Is there a quick and easy way to hack the Stockfish (or other engines') code so that the 50-move draw rule can be turned off or changed (e.g. to 100 moves)? If so, can you please post here enough details that we can do it?
(Ditto for the threefold repetition rule.)
The motivation is both to look at cursed wins and to see if this helps SF find long wins it currently fails to find that still have DTZ <=100.
e.g.
(Ditto for the threefold repetition rule.)
The motivation is both to look at cursed wins and to see if this helps SF find long wins it currently fails to find that still have DTZ <=100.
e.g.
Zenmastur wrote: ↑Tue Mar 03, 2020 9:36 pm If should be noted that it's a COMPLETE waste of time to try to analyze this with ANY engine that enforces the 50-move-rule. <snip>
The problem is that a mate when it's first found is likely to be very long, MUCH longer than the minimum length mate. Then, with additional searching, the mate gets shortened when the engine finds better lines of play. This can NEVER happen if the 50-move-rule is enforced and the first mate found is over 50 moves long.
So, even if the mate is a mate in 49 AND the engine first finds a mate in 73 (for instance), instead of refining the line of play to achieve a shorter mate the engine will disregard the line of play because its over 50 moves long. If it ever finds the mate in 49, it will be by pure luck.
It would be nice if they would put an option to disable the 50-move rule for analysis. But, I'm not holding my breath! So, in the mean time, it's a waste of time to try to analyze positions like this. It's not that Stockfish can't solve it, it's prevented from solving it because of the 50-move-rule.
Uri Blass wrote: ↑Wed Mar 04, 2020 6:51 pm If you ignore the 50 move rules things are easier because there are no misleading draw scores by the 50 move rule to hide mates but I think that there still may be a problem of draw score by repetition that is not correct in the hash table because in another line there is no repetition so I suspect that there may be mates that stockfish never find even if you ignore the 50 move rule.
If the last case never happen in stockfish then it may be interesting to understand why.