No chance

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

Moderators: hgm, Rebel, chrisw

vincenegri
Posts: 73
Joined: Wed Feb 11, 2015 9:19 am

Re: Some analysis.

Post by vincenegri »

Lyudmil Tsvetkov wrote:As Vince is a very main SF developer, just to suggest that SF has some very wrong search code, telling the engine that in a position where one side leads by a large margin in score, the other side, if there is a drawing opportunity, for example perpetual check, should quickly go for the draw.

Here this obviously fails, and that is why all SF sees initially is a draw by a perpetual check.

There is not a chess rule, that if one side leads by a very large margin in score, the other side should quickly grab the draw, if available, maybe look a bit further if there is not also a win.
If you are able to draw when in big disadvantage, chances are you might also have a win.

Nevermind.
You flatter me, Lyudmil, I am but a minor pawn in SF :)

The issue you highlight about perpetuals is a consequence of the pruning necessary to avoid an impossibly high branching factor. Normally if you are losing and find a perpetual, there is no win "to be discovered". Thus, changes which make SF perform better in specific positions like this usually result in lower Elo overall. Its the reason SF Sting and SF mate finder exist.

The cure is not to change the search code, but to improve SF's assessment of its chances in this sort of position, so that it doesn't think it has to go for a draw.

One aspect of this position that seems to be key is that Black's king is very many tempi from safety. To "evacuate", Black has to guard f7 sufficiently to move the f8 rook, then move his King from g8 to f8 to e8 to d7 at least, because of the pawn on f6 and the inability to put a bishop on e6 to guard f7.
Lyudmil Tsvetkov
Posts: 6052
Joined: Tue Jun 12, 2012 12:41 pm

Re: Some analysis.

Post by Lyudmil Tsvetkov »

George, you might take this position:

[D]1r3r2/4bpkp/1qb1p1p1/3pP1P1/p1pP1Q2/PpP2N1R/1Pn1B2P/3RB2K w - - 4 22

and offer it for engines to solve.

Any engine that does not find white win (and mate in less than 25 moves after Qf6 Bf6, I do not know how long it will take white to win if black retreats the king to g8 again, sacrificing the e7 bishop), you might call plain stupid. :)

Same message also refers to Kim...
Lyudmil Tsvetkov
Posts: 6052
Joined: Tue Jun 12, 2012 12:41 pm

Re: Some analysis.

Post by Lyudmil Tsvetkov »

Actually, if black sacrifices the bishop, white does not go into an endgame after Kg8 Qe7 Qd8, but simply plays Qf6, waiting for black to capture on f6, and following the abovementioned mating patterns.

Same after Kg8 Qe7 Ne3 Rc1 Ng4 Rh4 Rb7 Qf6

[d]5rk1/1r3p1p/1qb1pQp1/3pP1P1/p1pP2nR/PpP2N2/1P2B2P/2R1B2K b - - 0 5

I am certain white mates here even quicker, black being already a piece down, so you might call the main diagram a mate in 25.

[d]1r3r2/4bpkp/1qb1p1p1/3pP1P1/p1pP1Q2/PpP2N1R/1Pn1B2P/3RB2K w - - 0 1
So this is actually mate in 25.
Lyudmil Tsvetkov
Posts: 6052
Joined: Tue Jun 12, 2012 12:41 pm

Re: Some analysis.

Post by Lyudmil Tsvetkov »

vincenegri wrote:
Lyudmil Tsvetkov wrote:As Vince is a very main SF developer, just to suggest that SF has some very wrong search code, telling the engine that in a position where one side leads by a large margin in score, the other side, if there is a drawing opportunity, for example perpetual check, should quickly go for the draw.

Here this obviously fails, and that is why all SF sees initially is a draw by a perpetual check.

There is not a chess rule, that if one side leads by a very large margin in score, the other side should quickly grab the draw, if available, maybe look a bit further if there is not also a win.
If you are able to draw when in big disadvantage, chances are you might also have a win.

Nevermind.
You flatter me, Lyudmil, I am but a minor pawn in SF :)

The issue you highlight about perpetuals is a consequence of the pruning necessary to avoid an impossibly high branching factor. Normally if you are losing and find a perpetual, there is no win "to be discovered". Thus, changes which make SF perform better in specific positions like this usually result in lower Elo overall. Its the reason SF Sting and SF mate finder exist.

The cure is not to change the search code, but to improve SF's assessment of its chances in this sort of position, so that it doesn't think it has to go for a draw.

One aspect of this position that seems to be key is that Black's king is very many tempi from safety. To "evacuate", Black has to guard f7 sufficiently to move the f8 rook, then move his King from g8 to f8 to e8 to d7 at least, because of the pawn on f6 and the inability to put a bishop on e6 to guard f7.
Now it is already tough for me to understand all the specific terms you mention. :)

