The Goering Gambit

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

Moderator: Ras

User avatar
Eelco de Groot
Posts: 4739
Joined: Sun Mar 12, 2006 2:40 am
Full name:   Eelco de Groot

Re: The Goering Gambit

Post by Eelco de Groot »

Joerg Oster wrote:Hi Eelco,

I think the main problem is too aggressive LMR.
With a slight change I get this for the initial position:

Code: Select all

info depth 20 seldepth 38 multipv 1 score cp -127 lowerbound nodes 18273277 nps 1573925 tbhits 0 time 11610 pv g5e7
info depth 20 currmove g5e7 currmovenumber 1
info depth 20 seldepth 38 multipv 1 score cp -113 lowerbound nodes 18384488 nps 1574149 tbhits 0 time 11679 pv g5e7
info depth 20 currmove g5e7 currmovenumber 1
info depth 20 seldepth 38 multipv 1 score cp -92 lowerbound nodes 18462580 nps 1574096 tbhits 0 time 11729 pv g5e7
info depth 20 currmove g5e7 currmovenumber 1
info depth 20 seldepth 38 multipv 1 score cp -60 lowerbound nodes 18648575 nps 1573719 tbhits 0 time 11850 pv g5e7
info depth 20 currmove g5e7 currmovenumber 1
info depth 20 seldepth 38 multipv 1 score cp -13 lowerbound nodes 18904091 nps 1573374 tbhits 0 time 12015 pv g5e7
info depth 20 currmove g5e7 currmovenumber 1
info depth 20 currmove d5b6 currmovenumber 2
info depth 20 currmove d5e7 currmovenumber 3
info depth 20 currmove e4e5 currmovenumber 4
info depth 20 currmove d1d3 currmovenumber 5
info depth 20 currmove f1e1 currmovenumber 6
info depth 20 currmove g5e3 currmovenumber 7
info depth 20 currmove f3h4 currmovenumber 8
info depth 20 currmove d5f6 currmovenumber 9
info depth 20 currmove g5h4 currmovenumber 10
info depth 20 currmove d5f4 currmovenumber 11
info depth 20 currmove d1d2 currmovenumber 12
info depth 20 currmove h2h4 currmovenumber 13
info depth 20 currmove d1b3 currmovenumber 14
info depth 20 currmove g2g4 currmovenumber 15
info depth 20 currmove d1e1 currmovenumber 16
info depth 20 currmove d1c1 currmovenumber 17
info depth 20 currmove h2h3 currmovenumber 18
info depth 20 currmove g2g3 currmovenumber 19
info depth 20 currmove d1e2 currmovenumber 20
info depth 20 currmove f3e5 currmovenumber 21
info depth 20 currmove f3d2 currmovenumber 22
info depth 20 currmove d1c2 currmovenumber 23
info depth 20 currmove d1a4 currmovenumber 24
info depth 20 currmove d5c3 currmovenumber 25
info depth 20 currmove a2a4 currmovenumber 26
info depth 20 currmove g5f6 currmovenumber 27
info depth 20 currmove g5h6 currmovenumber 28
info depth 20 currmove a1b1 currmovenumber 29
info depth 20 currmove a1c1 currmovenumber 30
info depth 20 currmove g5d2 currmovenumber 31
info depth 20 currmove d1b1 currmovenumber 32
info depth 20 currmove g1h1 currmovenumber 33
info depth 20 currmove d5e3 currmovenumber 34
info depth 20 currmove g5c1 currmovenumber 35
info depth 20 currmove g5f4 currmovenumber 36
info depth 20 currmove d5b4 currmovenumber 37
info depth 20 currmove f3e1 currmovenumber 38
info depth 20 currmove a2a3 currmovenumber 39
info depth 20 currmove d5c7 currmovenumber 40
info depth 20 seldepth 38 multipv 1 score cp 0 nodes 19374823 nps 1575445 tbhits 0 time 12298 pv g5e7 e8e7 f3g5 f7g8 d1h5 g7g6 d5f6 g8g7 h5h7 g7f6 e4e5 f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4d4 a1c1 a5c4 f1d1 d4c5 f3d5 c5b4 g1h1 c4b2 d5e4 b4b5 e4e2 b5a5 e2d2 a5b5 d2e2
That is looking very good Joerg! What is the change? Is this the default Stockfish with a change in LMR only, or Stockfish with your changes in verification search also?

