Page 1 of 2

Engines fail to find mate in two

Posted: Mon Nov 07, 2016 11:11 am
by John Upham
Here is a question for the engine buffs out there (I don't know the answer).

I put the following position into Fritz 13 and without any prompting it could only find various mates in three.

When I manually played 1 Rb7! it then found the various mates after 5 different moves by Black.

Maybe more modern engines do not have this problem?
Pos1.jpg

Re: Engines fail to find mate in two

Posted: Mon Nov 07, 2016 12:19 pm
by LawrenceCooper
The same (not surprisingly) with Fritz 11.

Re: Engines fail to find mate in two

Posted: Mon Nov 07, 2016 12:26 pm
by John Upham
Curious...

Anyone have an explanation for this?

I assume that from my given starting position all possible (45?) legal moves for white would be tried by the algorithm.

I understand that engines can fail to assess a number of simple positions correctly due to a horizon limiting effect but missing mate in two cannot have this explanation surely?

Re: Engines fail to find mate in two

Posted: Mon Nov 07, 2016 12:35 pm
by Brendan O'Gorman
Komodo 10, Stockfish 7 and Deep Hiarcs 14 all find the two move mate instantly. I inadvertently set up the position the wrong way round initially, i.e. with White playing down the board. That turned out to be a mate in three.

Re: Engines fail to find mate in two

Posted: Mon Nov 07, 2016 12:38 pm
by MartinCarpenter
Engines will sort of look at all moves, but they do also have built in algorithms to stop them chasing down blind alleys.

That was especially so with older ones, because their hardware was more limited & so the cost/benefit ratio of limiting the search was rather higher. I have a vague memory that way back they had 'puzzle' modes that turned these things off to make sure of catching all of this.

Quite why Rb7 is being cut away here I'm not sure, as it definitely isn't an a priori nonsensical move. Easier to see it with longer searches and massive sacrifices and things.

Re: Engines fail to find mate in two

Posted: Mon Nov 07, 2016 12:39 pm
by IM Jack Rudd
Houdini 4 finds it instantly.

Re: Engines fail to find mate in two

Posted: Mon Nov 07, 2016 12:45 pm
by John Upham
IM Jack Rudd wrote:Houdini 4 finds it instantly.
Thanks Jack!

Does this mean that this is a well known problem that has been addressed with the more recent engines and I need to go shopping?

Re: Engines fail to find mate in two

Posted: Mon Nov 07, 2016 5:06 pm
by John Moore
John, I'd send it off (the position, not the engine!) to ChessBase and ask for their comments. Fritz 13 is hardly an old engine. Tell them you purchased it in good faith and yet it can't do a mate in 2 and see what they say. Then report back here.

Re: Engines fail to find mate in two

Posted: Mon Nov 07, 2016 6:59 pm
by Nick Grey
John, you've been sold a pup.

Ask for an explanation & more than that. Obviously cannot be good for them compared to their competitors.

Re: Engines fail to find mate in two

Posted: Mon Nov 07, 2016 7:18 pm
by John Upham
Nick Grey wrote:John, you've been sold a pup.

Ask for an explanation & more than that. Obviously cannot be good for them compared to their competitors.
The current version is Fritz 15. I'm not after a refund or recriminations about a product which was released more than six years ago.

The modern engines find the mate without prompting.

As a developer I am curious as to the "bug" that we have discussed.

The offside window in my more than ten year old VW Golf dropped into the door cavity but I don't feel the need to complain to VW about it. Some might I suppose.

Re: Engines fail to find mate in two

Posted: Mon Nov 07, 2016 7:33 pm
by E Michael White
My version of deep Fritz 12 finds Rb7 immediately, as do Fritz 6 and Crafty 23.01.

Re: Engines fail to find mate in two

Posted: Mon Nov 07, 2016 7:40 pm
by Nick Grey
It is something we might want to test before upgrading or buying new product. Almost like the Bond film where the villain deliberately issues software with bugs in it & then charges customers to fix it.

On the development side of the old programme may well be patzer sees a simple mate in 3 that ends the game & does not want to consider whether there is a quicker way bearing in mind the same result 1-0.

More human like response from Fritz. My old Fritz 6 was working really well until my children started to mess around with the programme settings to see how quickly they could beat the computer.

Mind you it has been a long time since I was 2 rooks, 1 queen, & 1 pawn up and my opponent had not resigned.

Re: Engines fail to find mate in two

Posted: Tue Nov 08, 2016 7:26 am
by John Moore
John Upham wrote:
Nick Grey wrote:John, you've been sold a pup.

Ask for an explanation & more than that. Obviously cannot be good for them compared to their competitors.
The current version is Fritz 15. I'm not after a refund or recriminations about a product which was released more than six years ago.

The modern engines find the mate without prompting.

As a developer I am curious as to the "bug" that we have discussed.

The offside window in my more than ten year old VW Golf dropped into the door cavity but I don't feel the need to complain to VW about it. Some might I suppose.
I was being slightly tongue in cheek with my comment up thread and I certainly wasn't suggesting that you should seek a refund when you have been using it for six years (!) but it would have been interesting to see the response from ChessBase. After all, they might be able to satisfy your curiosity.

Re: Engines fail to find mate in two

Posted: Tue Nov 08, 2016 8:31 am
by Mick Norris
John Upham wrote:The offside window in my more than ten year old VW Golf dropped into the door cavity but I don't feel the need to complain to VW about it. Some might I suppose.
German engineering :roll:

Re: Engines fail to find mate in two

Posted: Tue Nov 08, 2016 8:46 am
by Kevin Thurlow
"Almost like the Bond film where the villain deliberately issues software with bugs in it & then charges customers to fix it."

Sounds like real life to me!