Show HN: Play Go Against a Deep Neural Network
chrisc36.github.io
chrisc36.github.io
It filled in some of its own territory to capture a dead group I had in a corner. It's particularly vulnerable to trick moves -- I was able to set up some pretty horrifying ripoffs by throwing a stone in to make a cut and reduce a liberty, which it ignored, and then I could capture from the other side.
It plays joseki reasonably well and does pretty OK with shape. I think if there were a way to train it against tsumego it would get a lot stronger.
It would be kinda neat to be able to download an sgf of the game with it.
edit: this might be fixable: it confuses snapbacks with kos; I set up a snapback in a second game and it wouldn't let me capture the group because it thought the situation was a ko.
edit #2: I played two more quick games, more honte this time, and it killed me pretty badly. It's difficult to keep the game even during the opening and if I don't set up a complicated fight then it wins by a handy margin.
like for example, it will play out the ladder because a pro would play there since the ladder doesn't work so escaping makes sense
however, if it works this loses the game
1) The training data only consists of positions that occurred in professional games. This means positions that are not likely to occur in that context have no training data, making the network liable to play poorly.
2) The lack of any kind of planning ahead means situations that require carefully working out future sequences of moves are not handled well.
However, even in those difficult situations the network is still usually able to play passably showing that there is at least some generalization.
Concretely, if the player plays worse does the net respond at that level ?
http://chris.printf.net/deepgo.png
Every corner shows a joseki, so there's been no non-standard play. But globally, white (the computer) seems to me to have blundered by allowing the combination of the lower-right and top-right joseki and N10.
Would be curious to hear if stronger players than me (~1d) agree. Maybe it's actually just much better than me!
Also, the "Hikaro no Go" anime series is absolutely wonderful, and that takes Hikaro from a young and completely new to Go kid through to being a professional, with short instructional videos for kids after each episode.
If your kid likes anime, Hikaru No Go is great.
OGS (http://online-go.com/) also has a large beginner community, but they have some trolls and sandbaggers so you might not want your kid on there unguided.
KGS (http://www.gokgs.com/) has a Beginner Room and a Teaching Ladder room, and it's sort of the de-facto online go community for westerners, but the Java client can be a bit broken and KGS isn't as active as it used to be.
And check for local clubs! I live in a fairly rural area and we (amazingly!) have about 6 regular members in our local Go club, and we love getting new players started. You can check the American Go Association to see if there's a club in your area (http://www.usgo.org/where-play-go), although their list isn't totally comprehensive.
The usual adage is "lose your first 100 games quickly"; once you've played around a hundred games and gotten the hang of the rules and basics, start checking out some of Nick Sibicky's videos on YouTube (https://www.youtube.com/user/nicksibicky/videos?view=0&shelf...). He teaches at the Seattle Go Center and does a really great job working with an audience of beginners. Start with his earlier lectures, because they're more geared towards real beginners, with later lectures starting to target more advanced amateurs as he gets more popular.
Enjoy!
As a very bad Go player, the bot managed to be even worse than me in several key engagements, giving me territory I had no right to capture. It still beat me by a little bit, though (I think -- the game never actually ended!) I wonder if complementing the NN with a more traditional tree search would help it play better tactically.
EDIT: Also, your paper link is broken for me: replacing https:// with http:// makes it work.
The network itself has no capability to pass its turn, which is a consequence of the fact it was only trained to predict player moves, not passes (we thought trying to learn when to pass would be difficult and a complication best avoided). So essentially you have to play until it seems clear to you the position is won or lost. If you played on indefinitely the DCNN would start playing terrible/suicidal moves rather then passing, so you could beat in the long run.
The "show analysis" button seemed to suggest a lot of poor moves for me, which surprised me given how the AI didn't actually seem to do anything like that (such as playing into an eye with no chance to win).
The bot was better than me in the sense that he knew exactly the best thing to do in "standard" situations and I don't. In a sense he looks more experienced and studied than me. But he did some stupid moves in some other situations in which he had to think more as a human, I imagine.