Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

About the display of the winning percentage graph #808

Closed
hope366 opened this issue Nov 6, 2020 · 16 comments
Closed

About the display of the winning percentage graph #808

hope366 opened this issue Nov 6, 2020 · 16 comments

Comments

@hope366
Copy link

hope366 commented Nov 6, 2020

Currently, there is a display "mean: ### stdev: ### Last move: ###" at the top of the winning percentage graph.
When pondering off, only "Last move: ###" is displayed.(Normal mode only)
How about adding "current turn" and "win percentage number" to the information here?
In particular, I think it is easier to understand if there is a display of "current turn". I think stdev and Last move have low priority, so I think it's okay to hide them in some cases.
For example, "Turn: black Winrate: 50.64% Score Lead: 0.1"
How about something like this?

See the screenshot below.
This is the information in the white turn. Although it is "mean: 5.4", the numerical value in the graph is "-5.4". The numbers in the graph are always the numbers seen from the black side, but when the turn is white, it is easier to understand if the numbers seen from the white side are displayed.
Next, at the bottom of the graph, there is a number indicating the number of steps., but it is difficult to see due to the green line. It is a small matter which one to prioritize, but I feel that it is more natural to prioritize the number of steps display.

@NTUST-MITLAB
Copy link

See the screenshot below.
This is the information in the white turn. Although it is "mean: 5.4", the numerical value in the graph is "-5.4". The numbers in the graph are always the numbers seen from the black side, but when the turn is white, it is easier to understand if the numbers seen from the white side are displayed.

You can change this in View -> KataGo settings -> ScoreMean View -> Always black/alternately

@hope366
Copy link
Author

hope366 commented Nov 6, 2020

See the two screenshots below.
Both use exactly the same analysis results in exactly the same aspect.
Now White's turn, White is 5.1 points ahead.
The left is "alternate" and the right is "always black".

On the left, the problem is that the number on the graph is "5.1" but the number in the graph is "-5.1".
Both on the right show the same number "-5.1", but the problem is that it is a negative number even though White is leading in White's turn.

@NTUST-MITLAB
Copy link

NTUST-MITLAB commented Nov 6, 2020

That's on purpose, in the code, the option literally just changes the ScoreMean's sign. If you play a game against AI, you want to increase the ScoreMean value regardless of playing black or white, that's the purpose of the alternate mean. (a smaller negative number is better for the other player).

@hope366
Copy link
Author

hope366 commented Nov 7, 2020

If it is set to "Always black", there is no problem.
Inconvenience occurs when set to "Alternate".
The score lead values at the top of the graph reflect "alternately", but the score lead values in the graph follow "always black".
In other words, when the turn is on the white side, the signs are always different.
The problem is that there are differences in the rules of information displayed between the black side and the white side.

@NTUST-MITLAB
Copy link

If it is set to "Always black", there is no problem.
Inconvenience occurs when set to "Alternate".
The score lead values at the top of the graph reflect "alternately", but the score lead values in the graph follow "always black".
In other words, when the turn is on the white side, the signs are always different.
The problem is that there are differences in the rules of information displayed between the black side and the white side.

The graph is a subjective view of the game overall, so there is no need to "flip" it during a game, but subjectively if it is "your turn" to play, the scoreMean value will always be the same for one player to "increase". I don't see a conflict here, just personal preference.

Or do you want to have a graphical representation of the subjective view from another player's point of view? (a constantly flipping/miroring graph?)

@hope366
Copy link
Author

hope366 commented Nov 7, 2020

Yes, you don't have to flip the graph in the middle of the game as you say. However, the numerical value indicating the score lead in the graph may be displayed in reverse with "+" and "-".
The numbers on the graph, whether they represent winning percentages or score leads, should be displayed as positive numbers.
For example, if the white win rate is currently 25% on the white turn, the green line showing the win rate indicates the point where black is 75%,however, it is easy to get confused when displaying "25%" on the graph.
For the same reason, the score lead number should always be positive.
In many cases, the graph has a scale, and you can calculate back depending on the situation by looking at the numerical value, but for score lead, the width of the scale varies depending on the situation, so the scale cannot be displayed. Therefore, it seems that specific numerical values are displayed, It is easy to get confused because the numbers at the top of the graph and the numbers on the graph may display different numbers in the sense of positive and negative.

@NTUST-MITLAB
Copy link

NTUST-MITLAB commented Nov 8, 2020

I always forgot that I revert this b2221b1 in my own version (with some modification), so in my UI, the number above the bar, and inside the graph represent the expected outcome of the game (in this case around W+5.5), while the scoreMean shows the raw before komi counting number for the current player (for black player it is +1 which is how players actually count and estimate during a game) and has the same value show in the best move circle on the mainboard. For me, they deliver different information and both quite useful and not confusing.

