Announcing GoReviewPartner - v0.15 with Pachi and PhoenixGo

Tell the community about tournaments, new go sites, software updates, etc.
User avatar
pnprog
Lives with ko
Posts: 286
Joined: Thu Oct 20, 2016 7:21 am
Rank: OGS 7 kyu
GD Posts: 0
Has thanked: 94 times
Been thanked: 153 times

Re: Announcing GoReviewPartner - v0.10 (supporting Leela Zer

Post by pnprog »

johnsmith wrote:And yes, I'm already using LZ as new networks are getting stronger rapidly.
I don't cease to be amazed at LZ rapid progress :)

pleiade67 wrote:Hello,

Mac OSX 10.12 here. I tested successfully GRP V0.10 with the following engines:
- leela 0.11
- leela-zero 0.11
- gnugo 3.8

As expected it was unfortunately not possible to build Ray and AQ on Mac OS.

Leela and gnugo already fully meet my needs :) . Thanks again ! :clap:
Thanks for the feedback, MAc Os is a platform I cannot test by myself.

pleiade67 wrote:(note: for the engines which are not used, it is necessary to fill in the command line in the engine settings to gain access to the sgf analysis. Any directory path should make it.)
Normally, at least one bot should have a "non empty" command line to "unlock" the sgf analysis. Then only the bots with command line will appear in the selection list. At least this is the way it work on Linux/Windows. (By the way, I discovered and registered this month on go-on forum, and then took notice that we are from the same country :))
I am the author of GoReviewPartner, a small software aimed at assisting reviewing a game of Go. Give it a try!
User avatar
pleiade67
Dies with sente
Posts: 71
Joined: Tue Mar 12, 2013 11:44 am
Rank: 20 kyu
GD Posts: 0
Has thanked: 10 times
Been thanked: 19 times

