will Tcec allow Stockfish with a Leela net to play?

Discussion of anything and everything relating to chess playing software and machines.

Moderators: hgm, Rebel, chrisw

noobpwnftw
Posts: 560
Joined: Sun Nov 08, 2015 11:10 pm

Re: will Tcec allow Stockfish with a Leela net to play?

Post by noobpwnftw »

Madeleine Birchfield wrote: Fri Jun 18, 2021 3:22 pm Regarding the original topic, the Stockfish team trained their own net. None of Fire, BBC, and Mayhem trained their own nets, which brings me to my next point. Why is jjoshua allowed to insert his Stein net into Allie and submit it into TCEC, while dkappe isn't allowed to insert his Night Nurse into Igel and submit it into TCEC? Both nets should either be allowed in TCEC or both should be banned. There are enough variety in neural network architectures that restricting guidelines to only NNUE is not enough for TCEC.
Simple, TCEC is invitational, impersonating a d*ck probably won't get too far over there.

Some people don't like? Get rich. :D
JohnWoe
Posts: 491
Joined: Sat Mar 02, 2013 11:31 pm

Re: will Tcec allow Stockfish with a Leela net to play?

Post by JohnWoe »

Mayhem has at least own net "nn-cb80fb9393af.nnue". I use the same naming scheme as in SF "sha256sum | head -c 12" I generated that net 3 months ago. Not interested in these 45MB nets. That net is not from Mayhem data so not unique. I have only touched the Probing code very lightly so it doesn't leek, no VLA, no UB so on trivial things. Like Fire author said NNUE and Syzygy are pretty similar. Both probe (syzygy code snatched from SF...) evaluation binaries and return evaluation. Who would want to write probing code for syzygy egtb to be really unique? I don't see TCEC as the promised land. Haven't read the rules but you need to utilize lots of cores? Tho Mayhem could be easily made to burn as many CPUs if one wishes so.

I see reusing code as a good thing. That's what good developers do all the time. Chess programming however is more competition than real programming.
AndrewGrant
Posts: 1759
Joined: Tue Apr 19, 2016 6:08 am
Location: U.S.A
Full name: Andrew Grant

Re: will Tcec allow Stockfish with a Leela net to play?

Post by AndrewGrant »

JohnWoe wrote: Fri Jun 18, 2021 8:42 pm Like Fire author said NNUE and Syzygy are pretty similar. Both probe (syzygy code snatched from SF...) evaluation binaries and return evaluation.
I disagree here. Becuase the only way for Stockfish's NNUE to be a "probing" tool, is for you to use the same architecture. You lose the ability to experiment to a large degree. You are able to add layers and extend them, but that is about it. You don't have the power to do non-quantized layers. You cannot simply add HalfKA at will.