Maybe we should restore the number on the top of the bar to show like W+5.5 when it's negative, and B+5.5 if it is a positive number, so it would be quite easy for anyone to understand.

I do agree that the current move number is obscured in the graph when the trend line reaches the bottom.

image

@hope366
Copy link
Author

hope366 commented Nov 8, 2020

Thank you for taking the time to address my minor questions.

It's great to be able to customize it to your liking.
I have little programming knowledge, so complex changes are not possible, but it was a good experience to be able to make pull requests for simple changes.

I think the notations like "B + 5.5" and "W + 5.5" are wonderful. It is very convenient to know at a glance which turn the evaluation value is.
The top center display of the bar graph has been removed because it's verbose and doesn't work, but I think it's great if it works like "B + 5.5".

@NTUST-MITLAB
Copy link

This is my current work-in-progress WinratePane, with move number and W/B expected outcome on top of the winrate bar, what do you think about this layout?
image

@hope366
Copy link
Author

hope366 commented Nov 8, 2020

The display of "move: 200 W + 5.4" on the bar graph is nice.
However, since there is "+5.4" above, "-5.5" in the graph feels unnatural.
Since there is already a display of "+5.4" above, I feel that the numbers in the graph can be deleted. I'd like to add a scale,
however, it may be difficult to see because the winning percentage and the score lead are drawn in the same area.
I don't think many users are paying attention to stdev or last move, so why not replace it with some other information such as the number of visits or the time it took to pondering?

kaorahi pushed a commit to kaorahi/lizzie that referenced this issue Nov 8, 2020
kaorahi pushed a commit to kaorahi/lizzie that referenced this issue Nov 8, 2020
@kaorahi
Copy link
Contributor

kaorahi commented Nov 8, 2020

@hope366
Copy link
Author

hope366 commented Nov 8, 2020

This time, it took a long time to verify because there was a problem with compilation.

The master of my "Lizzie-improvements" looks like ↑, and the position of boolean validScore = validWinrate; is in a slightly different place, and I took extra time because I failed to delete it. ..
Needless to say, https://github.com/kaorahi/lizzie/tree/fix808_score worked fine.

@hope366
Copy link
Author

hope366 commented Nov 8, 2020

I would like to share my impressions of verifying this PR.
First, take a look at the screenshot below.
The move number on the main board and the move number displayed at the bottom of the winning percentage graph are different. It seems that there is always one move off.
Also, I found a new problem in the process of this verification.
When there are many branches in the variation tree, if you zoom in on the winning percentage graph or sub-board, the variation tree will stick out on the main board.
This issue only occurs in normal mode and does not seem to occur in panel UI mode.

  • Here are some other things I noticed.
    • As for stdev and ScoreMean, they were hidden when moving with pondering turned off, so I'm glad that they are now visible with this fix.
      However, when the SGF containing the analysis result is loaded and moved with pondering off, the stdev value always shows "0".
    • Moving ScoreMean up frees up space, so why not add some useful information?
      For example, "move: 200", "turn: black", "number of playouts", etc.
    • If you set KataGo ScoreMean to "alternately", there is a little resistance because the ScoreMean value in the graph is switched between "+" and "-" for each move. How about displaying only absolute values even when "Alternate" is set?
    • Regarding the move number displayed at the bottom of the graph, I noticed that the font is different when it is unanalyzed and when it is analyzed. It's a minor thing, but I think it feels very good.

@hope366
Copy link
Author

hope366 commented Nov 9, 2020

Thank you for fixing it immediately.
There is no problem with the case where the variation tree sticks out on the main board and the difference in move numbers.
For stdev, it will be hidden if you load the SGF containing the analysis information and move it with pondering off.
Is this a fix that hides something that isn't working properly, like the previous PR?

@kaorahi
Copy link
Contributor

kaorahi commented Nov 11, 2020

Yes, I simply deleted "stdev: 0.0". Lizzie does not record "stdev" into SGF (cf. bestMovesToString() in BoardData.java) and Lizzie regards missing "stdev" as "0.0".

Though I wrote cd3b40f and 76ecdab for trial, I'm not sure whether they are preferred by many users. So I will give up them and concentrate on trivial bugs.

@hope366
Copy link
Author

hope366 commented Nov 11, 2020

Each person has his or her own taste for subtle layouts, and I haven't been able to give a definite answer. So maybe it shouldn't have been too deep.
Thank you for writing some code for this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants