Interesting position from Jouni Uski

Discussion of chess software programming and technical issues.

Moderators: hgm, Rebel, chrisw

Zlaire

Re: Interesting position from Jouni Uski

Post by Zlaire »

So basically Crafty can't 'analyze' pretty much any mate in one problems on default settings?
User avatar
sje
Posts: 4675
Joined: Mon Mar 13, 2006 7:43 pm

Early output suppression

Post by sje »

Symbolic has a similar feature where the early, quickly generated trace text is not emitted. There are two differences in the implementation:

1. The amount of output to skip is not based on a line count, but rather on elapsed wall clock time. Currently, the first three seconds of output is skipped.

2. Symbolic knows about the isatty() function and can ignore early output suppression if the output stream is not connected to a terminal.
GeoffW

Re: Interesting position from Jouni Uski

Post by GeoffW »

Thanks Bob

Yes indeed that was the explanation. I have to say I dont like that feature though, leads to confusion like this.

Wouldn't it have been better to just print the the final PV at the end of the small depth searches, so what, it scrolls a few lines of text up the screen.

Regards Geoff
bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: Interesting position from Jouni Uski

Post by bob »

Zlaire wrote:So basically Crafty can't 'analyze' pretty much any mate in one problems on default settings?
Depends on what you mean by "analyze". You can always make "noise 0" the default. It just makes the program _very_ chatty, particularly in endgames.
bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: Interesting position from Jouni Uski

Post by bob »

GeoffW wrote:Thanks Bob

Yes indeed that was the explanation. I have to say I dont like that feature though, leads to confusion like this.

Wouldn't it have been better to just print the the final PV at the end of the small depth searches, so what, it scrolls a few lines of text up the screen.

Regards Geoff
I don't use "analyze" enough to have noticed this. I will at least see if I can make do something better. Here's the problem issue however:

Someone once suggested that if it sees a mate, it displays that output regardless of the "noise" setting. But that introduces a different form of confusion. At (say) depth=3, the first move searched leads to a forced mate (a loss), so it would display that. But then it would find a better move, but now not yet having satisfied the "noise" requirement, it wouldn't display that. Leaving the "I am mated" analysis as the only thing visible...

It can be fixed, but it is a bit messy...
jwes
Posts: 778
Joined: Sat Jul 01, 2006 7:11 am

Re: Interesting position from Jouni Uski

Post by jwes »

bob wrote:
GeoffW wrote:Thanks Bob

Yes indeed that was the explanation. I have to say I dont like that feature though, leads to confusion like this.

Wouldn't it have been better to just print the the final PV at the end of the small depth searches, so what, it scrolls a few lines of text up the screen.

Regards Geoff
I don't use "analyze" enough to have noticed this. I will at least see if I can make do something better. Here's the problem issue however:

Someone once suggested that if it sees a mate, it displays that output regardless of the "noise" setting. But that introduces a different form of confusion. At (say) depth=3, the first move searched leads to a forced mate (a loss), so it would display that. But then it would find a better move, but now not yet having satisfied the "noise" requirement, it wouldn't display that. Leaving the "I am mated" analysis as the only thing visible...

It can be fixed, but it is a bit messy...
My suggestion is to ensure the PV has been printed when the search terminates.
bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: Interesting position from Jouni Uski

Post by bob »

jwes wrote:
bob wrote:
GeoffW wrote:Thanks Bob

Yes indeed that was the explanation. I have to say I dont like that feature though, leads to confusion like this.

Wouldn't it have been better to just print the the final PV at the end of the small depth searches, so what, it scrolls a few lines of text up the screen.

Regards Geoff
I don't use "analyze" enough to have noticed this. I will at least see if I can make do something better. Here's the problem issue however:

Someone once suggested that if it sees a mate, it displays that output regardless of the "noise" setting. But that introduces a different form of confusion. At (say) depth=3, the first move searched leads to a forced mate (a loss), so it would display that. But then it would find a better move, but now not yet having satisfied the "noise" requirement, it wouldn't display that. Leaving the "I am mated" analysis as the only thing visible...

It can be fixed, but it is a bit messy...
My suggestion is to ensure the PV has been printed when the search terminates.
That is easy to say, but it is more complex to actually do. I make the decision to print (or not print) the PV at time T. The iteration ends at time T+n.
jwes
Posts: 778
Joined: Sat Jul 01, 2006 7:11 am

Re: Interesting position from Jouni Uski

Post by jwes »

bob wrote:
jwes wrote:
bob wrote:
GeoffW wrote:Thanks Bob

Yes indeed that was the explanation. I have to say I dont like that feature though, leads to confusion like this.

Wouldn't it have been better to just print the the final PV at the end of the small depth searches, so what, it scrolls a few lines of text up the screen.

Regards Geoff
I don't use "analyze" enough to have noticed this. I will at least see if I can make do something better. Here's the problem issue however:

Someone once suggested that if it sees a mate, it displays that output regardless of the "noise" setting. But that introduces a different form of confusion. At (say) depth=3, the first move searched leads to a forced mate (a loss), so it would display that. But then it would find a better move, but now not yet having satisfied the "noise" requirement, it wouldn't display that. Leaving the "I am mated" analysis as the only thing visible...

It can be fixed, but it is a bit messy...
My suggestion is to ensure the PV has been printed when the search terminates.
That is easy to say, but it is more complex to actually do. I make the decision to print (or not print) the PV at time T. The iteration ends at time T+n.
If you decide not to print the PV at time T, you could copy the PV if necessary, and set a flag.