Eelco
Debugging is twice as hard as writing the code in the first
place. Therefore, if you write the code as cleverly as possible, you
are, by definition, not smart enough to debug it.
-- Brian W. Kernighan
User avatar
Eelco de Groot
Posts: 4739
Joined: Sun Mar 12, 2006 2:40 am
Full name:   Eelco de Groot

Re: The Goering Gambit

Post by Eelco de Groot »

Lyudmil Tsvetkov wrote:
I did not consider the position at all, but I do not believe Rac1 is the only move winning here.
I guess some checks or Kh1 also win.
Yes, 22. Rfd1+ is actually better; it's Mate in 12 :) With check, so that move is subject to the check extensions again but in the PV there follows a countercheck which White has to evade, and then 29. Rb1 is not a check. 22. Kh1 appears to be a draw only.

Three best moves:

r1bq4/ppp1r3/1b1p2p1/n3P3/3k1P2/5Q2/P5PP/R4RK1 w - -

Engine: SfSkipEarlyPruning (single thread, 512 MB)
by Tord Romstad, Marco Costalba and Joona Kiiski

44 247:35 +M12 22.Rfd1+ Kc5 23.Qd5+ Kb4+ 24.Kf1 Bf5
25.Rab1+ Bxb1 26.Rxb1+ Kc3 27.Rc1+ Kb2
28.Qd2+ Ka3 29.Rb1 c5 30.Qb2+ Ka4
31.Qb5+ Ka3 32.Rb3+ Nxb3 33.Qxb3+ (13.771.583.784) 927

44 247:35 +96.01 22.Rac1 Nc4 23.Rfd1+ Kc5 24.Qd5+ Kb4+
25.Kh1 Bc5 26.Rxc4+ Ka5 27.Rxc5+ dxc5
28.Qxc5+ b5 29.Rxd8 Rd7 30.Rxd7 Bxd7
31.Qxc7+ Ka4 32.Qxd7 Kb4 33.e6 Kc5
34.e7 b4 35.Qc7+ (13.771.583.784) 927

44 247:35 0.00 22.Kh1 Be6 23.Rfd1+ Kc5 24.Rab1 Nc4
25.Qb3 a6 26.Qb4+ Kc6 27.Qa4+ Kc5
28.Qb4+ (13.771.583.784) 927
Look again at the penalty for the black king on d4: not much bigger than for a king on g7, and much lower than for a king on d1. But the location of the king on d4 means almost certain death.
No doubt that there is a King Safety issue here. But personally, I don't think you should put too much penalties in the piece square tables. The numbers should be as low as possible, and are meant to give a direction if the engine has nothing else to go on, when all king moves seem the same. (For this philosophy, it is not more than that I think, of piece square tables I refer to the Toga manual) That is not the case when the king is under attack from all sides... :)
Debugging is twice as hard as writing the code in the first
place. Therefore, if you write the code as cleverly as possible, you
are, by definition, not smart enough to debug it.
-- Brian W. Kernighan
Joerg Oster
Posts: 1001
Joined: Fri Mar 10, 2006 4:29 pm
Location: Germany
Full name: Jörg Oster

Re: The Goering Gambit

Post by Joerg Oster »

That was indeed my version with the change in verification search.
But null-move pruning doesn't seem to matter much here!

This is the actual development version with the same change in LMR:

Code: Select all

info depth 20 seldepth 36 multipv 1 score cp 0 nodes 38285461 nps 1543332 tbhits 0 time 24807 pv g5e7 e8e7 f3g5 f7g8 d1h5 g7g6 d5f6 g8g7 h5h7 g7f6 e4e5 f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4d4 a1c1 a5c4 f1d1 d4c5 f3d5 c5b4 g1h1 c4b2 d5d2 b4a4 d2c2 a4a5 c2d2 a5a6 d2e2 a6a5 e2d2
I simply re-added the condition '!dangerous' to the preconditions of LMR.
Here http://tests.stockfishchess.org/tests/v ... 72cf4733b9 is the patch from Gary, which passed both time controls.

I am pretty sure, re-adding this condition would not pass. But I wonder if this would be also true for not so fast tc, like 5 min +1s or longer. Imho, changes in search should also be tested in SMP-mode and at much longer tc than currently. Even 60+0.05 is in fact bullet play!
Jörg Oster
bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: The Goering Gambit

Post by bob »

Lyudmil Tsvetkov wrote:
Eelco de Groot wrote:I think Uri is on the right track the engines think that the king can walk out of the checks by capturing Ke4xd4

Stockfish 101214 by Tord Romstad, Marco Costalba and Joona Kiiski
position fen [d]r1bq4/ppp1r2Q/1b1p1kp1/n3P1N1/3P4/8/P4PPP/R4RK1 b - -
go depth 20
info depth 1 seldepth 1 multipv 1 score cp 471 nodes 130 nps 43333 tbhits 0 time
3 pv f6g5 f2f4 g5f5
info depth 2 seldepth 3 multipv 1 score cp 422 nodes 250 nps 62500 tbhits 0 time
4 pv f6g5 f2f4 g5f5 h7h3 f5e4
info depth 3 seldepth 5 multipv 1 score cp 422 nodes 392 nps 78400 tbhits 0 time
5 pv f6g5 f2f4 g5f5 h7h3 f5e4
info depth 4 seldepth 7 multipv 1 score cp 455 nodes 1120 nps 160000 tbhits 0 ti
me 7 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4d4
info depth 5 seldepth 10 multipv 1 score cp 480 nodes 2234 nps 248222 tbhits 0 t
ime 9 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4d4 a1d1 d4c4 g1h1
info depth 6 seldepth 11 multipv 1 score cp 421 nodes 4019 nps 287071 tbhits 0 t
ime 14 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4d4 a1c1 a5c4 f1d1 d4c5
info depth 7 seldepth 11 multipv 1 score cp 421 nodes 5060 nps 297647 tbhits 0 t
ime 17 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4d4 a1c1 a5c4 f1d1 d4c5
info depth 8 seldepth 12 multipv 1 score cp 442 nodes 9073 nps 362920 tbhits 0 t
ime 25 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4d4 a1c1 a5c4 e5d6 c7d6
info depth 9 seldepth 20 multipv 1 score cp 448 nodes 37547 nps 475278 tbhits 0
time 79 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4d4 a1c1 a5c4 f1d1 d4c5 f3d5 c5b4 g1h1
c4a5 c1b1 b4a3
info depth 10 seldepth 23 multipv 1 score cp 437 nodes 39567 nps 476710 tbhits 0
time 83 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4d4 a1c1 a5c4 f1d1 d4c5 f3d5 c5b4 g1h
1 c4a5 c1b1 b4a3
info depth 11 seldepth 24 multipv 1 score cp 201 nodes 52511 nps 477372 tbhits 0
time 110 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4d4 a1c1 a5c4 f1d1 d4c5 f3d5 c5b4 g1
h1 c4b2 d5b3 b4a5 b3b2
info depth 12 seldepth 24 multipv 1 score cp 194 nodes 61703 nps 478317 tbhits 0
time 129 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4d4 a1c1 a5c4 f1d1 d4c5 f3d5 c5b4 g1
h1 c4b2 d5b3 b4a5 b3b2 c8g4 e5d6
info depth 13 seldepth 29 multipv 1 score cp 128 nodes 111718 nps 553059 tbhits
0 time 202 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4d4 a1c1 a5c4 f1d1 d4c5 f3d5 c5b4 g
1h1 c4b2 d5b3 b4a5 d1d5 c7c5 b3b2 e7e6 c1b1
info depth 14 seldepth 33 multipv 1 score cp 0 nodes 255759 nps 666039 tbhits 0
time 384 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4d4 a1c1 a5c4 f1d1 d4c5 f3d5 c5b4 g1h
1 c4b2 c1b1 d8e8 b1b2 b4a4 d5b3 a4a5 b3c3 a5a6 c3d3 a6a5 d3c3
info depth 15 seldepth 33 multipv 1 score cp 0 nodes 348977 nps 700757 tbhits 0
time 498 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4d4 a1c1 a5c4 f1d1 d4c5 f3d5 c5b4 g1h
1 c4b2 c1b1 d8e8 b1b2 b4a4 d5b3 a4a5 b3c3 a5a6 c3d3 a6a5 d3c3
info depth 16 seldepth 35 multipv 1 score cp 0 nodes 420989 nps 723348 tbhits 0
time 582 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4f5 f3h3
info depth 17 seldepth 35 multipv 1 score cp 0 nodes 474936 nps 734058 tbhits 0
time 647 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4f5 f3h3
info depth 18 seldepth 35 multipv 1 score cp 0 nodes 541657 nps 745057 tbhits 0
time 727 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4f5 f3h3
info depth 19 seldepth 35 multipv 1 score cp 0 nodes 618270 nps 756756 tbhits 0
time 817 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4f5 f3h3
info depth 20 seldepth 35 multipv 1 score cp 0 nodes 728176 nps 771372 tbhits 0
time 944 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4f5 f3h3
bestmove f6g5 ponder f2f4


18. e5+ Kxg5 19. f4+ Kf5 20. Qh3+ Ke4 21. Qf3+ Kxd4 *

After 21... Kxd4 comes a quiet move 22. Rac1!, that is the hard one to find apparently. So the good news is, it is not a bug with check extensions but once again a quiet move. Stockfish sees the move a1c1 as early as depth 6! but not how good that move is...

[d]r1bq4/ppp1r3/1b1p2p1/n3P3/3k1P2/5Q2/P5PP/R4RK1 w - -
I did not consider the position at all, but I do not believe Rac1 is the only move winning here.
I guess some checks or Kh1 also win.

Look again at the penalty for the black king on d4: not much bigger than for a king on g7, and much lower than for a king on d1. But the location of the king on d4 means almost certain death.
I will try to look again, but a while back someone asked me a question about Stockfish King safety. Took a while to understand everything, but if I recall, one quirky thing I saw was that if the king goes past the 4th rank, they turned off the pawn-storm/pawn-shelter analysis. I'd have to look again, more carefully, to be certain, but that is my recollection. And here the king is certainly beyond its own 4th rank...
Joerg Oster
Posts: 1001
Joined: Fri Mar 10, 2006 4:29 pm
Location: Germany
Full name: Jörg Oster

Re: The Goering Gambit

Post by Joerg Oster »

bob wrote:
Lyudmil Tsvetkov wrote:
Eelco de Groot wrote:I think Uri is on the right track the engines think that the king can walk out of the checks by capturing Ke4xd4