The tools are only "Syzygy like" if you don't plan on ever straying from the beaten path. Plus, writing vector code is a valuable thing to do and learn. Its not so easy to get things done in an efficient manner.
#WeAreAllDraude #JusticeForDraude #RememberDraude #LeptirBigUltra
"Those who can't do, clone instead" - Eduard ( A real life friend, not this forum's Eduard )
connor_mcmonigle
Posts: 533
Joined: Sun Sep 06, 2020 4:40 am
Full name: Connor McMonigle

Re: will Tcec allow Stockfish with a Leela net to play?

Post by connor_mcmonigle »

JohnWoe wrote: Fri Jun 18, 2021 8:42 pm Mayhem has at least own net "nn-cb80fb9393af.nnue". I use the same naming scheme as in SF "sha256sum | head -c 12" I generated that net 3 months ago. Not interested in these 45MB nets. That net is not from Mayhem data so not unique. I have only touched the Probing code very lightly so it doesn't leek, no VLA, no UB so on trivial things. Like Fire author said NNUE and Syzygy are pretty similar. Both probe (syzygy code snatched from SF...) evaluation binaries and return evaluation. Who would want to write probing code for syzygy egtb to be really unique? I don't see TCEC as the promised land. Haven't read the rules but you need to utilize lots of cores? Tho Mayhem could be easily made to burn as many CPUs if one wishes so.

I see reusing code as a good thing. That's what good developers do all the time. Chess programming however is more competition than real programming.
Ahh, I'll correct my list to reflect this. Am I correct in understanding from your post that Mayhem is bundled with a network you trained yourself on Stockfish data? Was it trained with the Nodchip C++ training code or the nnue-pytorch code?

I also disagree. Syzygy probing code is only really of much use in the rare tricky endgame. For top engines, it has a fairly negligible impact on strength. From the perspective of playing style, it is wholly irrelevant. On the other hand, replacing your entire evaluation function with the NNUE evalution code + a Stockfish network has a massive impact on both playing strength and playing stye. In my opinion, you've effectively killed half (the other half being the search) of what made your engine unique and interesting. At the end of the day, why not go all the way and just probe Stockfish?
jhellis3
Posts: 546
Joined: Sat Aug 17, 2013 12:36 am

Re: will Tcec allow Stockfish with a Leela net to play?

Post by jhellis3 »

In my opinion, you've effectively killed half (the other half being the search) of what made your engine unique and interesting.
That is kind of the point of NNs though, to unburden oneself.
connor_mcmonigle
Posts: 533
Joined: Sun Sep 06, 2020 4:40 am
Full name: Connor McMonigle

Re: will Tcec allow Stockfish with a Leela net to play?

Post by connor_mcmonigle »

jhellis3 wrote: Fri Jun 18, 2021 9:51 pm
In my opinion, you've effectively killed half (the other half being the search) of what made your engine unique and interesting.
That is kind of the point of NNs though, to unburden oneself.
Well, you could really unburden yourself by just probing Stockfish...

It remains an open question which NN topology (input features + architecture) is optimal for chess and there exists even greater potential for diversity with neural networks than existed with classical evaluation functions. Classical evaluation functions are nothing more than one layered networks for all intents and purposes. However, no one was (publicly) copying Stockfish's evaluation function before so I don't see the difference here, really. For what it's worth, I don't think this practice is wrong, provided sufficient attribution is provided. Perhaps this even makes sense were one only interested in experimenting with search ideas, but if you're copying all the parameters, topology and implementation from Stockfish, then your engine is a Stockfish derivative (nothing wrong in that, though tournaments are unlikely to invite you). By copying another engine's evaluation function, you're killing any room for creativity w.r.t the evaluation function.
AndrewGrant
Posts: 1759
Joined: Tue Apr 19, 2016 6:08 am
Location: U.S.A
Full name: Andrew Grant

Re: will Tcec allow Stockfish with a Leela net to play?

Post by AndrewGrant »

connor_mcmonigle wrote: Fri Jun 18, 2021 11:02 pm
jhellis3 wrote: Fri Jun 18, 2021 9:51 pm
In my opinion, you've effectively killed half (the other half being the search) of what made your engine unique and interesting.
That is kind of the point of NNs though, to unburden oneself.
... However, no one was (publicly) copying Stockfish's evaluation function before so I don't see the difference here, really. For what it's worth, I don't think this practice is wrong, provided sufficient attribution is provided...
One can look at Stockfish, see an eval term named DoThisThing and think to themselves "Wow! What a good idea. Let me add that to my engine". And then you add it to your engine, it kinda works. But you add some tweaks to it to fit your needs. Maybe you limit when the term is applied, maybe you expand it, maybe you vary the value of the term over some dimension.

In this case, you can see something, take it as a starting point, and then work and fit it to your own unique engine. In the NN case ... well I cannot just go "Oh boy oh boy, I sure do like Stockfish L2 neurons 1, 4, 16, and 17. Let me snag those up". You don't borrow, you replace. If you run a Stockfish net, you are running Stockfish's evaluation function.
#WeAreAllDraude #JusticeForDraude #RememberDraude #LeptirBigUltra
"Those who can't do, clone instead" - Eduard ( A real life friend, not this forum's Eduard )
kranium
Posts: 2129
Joined: Thu May 29, 2008 10:43 am

Re: will Tcec allow Stockfish with a Leela net to play?

Post by kranium »

JohnWoe wrote: Fri Jun 18, 2021 8:42 pm Like Fire author said NNUE and Syzygy are pretty similar. Both probe (syzygy code snatched from SF...) evaluation binaries and return evaluation.
connor_mcmonigle wrote: Fri Jun 18, 2021 9:45 pm I also disagree. Syzygy probing code is only really of much use in the rare tricky endgame. For top engines, it has a fairly negligible impact on strength. From the perspective of playing style, it is wholly irrelevant. On the other hand, replacing your entire evaluation function with the NNUE evalution code + a Stockfish network has a massive impact on both playing strength and playing stye. In my opinion, you've effectively killed half (the other half being the search) of what made your engine unique and interesting. At the end of the day, why not go all the way and just probe Stockfish?
"only really of much use in the rare tricky endgame." ?

No that's wrong..
I'm not sure what syzygy implementation you're using Connor, but most engines begin probing nnue early in the game, often start of middlegame...I've seen SF even get TB hits in the opening. Check it out for yourself. The WDL info can help guide the engine's middelgame search toward a won endgame.
In other words TBs are pretty much used the whole game.

"replacing your entire evaluation function with the NNUE evalution code + a Stockfish network has a massive impact on both playing strength and playing stye"

playing style? c'mon...engine playing style is a human construct and not real or discernable at this level of play (3600-3700)


edit: I just checked - Seer doesn't support syzygy so you not understanding it kinda makes sense
connor_mcmonigle
Posts: 533
Joined: Sun Sep 06, 2020 4:40 am
Full name: Connor McMonigle

Re: will Tcec allow Stockfish with a Leela net to play?

Post by connor_mcmonigle »

kranium wrote: Fri Jun 18, 2021 11:33 pm
JohnWoe wrote: Fri Jun 18, 2021 8:42 pm Like Fire author said NNUE and Syzygy are pretty similar. Both probe (syzygy code snatched from SF...) evaluation binaries and return evaluation.
connor_mcmonigle wrote: Fri Jun 18, 2021 9:45 pm I also disagree. Syzygy probing code is only really of much use in the rare tricky endgame. For top engines, it has a fairly negligible impact on strength. From the perspective of playing style, it is wholly irrelevant. On the other hand, replacing your entire evaluation function with the NNUE evalution code + a Stockfish network has a massive impact on both playing strength and playing stye. In my opinion, you've effectively killed half (the other half being the search) of what made your engine unique and interesting. At the end of the day, why not go all the way and just probe Stockfish?
"only really of much use in the rare tricky endgame." ?

No that's wrong..
I'm not sure what syzygy implementation you're using Connor, but most engines begin probing nnue early in the game, often start of middlegame...I've seen SF even get TB hits in the opening. Check it out for yourself. The WDL info can help guide the engine's middelgame search toward a won endgame.
In other words TBs are pretty much used the whole game.

"replacing your entire evaluation function with the NNUE evalution code + a Stockfish network has a massive impact on both playing strength and playing stye"

playing style? c'mon...engine playing style is a human construct and not real or discernable at this level of play (3600-3700)


edit: I just checked - Seer doesn't support syzygy so you not understanding it kinda makes sense
Have you ever actually tried a match between Stockfish with EGTB vs. without EGTB? With 6 man EGTB, one can expect less than 10 elo. For comparison, let's try Stockfish with an evaluation function vs. without an evaluation function... oh wait, that would be stupid. They're not remotely comparable and you know it.

You're just arguing in bad faith at this point so I don't see any reason to continue this discussion.
AndrewGrant
Posts: 1759
Joined: Tue Apr 19, 2016 6:08 am
Location: U.S.A
Full name: Andrew Grant

Re: will Tcec allow Stockfish with a Leela net to play?

Post by AndrewGrant »

connor_mcmonigle wrote: Sat Jun 19, 2021 12:04 am
Have you ever actually tried a match between Stockfish with EGTB vs. without EGTB? With 6 man EGTB, one can expect less than 10 elo. For comparison, let's try Stockfish with an evaluation function vs. without an evaluation function... oh wait, that would be stupid. They're not remotely comparable and you know it.

You're just arguing in bad faith at this point so I don't see any reason to continue this discussion.
Correct on all accounts: http://chess.grantnet.us/test/11234/

And if anyone thinks a few hundred TB hits in the early game has any impact on the search tree ... well you don't have great intuition.
#WeAreAllDraude #JusticeForDraude #RememberDraude #LeptirBigUltra
"Those who can't do, clone instead" - Eduard ( A real life friend, not this forum's Eduard )