Weiss 0.9 64-bit Gauntlet for CCRL 40/15

Discussion of computer chess matches and engine tournaments.

Moderators: hgm, Dann Corbit, Harvey Williamson

Gabor Szots
Posts: 1358
Joined: Sat Jul 21, 2018 7:43 am
Location: Szentendre, Hungary
Full name: Gabor Szots

Re: Weiss 0.9 64-bit Gauntlet for CCRL 40/15

Post by Gabor Szots »

Terje wrote: Thu Apr 09, 2020 7:55 pmWhat size TBs did you use, 5- or 6-men?
6.
Gabor Szots
CCRL testing group
Terje
Posts: 347
Joined: Tue Nov 19, 2019 4:34 am
Location: https://github.com/TerjeKir/weiss
Full name: Terje Kirstihagen

Re: Weiss 0.9 64-bit Gauntlet for CCRL 40/15

Post by Terje »

Gabor Szots wrote: Thu Apr 09, 2020 7:58 pm
Terje wrote: Thu Apr 09, 2020 7:55 pmWhat size TBs did you use, 5- or 6-men?
6.
I see. I looked through about a third of the games, and all the time outs happened in 5/6-men positions. I have done practically no testing with Weiss having TBs but no TB adjudication, so I assume Weiss is just not handling searching while in a TB position well. I will look into fixing this.
Terje
Posts: 347
Joined: Tue Nov 19, 2019 4:34 am
Location: https://github.com/TerjeKir/weiss
Full name: Terje Kirstihagen

Re: Weiss 0.9 64-bit Gauntlet for CCRL 40/15

Post by Terje »

Gabor Szots wrote: Tue Apr 07, 2020 8:59 pm Hi Terje,

I could not find a contact to you that's why I write here.

I have lots of time forfeits with 0.9. Weiss loses on time in approximately every 8 games. There was nothing wrong with 0.8. I read you'd modified time management but something must have gone wrong. I don't know if Graham encountered the same problem.
This is 2 minutes + 1 second increment time control. Unfortunately no logs.

Regards,
Gabor
In addition to the new time management in 0.10, I have now implemented TB probing in root so Weiss will get the move from the tablebase and play it right away without searching if the base position is in tablebase. On my machine this takes around 1ms so with the next release there should definitely not be any time issues in endgames. It should also no longer blunder (in tablebase positions) :D
Gabor Szots
Posts: 1358
Joined: Sat Jul 21, 2018 7:43 am
Location: Szentendre, Hungary
Full name: Gabor Szots

Re: Weiss 0.9 64-bit Gauntlet for CCRL 40/15

Post by Gabor Szots »

Terje wrote: Wed Apr 29, 2020 5:17 am In addition to the new time management in 0.10, I have now implemented TB probing in root so Weiss will get the move from the tablebase and play it right away without searching if the base position is in tablebase.
I'm not sure you can avoid searching in those cases. Playing the TB move immediately may not get you closer to mate and the 50-move rule may prevent winning.
Gabor Szots
CCRL testing group
Terje
Posts: 347
Joined: Tue Nov 19, 2019 4:34 am
Location: https://github.com/TerjeKir/weiss
Full name: Terje Kirstihagen

Re: Weiss 0.9 64-bit Gauntlet for CCRL 40/15

Post by Terje »

Gabor Szots wrote: Wed Apr 29, 2020 8:55 am
Terje wrote: Wed Apr 29, 2020 5:17 am In addition to the new time management in 0.10, I have now implemented TB probing in root so Weiss will get the move from the tablebase and play it right away without searching if the base position is in tablebase.
I'm not sure you can avoid searching in those cases. Playing the TB move immediately may not get you closer to mate and the 50-move rule may prevent winning.
Weiss plays the move that is fastest to zeroing the 50mr while still winning, or the slowest while drawing/losing. This results in some funny play, sacrificing material and/or taking enemy pieces that aren't relevant (because doing so zeroes the 50mr), but it keeps the correct result, even against Stockfish which does keep searching (in my limited testing).

https://syzygy-tables.info/?fen=8/2q5/6 ... _w_-_-_0_1
Giving SF white and Weiss black here results in getting mated in 50 without the pawn ever moving, as that resets the 50mr slower than letting white push the pawn. Swapping colors, SF gets mated in 86 after the pawn promotes and the two rooks are traded for the black queen. Clearly SFs defense is harder to beat for a human/engine without tablebases, but as long as both sides have them it makes no difference.