Test position: Neural net blindness.

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

Moderators: hgm, Rebel, chrisw

mwyoung
Posts: 2727
Joined: Wed May 12, 2010 10:00 pm

Re: Test position: Neural net blindness.

Post by mwyoung »

zullil wrote: Sat Feb 08, 2020 12:56 pm
mwyoung wrote: Sat Feb 08, 2020 12:55 pm
Hai wrote: Sat Feb 08, 2020 12:44 pm
mwyoung wrote: Sat Feb 08, 2020 12:06 pm [d]r7/5p1p/pR2rnp1/1p1q4/kP6/P1Q2PP1/2P4P/1K3B2 w - - 0 33

How long does it take for your NN engine to find Rxe6?



New game Line
r7/5p1p/pR2rnp1/1p1q4/kP6/P1Q2PP1/2P4P/1K3B2 w - - 0 1

Analysis by Mephisto Gideon Professional (1993) for Winboard and UCI:

33.Rxe6 fxe6 34.Kb2 Qd4 35.Qxd4 Nd5 36.Qd3 Nxb4 37.Qe4 a5
White is clearly winning: +- (10.20) Depth: 12 00:00:23 61592kN
(, 08.02.2020)
LC0 Sergio 40x512 found Rxe6 with 0 seconds.

1.Rxe6 Qxe6 2.Bh3 Qc4 3.Qxf6 a5 4.Bd7 axb4 5.Qb6 bxa3 6.Bc6
-/+ (-1.53) depth: 6 00:00:01 446N

40x512 also found the mate very fast.

How long do we need to wait for the next trained 40x512 net?
You should retest. I already tested both 40x512 nets. And they find it quick for 1 second, and change their minds. And it took a long time again to see Rxe6.
Just look at the eval he has.
Yes don't goat the test. :D
"The worst thing that can happen to a forum is a running wild attacking moderator(HGM) who is not corrected by the community." - Ed Schröder
But my words like silent raindrops fell. And echoed in the wells of silence.
Hai
Posts: 598
Joined: Sun Aug 04, 2013 1:19 pm

Re: Test position: Neural net blindness.

Post by Hai »

zullil wrote: Sat Feb 08, 2020 12:56 pm
mwyoung wrote: Sat Feb 08, 2020 12:55 pm
Hai wrote: Sat Feb 08, 2020 12:44 pm
mwyoung wrote: Sat Feb 08, 2020 12:06 pm [d]r7/5p1p/pR2rnp1/1p1q4/kP6/P1Q2PP1/2P4P/1K3B2 w - - 0 33

How long does it take for your NN engine to find Rxe6?



New game Line
r7/5p1p/pR2rnp1/1p1q4/kP6/P1Q2PP1/2P4P/1K3B2 w - - 0 1

Analysis by Mephisto Gideon Professional (1993) for Winboard and UCI:

33.Rxe6 fxe6 34.Kb2 Qd4 35.Qxd4 Nd5 36.Qd3 Nxb4 37.Qe4 a5
White is clearly winning: +- (10.20) Depth: 12 00:00:23 61592kN
(, 08.02.2020)
LC0 Sergio 40x512 found Rxe6 with 0 seconds.

1.Rxe6 Qxe6 2.Bh3 Qc4 3.Qxf6 a5 4.Bd7 axb4 5.Qb6 bxa3 6.Bc6
-/+ (-1.53) depth: 6 00:00:01 446N

40x512 also found the mate very fast.

How long do we need to wait for the next trained 40x512 net?
You should retest. I already tested both 40x512 nets. And they find it quick for 1 second, and change their minds. And it took a long time again to see Rxe6.
Just look at the eval he has.
The question was not:
What is the correct evaluation?

The question was also not:
What is the fastest mate?

The question was:
How long does it take for your NN engine to find Rxe6?

And 40x512 is the fastest one at finding Rxe6.

