This is not an official KGS page.
Computer Go Tournaments on KGS Rules of Play
These tournaments are open only to computer programs. People may not enter.
All tournaments use Chinese (area) rules.
These are interpreted as specifying
positional superko;
so a program may not cause the same board position to appear a second time,
even with a different player to move.
Programs are encouraged to
play on, filling their own territory if necessary, until the status
of all groups is clear and the same to both players.
The Tournament Director has absolute discretion over all decisions.
Conditions for Entry
Which programs should be allowed to enter KGS Computer Go Tournaments is a difficult
question, which has been debated at some length on the
computer-Go mailing list.
This page gives the current rules. They are liable to change, so please read the page
from time to time. Some possible changes are listed further down the page.
Two divisions
With effect from the third KGS Computer Go Tournament, scheduled for June 5th 2005,
each tournament will be split into two divisions, a formal division and an
open division. The criteria for entering the formal division are stricter.
A program that qualifies to enter the formal division may choose to enter the formal
division, or the open division, or both. When you email the organiser to register it,
you should specify which division or divisions you want it to enter. Both divisions
may be played simultaneously, so you should only enter it for both if you have enough
computing resources to run both copies.
Formal division: Criteria for entry
A program that plays in the formal division must satisfy these conditions:
Permission of copyright-holders
Its operator must have the consent of the authors of all the copyright code
which it contains.
Uniqueness of move-generating code
All the code in it that is in any way involved in move-generation (i.e.
anything that causes the program to prefer one move to another) or position
evaluation must be unique among the entrants to the formal division. Code
that is involved only in non-essential parts of the program, such as input/output,
or scoring the position after the game is over, need not be unique. If two or
more people want to submit programs containing the same code to the formal
division, then the author of that code shall decide which may enter.
Known name of author
The tournament organiser must be told the name of the person or people who wrote
the program. He may require evidence that this really is the real name of the author.
He will publish this name.
Open division: Criteria for entry
A program that plays in the open division need only satisfy these conditions:
Permission of copyright-holders
Its operator must have the consent of the authors of all the copyright code
which it contains.
Original content
The program must have at least some original content. Thus running a copy of
GNU Go with changed settings should not be accepted.
Programs in both divisions are now expected to support this game-end protocol:
- To play in a tournament, programs must either implement both
"kgs-genmove_cleanup" and "final_status_list dead", or they must
play until all of their opponent's dead stones are removed from
the board. It's OK if "play until dead stones removed" is an
option, but they have to make sure that this option is turned on
whenever they are going to be in a tournament, or they will do
poorly in the tournament!
- Programs play as normal.
- After double pass in a tournament game, programs that support
both "kgs-genmove_cleanup" and "final_status_list dead" will be
sent "final_status_list dead", which will be uploaded to the
server as the list of dead stones. Programs which are missing
either of those from their list of supported commands will tell
the server that no stones are dead.
If there is disagreement, "kgs-genmove_cleanup" will be sent to
programs that support it, "genmove" to programs that do not. Note
that there cannot be a disagreement if neither program supports
"kgs-genmove_cleanup" (since after all both will have reported
all stones as alive!), so at least one program will get the
cleanup command.
- After a second double pass, both programs will report to the
server that no stones are dead, and the server will score from
there.
Documentation for the command kgs-genmove_cleanup is now included in the kgsGtp
tar, available from the KGS
downloads page.
Programs that fail to support this protocol will be allowed to enter.
However they will be liable to lose games, because their opponents'
dead stones may be treated as alive.
Interacting with your program
An operator may not interact with their program in any way during a game.
Nor may they permit anyone else to interact with it.
This includes passing information to it in any way and changing any of its settings.
The only exception to this is that an operator may instruct his program to resign.
If the program crashes or freezes during a game, its operator my re-start it
with the same settings.
An operator may change his program's settings, and alter and recompile it,
between rounds.