[d]1r3rk1/5p2/1qb1pPp1/3pP1NB/p1pP4/PpP4R/1Pn4P/3RB2K b - - 0 2

Look at it very well, Vince.

The main eval factor favouring white here, is the pointed white b2-c3-d4-e5-f6 chain, very long chain, and blocked at that.
While it points towards the black king, the black f7-e6-d5-c4-b3 chain points away from the white king.

That is the main distinction, and, as the chains are both very long and blocked, this brings white an additional advantage of not less than 1-1.5 full pawns.

We already talked too much about pointed chains on this forum, and some authors, like Pawel Koziol for example, even reported they made some progress with that.

Pawel even posted some code, gaining elo in Rodent, in the programming section.

So my question to you is, when are you going to implement the pointed chain concept in SF, Vince?
That is the main reason why SF lost this game.

Btw., to make use of your presence here, could you please ask Stefan to push one last try on long chain inner pawns, with half bonus, 1/16 instead of 1/8?

I tried several times via diferent channels, but no result so far.

The problem is, as you see, that SF has big problems with long and pointed chains.
User avatar
George Tsavdaris
Posts: 1627
Joined: Thu Mar 09, 2006 12:35 pm

Re: Some analysis.

Post by George Tsavdaris »

Lyudmil Tsvetkov wrote:And to avoid you the effort to post analysis that is very far removed from the actual situation on the board, here the winning lines:

Bh5 Na3 Bd2 Nb5 Nf3 a3 Bh6

[d]1r3rk1/5p2/1qb1pPpB/1n1pP2B/2pP4/ppP2N1R/1P5P/3R3K b - - 0 5
No. No a3 in the line you give. But instead black would play 27...Nxc3
[d]1r3rk1/5p2/1qb1pPp1/3pP2B/p1pP4/1pn2N1R/1P1B3P/3R3K w - - 0 28

So now after the forced 28.Bh6 Nxd1 29.Kg1 Nc3!! 30.Kf1 gxh5 31.Rxh5 Qxd4 32.Nxd4 Kh7
[d]1r3r2/5p1k/2b1pP1B/3pP2R/p1pN4/1pn5/1P5P/5K2 w - - 0 33

White has nothing more than a draw.


In case of 28.Bxc3 (instead of 28.Bh6 in the above line) then black plays 28...a3 and white has no time to create his attack for example:

•29.Bd2 Qb4 30.Bh6 Rd8 31.Rg1! Qf8 32.Bxf8 Rxf8 33.bxa3 b2 34.Nd2 Ba4 and white does not have an easy win:
[d]1r3rk1/5p2/4pPp1/3pP2B/b1pP4/P6R/1p1N3P/6RK w - - 0 35

•29.Ng5 axb2 30.Bg4 Rfc8 31.Rg1 Ra8 and white again can do nothing.
[d]1rr3k1/5p2/1qb1pPp1/3pP1N1/2pP2B1/1pB4R/1p5P/6RK b - - 0 31
After his son's birth they've asked him:
"Is it a boy or girl?"
YES! He replied.....
vincenegri
Posts: 73
Joined: Wed Feb 11, 2015 9:19 am

Re: Some analysis.

Post by vincenegri »

Lyudmil Tsvetkov wrote: The main eval factor favouring white here, is the pointed white b2-c3-d4-e5-f6 chain, very long chain, and blocked at that.
While it points towards the black king, the black f7-e6-d5-c4-b3 chain points away from the white king.

That is the main distinction, and, as the chains are both very long and blocked, this brings white an additional advantage of not less than 1-1.5 full pawns.

We already talked too much about pointed chains on this forum, and some authors, like Pawel Koziol for example, even reported they made some progress with that.

Pawel even posted some code, gaining elo in Rodent, in the programming section.

So my question to you is, when are you going to implement the pointed chain concept in SF, Vince?
That is the main reason why SF lost this game.

Btw., to make use of your presence here, could you please ask Stefan to push one last try on long chain inner pawns, with half bonus, 1/16 instead of 1/8?

I tried several times via diferent channels, but no result so far.

The problem is, as you see, that SF has big problems with long and pointed chains.
I don't think you will get another try on inner chains soon. There are sound reasons why trying the same test again and again with speculative changes to scores are frowned upon in the structure, and going down to 1/16 will make the bonus very small. Best wait for the dust to settle.

Re the long blocked chain. I think it's well understood that this structure is very favourable because it (a) constrains the king as I mentioned (b) cuts off defending pieces and (c ) stops counterplay as the queenside and centre are blocked. Moreover, this state of affairs is static, giving the attacking side a lot of time to put his pieces into position.

It would be quite easy to write a piece of code that looked for a long, blocked chain pointing at the opponent's king and give it a large bonus. What you can't predict in advance is what effect this will have in positions that are close but not identical, as the engine will suddenly want to get these sorts of positions. But that won't be enough for as you saw, even when given the White pieces, SF doesn't know how to win the position. Merely knowing that the position *is* good (statically) is only half the picture.

Personally, I think this problem and the related problem of fortress detection is one of recognising when tempo ceases to be crucial. The logic is something like this:

1) If I had 2 or 3 moves in a row here, I would be able to win easily.
2) But wait! the position is such that my opponent can only shuffle his pieces around. So I *do*, in a sense, have 2 or 3 moves in a row.
3) Therefore I should try lines where i "ignore" the opponent's moves (speaking loosely) and see what happens in that circumstance.

In your specific example, the logic would be
1) If I had several moves in a row, Rg1->Rg4->Rh4 is obviously killing
2) The wing and centre are blocked completely; so
3) Let's try Rg1 as a candidate move always, even when other moves appear more obvious.

Not so simple to code, but it's getting closer to how a human treats this sort of position.

BTW You said "SF lost this game" but I haven't seen the full score of the game. Can you post it? Was it from an engine match or against a human/centaur?
Lyudmil Tsvetkov
Posts: 6052
Joined: Tue Jun 12, 2012 12:41 pm

Re: Some analysis.

Post by Lyudmil Tsvetkov »

vincenegri wrote:
Lyudmil Tsvetkov wrote: The main eval factor favouring white here, is the pointed white b2-c3-d4-e5-f6 chain, very long chain, and blocked at that.
While it points towards the black king, the black f7-e6-d5-c4-b3 chain points away from the white king.

That is the main distinction, and, as the chains are both very long and blocked, this brings white an additional advantage of not less than 1-1.5 full pawns.

We already talked too much about pointed chains on this forum, and some authors, like Pawel Koziol for example, even reported they made some progress with that.

Pawel even posted some code, gaining elo in Rodent, in the programming section.

So my question to you is, when are you going to implement the pointed chain concept in SF, Vince?
That is the main reason why SF lost this game.

Btw., to make use of your presence here, could you please ask Stefan to push one last try on long chain inner pawns, with half bonus, 1/16 instead of 1/8?

I tried several times via diferent channels, but no result so far.

The problem is, as you see, that SF has big problems with long and pointed chains.
I don't think you will get another try on inner chains soon. There are sound reasons why trying the same test again and again with speculative changes to scores are frowned upon in the structure, and going down to 1/16 will make the bonus very small. Best wait for the dust to settle.

Re the long blocked chain. I think it's well understood that this structure is very favourable because it (a) constrains the king as I mentioned (b) cuts off defending pieces and (c ) stops counterplay as the queenside and centre are blocked. Moreover, this state of affairs is static, giving the attacking side a lot of time to put his pieces into position.

It would be quite easy to write a piece of code that looked for a long, blocked chain pointing at the opponent's king and give it a large bonus. What you can't predict in advance is what effect this will have in positions that are close but not identical, as the engine will suddenly want to get these sorts of positions. But that won't be enough for as you saw, even when given the White pieces, SF doesn't know how to win the position. Merely knowing that the position *is* good (statically) is only half the picture.

Personally, I think this problem and the related problem of fortress detection is one of recognising when tempo ceases to be crucial. The logic is something like this:

1) If I had 2 or 3 moves in a row here, I would be able to win easily.
2) But wait! the position is such that my opponent can only shuffle his pieces around. So I *do*, in a sense, have 2 or 3 moves in a row.
3) Therefore I should try lines where i "ignore" the opponent's moves (speaking loosely) and see what happens in that circumstance.

In your specific example, the logic would be
1) If I had several moves in a row, Rg1->Rg4->Rh4 is obviously killing
2) The wing and centre are blocked completely; so
3) Let's try Rg1 as a candidate move always, even when other moves appear more obvious.

Not so simple to code, but it's getting closer to how a human treats this sort of position.

BTW You said "SF lost this game" but I haven't seen the full score of the game. Can you post it? Was it from an engine match or against a human/centaur?
I frequently play such games against SF, winning, so the position on the main diagram at the start of the thread is just one of those, or closely constructed.

Yeah, the problem is both eval and search, with eval being just half of the picture, but still weighty.

Reagrding the long chain inner pawn, if you ask me, it makes very much sense to push another patch with smaller values, as the patch with 1/8 bonus performed 10 times better than the patch with 1/4 bonus. (failing after 60000 games positively in comparison to failing after just 6000 games for 1/4)

If this is not a sufficient reason to push another patch with smaller values, I do not know what is.

Even if the patch fails, we will have some further useful info.

For the time being, we know that inner pawns of long chains do provide some additional value at STC, as they score positively. It is a matter of tuning to get it right.

My original assumption for such inner pawns was also that they are due extremely low bonus, so I might even want to go to 1/32 of connected/opposed/phalanx.