Of course the net is not perfectly yet.
It needs much more training.
mwyoung
Posts: 2727
Joined: Wed May 12, 2010 10:00 pm

Re: Test position: Neural net blindness.

Post by mwyoung »

Hai wrote: Sat Feb 08, 2020 1:19 pm
zullil wrote: Sat Feb 08, 2020 12:56 pm
mwyoung wrote: Sat Feb 08, 2020 12:55 pm
Hai wrote: Sat Feb 08, 2020 12:44 pm
mwyoung wrote: Sat Feb 08, 2020 12:06 pm [d]r7/5p1p/pR2rnp1/1p1q4/kP6/P1Q2PP1/2P4P/1K3B2 w - - 0 33

How long does it take for your NN engine to find Rxe6?



New game Line
r7/5p1p/pR2rnp1/1p1q4/kP6/P1Q2PP1/2P4P/1K3B2 w - - 0 1

Analysis by Mephisto Gideon Professional (1993) for Winboard and UCI:

33.Rxe6 fxe6 34.Kb2 Qd4 35.Qxd4 Nd5 36.Qd3 Nxb4 37.Qe4 a5
White is clearly winning: +- (10.20) Depth: 12 00:00:23 61592kN
(, 08.02.2020)
LC0 Sergio 40x512 found Rxe6 with 0 seconds.

1.Rxe6 Qxe6 2.Bh3 Qc4 3.Qxf6 a5 4.Bd7 axb4 5.Qb6 bxa3 6.Bc6
-/+ (-1.53) depth: 6 00:00:01 446N

40x512 also found the mate very fast.

How long do we need to wait for the next trained 40x512 net?
You should retest. I already tested both 40x512 nets. And they find it quick for 1 second, and change their minds. And it took a long time again to see Rxe6.
Just look at the eval he has.
The question was not:
What is the correct evaluation?

The question was also not:
What is the fastest mate?

The question was:
How long does it take for your NN engine to find Rxe6?

And 40x512 is the fastest one at finding Rxe6.

Of course the net is not perfectly yet.
It needs much more training.
:lol: You got me!
Now how long to see a mate or big winning score....
In that case it is not even close to being the fastest net.

40x512 net after 3 minuets. The real results.

New game Line
r7/5p1p/pR2rnp1/1p1q4/kP6/P1Q2PP1/2P4P/1K3B2 w - - 0 1

Analysis by Lc0 v0.23.2+git.c8d9095 512 net:

33.Kb2 Qe5 34.Qxe5 Rxe5 35.Rxf6 Re3 36.Rxf7 Rxa3 37.Rxh7 Re3 38.Rg7 Kxb4 39.Rxg6 Rh8 40.Rxa6 Rxf3 41.Bd3 Rxh2 42.Rd6 Rxg3 43.Rd5 Re3 44.Bxb5 Rb3+ 45.Kc1 Rh1+ 46.Kd2 Rbb1 47.Be2 Rbg1
The position is equal: = (-0.17) Depth: 20/42 00:03:08 1103kN, tb=2364
(, 08.02.2020)
"The worst thing that can happen to a forum is a running wild attacking moderator(HGM) who is not corrected by the community." - Ed Schröder
But my words like silent raindrops fell. And echoed in the wells of silence.
jjoshua2
Posts: 99
Joined: Sat Mar 10, 2018 6:16 am

Re: Test position: Neural net blindness.

Post by jjoshua2 »

LS 13.2 pops it up from -200 eval to finding the right line with very good eval at just over 275k nodes, and gets to about cp 3000 at 500k nodes with b1b2 in 2nd place at -9 cp.

Code: Select all

info depth 13 seldepth 30 time 25965 nodes 278228 score cp 1652 hashfull 160 nps 10715 tbhits 0 multipv 2 pv b6e6 d5e6 b1b2 e6e5 c3e5 f6d7 e5d5 a8b8 d5b3
EDIT: Hmm, with tactical search params its much quicker, well before 150k its already found a win.

