m not sure if anybody has raised this point...

But since i m not satisfied with analysis of demo version, if anybody having latest version, plz tell

what "Latest Rybka" has to say about this problem???

Problem : White to play and mate in three...

Soln : 1. Ka8 and 2. Kb8

I will be happy if it finds since demo doesn't!

Also if possible tell what other engines have to say on this problem,...esp. Naum n Shredder!

But since i m not satisfied with analysis of demo version, if anybody having latest version, plz tell

what "Latest Rybka" has to say about this problem???

Problem : White to play and mate in three...

1KB5/7p/5pr1/5Nk1/6p1/8/7Q/8 w - - 0 1

Soln : 1. Ka8 and 2. Kb8

I will be happy if it finds since demo doesn't!

Also if possible tell what other engines have to say on this problem,...esp. Naum n Shredder!

1KB5/7p/5pr1/5Nk1/6p1/8/7Q/8 w - -

info depth 3 score mate 4 nodes 166 pv h2d2

info time 32 nodes 166 nps 5312

bestmove h2d2 ponder g5h5

Rybka refuses to go deeper. Even when I tell her to look for a mate in 3. :-(

Ka8/Kb8 are two zugzwang moves in a row, which is a typical problem related to nullmove. But I immediatly got this output:

Analysis by Rybka 2.3.2a 32-bit :

1.Qd2+ Kh5 2.Ng3+ Kh4 3.Qh2+ Kg5 4.Ne4#

+- (#4) Depth: 5 00:00:00

+- (#4) Depth: 8 00:00:01 77kN

In the position AFTER 1...Ka8:

Analysis by Rybka 2.3.2a 32-bit :

1...h6 2.Kb8 Rg7 3.Qxh6#

+- (#5) Depth: 5 00:00:00

+- (#3) Depth: 10 00:00:02 128kN

Analysis by Rybka 2.3.2a 32-bit :

1.Qd2+ Kh5 2.Ng3+ Kh4 3.Qh2+ Kg5 4.Ne4#

+- (#4) Depth: 5 00:00:00

+- (#4) Depth: 8 00:00:01 77kN

In the position AFTER 1...Ka8:

Analysis by Rybka 2.3.2a 32-bit :

1...h6 2.Kb8 Rg7 3.Qxh6#

+- (#5) Depth: 5 00:00:00

+- (#3) Depth: 10 00:00:02 128kN

Strange!

seems that Programmers still have some skope to improve!

what @ Naum,..?

seems that Programmers still have some skope to improve!

what @ Naum,..?

Analysis by Spike 1.2 Turin:

1.Qxh7

+- (11.06) Depth: 1 00:00:00

1.Qxh7

+- (11.06) Depth: 1 00:00:00

1.Qxh7 Kf4 2.Qxg6

+- (15.84) Depth: 2 00:00:00

1.Qxh7 Kf4 2.Qxg6

+- (15.84) Depth: 2 00:00:00

1.Qxh7 Kf4 2.Qxg6

+- (15.84) Depth: 3 00:00:00

1.Qd2+ Kh5 2.Ng3+ Kh4 3.Qh2+ Kg5 4.Ne4#

+- (#4) Depth: 3 00:00:00

1.Qd2+ Kh5 2.Ng3+ Kh4 3.Qh2+ Kg5 4.Ne4#

+- (#4) Depth: 3 00:00:00

1.Qd2+ Kh5 2.Ng3+ Kh4 3.Qh2+ Kg5 4.Ne4#

+- (#4) Depth: 4 00:00:00

1.Qd2+ Kh5 2.Ng3+ Kh4 3.Qh2+ Kg5 4.Ne4#

+- (#4) Depth: 4 00:00:00

1.Qd2+ Kh5 2.Ng3+ Kh4 3.Qh2+ Kg5 4.Ne4#

+- (#4) Depth: 5 00:00:00

1.Qd2+ Kh5 2.Ng3+ Kh4 3.Qh2+ Kg5 4.Ne4#

+- (#4) Depth: 5 00:00:00

1.Qd2+ Kh5 2.Ng3+ Kh4 3.Qh2+ Kg5 4.Ne4#

+- (#4) Depth: 6 00:00:00 21kN

1.Qd2+ Kh5 2.Ng3+ Kh4 3.Qh2+ Kg5 4.Ne4#

+- (#4) Depth: 6 00:00:00 41kN

1.Qd2+ Kh5 2.Ng3+ Kh4 3.Qh2+ Kg5 4.Ne4#

+- (#4) Depth: 7 00:00:00 55kN

1.Qd2+ Kh5 2.Ng3+ Kh4 3.Qh2+ Kg5 4.Ne4#

+- (#4) Depth: 7 00:00:01 79kN

1.Qd2+ Kh5 2.Ng3+ Kh4 3.Qh2+ Kg5 4.Ne4#

+- (#4) Depth: 8 00:00:01 86kN

1.Qd2+ Kh5 2.Ng3+ Kh4 3.Qh2+ Kg5 4.Ne4#

+- (#4) Depth: 8 00:00:01 131kN

1.Qd2+ Kh5 2.Ng3+ Kh4 3.Qh2+ Kg5 4.Ne4#

+- (#4) Depth: 9 00:00:01 146kN

1.Ka8 h6 2.Kb8 Rg7

+- (#3) Depth: 9 00:00:01 235kN

1.Ka8 h6 2.Kb8 Rg7

+- (#3) Depth: 9 00:00:01 239kN

1.Qxh7

+- (11.06) Depth: 1 00:00:00

1.Qxh7

+- (11.06) Depth: 1 00:00:00

1.Qxh7 Kf4 2.Qxg6

+- (15.84) Depth: 2 00:00:00

1.Qxh7 Kf4 2.Qxg6

+- (15.84) Depth: 2 00:00:00

1.Qxh7 Kf4 2.Qxg6

+- (15.84) Depth: 3 00:00:00

1.Qd2+ Kh5 2.Ng3+ Kh4 3.Qh2+ Kg5 4.Ne4#

+- (#4) Depth: 3 00:00:00

1.Qd2+ Kh5 2.Ng3+ Kh4 3.Qh2+ Kg5 4.Ne4#

+- (#4) Depth: 3 00:00:00

1.Qd2+ Kh5 2.Ng3+ Kh4 3.Qh2+ Kg5 4.Ne4#

+- (#4) Depth: 4 00:00:00

1.Qd2+ Kh5 2.Ng3+ Kh4 3.Qh2+ Kg5 4.Ne4#

+- (#4) Depth: 4 00:00:00

1.Qd2+ Kh5 2.Ng3+ Kh4 3.Qh2+ Kg5 4.Ne4#

+- (#4) Depth: 5 00:00:00

1.Qd2+ Kh5 2.Ng3+ Kh4 3.Qh2+ Kg5 4.Ne4#

+- (#4) Depth: 5 00:00:00

1.Qd2+ Kh5 2.Ng3+ Kh4 3.Qh2+ Kg5 4.Ne4#

+- (#4) Depth: 6 00:00:00 21kN

1.Qd2+ Kh5 2.Ng3+ Kh4 3.Qh2+ Kg5 4.Ne4#

+- (#4) Depth: 6 00:00:00 41kN

1.Qd2+ Kh5 2.Ng3+ Kh4 3.Qh2+ Kg5 4.Ne4#

+- (#4) Depth: 7 00:00:00 55kN

1.Qd2+ Kh5 2.Ng3+ Kh4 3.Qh2+ Kg5 4.Ne4#

+- (#4) Depth: 7 00:00:01 79kN

1.Qd2+ Kh5 2.Ng3+ Kh4 3.Qh2+ Kg5 4.Ne4#

+- (#4) Depth: 8 00:00:01 86kN

1.Qd2+ Kh5 2.Ng3+ Kh4 3.Qh2+ Kg5 4.Ne4#

+- (#4) Depth: 8 00:00:01 131kN

1.Qd2+ Kh5 2.Ng3+ Kh4 3.Qh2+ Kg5 4.Ne4#

+- (#4) Depth: 9 00:00:01 146kN

1.Ka8 h6 2.Kb8 Rg7

+- (#3) Depth: 9 00:00:01 235kN

1.Ka8 h6 2.Kb8 Rg7

+- (#3) Depth: 9 00:00:01 239kN

I will add one more,......!!!

An absolute

I will not give not solution right now.

I advice to you that you also take as a challange and solve it completely on your own if possible.

This will prove that still there is lot

White to play and win,...

An absolute

**reverse engineering**needs to be done to solve this!I will not give not solution right now.

I advice to you that you also take as a challange and solve it completely on your own if possible.

This will prove that still there is lot

*in chess in addtion to bare mathematics!***beauty**White to play and win,...

n2Bqk2/5p1p/5KP1/p7/8/8/2Q5/8 w - - 0 1

Very nice!

1.Qc8 Kg8 2.Bc7 Qxc8 3.gxf7+ Kh8 4.Be5 Qc5 5.Bb2 Nc7 6.Ba1 a4 7.Bb2 a3 8.Ba1 a2 9.Bb2 a1Q 10.Bxa1 Qe5+ 11.Bxe5 Nd5+ 12.Kg5+ Nf6 13.Bxf6#

Regards,

Lukas

1.Qc8 Kg8 2.Bc7 Qxc8 3.gxf7+ Kh8 4.Be5 Qc5 5.Bb2 Nc7 6.Ba1 a4 7.Bb2 a3 8.Ba1 a2 9.Bb2 a1Q 10.Bxa1 Qe5+ 11.Bxe5 Nd5+ 12.Kg5+ Nf6 13.Bxf6#

Regards,

Lukas

Yes correct! Confirmed by Chest:

1. Qc8 {#13/13 2183} Kg8 {#12/12 0} 2. Bc7 {#12/12 0} Qxc8 {#11/11 0} 3. gxf7+

{#11/11 0} Kh8 {#10/10 0} 4. Be5 {#10/10 0} Qc5 {#9/9 0} 5. Bb2 {#9/9 0} Nc7 {

#8/8 0} 6. Ba1 {#8/8 0} a4 {#7/7 0} 7. Bb2 {#7/7 0} a3 {#6/6 0} 8. Ba1 {#6/6 0}

a2 {#5/5 0} 9. Bb2 {#5/5 0} a1=Q {#4/4 0} 10. Bxa1 {#4/4 0} Nd5+ {#3/3 0} 11.

Ke6+ {#3/3 0} Nc3 {#2/2 0} 12. Bxc3+ {#2/2 0} Qe5+ {#1/1 0} 13. Bxe5# {#1/1 0}

Jouni

1. Qc8 {#13/13 2183} Kg8 {#12/12 0} 2. Bc7 {#12/12 0} Qxc8 {#11/11 0} 3. gxf7+

{#11/11 0} Kh8 {#10/10 0} 4. Be5 {#10/10 0} Qc5 {#9/9 0} 5. Bb2 {#9/9 0} Nc7 {

#8/8 0} 6. Ba1 {#8/8 0} a4 {#7/7 0} 7. Bb2 {#7/7 0} a3 {#6/6 0} 8. Ba1 {#6/6 0}

a2 {#5/5 0} 9. Bb2 {#5/5 0} a1=Q {#4/4 0} 10. Bxa1 {#4/4 0} Nd5+ {#3/3 0} 11.

Ke6+ {#3/3 0} Nc3 {#2/2 0} 12. Bxc3+ {#2/2 0} Qe5+ {#1/1 0} 13. Bxe5# {#1/1 0}

Jouni

Dear!

If you have found it on your own,

you are a REAL Master!

If you have found it on your own,

you are a REAL Master!

I had a little help from my computer. With the right settings it took 21 seconds to solve this.

Regards,

Lukas

Regards,

Lukas

on the computer you use it might take 21 seconds, for most of us mere mortals more like 21 minutes.

shredder11, Zappamex, toga131, glaurung120-210, naum 2.0, fruit 231, all Ka8 mate in 3

(not fritz 10-11, stopping analysis at Qd2+ mate in 4).

(not fritz 10-11, stopping analysis at Qd2+ mate in 4).

That is very strange.Then what is the truth, makes no sense for some comps to find the quickest mate and some do not?

My Chess Blog

http://fwccchess.blogspot.com

My Chess Blog

http://fwccchess.blogspot.com

FWCC,

I dont' know, I'm not an expert of chess engines: Imho, it's a matter related to understanding zugzwang (?).

I've run it again, and got the same.

I dont' know, I'm not an expert of chess engines: Imho, it's a matter related to understanding zugzwang (?).

I've run it again, and got the same.

Surely, both problems are zugzwang problems! The real questions are:

Why Rybka and Fritz can´t solve problem 1? They both understand zugzwang. Is Rybka and Fritz to selective?

Is there an engine, which can solve problem 2? I´m not sure. Maybe Shredder with enough time (days?), but Rybka 2.3.2a never!

Why Rybka and Fritz can´t solve problem 1? They both understand zugzwang. Is Rybka and Fritz to selective?

Is there an engine, which can solve problem 2? I´m not sure. Maybe Shredder with enough time (days?), but Rybka 2.3.2a never!

it's connected with pruning techniques, i.e. nullmove pruning (afaik it works by making 2 or more white moves without a black move, those moves which lead to a better position should also be interesting in the "real" variation. but in those problems a move sequence like Ka8-Kb8 will be ignored since it's not successful in the nullmove analysis).

You are right here. Zugzwang detection and no nullmove pruning is the same. You can see it in new Fritz 11. You have to cancel nullmove pruning manually, if Fritz 11 should see zugzwang (Fritz 10 see it always). I know only three engines, which see zugzwang: Rybka (a-version), Fritz and Shredder. But there are gradual differences here. If zugzwang is deep in the search tree (in move 5-6), Rybka will have problems. Fritz and Shredder don´t have them. Nullmove pruning is very important for playing strength of the engines and zugzwang is destructive in this case. Therfore many programmers of chess engines ignore this issue. But playing endgames without zugzwang detection is annoying. The next challenge for engines with zugzwang knowledge is to play for the zugzwang position, when they know, that the opponent engine has no clue about zugzwang.

Yes. - But in addition to the general difficulty, in the first position White makes TWO moves in a row which put the opponent in zugzwang, each. I think that's extra difficult for any engine which uses nullmove. I think there are some engines which simply switch off nullmove depending on the number of remaining pieces (but I would assume, not yet in the first diagram position).

Edit: In the second position, I tried some engines but not from the beginning, but after 3...Kh8. From there, Fruit and Toga find the #10 quickly. But 2.Bc7 is extremely difficult.

Edit: In the second position, I tried some engines but not from the beginning, but after 3...Kh8. From there, Fruit and Toga find the #10 quickly. But 2.Bc7 is extremely difficult.

*I think that's extra difficult for any engine which uses nullmove.*

It could depend upon whether nullmove is allowed to be applied "recursively" (that is, more than once in a subtree).

> Why Rybka and Fritz can´t solve problem 1? They both understand zugzwang. Is Rybka and Fritz to selective?

In Rybka's case, it's obviously a bug in mate handling. She just stops searching instead of attempting to find a shorter mate

Anyway, nullmove is known to be counter-productive in matesolving and probably should be turned off once a mate score is backed up to root.

> In Rybka's case, it's obviously a bug in mate handling. She just stops searching instead of attempting to find a shorter mate

I think it's not a bug, it's a feature (Vas put deliberately code on there so Rybka stops searching when finding a mate.)

How much time does rybka need to stop searching?

I gave rybka to analyze and when she did not find the mate in 3 she also did not stop searching and after 12 minutes the task manager still shows almost 100% for rybka.

Note that I believe that there is a bug because it is clear that rybka search lines that are more than 5 plies from the root(otherwise there is no reason to search for a long time) and after finding mate in 4 it is simply illogical to search them.

New game

Analysis by Rybka 2.3.2a 32-bit :

1.Qh2-d2+ Kg5-h5 2.Nf5-g3+ Kh5-h4 3.Qd2-h2+ Kh4-g5 4.Ng3-e4#

+- (#4) Depth: 5 00:00:00

1.Qh2-d2+ Kg5-h5 2.Nf5-g3+ Kh5-h4 3.Qd2-h2+ Kh4-g5 4.Ng3-e4#

+- (#4) Depth: 6 00:00:00 1kN

1.Qh2-d2+ Kg5-h5 2.Nf5-g3+ Kh5-h4 3.Qd2-h2+ Kh4-g5 4.Ng3-e4#

+- (#4) Depth: 7 00:00:00 17kN

1.Qh2-d2+ Kg5-h5 2.Nf5-g3+ Kh5-h4 3.Qd2-h2+ Kh4-g5 4.Ng3-e4#

+- (#4) Depth: 8 00:00:01 77kN

1.Qh2-d2+ Kg5-h5 2.Nf5-g3+ Kh5-h4 3.Qd2-h2+ Kh4-g5 4.Ng3-e4#

+- (#4) Depth: 9 00:00:13 820kN

1.Qh2-d2+ Kg5-h5 2.Nf5-g3+ Kh5-h4 3.Qd2-h2+ Kh4-g5 4.Ng3-e4#

+- (#4) Depth: 10 00:06:26 21828kN

(, 15.12.2007)

I gave rybka to analyze and when she did not find the mate in 3 she also did not stop searching and after 12 minutes the task manager still shows almost 100% for rybka.

Note that I believe that there is a bug because it is clear that rybka search lines that are more than 5 plies from the root(otherwise there is no reason to search for a long time) and after finding mate in 4 it is simply illogical to search them.

New game

1KB5/7p/5pr1/5Nk1/6p1/8/7Q/8 w - - 0 1

Analysis by Rybka 2.3.2a 32-bit :

1.Qh2-d2+ Kg5-h5 2.Nf5-g3+ Kh5-h4 3.Qd2-h2+ Kh4-g5 4.Ng3-e4#

+- (#4) Depth: 5 00:00:00

1.Qh2-d2+ Kg5-h5 2.Nf5-g3+ Kh5-h4 3.Qd2-h2+ Kh4-g5 4.Ng3-e4#

+- (#4) Depth: 6 00:00:00 1kN

1.Qh2-d2+ Kg5-h5 2.Nf5-g3+ Kh5-h4 3.Qd2-h2+ Kh4-g5 4.Ng3-e4#

+- (#4) Depth: 7 00:00:00 17kN

1.Qh2-d2+ Kg5-h5 2.Nf5-g3+ Kh5-h4 3.Qd2-h2+ Kh4-g5 4.Ng3-e4#

+- (#4) Depth: 8 00:00:01 77kN

1.Qh2-d2+ Kg5-h5 2.Nf5-g3+ Kh5-h4 3.Qd2-h2+ Kh4-g5 4.Ng3-e4#

+- (#4) Depth: 9 00:00:13 820kN

1.Qh2-d2+ Kg5-h5 2.Nf5-g3+ Kh5-h4 3.Qd2-h2+ Kh4-g5 4.Ng3-e4#

+- (#4) Depth: 10 00:06:26 21828kN

(, 15.12.2007)

>How much time does rybka need to stop searching?

She stops instantly in console mode.

Rybka does handle null moves perfectly in all instances, but it can often take a big search. Two consecutive null moves will take a really big search.

The problem here is that searches for other moves explode. Even if you give her 1. Ka8, it still takes some time because of this.

And it's true, her behavior is not completely logical. Once a mate-in-4 is found, everything else should be cut off after 4 moves.

Vas

New game

Analysis by Rybka 2.3.2g7 mp 32-bit bench :

1...g3

+- (#3) Depth: 1 00:00:00

1...h6

+- (#5) Depth: 1 00:00:00

1...Rg7 2.Qh6#

+- (#2) Depth: 1 00:00:00

1...h6 2.Qd2+

+- (#5) Depth: 1 00:00:00

1...h6 2.Qd2+ Kh5 3.Ng3+ Kh4 4.Qh2+ Kg5 5.Ne4#

+- (#5) Depth: 1 00:00:00

1...h6 2.Qd2+ Kh5 3.Ng3+ Kh4 4.Qh2+ Kg5 5.Ne4#

+- (#5) Depth: 1 00:00:00

1...h6 2.Qd2+ Kh5 3.Ng3+ Kh4 4.Qh2+ Kg5 5.Ne4#

+- (#5) Depth: 2 00:00:00

1...h6 2.Qd2+ Kh5 3.Ng3+ Kh4 4.Qh2+ Kg5 5.Ne4#

+- (#5) Depth: 3 00:00:00

1...h6 2.Qd2+ Kh5 3.Ng3+ Kh4 4.Qh2+ Kg5 5.Ne4#

+- (#5) Depth: 4 00:00:00

1...h6 2.Qd2+ Kh5 3.Ng3+ Kh4 4.Qh2+ Kg5 5.Ne4#

+- (#5) Depth: 5 00:00:00

1...h6 2.Qd2+ Kh5 3.Ng3+ Kh4 4.Qh2+ Kg5 5.Ne4#

+- (#5) Depth: 6 00:00:00 0kN

1...h6 2.Qd2+ Kh5 3.Ng3+ Kh4 4.Qh2+ Kg5 5.Ne4#

+- (#5) Depth: 7 00:00:00 2kN

1...h6 2.Qd2+ Kh5 3.Ng3+ Kh4 4.Qh2+ Kg5 5.Ne4#

+- (#5) Depth: 8 00:00:00 18kN

1...h6 2.Kb8 Rg7 3.Qxh6#

+- (#3) Depth: 9 00:00:01 90kN

1...h6 2.Kb8 Rg7 3.Qxh6#

+- (#3) Depth: 10 00:00:02 129kN

1...h6 2.Kb8 Rg7 3.Qxh6#

+- (#3) Depth: 11 00:00:06 446kN

(Rajlich, 16.12.2007)

The problem here is that searches for other moves explode. Even if you give her 1. Ka8, it still takes some time because of this.

And it's true, her behavior is not completely logical. Once a mate-in-4 is found, everything else should be cut off after 4 moves.

Vas

New game

K1B5/7p/5pr1/5Nk1/6p1/8/7Q/8 b - - 0 1

Analysis by Rybka 2.3.2g7 mp 32-bit bench :

1...g3

+- (#3) Depth: 1 00:00:00

1...h6

+- (#5) Depth: 1 00:00:00

1...Rg7 2.Qh6#

+- (#2) Depth: 1 00:00:00

1...h6 2.Qd2+

+- (#5) Depth: 1 00:00:00

1...h6 2.Qd2+ Kh5 3.Ng3+ Kh4 4.Qh2+ Kg5 5.Ne4#

+- (#5) Depth: 1 00:00:00

1...h6 2.Qd2+ Kh5 3.Ng3+ Kh4 4.Qh2+ Kg5 5.Ne4#

+- (#5) Depth: 1 00:00:00

1...h6 2.Qd2+ Kh5 3.Ng3+ Kh4 4.Qh2+ Kg5 5.Ne4#

+- (#5) Depth: 2 00:00:00

1...h6 2.Qd2+ Kh5 3.Ng3+ Kh4 4.Qh2+ Kg5 5.Ne4#

+- (#5) Depth: 3 00:00:00

1...h6 2.Qd2+ Kh5 3.Ng3+ Kh4 4.Qh2+ Kg5 5.Ne4#

+- (#5) Depth: 4 00:00:00

1...h6 2.Qd2+ Kh5 3.Ng3+ Kh4 4.Qh2+ Kg5 5.Ne4#

+- (#5) Depth: 5 00:00:00

1...h6 2.Qd2+ Kh5 3.Ng3+ Kh4 4.Qh2+ Kg5 5.Ne4#

+- (#5) Depth: 6 00:00:00 0kN

1...h6 2.Qd2+ Kh5 3.Ng3+ Kh4 4.Qh2+ Kg5 5.Ne4#

+- (#5) Depth: 7 00:00:00 2kN

1...h6 2.Qd2+ Kh5 3.Ng3+ Kh4 4.Qh2+ Kg5 5.Ne4#

+- (#5) Depth: 8 00:00:00 18kN

1...h6 2.Kb8 Rg7 3.Qxh6#

+- (#3) Depth: 9 00:00:01 90kN

1...h6 2.Kb8 Rg7 3.Qxh6#

+- (#3) Depth: 10 00:00:02 129kN

1...h6 2.Kb8 Rg7 3.Qxh6#

+- (#3) Depth: 11 00:00:06 446kN

(Rajlich, 16.12.2007)

Hm, so null move in Rybka is not used as a hard cutoff, just postponing moves-worse-than-null-moves to further down in the search? That's interesting.

/* Steinar */

/* Steinar */

Sure. This idea is nothing new, although my implementation is.

Vas

Vas

In the first position Fruit 2.1 finds the Mate in 3 in an instant.And gives the following line 1.Ka8 h6 2.Kb8 Rg7 3.Qxh6#.

Powered by mwForum 2.27.4 © 1999-2012 Markus Wichitill