The main thing is to make a distinction, while not influencing in a wrong way other important terms.

I would really be happy if someone could push such a patch, just to see what happens.
Lyudmil Tsvetkov
Posts: 6052
Joined: Tue Jun 12, 2012 12:41 pm

Re: Some analysis.

Post by Lyudmil Tsvetkov »

George Tsavdaris wrote:
Lyudmil Tsvetkov wrote:And to avoid you the effort to post analysis that is very far removed from the actual situation on the board, here the winning lines:

Bh5 Na3 Bd2 Nb5 Nf3 a3 Bh6

[d]1r3rk1/5p2/1qb1pPpB/1n1pP2B/2pP4/ppP2N1R/1P5P/3R3K b - - 0 5
No. No a3 in the line you give. But instead black would play 27...Nxc3
[d]1r3rk1/5p2/1qb1pPp1/3pP2B/p1pP4/1pn2N1R/1P1B3P/3R3K w - - 0 28

So now after the forced 28.Bh6 Nxd1 29.Kg1 Nc3!! 30.Kf1 gxh5 31.Rxh5 Qxd4 32.Nxd4 Kh7
[d]1r3r2/5p1k/2b1pP1B/3pP2R/p1pN4/1pn5/1P5P/5K2 w - - 0 33

White has nothing more than a draw.


In case of 28.Bxc3 (instead of 28.Bh6 in the above line) then black plays 28...a3 and white has no time to create his attack for example:

•29.Bd2 Qb4 30.Bh6 Rd8 31.Rg1! Qf8 32.Bxf8 Rxf8 33.bxa3 b2 34.Nd2 Ba4 and white does not have an easy win:
[d]1r3rk1/5p2/4pPp1/3pP2B/b1pP4/P6R/1p1N3P/6RK w - - 0 35

•29.Ng5 axb2 30.Bg4 Rfc8 31.Rg1 Ra8 and white again can do nothing.
[d]1rr3k1/5p2/1qb1pPp1/3pP1N1/2pP2B1/1pB4R/1p5P/6RK b - - 0 31
Will you stop that nonsense?

On Nc3, white plays of course Bc3 a3 Bd2

[d]1r3rk1/5p2/1qb1pPp1/3pP2B/2pP4/pp3N1R/1P1B3P/3R3K b - - 0 2

mating

So, it is indeed mate in 25 after Qf6. (I am not fully certain about the exact number 25, but I am pretty certain mate is achieved from 23rd to 27th move, with possibility that mate is shorter than 20 moves and longer than 30 moves being very negligeable)

So, I say, after Qf6 white mates in 25 moves.
zullil
Posts: 6442
Joined: Tue Jan 09, 2007 12:31 am
Location: PA USA
Full name: Louis Zulli

Re: Some analysis.

Post by zullil »

Lyudmil Tsvetkov wrote:
On Nc3, white plays of course Bc3 a3 Bd2

[d]1r3rk1/5p2/1qb1pPp1/3pP2B/2pP4/pp3N1R/1P1B3P/3R3K b - - 0 2

mating
SF doesn't (yet) see a mate, though it shows White winning:

Code: Select all

+4.61 29... Qb4 30. Bh6 Rfc8 31. Nh4 Qf8 32. Bxf8 Kxf8 33. Nxg6+ Ke8 34. Ne7 Rc7 35. Bxf7+ Kd7 36. bxa3 Ba4 37. Rc3 Rcb7 38. Rb1 b2 39. Ng6 Bd1 40. Rxd1 b1=Q 41. Rxb1 Rxb1+ 42. Kg2 R1b2+ 43. Kg3 R2b3 44. Rxb3 cxb3 45. Nf4 Rb6 46. Bxe6+ Rxe6 47. f7 b2 48. f8=Q b1=Q 49. Nxe6 Kxe6 50. Qe8+ Kf5 51. Qf7+ Kg5 52. h4+ Kh6 53. Qxd5 Qg1+ 54. Kh3 Qf1+ 55. Kg4 Qg1+ 56. Kf5 Qg6+ 57. Kf4 Qf7+ 58. Ke4 Qg6+ 59. Ke3 (depth 45, 0:07:48)
[EDIT] What about Qb4 in response to Bxc3?
User avatar
George Tsavdaris
Posts: 1627
Joined: Thu Mar 09, 2006 12:35 pm

Re: Some analysis.

Post by George Tsavdaris »

Lyudmil Tsvetkov wrote: Will you stop that nonsense?

On Nc3, white plays of course Bc3 a3 Bd2
Why you can't talk like a civilized person? :? I'm trying to figure out if this is a valid testposition, so there is no need to speak so aggressively for no reason.

In our position yes you are right since 29...Qb4 30. Bh6 Rd8 31. Nh4! wins.
After his son's birth they've asked him:
"Is it a boy or girl?"
YES! He replied.....