Code: Select all

info depth 6 seldepth 19 time 7742 nodes 141172 score cp 574 hashfull 63 nps 18234 tbhits 0 multipv 1 pv b6e6 d5e6 b1b2 e6e5 c3e5 f6d7 e5d5 a8c8 d5b3
Extreme tactical params before 100k nodes.

Code: Select all

info depth 5 seldepth 16 time 5411 nodes 96064 score cp 350 hashfull 46 nps 17753 tbhits 0 multipv 1 pv b6e6 d5e6 b1b2 e6e5 c3e5 f6d7 e5d5 a8a7 d5b3
mwyoung
Posts: 2727
Joined: Wed May 12, 2010 10:00 pm

Re: Test position: Neural net blindness.

Post by mwyoung »

jjoshua2 wrote: Sat Feb 08, 2020 5:38 pm LS 13.2 pops it up from -200 eval to finding the right line with very good eval at just over 275k nodes, and gets to about cp 3000 at 500k nodes with b1b2 in 2nd place at -9 cp.

Code: Select all

info depth 13 seldepth 30 time 25965 nodes 278228 score cp 1652 hashfull 160 nps 10715 tbhits 0 multipv 2 pv b6e6 d5e6 b1b2 e6e5 c3e5 f6d7 e5d5 a8b8 d5b3
EDIT: Hmm, with tactical search params its much quicker, well before 150k its already found a win.

Code: Select all

info depth 6 seldepth 19 time 7742 nodes 141172 score cp 574 hashfull 63 nps 18234 tbhits 0 multipv 1 pv b6e6 d5e6 b1b2 e6e5 c3e5 f6d7 e5d5 a8c8 d5b3
Extreme tactical params before 100k nodes.

Code: Select all

info depth 5 seldepth 16 time 5411 nodes 96064 score cp 350 hashfull 46 nps 17753 tbhits 0 multipv 1 pv b6e6 d5e6 b1b2 e6e5 c3e5 f6d7 e5d5 a8a7 d5b3
I was able to do the same with Lc0 + any NN. And was able to cut the time down to as low as 14 secs. By tuning for this position. Showing this is a search issue with Lc0, not a NN issue.
"The worst thing that can happen to a forum is a running wild attacking moderator(HGM) who is not corrected by the community." - Ed Schröder
But my words like silent raindrops fell. And echoed in the wells of silence.
Albert Silver
Posts: 3019
Joined: Wed Mar 08, 2006 9:57 pm
Location: Rio de Janeiro, Brazil

Re: Test position: Neural net blindness.

Post by Albert Silver »

mwyoung wrote: Sun Feb 09, 2020 12:12 am
jjoshua2 wrote: Sat Feb 08, 2020 5:38 pm LS 13.2 pops it up from -200 eval to finding the right line with very good eval at just over 275k nodes, and gets to about cp 3000 at 500k nodes with b1b2 in 2nd place at -9 cp.

Code: Select all

info depth 13 seldepth 30 time 25965 nodes 278228 score cp 1652 hashfull 160 nps 10715 tbhits 0 multipv 2 pv b6e6 d5e6 b1b2 e6e5 c3e5 f6d7 e5d5 a8b8 d5b3
EDIT: Hmm, with tactical search params its much quicker, well before 150k its already found a win.

Code: Select all

info depth 6 seldepth 19 time 7742 nodes 141172 score cp 574 hashfull 63 nps 18234 tbhits 0 multipv 1 pv b6e6 d5e6 b1b2 e6e5 c3e5 f6d7 e5d5 a8c8 d5b3
Extreme tactical params before 100k nodes.

Code: Select all

