WinBoard Evaluation Graph
Posted: 23 May 2011, 00:15
1) From what I believe is standard, bars printed above the horizontal evaluation graph axis indicate the engine evaluates the position as better for White. Bars printed below the axis indicate the engine believes the position is better for Black.
Thus, when White is clearly winning and when both engines are in agreement with this, both engines print the bar above the axis line. (And if Black was winning and both engines agreed, all of the bars are printed below the horizontal axis line.)
This is how, for example, Fritz 12 displays the graphs.
However, with WinBoard, (version 4.5.2 and the hgmaster 20110521 version I'm using) the output is different. When White (for example) is clearly winning and both engines agree with this, one engine prints the bars above the line and the other engine prints them all BELOW the line.
And I've discovered why. Note that in my polyglot ini files for both engines, I do have ScoreWhite = true. When true, each engine is (apparently) printing the bars from their own point of view. White says I'm winning and prints the bars above the line and Black says, yep, I'm losing, and prints the bars below the line.
When I change it to ScoreWhite = false, I do get the 'proper' evaluation bar output. When false, when both engines agree White is clearly winning, all bars are above the line. (And when Black is clearly winning, all bars printed are below the line.) But of course, now the "engine output pane" is not what I desire at all... each engine is printing their scores from their own point of view, and I much prefer seeing each score from White's point of view.
To summarize, when we have...
ScoreWhite = true and White clearly winning:
Both engine scores are positive... but the graph
doesn't show both bars as positive. (Above the line.)
ScoreWhite = false and White clearly winning:
The graph shows all bars positive (above the line) but the engine
output doesn't show both scores positive (one is positive and one
is negative.)
(I hope that explanation is clear.)
Question: Does WinBoard know when the polglot ini file has ScoreWhite = true? It probably does not, does it? (I think maybe Polyglot "reverses" it and then sends the score to WinBoard and WinBoard simply prints it.)
Is there a new switch that can be added to winboard.ini... maybe something like /evalGraphScoreWhite = true or something, so the engine analysis score and the graph bars "match?"
I don't think the evaluation graph should ever print the bars in the way it's doing when ScoreWhite=true, (I don't think that's a proper graph) but if WinBoard has no way of knowing, then maybe a switch is desired for all of us who do have ScoreWhite=true in our engine ini files.
2) One other item, while I have your attention.
When a second game of the match starts between two engines, the engine analysis output from the first match should, ideally, be cleared immediately.
While watching a recent engine vs engine match, the second game of the match was almost a minute into the game, yet the window pane from one engine still showed analysis from the FIRST game! The reason was simple... this engine was not yet out of its book for this second game... it hadn't started analyzing yet, and the other engine was busy thinking. The previous analysis had not been cleared. So for almost a minute, until this engine starting analyzing on its own, I'm seeing analysis on my screen from the previous game that had nothing to do with the current game. Ideally, the window should be cleared right away.
I noticed a similar thing when I loaded a second engine in the hgmaster-20110521 copy. I started the program with two engines, but then immediately replaced one of the engines with a different engine via the ENGINE - LOAD ENGINE menu. (It's nice to be able to do this.) But after loading it, the prior engine's logo didn't immediately get replaced with the new engine's logo, as I expected it to, "indicating" and helping to inform the user that the new engine was indeed loaded properly. As soon as a user loads a different engine, I think the logo should be updated.
As always, thanks in advance.
Ed
Thus, when White is clearly winning and when both engines are in agreement with this, both engines print the bar above the axis line. (And if Black was winning and both engines agreed, all of the bars are printed below the horizontal axis line.)
This is how, for example, Fritz 12 displays the graphs.
However, with WinBoard, (version 4.5.2 and the hgmaster 20110521 version I'm using) the output is different. When White (for example) is clearly winning and both engines agree with this, one engine prints the bars above the line and the other engine prints them all BELOW the line.
And I've discovered why. Note that in my polyglot ini files for both engines, I do have ScoreWhite = true. When true, each engine is (apparently) printing the bars from their own point of view. White says I'm winning and prints the bars above the line and Black says, yep, I'm losing, and prints the bars below the line.
When I change it to ScoreWhite = false, I do get the 'proper' evaluation bar output. When false, when both engines agree White is clearly winning, all bars are above the line. (And when Black is clearly winning, all bars printed are below the line.) But of course, now the "engine output pane" is not what I desire at all... each engine is printing their scores from their own point of view, and I much prefer seeing each score from White's point of view.
To summarize, when we have...
ScoreWhite = true and White clearly winning:
Both engine scores are positive... but the graph
doesn't show both bars as positive. (Above the line.)
ScoreWhite = false and White clearly winning:
The graph shows all bars positive (above the line) but the engine
output doesn't show both scores positive (one is positive and one
is negative.)
(I hope that explanation is clear.)
Question: Does WinBoard know when the polglot ini file has ScoreWhite = true? It probably does not, does it? (I think maybe Polyglot "reverses" it and then sends the score to WinBoard and WinBoard simply prints it.)
Is there a new switch that can be added to winboard.ini... maybe something like /evalGraphScoreWhite = true or something, so the engine analysis score and the graph bars "match?"
I don't think the evaluation graph should ever print the bars in the way it's doing when ScoreWhite=true, (I don't think that's a proper graph) but if WinBoard has no way of knowing, then maybe a switch is desired for all of us who do have ScoreWhite=true in our engine ini files.
2) One other item, while I have your attention.
When a second game of the match starts between two engines, the engine analysis output from the first match should, ideally, be cleared immediately.
While watching a recent engine vs engine match, the second game of the match was almost a minute into the game, yet the window pane from one engine still showed analysis from the FIRST game! The reason was simple... this engine was not yet out of its book for this second game... it hadn't started analyzing yet, and the other engine was busy thinking. The previous analysis had not been cleared. So for almost a minute, until this engine starting analyzing on its own, I'm seeing analysis on my screen from the previous game that had nothing to do with the current game. Ideally, the window should be cleared right away.
I noticed a similar thing when I loaded a second engine in the hgmaster-20110521 copy. I started the program with two engines, but then immediately replaced one of the engines with a different engine via the ENGINE - LOAD ENGINE menu. (It's nice to be able to do this.) But after loading it, the prior engine's logo didn't immediately get replaced with the new engine's logo, as I expected it to, "indicating" and helping to inform the user that the new engine was indeed loaded properly. As soon as a user loads a different engine, I think the logo should be updated.
As always, thanks in advance.
Ed