Page 3 of 3

Re: Interesting position from Jouni Uski

Posted: Sun May 06, 2007 12:51 pm
by Zlaire
So basically Crafty can't 'analyze' pretty much any mate in one problems on default settings?

Early output suppression

Posted: Sun May 06, 2007 4:26 pm
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.

Re: Interesting position from Jouni Uski

Posted: Mon May 07, 2007 11:07 am
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

Re: Interesting position from Jouni Uski

Posted: Mon May 07, 2007 7:21 pm
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.

Re: Interesting position from Jouni Uski

Posted: Mon May 07, 2007 7:23 pm
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...

Re: Interesting position from Jouni Uski

Posted: Tue May 08, 2007 10:20 am
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.

Re: Interesting position from Jouni Uski

Posted: Tue May 08, 2007 6:37 pm
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.

Re: Interesting position from Jouni Uski

Posted: Tue May 08, 2007 8:55 pm
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.