Appendix C. Go programs and servers

This appendix covers various ways to play Go offline and online. First, we show you how to install and play against two Go programs locally—GNU Go and Pachi. Second, we’ll point you to a few popular Go servers on which you can find human and AI opponents of various strengths.

Go programs

Let’s start with installing Go programs on your computer. We’ll introduce you to two classic, free programs that have been around for many years. Both GNU Go and Pachi use classic game AI methods we partly covered in chapter 4. We introduce these tools not to discuss their methodology, but rather to have two opponents that you can use locally for tests—and to play against them for fun.

As with most other Go programs out there, Pachi and GNU Go can speak the Go Text Protocol (GTP) that we introduced in chapter 8. Both programs can be run in different ways that prove useful for us:

  • You can run them from the command line and play games by exchanging GTP commands. This mode is what you use in chapter 8 to let your own bots play against GNU Go and Pachi.
  • Both programs can be installed to use GTP frontends, graphical user interfaces that make it much more fun to play these Go engines as humans.

GNU Go

GNU Go was developed in 1989 and is one of the oldest Go engines that’s still around. The latest release was in 2009. Although there has been little recent development, GNU Go remains a popular AI opponent for beginners on many Go servers. In addition, it’s one of the strongest Go engines based on handcrafted rules; this provides a nice contrast to MCTS and deep-learning bots. You can download and install GNU Go from www.gnu.org/software/gnugo/download.html for Windows, Linux, and macOS. This page includes instructions for installing GNU Go as a command-line interface (CLI) tool and links to various graphical interfaces. To install the CLI tool, you need to download the latest GNU Go binaries from http://ftp.gnu.org/gnu/gnugo/, unpack the respective tarball, and follow the instructions for your platform in the INSTALL and README files included in the download. For graphical interfaces, we recommend installing JagoClient for Windows and Linux from www.rene-grothmann.de/jago/ and FreeGoban for macOS from http://sente.ch/software/goban/freegoban.html. To test your installation, you can run the following:

gnugo --mode gtp

This starts GNU Go in GTP mode. The program will start a new game on a 19 × 19 board and accepts input from the command line. For instance, you could ask GNU Go to generate a white move by typing genmove white and pressing Enter. This returns an = symbol to signify a valid command, followed by coordinates of a move. For instance, the response could be = C3. In chapter 8, you use GNU Go in GTP mode as an opponent for your own deep-learning bots.

When you opt to install a graphical interface, you can start playing a game against GNU Go right away and test your own skills.

Pachi

You can find Pachi, a program considerably stronger than GNU Go overall, for download at http://pachi.or.cz/. Also, Pachi’s source code and detailed installation instructions can be found on GitHub at https://github.com/pasky/pachi. To test Pachi, run pachi on the command line and type genmove black to let it generate a black move on a 9 × 9 board for you.

Go servers

Playing against Go programs on your computer can be fun and useful, but online Go servers provide a much richer and stronger pool of human and AI opponents. Humans and bots can register accounts on these platforms and play ranked games to improve their level of game play and ultimately their ratings. For humans, this provides a more competitive and interactive playing field, as well as the ultimate test for your bot to be exposed to players around the world. You can access an extensive list of Go servers at Sensei’s Library, https://senseis.xmp.net/?GoServers. We present three servers with English clients here. This is a biased list, because by far the largest Go servers are Chinese, Korean, or Japanese and don’t come with English-language support. Because this book is written in English, we want to give you access to Go servers that you can navigate in this language.

OGS

Online Go Server (OGS) is a beautifully designed, web-based Go platform that you can find at https://online-go.com/. OGS is the Go server we use to demonstrate how to connect a bot in chapter 8 and appendix E. OGS is feature rich, updated frequently, has an active group of administrators, and is one of the most popular Go servers in the Western hemisphere. On top of that, we like it a lot.

IGS

Internet Go Server (IGS), available at http://pandanet-igs.com/communities/pandanet, was created in 1992 and is one of the oldest Go servers out there. It continues to be popular and has gotten a facelift with a new interface in 2013. It’s one of the few Go servers with a native Mac client. IGS is among the more competitive Go servers and has a global user base.

Tygem

Based in Korea, Tygem is probably the Go server with the largest user base of the three presented here; no matter what time of day you log on, you’ll find thousands of players at all levels. It’s also competitive. Many of the world’s strongest Go professionals play on Tygem (sometimes anonymously). You can find it at www.tygemgo.com.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset