This is not an official KGS page.

Third KGS Computer Go Tournament

Sunday June 5th, 2005

These results also appear on official KGS pages: Formal Division, Open Division which link to all the game records.


19x19 board
Chinese rules, komi 7½
Fifty-eight minutes each absolute time


Four-round Swiss


The first round started at 16:00 GMT, subsequent rounds started at two-hour intervals. The result was announced soon before 24:00 GMT.


For the first time, the tournament was held in two divisions, Formal and Open, with more restrictive entry conditions for the Formal division. Essentially, an entrant to the Formal division must not contain move-generating code used by any other such entrant, and its author's real identity must be known. A program may enter both divisions simultaneously (though it will have to use different names for each).

Formal Division

1stslugGo4 wins
2ndDariush3 wins
3rdbotnoid2 wins
7thgopp1 win

Open Division

1stGNU4 wins
2ndbotnoidx3 wins
4thIdiotBot1 win

The winner of the Formal division was slugGo, running on a cluster of about 18 processors (actually there were many more in the cluster, but only 18 were playing Go). Because slugGo uses GNU Go code, GNU Go was not allowed to enter the Formal division, so it entered the Open division, playing as GNU.

The winner of the Open division was GNU.

Description, Formal division

In round 1, gopp (Mick Reiss's Go++) beat AyaBot (Hiroshi Yamashita's Aya) by 65½ in a sensible game. Don Dailey's botnoid beat Ruhai Zhou's GoWind by a small margin. Frédéric Boissac and Eric Marchand's Dariush beat Tapani Raiko's Go81 by 79½. David Doshay's slugGo beat Alexander Melnikov's Neuron. (The developers of slugGo are David G Doshay, Charlie McDowell, Brian Chavez, Kai Wang, Will Zhang, Harry Wang, Phil Curry, and the GNU Go development team for the embedded GNU Go engine.)

In round 2, slugGo beat Dariush by 67½. Gopp lost on time to botnoid, as described below. AyaBot beat Go81.

In round 3, Dariush beat AyaBot by 13½. Gopp lost on time to Neuron, without making a move, as described below. SlugGo came close to beating botnoid by 368½ points, but passed at a critical point (move 242, and again at 246), allowing botnoid to rescue two of its dead groups, and halving the winning margin. A GNU Go developer who was watching pointed out that GNU Go would not have passed; these costly moves were entirely slugGo's idea.

In round 4 AyaBot beat Neuron by 140½. The revived gopp had a close and intelligently played game with slugGo; gopp appeared to be in the lead for much of the game, but slugGo played better yose, and won by half a point. GoWind won comfortably against Go81. Dariush had a good lead against botnoid, but won in an unusual way: the last meaningful move was 311, with botnoid still having 19 minutes left on its clock, but botnoid continuing making meaningless moves, slowly, while Dariush either passed or played promptly. Eventually botnoid lost on time, while thinking about where to play move 500.

Description, Open division

Round 1 saw two walkovers. Neu (a copy of Alexander Melnikov's Neuron) killed all of IdiotBot's stones, while GNU (GNU Go) did the same to SimpleBot. Botnoidx, a copy of Don Dailey's botnoid, had a bye. In fact botnoid should have been entered for this division, and botnoidx for the Formal division, but an error caused them each to play in the wrong division.

In round 2 GNU beat Neu by 149½, while botnoidx beat IdiotBot by 245½.

In round 3 Neu had an interesting game against SimpleBot. Neu is rated 13k on KGS, while SimpleBot is rated 30k. But SimpleBot's simple tactics of killing stones and making eyes was initially successful, and after its correct answer to Neu's self-atari on move 171, SimpleBot was clearly ahead. But it did not know how to follow this up, and Neu eventually won byb 97½. Meanwhile GNU beat botnoidx by 103½.

In round 4 GNU killed all IdiotBot's stones. Botnoidx beat SimpleBot by 72½.


Congratulations to slugGo and to GNU, the two undefeated winners.

Again the tournament was successful. However there were a few technical problems, as described below.

Tony Hsu sent the organiser an email which the organiser mistook for a registration for Tony's program GoSharp. He registered GoSharp for the Open division, but it never appeared.

GoWind somehow missed the start of round 2, and scored no points in this round, while Neuron was assigned a bye.

In its round 2 game against botnoid, gopp achieved a position in which it was over 150 points ahead, with over 30 minutes left on its clock. However, after the last move worth anything in the Japanese sense was played, gopp went to sleep instead of filling a dame, and stayed asleep until it had lost on time.

Most of the entrants had a problem with the game-end protocol. What happens in theory is that when two entrants which support the protocol disagree, at the game stop, about the status of a group, they resume play, and continue until all dead stones have been removed from the board. This never happened in the tournament. What did happen, at the end of four of the games, was that the players repeatedly alternated in marking groups as alive and as dead, and neither showed any appearance of trying to resume the game. The worst offender was Go81: in its round 4 game against GoWind it repeatedly marked as dead a group with 26 unassailable eyes. When this happened the organiser had to assign the win by force; but even this did not stop the players from continuing their futile argument.

One such argument was still taking place between AyaBot and Go81 over their round 2 game, when round 3 started. Both these players were included in the draw, but AyaBot did not turn up for its game with Dariush. This was eventually resolved by a KGS admin booting AyaBot, which promptly reconnected itself, and started its round 3 game.

Gopp slept through its round 3 game, losing on time to Neuron without making a move.

GoWind was seen to be present at the start of round 3, but was once more listed as "no show", and scored no points. Go81 was assigned a bye in this round.

Gopp's programmer realised that his program was asleep, and woke it in time for its round 4 game.

It is remarkable that all the defective behaviour listed above was by programs playing in the Formal division. The players in the Open division all behaved perfectly, and gave the organiser no problems. I congratulate them on this.