
9x9 All Time Ratings up through Previous Month
CGOS - A Go Server Just for Computers
Hosted by boardspace.net
See Current Standings for 9x9 Server
See Current Standings for 19x19 Server
CGOS keeps things simple. It is not a full featured game server such as The Kiseido Go Server which in addition to playing GO can be a place to socialize. Instead, CGOS focuses on the basics of simply letting computers play each other.
With CGOS, instead of deciding whether to make, accept or decline challenges, the server manages the scheduling of games. This is a feature of CGOS which allows fair pairings of matches and relieves a human operator from making these decisions. The idea is that you put your program on-line and then come back a few hours or days later knowing that your program will have played a variety of opponents.
Here are the details:
Time Control is 5 minutes Sudden Death.
Area Scoring.
No suicide allowed.
Komi 7.5
Positional Superko is used.
The game is over after 2 consecutive passes and then no further stones are removed.
This is not designed to deal with network lag in a "fair" way, if your program is running on a fast reliable network it will still have an advantage, however this should improve the situation where a program on a slow network continues to lose time on the clock when the local program is actually playing instantly.
Your program should be compatible with the CGOS Rules of Play mentioned in the previous section. In particular, if your program does not play out the game it will probably lose because after 2 consecutive passes, the game is scored and all remaining stones are considered alive.
Once your program speaks GTP, download the client script and documentation (currently there is no documentation but if you run the client without any arguments a usage message will appear) The latest client is version 0.98
| Platform | Engine Client | Viewing Client |
|---|---|---|
| 32 bit linux on x86 hardware | cgosGtp-linux-x86_32.tar.gz | cgosview-x86_32.zip |
| 64 bit linux on x86 hardware | cgosGtp-linux-x86_64.tar.gz | cgosview-x86_64.zip |
| Windows OS on x86 | cgosGtp-win.zip | cgosview-windows.zip |
| Mac OS-X (universal) | cgosGtp-darwin.zip | cgosview-darwin.zip |
| Multi-platform starkit | cgosGtp_kit.zip | cgosview_kit.zip |
| tcl script | cgosGtp.zip | N/A |
The viewing clients that are available are primitive prototypes, which may be improved over time, or completely rewritten. However, they work quite well and are very convient for viewing games as they are being played. To use them, you must specify a server and port (unless viewing 19x19 games.)
Here is how to observe 9x9 games: cgosview.exe -server cgos.boardspace.net -port 6867
Currently CGOS supports 2 servers - a 9x9 server and a 19x19 server.
Here are the details of each server:
| Server | Time Control | Address | Port |
|---|---|---|---|
| 19x19 | 15 minutes | cgos.lri.fr | 6919 |
| 9x9 | 5 minutes | cgos.boardspace.net | 6867 |
The viewing client defaults to the current 19x19 server, so it will not be necessary to specify server and port if you want to observe games on the 19x19 server.
The following link provides temporary instructions on how to connect to the 19x19 server and assumes a Windows operating system but the basic process is very similar for Unix and Mac's. However it is somewhat out of date as the latest client software is configurable. Nevertheless, there is still some useful information here:
Connect program to 19x19 server.
Over time many suggestions have been implemented and some will be implemented in the future.
For instance one possible scheduling algorithm is to schedule players as soon as they become available. The problem with this approach is that programs tend to become available in pairs - when a game between two players is complete those same two players suddenly become available and get paired together again. A situation we would like to avoid happening too often.
So CGOS uses a simple pairing system that is fair. Games are scheduled in discreet rounds where each available program is paired with another program by strength. As previously mentioned, CGOS attempts to match stronger player with other strong players and weak players with weak players. Each round begins a few seconds after all games of the previous round are complete.
The ELO system uses a constant usually called the K-factor (also described in the wikipedia). There are many articles on the web about which K-factors should be used under various scenario's. The K-factor determines how much your rating can change as the result of a single game, the lower your K-factor the less effect a single game will have on your rating.
In CGOS, each player has a K-factor (the constant in the ELO formula) that decreases with each game played until it reaches a fixed lower bound of 3.0. New players start with a very high K-factor and an arbitrary rating near the median of all the players. However the K-factor used to update a players rating after a game has completed is a function of the players current K-factor and his opponents K-factor. This is to ensure that players with high K-factors (and thus low rating confidence) will have very little impact on their opponents ratings. Likewise, each players K-factor is decreased after each game in proportion to the opponents K-factor. So if you play a new unrated player the result of that game will have little impact on your rating and your K-factor will not be reduced much.
A common problem with rating systems is rating inflation/deflation. Without controls in place, a rating pool will tend to drift up or down, similar to how an economy can suffer from inflation or deflation. For instance as younger players rapidly improve in a rating population they tend to deflate the rating pool. CGOS tries to solve this problem by the presence of one or more anchor players. An anchor player is a player that has a fixed rating and is almost always available for games on the server. On CGOS there could be one or more anchor players. At the current time there is one player called FatMan with a fixed ELO of 1800.0. In a potential inflation or deflation situation the Anchor players would serve as an "anchor" to keep the the rating pool stable. (For instance in an inflation scenario players with inflated ratings would be brought back down to reality when they play an anchor who is not inflating with them.)
CGOS distinguishes players by the confidence it has in their ratings. If a player has a low confidence rating (high K-factor) his rating appears with a question mark after it, and is not to be trusted. Once it reaches reasonable confidence it appears with no question mark after the rating and can be considered reasonably stable. Although this is not visually indicated, the confidence continues to increase until the K-factor reaches 3.0. In most cases, full confidence is achieved by the time 200-300 games have been played.
The following table can be used to predict the probability of a win by the higher rated player, given some specified ELO rating difference between two players.
|
|
Other Go Servers that support Go-playing Bots
Sensei's Library contains much information on Go and Computer Go.
A CGOS section in Sensei's Libarary which describes some of the program that play on CGOS.
John Tromp has make some interesting contributions to Computer Go