info depth 5 seldepth 16 time 5411 nodes 96064 score cp 350 hashfull 46 nps 17753 tbhits 0 multipv 1 pv b6e6 d5e6 b1b2 e6e5 c3e5 f6d7 e5d5 a8a7 d5b3
I was able to do the same with Lc0 + any NN. And was able to cut the time down to as low as 14 secs. By tuning for this position. Showing this is a search issue with Lc0, not a NN issue.
I don't agree. You can tune Houdini, SF, Rybka, and others just as easily for specific situations, but that does not mean their default settings are at fault. The settings are supposed to be tuned for optimal overall play, so cranking up the tactical sensitivity will almost certainly come at a cost. Just put the CPUCT at 5.0 or something even more absurd, and no doubt the solution will come extremely fast, but the overall Elo will drop significantly. Still, I wouldn't read too much in one position here or there. Computer chess veterans know all too well there is always some engine that will find Position X in record speed, but that doesn't mean it is the best engine.
"Tactics are the bricks and sticks that make up a game, but positional play is the architectural blueprint."
mwyoung
Posts: 2727
Joined: Wed May 12, 2010 10:00 pm

Re: Test position: Neural net blindness.

Post by mwyoung »

Albert Silver wrote: Sun Feb 09, 2020 12:49 am
mwyoung wrote: Sun Feb 09, 2020 12:12 am
jjoshua2 wrote: Sat Feb 08, 2020 5:38 pm LS 13.2 pops it up from -200 eval to finding the right line with very good eval at just over 275k nodes, and gets to about cp 3000 at 500k nodes with b1b2 in 2nd place at -9 cp.

Code: Select all

info depth 13 seldepth 30 time 25965 nodes 278228 score cp 1652 hashfull 160 nps 10715 tbhits 0 multipv 2 pv b6e6 d5e6 b1b2 e6e5 c3e5 f6d7 e5d5 a8b8 d5b3
EDIT: Hmm, with tactical search params its much quicker, well before 150k its already found a win.

Code: Select all

info depth 6 seldepth 19 time 7742 nodes 141172 score cp 574 hashfull 63 nps 18234 tbhits 0 multipv 1 pv b6e6 d5e6 b1b2 e6e5 c3e5 f6d7 e5d5 a8c8 d5b3
Extreme tactical params before 100k nodes.

Code: Select all

info depth 5 seldepth 16 time 5411 nodes 96064 score cp 350 hashfull 46 nps 17753 tbhits 0 multipv 1 pv b6e6 d5e6 b1b2 e6e5 c3e5 f6d7 e5d5 a8a7 d5b3
I was able to do the same with Lc0 + any NN. And was able to cut the time down to as low as 14 secs. By tuning for this position. Showing this is a search issue with Lc0, not a NN issue.
I don't agree. You can tune Houdini, SF, Rybka, and others just as easily for specific situations, but that does not mean their default settings are at fault. The settings are supposed to be tuned for optimal overall play, so cranking up the tactical sensitivity will almost certainly come at a cost. Just put the CPUCT at 5.0 or something even more absurd, and no doubt the solution will come extremely fast, but the overall Elo will drop significantly. Still, I wouldn't read too much in one position here or there. Computer chess veterans know all too well there is always some engine that will find Position X in record speed, but that doesn't mean it is the best engine.
I agree. I am just suggesting that Lc0 can improve the search element of the NN. And it is not the NN itself that is to blame. Lc0 search is still young, and needs refinement. A/B search took years to develop.

I agree, and did not tune CPUCT. I tune by policy temp and FPU value.
"The worst thing that can happen to a forum is a running wild attacking moderator(HGM) who is not corrected by the community." - Ed Schröder
But my words like silent raindrops fell. And echoed in the wells of silence.
OneTrickPony
Posts: 157
Joined: Tue Apr 30, 2013 1:29 am

Re: Test position: Neural net blindness.

Post by OneTrickPony »

