Go-Playing Programs / Discussion

Sub-page of GoPlayingPrograms

Table of contents

Which is the best Go playing program?

The Many Faces of Go

I think The Many Faces of Go is the best one. Handtalk is one or two stones stronger, but Many Faces has many extra features missing from other Go programs. It has a joseki dictionary that you can use for reference or to test your knowledge, with about 60,000 moves. It has a very good game editor that understands both .sgf and .go formats. You can easily add or remove variations, or insert missing moves, or even move stones that are on the wrong point. It has a great tutorial for beginners and includes all of the Go problems from Graded Go Problems Vol 1.

And it has the best, most realistic graphics.

-- David Fotland, Nov 2000

I would have to agree somewhat. If one is trying to learn the game of Go, I think Many Faces is good for people from beginners through upper kyu players. It has a lot of instructional tools as well as multiple levels of play. If the purpose of your program is for editing games and creating demonstration games or lessons, there are limitations with Many Faces. For instance you cannot add multiple stones on the same move for demonstration purposes. For editing, I think a free program called WinMGT is very useful, but a little less user friendly.

-- Steve Rothman? 7K


Does anybody know HOW strong GNU Go 3.2 is in terms of usual ranking? I somewhere read that Gnu Go has a ranking of 14 kyu, but I have no idea if this ranking applies to the 3.2 version or to an older version.

dnerra: On NNGS (playing on a 266 MHz Pentium), GNU Go 3.2 has had a rating of 13 k*. But if you play against if often, you will (either conciously or unconciously) learn its weaknesses; a lot of 7 k* can beat it at 9 stones pretty reliably. In other words, it's not possible to assign a fair ranking to computer programs.

Joorin: On NNGS (playing on a new 1.2GHz Pentium), GNU Go 3.3.11 has jumped to 11k* (1983). As of today (2002-11-11) it has played 1453 rated games. I managed to beat it with three handicap stones but it took a few tries and I'm still 18k. ;P~

Well, surely I am biased as well :-) Definitely, GNU Go is the best available Go program!!!

Oops it is not? Well, so why don't YOU help to improve it? Be assured, there is a lot to do. Some current hot topics in the GNU Go development:

  • Tactical reading ("Can White caputre this string?") is working well, but needs speed-ups.
  • Life-and-Death reading always needs improvements.
  • GNU Go's concept of influence and territory is not too bad. But: How to value the strategic effect ("Move A strengthens group B and weakens opponent's group C") of a move precisely and robustly?
  • GNU Go will probably soon have a good tactical reader that can analyze connections and cuts. But how should it use this information? E.g. A is connected to B, and B is connected to C, but A is not connected to C - are these three separate groups?

Other less hot topics that will be hot the moment someone gets interested in them may include an intelligent fuseki module (or is that not necessary), an intelligent way to automatically generate a big joseki database (intelligent means that this does not make GNU Go play joseki it does not understand) e.g. from professional games, and the perfect way to handle ko has yet to be found as well (GNU Go currently does not distinguish ordinary kos from multistep kos, approach move kos or kos with lots of local threats.)

Any ideas? Just e-mail gnugo@gnu.org.

Having said that: Many Faces IS a nice program :) I liked it quite a lot when I was beginner, although it was less strong at that time.


As a side note: In a way, David Fotland himself initiated GNU Go! In a post to rec.games.go a couple of years ago, he suggested (after explaining why he -- understandably -- would not like to do the tedious work to port Many Faces to Linux), he suggested that the Linux people should get together and try to write a Go program themselves. Daniel Bump replied "That seems like a good idea", started working on such a project, and he is still the (co-)maintainer of GNU Go today.

Neal McBurnett:

I just started using GNU Go, and ran across some neat features that can help beginners learn. E.g. you can get GNU Go to analyze your game with this command:

gnugo -l GnuGo-nealmcb.sgf --replay black -o replay.sgf

It annotates the game board with its estimation of the value of the most interesting points to play, and suggests alternative moves.

Of course this is only helpful for weaker players. Note: I had to remove the string "HA-1073743459" from the replay.sgf file before cgoban could read it - seems like a bug?

dnerra: Of course that is a bug -- and a recently fixed one (thanks to running valgrind on GNU Go). :)


The demo version of The Many Faces of Go, called Igowin, looks quite nice. It has the standard Way to Go tutorial, it plays only on 9x9 and you can only crank up the difficulty by getting better yourself (after studying a little bit I rocketed up from around 23kyu with 4/5 handicap to 12 kyu with no handicap, so I guess I'm getting better).

I actually like the fact that you can't undo moves, as this forces you to think and not just click somewhere in the hope that your move works out OK. Too bad I don't have the cash to buy the full version (yet?). I think this program is nice for beginners to practice their tactical skills.

Get the demo at David Fotland's page, which is at [ext] http://www.smart-games.com.

-- JanDeWit


Another program I play against quite a lot is TurboGo, which is shareware, but only with the lowest 3 strength levels (out of five). This program has the advantage of being able to play on the three main board sizes, it's available in many languages, it can explain its moves, it has a 45000 move joseki database (I only use the 3-3 point invasion section for handicap games :-)

I think I'll stick with this program while I'm learning. The registration fee is quite modest, but I'm not sure what increase in playing strength it'll get you... (the program was European Computer Champion in 1999)

The homepage is [ext] http://www.turbogo.com.

-- JanDeWit

Hyppy I registered TurboGo a while ago to try a tinker with it for learning. I just went back to it and won by a fairly large margin (25 I think) on difficulty level 5. I'm only 21k KGS, so I don't think I'm going to be using TurboGo anymore, at least without handicaps for the computer. Igowin still gives me trouble at 7-8k though.

Further comments

I really wish there was an option to turn off undoing moves, I'm afraid this is going to spoil my Real Life playing habits! Maybe a 'mark for analysis' button would be better for me!

-- JanDeWit

Sbaguz: I totally agree with Jan de Wit. A beginner has to start with Igowin and afterwards they can go on with TurboGo, but next they need to try WinHonte... you must try WinHonte! This program (no time limits, no features locked, 19x19 board) has poor graphics, but it's quite strong and aggressive. I'm a beginner, but I can usually beat TurboGo at the fifth (maximum) level: against WinHonte I need 3 stones at least at a middle level to have a little chance of winning! Lately I noticed a serious problem about points counting (or I could say about life and death evaluation) in WinHonte: you often had to capture dead stones to have a "correct" score. I have mentioned it to the program creators and they have told me this bug has been fixed in the brand new 0.94 version. Now I'm testing this. In the meantime I've tried another Go playing program called Aya. Aya is freeware and 19x19. It's stronger than TurboGo but not so strong and aggressive as WinHonte (Aya is about 12 Japanese kyu according to its author) and its graphics are a little better than WinHonte.


I think WinHonte is very good. I can beat it easily though without handicaps (and I'm only a 28k!) I'm now trying a higher level.

There are a lot of bad habits that Go players get stuck in, but undoing moves is probably the worst. It is impolite to ask for an undo once the stone is on the board (or even worse, after your opponent has responded!), so it isn't at all a healthy habit. Besides, learning to visualize your moves _before_ they are played is an important step towards strong reading abilities.

Jan de Wit: Writing about it made me fully aware of the badness of my habit. Most of my games so far were against computer programs or people of my own or lower level, so luckily everybody gained something from me saying "Oops, you probably didn't see this, but this is bad because of..." This way I get to test my (after the fact) reading abilities, and I show them what I'm thinking about.

For the record, I've really stopped using undo. I just turn off the all-too accessible speedbar, and jot down the move-numbers where I went wrong, for later analysis or replaying.

I want to split this discussion into two parts, Bad Habits and Go Playing Programs for Beginners but I'm not entirely sure how to do this without a major page overhaul & loss of data. Maybe Arno Hollosi or Morten Pahle can advise me?

By the way (more on topic), writing stuff for SL is good for my skills! Between my editing sessions I jumped from level 12k to 9k at Igowin and I have beaten TurboGo repeatedly at the 13x13 level without handicap... I don't think this is saying much, to me it felt like a marked increase (I get the opening stage now, though I'm still not very good at tactical stuff). I'll write an article about it someday!

Dieter Verhofstadt (1kyu) writes: I have played against Igowin, TurboGo, a Korean game that I don't know the name of, (GoranSiska was it FunGoe??) and Wulu. For editing I always use WinMGT.

All of them are shareware, and only TurboGo has a 19x19 included in its shareware. On a 13x13 Wulu is the better player by far. I'm playing it at its highest level, and if it weren't for me taking back a move, I would have lost a couple of games already.

Since my employer expects me to gain expertise in the extraordinary programming language of Smalltalk, I've been working on a program myself lately. Phase one is just accomplished: it understands moves, makes the correct order of capture and suicide check, doesn't allow ko, and knows how to calculate a score. It's text-based however, and making a nice user interface is phase 2. Phase 3 will be making it to play itself, and phases 4 until infinity to play well.

I found a remarkable similarity between the way my program understands the goban and the Tromp Taylor rules. The only difference is that it does not allow suicide and the TT-rules do. Anyway, I invite everybody to have a look at this magnificent ruleset, and the day the international community decides to acknowledge them as the rules, a big barrier for people to learn the game, will be broken.

Scartol: Is there anyone else out there who enjoys Macintosh Go?

Fhayashi: For MacOSX, Goban by Sen:te software is pretty good. It can serve as a client for the IGS/NNGS servers, and also comes with GnuGo 3.2 I believe it can also serve as a front end to any go program that supports the same protocol.

On a separate subject, I rather like CGoban2 for editing. It has a more intuitive way of handling variations.

grikdog: Second the remarks about Sen:te Goban. Also, Mac OS X has Java built in, so you can run gGo, Jago, Jigo, etc. out of the box. glGo 1.1 Beta allows you to score GNU Go games, as well as play them, so that's an option. If you get obsessed with Go games and all you have is Mac OS X, you can buy Microsoft's Virtual PC 7 with Windows XP which, under emulation, is about as slow as the old i286 machines. That allows you to run Go++, Igowin, WinHonte, and more. Also, provided you install it yourself, you can fire up the Mac's X11.app and run CGoban 1.9.14 in the unix X Windows environment, not to be confused with Kiseido's proprietary CGoban2, also good on Mac.

Aloysius Leeson? writes: Does anyone know if a go program exists for the nitendo gameboy platform? It would be great to be able to play go on the train. I am still a beginner and therefore still get a good game out of most shareware go programs.

Syckls: There are two Hikaru no Go games (Japanese only) for the Game Boy Advance, HnG and HnG 2. The first one is relatively stronger but takes a long time on the harder levels. The second one goes faster but is considerably weaker. The problem is, I can't find either of these games being sold on the web. www.yesasia.com seems to be the most likely area, but as of November (maybe even before that) they have been out of stock on it. So, your best bet is to find a Palm version of Igowin. In the meantime, can anyone who has one of the HnG games please tell me where I might get one?

iff: Does anyone know how good (extensive, recent, correct etc) the joseki dictionary of the many faces of go for the palm pilot is?

Which is the strongest Go program?

dnerra: If you change the question to "What is the strongest program?", I have a personal favourite: Haruka. This is my impression from looking at Computer Go tournament games.

A ranking as of 2002 is given in the rec.games.go FAQ.

This is a different question than which is the best program, which may take lots of other features into account, like pretty interface, Go server client, etc.

This is a hard question to answer these days; recent competitions have not seen the participation of many of the top commercial programs, and there have been revs of many top programs since they last competed. The last competition which had broad participation of the top commercial programs was the 2003 Gifu Challenge. An [ext] informal report in January 2007 by the author of Aya used GNU Go as a yardstick to compare some of the top programs. A comprehensive list of all go tournaments is [ext] here.

Update: In July 2007, a [ext] match was played on KGS between CrazyStone and KCC Igo, which CrazyStone won 15-4.

Update: In December 2007, CrazyStone won the KGS monthly tournament and the UEC Cup in Japan, ahead of MoGo in both cases.

Update: The 2008 [ext] International Computer Games Championship had a strong lineup of Monte Carlo searchers (Many Faces v12, MoGo, Leela, Aya, and Fuego). CrazyStone and Go Intellect dropped out at the last minute. (KCC Igo was refused entry due to past allegations of plagiarism.) The old guard of commercial programs remain absent.

Update: In March 2009, a new MC player called Zen (go program) was the first program to maintain a 1d KGS ranking for 20 games. Zen is also at the top of the Computer Go Server, the only program with a plus result against Crazy Stone. Zen lost twice to MoGo in the April KGS tournament but won the 2009 Olympiad ahead of Mogo and Fuego. The author Yamato is planning to release Zen commercially. In addition, [ext] Stefan Mertin published the latest results of his 19x19 tournament of classical programs.


As of November 2010, this is my ranking:

  1. Fuego, 2010 UEC Cup winner
  2. Zen (go program), 2009 Computer Olympiad winner
  3. Erica, 2010 Computer Olympiad winner
  4. AyaMC is 3-4 stones stronger than classic Aya
  5. Many Faces of Go v12, with Monte Carlo search, 2008 Computer Olympiad winner
  6. KCC Igo (Ginsei Igo, Silver Star), 2006 Gifu Challenge winner, 2009 UEC Cup winner
  7. CrazyStone, 2007 & 2008 UEC Cup winner
  8. MoGo 2007 Computer Olympiad winner
  9. Leela
  10. Valkyria
  11. Haruka (Saikouhou)
  12. Goemate/Handtalk (Shudan Taikyoku)
  13. Go++ (Tensai Go)
  14. Suzie (by the author of GoAhead)
  15. GNU Go v3.7.12
  16. Go Intellect
  17. Fun Go
  18. WinHonte
  19. FirstGo
  20. Many Faces of Go v11 (AI Igo)
  21. GoAhead
  22. Aya, Katsunari

I find it amusing that there is so little discussion of this topic in Go and computer Go circles. There are entire chess sub-cultures and dozens of websites, rating lists, and automated tournaments devoted to comparing the strengths of all the computer chess players. As far as I can tell, only [ext] Stefan Mertin is providing this kind of service, and for both the 19, 13, and 9 board sizes. Maybe it is all concentrated on the Computer Go Server with the old commercial programs playing catch-up. -- IanOsgood?

PlatinumDragon: Maybe my computer is weak because MoGo could give not Igowin 3 stone handicap. MoGo would resign at 3 stone handicap to Igowin. This is also my best play against Igowin, even though KGS 25k players are stronger than me on the 9x9 boards. With enough good luck, I push Igowin to 4 stone handicap, but I always lose to that. It took me 37 stones to defeat MoGo on my computer without any living white stones after 272 moves. I could not totally take over the board at 33 stones, so I increase to 37 stones, and MoGo could not survive a single group when giving me 37 stones. Well, actually, I set the time limit to zero in both cases: putting MoGo against Igowin, and playing against MoGo.

Fuego vs. MoGo: The biggest problem with looking at the ratings on the Computer Go Server or KGS is that the strength of the programs is very, very dependent on the power of the machines running them. For this reason, it is very difficult to compare the quality of the software based on these ratings. To get a better comparison, you really need to run tournaments where each program uses the same amount of processing power. (Note that I say uses, not has access to, because the classic programs are often single-threaded, and cannot use most of the power available on modern machines.)

As an example, recently (June 2010) I did a rough comparison between some of the free engines out there that contradicts the common perception that Fuego is stronger than MoGo. (Fuego is ranked ahead of MoGo on the list above, and on the Computer Go Server's 19x19 ELO rankings.) Note that on the Computer Go Server MoGo runs on only one core, while the versions of Fuego ranked above it run on 2-8 cores.

I compared the programs listed below, giving each program one thread only and the same time constraints of 5 seconds per move. They are listed below from strongest to weakest. In all cases, a lower ranked program almost never beats the program ranked next above it. I include no statistics, because this was a very rough, impressionistic test conducted one afternoon. To do a proper test would require much, much more time.

1. MoGo release 3

        (mogo --nbThreads 1 --collectorLimitTreeSize 800000 --pondering 0 --19)

2. Fuego 0.4.1

        (uct_param_search number_threads 1, uct_param_search lock_free 1
         uct_max_memory 2000000000, uct_param_player reuse_subtree 1
         uct_param_player ponder 0)

3. GNU Go 3.8

        (gnugo --mode gtp --chinese-rules --autolevel)

4. Indigo2006.19x19 version of 20/9/2006

        (Indigo2006.19x19 -gtp)

5. Aya 634e

        (wine Aya.exe --mode gtp --level max --chinese-rule)

6. Go169

        (wine Go169.exe)

7. AmigoGTP 1.7


All games were run using gogui-twogtp on a 2.66GHz 4 core Intel i5 box with 8GB of memory, running Linux. The programs were chosen for their easy availability. If I do the test more rigorously in the future, I would try to include more programs. Some of the programs (Indigo and Aya, in particular) come with little or no documentation on how to tweak them, so perhaps their performance could be improved.

The notable result is that a two-year-old version of MoGo thrashes a six-month-old Fuego as a matter of course when given the same amount of computing power. (Fuego almost always resigns while behind by over 30 points.) MoGo does this while using less CPU and about 1/2 the memory. MoGo retains its lead when both programs are given more time to think (20 min + 15sec/move byo-yomi, pondering on).

(BTW, I am not a MoGo partisan. I'm rooting for Fuego in the long term, because I heavily favor open source projects and because of its impressive configuration and analysis features. But it looks like there is still a lot of work to be done.)

I say we need more hardware-neutral competitions! -- Alex Beels

IanOsgood?, 10/2009: No disagreement here; the World Chess Championship at the Olympiad has held a uniform platform event the last two years. The Computer Go mailing list is currently debating the merits of a uniform platform event held concurrently with the main championship. They are mainly arguing about what that uniform platform should be (a cloud? a small cluster? an 8x SMP box?). As the 2008 US Computer event showed, even GnuGo has a chance when the platform is small enough (laptops).

Mogo did beat Fuego in the 2010 Computer Olympiad (though this time Mogo had the 150 to 56 core advantage).

Also see KGSBotRatings and Playing Monte Carlo Programs

Go-Playing Programs / Discussion last edited by IanOsgood on November 30, 2010 - 07:28
RecentChanges · StartingPoints · About
Edit page ·Search · Related · Page info · Latest diff
[Welcome to Sensei's Library!]
Search position
Page history
Latest page diff
Partner sites:
Go Teaching Ladder
Login / Prefs
Sensei's Library