Using Go4Go database with Kombilo

Overview

Kombilo is a free Go database program. It performs pattern search, allowing users to search Go board positions, therefore very suitable for studying josekis and fusekis. In this article, I will show to use Kombilo with Go4Go database.

Linux Installation

I assume that readers of this section have some experience working with a Linux operating system. For many Go players with strong technical backgrounds this should not be a problem. If you are using Windows, please skip this section and use Kombilo's Windows installer instead. You may also consider using Drago, a native Windows application which internally uses Kombilo's pattern search algorithms.

Unlike many other open-source projects, Kombilo has very well written documentations on its website (http://u-go.net/kombilo) with step by step instructions on installation on a Ubuntu Linux. What's shown here is a list of steps I had to take to set up Kombilo on my PC running Fedora Linux (should work with CentOS and RHEL too).

First, I needed to donwload the latest version of Kombilo and unpack it in a directory where I want it to be installed.

wget https://bitbucket.org/ugoertz/kombilo/downloads/kombilo-0.7.4.tar.gz gunzip kombilo-0.7.4.tar.gz tar xvf kombilo-0.7.4.tar

Next I needed to compile the pattern search extension. The main Kombilo program is written in Python. However, the pattern search algorithm is computational intensive and requires another programming language C++ to provide efficient implementation. To compile the extension, I needed to:

cd kombilo/lk python setup.py build_ext cp libkombilo.py build/lib.linux-x86_64-2.7/_libkombilo.so ../src/

Depending on your system, the paths in the cp command can be slightly different. The compilation was unsuccessful in the first attempt because the compiler required additional libraries that are normally not installed on an ordinary system. I needed to retry after sorting out all the dependencies by:

yum install boost boost-devel

Next, I tried to start running Kombilo by:

cd ../src ./kombilo.py

Again, this was unsuccessful in the first attempt because Kombilo relies on several Python modules which are normally not installed on a day-to-day system. I needed to retry after installing additional packages by:

yum install python-devel python-configobj tkinter python-pmw

Throughout the process, clear error messages were available to guild my next action so the installation was actually not that difficult as shown here.

Windows Installation

Installing Kombilo in Windows is much easier because the package contains all the dependent libraries and can be installed like any windows applications - just double click the downloaded file and follow instructions. However, before you start, consider using Drago, an application built on top of Kombilo's search algorithm. In my opinion Drago is slightly easier to use and has better performance (because it is specially built for Windows).

Importing Go4Go database

Start Kombilo, from its menu, select Database then Edit DB list. Assuming your Kombilo installation is new, no database would appear in the popup window. Click Add DB button, select from your file system the directory containing the Go4Go collection (the official Go4Go collection package you obtained from our Game Delivery Service should have been unzipped somewhere already), then click OK. It took about 30 seconds on my 2-year old laptop to import the whole Go4Go collection containing 30000+ SGF files (a progress bar is available on the background window).

Game records compiled by Go4Go.net are of high quality and should rarely contain errors. If errors do occur, Kombilo will give error messages while importing the games. Please kindly send such messages to support@go4go.net so that we can fix our database.

After importing the games, your screen should look similar to the following capture:
IMAGE(/go/sites/default/files/field/image/kombilo01.png)
As can be seen, a new entry is available in the list of database, and a list of games is now in the upper-right corner of the background window. Click OK to close the Edit database list window, and you are now ready to do some pattern searches!

Joseki search

I will demonstrate how to use Kombilo to study a joseki. First, click the board to set up the pattern to be searched. Next hold the right button of your mouse while dragging on the board to highlight a rectangular area where Kombilo should apply its pattern search algorithm.

The variation I have been studying (a 3-4 opening with high approach and two-space high pincer) was developed by the Chinese and Korean professionals around year 2000. It can develop into very tricky situations.

Once the pattern and search area are set up properly, click the Start pattern search button (the second button showing a magnifying glass on the right panel, as shown in the screen capture below) and let Kombilo to do the magic.

IMAGE(/go/sites/default/files/field/image/kombilo02.png)

As seen, Kombilo returns 5 possible next moves marked as A to E. A total of 28 Go4Go games are found to contain this joseki. Double-clicking the entries on the list will open the actual games on the board so that one can study how professionals used this joseki. Here are some more tips:

  • Press the 1-click mode button (the fifth button showing a mouse on the right panel), a new pattern search will be automatically performed every time you play a stone on the board. Keep clicking letter 'A' to follow the most popular sequence in this joseki.
  • You might get lost when opening a real game because the pattern you are studying could appear in a different corner (Kombilo's pattern search takes into account board rotations and mirror images). I find it helpful to select Options menu and check Show last move option.

In this article I have only scratched the surface of using Kombilo. But hopefully this can help you start using the software quickly.