Really nice, especially that it comes from a subvariation of a very well known human game and I am sure Kasparov would find 33.Rxe6 quickly.
One more time it looks like bug in search. I've already posted about it a few times on both Discord and Lc0 forum. There are positions where it sometimes find the solution in 3 seconds and sometimes doesn't find it even after very long time (like 10 minutes). If you run it several times with the newest T60 you will see that behavior: it's either there in like 5-10 seconds or never gets there.
Maybe it's a GUI issue or god knows what. I am running it in SCIDvsPC and usually the first run doesn't find it but then after killing the engine and restarting it it finds it instantly with +97% score. You can confirm in the task manager that it indeed kills Lc0 process in the meantime. Something is terribly wrong with the search implementation there.
It's similar with the famous Bg5 move of Alpha Zero. It sometimes finds it quickly and usually doesn't find it even after 30 minutes on 2080ti.
OneTrickPony
Posts: 157
Joined: Tue Apr 30, 2013 1:29 am

Re: Test position: Neural net blindness.

Post by OneTrickPony »

I filled an issue on Github about it:
https://github.com/LeelaChessZero/lc0/issues/1067

I've signaled it in the past and it seems to me it's not considered a serious problem by the devs. From my perspective it means running Lc0 with more than 1 thread just doesn't work and users who use it for analysis or position testing should be warned about random blunders occurring with more than one thread. I would never run any kind of analysis with 2+ threads if I knew about the extent of this behavior.
zullil
Posts: 6442
Joined: Tue Jan 09, 2007 12:31 am
Location: PA USA
Full name: Louis Zulli

Re: Test position: Neural net blindness.

Post by zullil »

OneTrickPony wrote: Sun Feb 09, 2020 10:40 am Really nice, especially that it comes from a subvariation of a very well known human game and I am sure Kasparov would find 33.Rxe6 quickly.
One more time it looks like bug in search. I've already posted about it a few times on both Discord and Lc0 forum. There are positions where it sometimes find the solution in 3 seconds and sometimes doesn't find it even after very long time (like 10 minutes). If you run it several times with the newest T60 you will see that behavior: it's either there in like 5-10 seconds or never gets there.
Maybe it's a GUI issue or god knows what. I am running it in SCIDvsPC and usually the first run doesn't find it but then after killing the engine and restarting it it finds it instantly with +97% score. You can confirm in the task manager that it indeed kills Lc0 process in the meantime. Something is terribly wrong with the search implementation there.
It's similar with the famous Bg5 move of Alpha Zero. It sometimes finds it quickly and usually doesn't find it even after 30 minutes on 2080ti.
I've never seen what you describe. You should run Lc0 from a command line, to rule out GUI-related issues.

Here are five runs of the position in this thread, with Lc0 terminated after each run. No GUI was used. Default settings, except for Backend = cudnn-fp16.

The results seem quite consistent to me...

Code: Select all

info depth 14 seldepth 49 time 85554 nodes 1429273 score cp 1057 hashfull 1000 nps 19033 tbhits 0 pv b6e6 f7e6 b1b2 f6d7 c3b3 d5b3 c2b3
info depth 13 seldepth 49 time 71474 nodes 1149444 score cp 948 hashfull 1000 nps 18549 tbhits 0 pv b6e6 f7e6 b1b2 f6d7 c3b3 d5b3 c2b3
info depth 14 seldepth 49 time 86645 nodes 1378624 score cp 1049 hashfull 1000 nps 18014 tbhits 0 pv b6e6 f7e6 b1b2 f6d7 c3b3 d5b3 c2b3
info depth 13 seldepth 48 time 69657 nodes 1157175 score cp 817 hashfull 1000 nps 18851 tbhits 0 pv b6e6 d5e6 f1b5 a6b5 b1b2 e6c4 c3b3 c4b3 c2b3
info depth 14 seldepth 49 time 85917 nodes 1425616 score cp 1057 hashfull 1000 nps 18217 tbhits 0 pv b6e6 f7e6 b1b2 f6d7 c3b3 d5b3 c2b3