Stockfish 101214 by Tord Romstad, Marco Costalba and Joona Kiiski
position fen [d]r1bq4/ppp1r2Q/1b1p1kp1/n3P1N1/3P4/8/P4PPP/R4RK1 b - -
go depth 20
info depth 1 seldepth 1 multipv 1 score cp 471 nodes 130 nps 43333 tbhits 0 time
3 pv f6g5 f2f4 g5f5
info depth 2 seldepth 3 multipv 1 score cp 422 nodes 250 nps 62500 tbhits 0 time
4 pv f6g5 f2f4 g5f5 h7h3 f5e4
info depth 3 seldepth 5 multipv 1 score cp 422 nodes 392 nps 78400 tbhits 0 time
5 pv f6g5 f2f4 g5f5 h7h3 f5e4
info depth 4 seldepth 7 multipv 1 score cp 455 nodes 1120 nps 160000 tbhits 0 ti
me 7 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4d4
info depth 5 seldepth 10 multipv 1 score cp 480 nodes 2234 nps 248222 tbhits 0 t
ime 9 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4d4 a1d1 d4c4 g1h1
info depth 6 seldepth 11 multipv 1 score cp 421 nodes 4019 nps 287071 tbhits 0 t
ime 14 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4d4 a1c1 a5c4 f1d1 d4c5
info depth 7 seldepth 11 multipv 1 score cp 421 nodes 5060 nps 297647 tbhits 0 t
ime 17 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4d4 a1c1 a5c4 f1d1 d4c5
info depth 8 seldepth 12 multipv 1 score cp 442 nodes 9073 nps 362920 tbhits 0 t
ime 25 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4d4 a1c1 a5c4 e5d6 c7d6
info depth 9 seldepth 20 multipv 1 score cp 448 nodes 37547 nps 475278 tbhits 0
time 79 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4d4 a1c1 a5c4 f1d1 d4c5 f3d5 c5b4 g1h1
c4a5 c1b1 b4a3
info depth 10 seldepth 23 multipv 1 score cp 437 nodes 39567 nps 476710 tbhits 0
time 83 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4d4 a1c1 a5c4 f1d1 d4c5 f3d5 c5b4 g1h
1 c4a5 c1b1 b4a3
info depth 11 seldepth 24 multipv 1 score cp 201 nodes 52511 nps 477372 tbhits 0
time 110 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4d4 a1c1 a5c4 f1d1 d4c5 f3d5 c5b4 g1
h1 c4b2 d5b3 b4a5 b3b2
info depth 12 seldepth 24 multipv 1 score cp 194 nodes 61703 nps 478317 tbhits 0
time 129 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4d4 a1c1 a5c4 f1d1 d4c5 f3d5 c5b4 g1
h1 c4b2 d5b3 b4a5 b3b2 c8g4 e5d6
info depth 13 seldepth 29 multipv 1 score cp 128 nodes 111718 nps 553059 tbhits
0 time 202 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4d4 a1c1 a5c4 f1d1 d4c5 f3d5 c5b4 g
1h1 c4b2 d5b3 b4a5 d1d5 c7c5 b3b2 e7e6 c1b1
info depth 14 seldepth 33 multipv 1 score cp 0 nodes 255759 nps 666039 tbhits 0
time 384 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4d4 a1c1 a5c4 f1d1 d4c5 f3d5 c5b4 g1h
1 c4b2 c1b1 d8e8 b1b2 b4a4 d5b3 a4a5 b3c3 a5a6 c3d3 a6a5 d3c3
info depth 15 seldepth 33 multipv 1 score cp 0 nodes 348977 nps 700757 tbhits 0
time 498 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4d4 a1c1 a5c4 f1d1 d4c5 f3d5 c5b4 g1h
1 c4b2 c1b1 d8e8 b1b2 b4a4 d5b3 a4a5 b3c3 a5a6 c3d3 a6a5 d3c3
info depth 16 seldepth 35 multipv 1 score cp 0 nodes 420989 nps 723348 tbhits 0
time 582 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4f5 f3h3
info depth 17 seldepth 35 multipv 1 score cp 0 nodes 474936 nps 734058 tbhits 0
time 647 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4f5 f3h3
info depth 18 seldepth 35 multipv 1 score cp 0 nodes 541657 nps 745057 tbhits 0
time 727 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4f5 f3h3
info depth 19 seldepth 35 multipv 1 score cp 0 nodes 618270 nps 756756 tbhits 0
time 817 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4f5 f3h3
info depth 20 seldepth 35 multipv 1 score cp 0 nodes 728176 nps 771372 tbhits 0
time 944 pv f6g5 f2f4 g5f5 h7h3 f5e4 h3f3 e4f5 f3h3
bestmove f6g5 ponder f2f4


18. e5+ Kxg5 19. f4+ Kf5 20. Qh3+ Ke4 21. Qf3+ Kxd4 *

After 21... Kxd4 comes a quiet move 22. Rac1!, that is the hard one to find apparently. So the good news is, it is not a bug with check extensions but once again a quiet move. Stockfish sees the move a1c1 as early as depth 6! but not how good that move is...

[d]r1bq4/ppp1r3/1b1p2p1/n3P3/3k1P2/5Q2/P5PP/R4RK1 w - -
I did not consider the position at all, but I do not believe Rac1 is the only move winning here.
I guess some checks or Kh1 also win.

Look again at the penalty for the black king on d4: not much bigger than for a king on g7, and much lower than for a king on d1. But the location of the king on d4 means almost certain death.
I will try to look again, but a while back someone asked me a question about Stockfish King safety. Took a while to understand everything, but if I recall, one quirky thing I saw was that if the king goes past the 4th rank, they turned off the pawn-storm/pawn-shelter analysis. I'd have to look again, more carefully, to be certain, but that is my recollection. And here the king is certainly beyond its own 4th rank...
That's correct, Bob.
Pawn-shelter and storming pawns are not considered for a king past the 4th rank.
Jörg Oster