Re: Announcing GoReviewPartner - v0.10 (supporting Leela Zer

Post by pleiade67 »

Yeah, that's right. :D I even advertised your program on the Go On forum! It deserves to be widely known ! :clap:
User avatar
djhbrown
Lives in gote
Posts: 392
Joined: Tue Sep 15, 2015 5:00 pm
Rank: NR
GD Posts: 0
Has thanked: 23 times
Been thanked: 43 times

Re: Announcing GoReviewPartner - v0.10 (supporting Leela Zer

Post by djhbrown »

pleiade67 wrote:Leela and gnugo already fully meet my needs
This puzzles me; Leela is certainly very helpful - but what do you get out of GnuGo? :scratch:
i shrink, therefore i swarm
User avatar
pnprog
Lives with ko
Posts: 286
Joined: Thu Oct 20, 2016 7:21 am
Rank: OGS 7 kyu
GD Posts: 0
Has thanked: 94 times
Been thanked: 153 times

Re: Announcing GoReviewPartner - v0.10 (supporting Leela Zer

Post by pnprog »

djhbrown wrote:
pleiade67 wrote:Leela and gnugo already fully meet my needs
This puzzles me; Leela is certainly very helpful - but what do you get out of GnuGo? :scratch:

GnuGo has good life and death basics, where bots likes Leela sometime still have blatant weakness.

A recent example is this problem posted on reddit: https://www.reddit.com/r/baduk/comments/7si2hp/a_go_problem_easy_for_you_often_impossible_for_ai/ no big deal for GnuGo, but apparently impossible to solve for those strong MTCS programs.

In my case, although I can beat GnuGo consistently, I still use it for review, to check out life and death situations as well as yose. So that means that in GRP, I won't use it for the analysis, but I will use it in review ("open position" mode). GnuGo plays to maximize the score, not the winning probability, so when a life and death situation appears on the board (or similar with yose), GnuGo will just go for the kill, while MCTS bots are happy to let the group live if it maintain a good winning rate, so they will tenuki and you don't know it the group could have been killed.
I am the author of GoReviewPartner, a small software aimed at assisting reviewing a game of Go. Give it a try!
User avatar
djhbrown
Lives in gote
Posts: 392
Joined: Tue Sep 15, 2015 5:00 pm
Rank: NR
GD Posts: 0
Has thanked: 23 times
Been thanked: 43 times

Re: Announcing GoReviewPartner - v0.10 (supporting Leela Zer

Post by djhbrown »

pnprog wrote:GnuGo has good life and death basics
really?! from having looked at its code, i wouldn't have expected that. that was awhile back, so i can only report general impressions, which were that it was a pretty hit-and-miss grab-bag of ad hoc heuristics. but i suppose if its search area were constrained to, say, one corner, it should be able to follow enough paths to find a solution to tsumego problems.

you have used it to help you; do you recall any specific examples where it did so and can you say what you learned from those? maybe a note in the "what helped you improve?" thread in Beginners?

i remember looking at some tsumego problems 40 years ago, and thinking that they were so artificial as to be useless. however, i have to confess that these days life-and-death is one of my weak points :)
i shrink, therefore i swarm
User avatar
pnprog
Lives with ko
Posts: 286
Joined: Thu Oct 20, 2016 7:21 am
Rank: OGS 7 kyu
GD Posts: 0
Has thanked: 94 times
Been thanked: 153 times

Re: Announcing GoReviewPartner - v0.10 (supporting Leela Zer

Post by pnprog »

Hi!
I just want to give a quick update on the work in progress for the "Live analysis" feature.

So far so good, adding the feature appears to be suspiciously easy: I did not have to break to much existing things in GRP to make it fit into the existing code, it fact it pushed me to clarify my code and things that what not so clear to me until now (in term of code architecture) are starting to make sense. I guess I must have graduated to SDK in term of python programming :lol:

So here is a screen-shot during a live analysis game:
live2.png
live2.png (53.63 KiB) Viewed 18243 times
The analysis is ready to open at any time, which is pretty cool, as you can quickly check how is the game going on, and resign eventually if you are already loosing too much.

So here is what the setting panel looks like:
live0.png
live0.png (24.23 KiB) Viewed 18243 times
live1.png
live1.png (29.72 KiB) Viewed 18243 times
First step is to choose what bot will be used for the analysis. Second step is to choose who will be playing for black and white.
  • If black and white are selected as "Human" then it becomes more like a "spectator mode", and it's up to you to enter the moves of both color one by one. This might be useful for people making a live game commentary.
  • There is the possibility to use the same bot instance that performs the analysis as your opponent. In that case, the game and the analysis proceed at the same time.
  • One can choose to have the same bot instance that performs the analysis to play for both colors. In that case, in becomes a self commented self game. Might be interesting to use this to check out latest progress of Leela Zero.

In case both black and white are played by bot, then there is a button available to pause the game.

Then, in case a different bot that the one used for analysis plays as black or white (or both), then there is an option to avoid overlap thinking time. There are some case where overlap thinking does not matter:
  • One bot mainly uses CPU and the other mainly uses GPU
  • The bot thinking time is limited by a number of playout
  • The bot is actually running on another computer, sort of GTP over the network (must be common at Deepmind).
In other case, it might be better to ensure the 2 (or 3) bots get to think at a different time.
In such case, the playing bot is given priority over the analysing bot, the later waiting for the human to play to proceed on the analysis.

The two features I still need to add are:
  • Possibility to undo one or more move during a game
  • Possibility to restrict the analysis to only black or white

The issue I have at the moment is regarding the bots settings. GRP currently proposes 2 settings:
  • One for the bot to use during analysis (typically with a long thinking time)
  • One for the bot to use during review, in the "open position" panel (typically with a shorter thinking time).

Now, for the live analysis, I would be nice to have black and white bots having a shorter thinking time, while the analysis bot keeps a long thinking time.
But in case one want to use the analysis bot as either black bot or white bot, then it would be nice to have it to play with a shorter thinking time, even better, the possibility to choose.

Still, I don't want to have a third or fourth setting possibility for each bot, as it's quickly becoming too confusing, and requires to much work to set up.

So in the end, I will probably propose only 2 settings per bots:
  • One long thinking time, that will be use mainly for the analysis
  • One short thinking time, that will be use mainly during review, and as black or white during live game

Then I should add the possibility to select what "Profile" to use in each case. Something like this :)

I mentioned above the potential to use GRP as an aid for live game commentary. In fact, if I am not mistaken, DeepZen is increasingly used by commentators for official games. I also believe software like GRP could be of some help for those of us who create video content on Youtube or Twitch, so after this live analysis feature is completed and released, I will spend some time thinking about what could make GRP useful for such use case. Let me know is you have some idea.
I am the author of GoReviewPartner, a small software aimed at assisting reviewing a game of Go. Give it a try!
johnsmith
Lives with ko
Posts: 136
Joined: Fri May 27, 2016 3:55 am
Rank: KGS 6 dan
GD Posts: 0
Has thanked: 47 times
Been thanked: 21 times

Re: Announcing GoReviewPartner - v0.10 (supporting Leela Zer

Post by johnsmith »

This live analysis - it means someone can regularly watch a pro game through GRP viewer and come back after the game and review saved variations? Or moves can be analyzed directly, on the spot? Or both? :)

In source files I changed direction of mouse scroll when viewing variations. Because I like normal scroll for going forward with moves. It's just a personal preference.
Is it possible to set 'real game sequence deepness'>=0 instead of just >=1? Because maybe someone doesn't want to see the next move on the left screen? I didn't know how to change this. The last version in which this worked was v0.8.
User avatar
pnprog
Lives with ko
Posts: 286
Joined: Thu Oct 20, 2016 7:21 am
Rank: OGS 7 kyu
GD Posts: 0
Has thanked: 94 times
Been thanked: 153 times

Re: Announcing GoReviewPartner - v0.10 (supporting Leela Zer

Post by pnprog »

johnsmith wrote:This live analysis - it means someone can regularly watch a pro game through GRP viewer and come back after the game and review saved variations? Or moves can be analyzed directly, on the spot? Or both? :)

Let say you are watching the 3rd game of the LG Cup final (Iyama Yauta vs Xie Erhao) on TV, then you enter the moves they play "in real time", and in the background, Leela is analysing the moves one by one as they are coming. Shortly after they play their first moves, you will see the "Start review" button appearing on the screen. This button open the classic RSGF file review interface. The review will only contain, let's say, the game 5 first moves that you entered already, and only the 3 first moves will have Leela's variations. The graphs will have data only for those 3 moves.

As the game progress and you enter more moves and Leela crunches more calculations, the review will contain more "data". On the screen-shot above, you can see "Game currently at move 21" and "Analysis currently at move 7". So it's a matter of finding the good thinking time setting (or play-out limit) for Leela so that the analysis progresses almost at the same speed as the game. If they play faster than Leela, then Leela will lag behind. I think a "thinking time" equal to the bio-yomi is probably fine. The players will progress faster than Leela during forced sequences, and Leela will catch-up when one player is taking a long time to play one move.

I need to make the review interface update automatically when more moves data become available. Currently, one have to open a new one to get the latest data.

Of course, the RSGF file is saved after each new analysed move, so it's still available for further study later.

johnsmith wrote:In source files I changed direction of mouse scroll when viewing variations. Because I like normal scroll for going forward with moves. It's just a personal preference.
Ok, I will see if I can add a setting for this.

johnsmith wrote:Is it possible to set 'real game sequence deepness'>=0 instead of just >=1? Because maybe someone doesn't want to see the next move on the left screen? I didn't know how to change this. The last version in which this worked was v0.8.
Should be easy to fix, I will check. But in that case, the left side goban becomes pretty useless no?
I am the author of GoReviewPartner, a small software aimed at assisting reviewing a game of Go. Give it a try!
User avatar
djhbrown
Lives in gote
Posts: 392
Joined: Tue Sep 15, 2015 5:00 pm
Rank: NR
GD Posts: 0
Has thanked: 23 times
Been thanked: 43 times

Re: Announcing GoReviewPartner - v0.10 (supporting Leela Zer

Post by djhbrown »

pnprog wrote:Let say you are watching the 3rd game of the LG Cup final
Then Leela won't have a clue what's going on, especially if she's running on my old steam-powered peecee.

... but suppose you are playing me, and cheating by getting GRP/Leela to tell you what to do...
i shrink, therefore i swarm
johnsmith
Lives with ko
Posts: 136
Joined: Fri May 27, 2016 3:55 am
Rank: KGS 6 dan
GD Posts: 0
Has thanked: 47 times
Been thanked: 21 times

Re: Announcing GoReviewPartner - v0.10 (supporting Leela Zer

Post by johnsmith »

I understand, thanks.
pnprog wrote:But in that case, the left side goban becomes pretty useless no?
Not useless for those who use it :D Sometimes I need it (if I haven't seen the game previously), and sometimes I don't (if I already saw the game and now just reviewing). A good thing about GRP is the ability to set it the way you like it. But it should be your professional opinion to decide what a user gets out-of-the-box. :bow:
User avatar
Dontbtme
Dies with sente
Posts: 97
Joined: Sun Jan 04, 2015 10:30 am
GD Posts: 0
KGS: 2k
Tygem: 2d
IGS: 1k
Wbaduk: 2d
OGS: 1K
Has thanked: 26 times
Been thanked: 20 times

Re: Announcing GoReviewPartner - v0.10 (supporting Leela Zer

Post by Dontbtme »

Okay, so first of all, thank you so much for this wonderful tool again! :D
Second, there have been quite a lot of improvements and it's already awesome as it is! :tmbup:
But the thing is: I HAVE A DREAM :lol: :
I play a game, then I ask GoReviewPartner to analyze it with say LeelaZero, to record what she would have done differently, and then I would read the sgf confortably like a book, using SmartGoKifu on my ipad.
We can rename the rsgf files into sgf already, and now that we can record only the best variation when analyzing, my dream is pretty much doable, except for a couple things...

Firstly, there's a Best Variation at every one of my moves, even if I played a whole sequence like LeelaZero would have.
I posted an example on EidoGo: http://eidogo.com/#BvoNhpj6
Now, for my second point, if you take a look at the sgf, you'll see some text at each move I played and at every variation, right?

_ For example, for the move I played, you'll have:
"Move 2 White to play, in the game, white played q4
Value network black/white win probability for this move: 47.6%/52.4%"

_ And for Leela's variation, you'll have:
"Value network black/white win probability for this move: 47.6%/52.4
Policy network value for this move: 26.75%
Number of playouts used to estimate this variation: 593"

Well, as it turns out, the winning percentages given at my move and on the Best Variation are always the same, meaning that they're both the Best variation's winning percentage.

So, anyway, given how I'd like to use it, GoReviewPartner would be perfect (to me) if:
_ I had Leelazero's best variation only when I played a different move than the one she would have.
_ I had the winning percentage both for my move and for the Best variation (to see how much worse my move was).

I imagine that for that last point I'll have to analyze the game from both colors' point of view, not just mine, but that's okay as long as I can decide NOT to record suggested variations for my opponent's moves.

That way if I play exactly like Leelazero would have except for only three moves in the whole game (that's my dream, remember :p), I would have an sgf with only three variations, with winning stats for these three moves and for the Best Variations Leelazero would have played instead.

I really like to review my games on GoReviewPartner as it is, but I also like to go quickly through brief resumés of my games (highlighting my mistakes) after some time has passed.
But maybe that's just me :oops: So anyway, thanks again for all you have done already. Your work is fantastic and helped me a lot :)
Bored with skillful play? Watch my blunders on my YouTube Channel
snippy
Beginner
Posts: 4
Joined: Sat Feb 10, 2018 4:21 am
GD Posts: 0

Re: Announcing GoReviewPartner - v0.10 (supporting Leela Zer

Post by snippy »

Hallo and kudos to you for all your work on this really helpful program!

I have a few points I want to input, however, that in my opinion could improve the tool even more:

- The probability on the left goban is of the current position and not of the move actually played, isn't it? I would find it much more usefull to display the latter, so you can directly compare what you did with what the bot figures to be right (especially if you played a move that the bot has not displayed as a variation).

- Would it be possible to sort the calculated variations (A,B,C,...) by probability? That would simplify things greatly since you could evaluate the possibilities without hovering the mouse over every move.

- In the same sense, I would much prefer a coloration where (for example) blue meant better than the actual move and red worse then the actual move, instead of >50% and <50%. The latter is just helpful in an even game situation, where the other is helpful in every part of the game. The colotation could even indicate the probabilities like in leela (redder -> higher prob.)

- I can't seem to get the text windows with the probs to scroll down. And the textual output is not that easy to read. Perhaps a extra window with the output in table form would be easier and you could even display all the variations inside.


Again, I really enjoy GRP and find it enourmously helpful and don't want my text to sound like nagging. Just that everything that is good, can still be made better :)

Thanks a bunch!
User avatar
pnprog
Lives with ko
Posts: 286
Joined: Thu Oct 20, 2016 7:21 am
Rank: OGS 7 kyu
GD Posts: 0
Has thanked: 94 times
Been thanked: 153 times

Re: Announcing GoReviewPartner - v0.10 (supporting Leela Zer

Post by pnprog »

johnsmith wrote:I understand, thanks.
pnprog wrote:But in that case, the left side goban becomes pretty useless no?
Not useless for those who use it :D Sometimes I need it (if I haven't seen the game previously), and sometimes I don't (if I already saw the game and now just reviewing). A good thing about GRP is the ability to set it the way you like it. But it should be your professional opinion to decide what a user gets out-of-the-box. :bow:
My current feeling is that I should try to make that left goban more useful. One possibility would be to reuse it for the "open position" mode. Problem is that I like to keep open more than one "opened position" opened at the time. Maybe a tab system, à la Firefox?
I am the author of GoReviewPartner, a small software aimed at assisting reviewing a game of Go. Give it a try!
User avatar
pnprog
Lives with ko
Posts: 286
Joined: Thu Oct 20, 2016 7:21 am
Rank: OGS 7 kyu
GD Posts: 0
Has thanked: 94 times
Been thanked: 153 times

Re: Announcing GoReviewPartner - v0.10 (supporting Leela Zer

Post by pnprog »

Hi!
Dontbtme wrote:So, anyway, given how I'd like to use it, GoReviewPartner would be perfect (to me) if:
  • I had Leelazero's best variation only when I played a different move than the one she would have.
  • I had the winning percentage both for my move and for the Best variation (to see how much worse my move was).

I think it's too specific to be part of GRP. What I can do for you instead, it a python script that takes the RSGF file and "strip" the extra variations and reorganize the comment to get the SGF you need. This would not require too much time for me to do. Then if more people find it useful it could become a standard feature of GRP.
I am the author of GoReviewPartner, a small software aimed at assisting reviewing a game of Go. Give it a try!
User avatar
djhbrown
Lives in gote
Posts: 392
Joined: Tue Sep 15, 2015 5:00 pm
Rank: NR
GD Posts: 0
Has thanked: 23 times
Been thanked: 43 times

Re: Announcing GoReviewPartner - v0.10 (supporting Leela Zer

Post by djhbrown »

pnprog wrote:too specific
i hesitate to jump in here, but i'd like to try and make a case for dontbtme's idea, which strikes me as being right on the button, and wouldn't be hard to implement 'cos it's just a couple of "If" statements:

when puzzling over history, it would be so helpful if (a) you didn't tell me where i didn't go wrong, and (b) when i do go wrong, you tell me by how much and where i should have gone instead. [i hesitate even more to mention this, but that's what naked Leela gives me anyway when i load an already played game into her; even Kogo].

then, you could strip off ALL the other statistics and variations which to my way of thinking are more clutter than information - but since there are plenty of others asking for every bell and whistle under the sun, maybe they could be made user-option choices.

as an analogy, when i use Libre Word, i switch off all the menus (which take up far too much space on the display) except the formatting one which i use all the time.

to me, Sabaki goes too far the other way, stripping off even the basic menu, which makes it a nightmare until you can remember "Alt" doesn't mean alternative, it means what you wanted in the first place! :)
i shrink, therefore i swarm
Post Reply