official-stockfish / fishtest

The Stockfish testing framework
https://tests.stockfishchess.org/tests
270 stars 126 forks source link

Assertion in LLRcalc.py (v * w < 0) #2009

Open vondele opened 1 month ago

vondele commented 1 month ago

looking in the logs for assertion errors on an unrelated topic, this assert appeared a couple of times as well:

Mar 21 16:23:48 tests.stockfishchess.org pserve[17087]:   File "/home/fishtest/fishtest/server/fishtest/stats/LLRcalc.py", line 94, in MLE_t_value
Mar 21 16:23:48 tests.stockfishchess.org pserve[17087]:     x = secular(pdf1)
Mar 21 16:23:48 tests.stockfishchess.org pserve[17087]:   File "/home/fishtest/fishtest/server/fishtest/stats/LLRcalc.py", line 33, in secular
Mar 21 16:23:48 tests.stockfishchess.org pserve[17087]:     assert v * w < 0
Mar 21 16:23:48 tests.stockfishchess.org pserve[17087]: AssertionError:
--
Mar 21 20:28:27 tests.stockfishchess.org pserve[17087]:   File "/home/fishtest/fishtest/server/fishtest/stats/LLRcalc.py", line 94, in MLE_t_value
Mar 21 20:28:27 tests.stockfishchess.org pserve[17087]:     x = secular(pdf1)
Mar 21 20:28:27 tests.stockfishchess.org pserve[17087]:   File "/home/fishtest/fishtest/server/fishtest/stats/LLRcalc.py", line 33, in secular
Mar 21 20:28:27 tests.stockfishchess.org pserve[17087]:     assert v * w < 0
Mar 21 20:28:27 tests.stockfishchess.org pserve[17087]: AssertionError:
--
Mar 22 04:46:00 tests.stockfishchess.org pserve[17087]:   File "/home/fishtest/fishtest/server/fishtest/stats/LLRcalc.py", line 94, in MLE_t_value
Mar 22 04:46:00 tests.stockfishchess.org pserve[17087]:     x = secular(pdf1)
Mar 22 04:46:00 tests.stockfishchess.org pserve[17087]:   File "/home/fishtest/fishtest/server/fishtest/stats/LLRcalc.py", line 33, in secular
Mar 22 04:46:00 tests.stockfishchess.org pserve[17087]:     assert v * w < 0
Mar 22 04:46:00 tests.stockfishchess.org pserve[17087]: AssertionError:
vdbergh commented 1 month ago

This should happen in the beginning of the test when there are very few games and the approximations used are not valid.

I agree it is not nice. I will see if this can be handled more gracefully.