Free and open game server for Computer Go programs

Version:CGOS is a free and open source game playing server designed only for Computer Go programs.0.3.0

License:MIT

Operating System:Mac OS X

Homepage: cgos.boardspace.net

Developed by:

CGOS was designed to address a need in the computer Go community: a way to test the programs that play Go on a 9x9 board and rate them accordingly.

CGOS using the ELO rating system. Players earn numerical ratings points which can be used to predict their performance against other players. For instance, if one player is 100 points higher in rating than another, the ELO system we use predicts that he will win about 64% of the games between them. For 200 points it is about 76% of the games. It is over 90% for a 400 point difference.

For technical details on how players are rated using ELO, there is an excellent description on Wikipedia about the ELO rating system.

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, because the number of rating points in a population is more or less fixed.

With human population pools this can happen when younger players rapidly improve because their rating points have to come from the other players.

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.

At the current time there is one player called FatMan with a fixed ELO of 1800 on the 9x9 server and Gnugo-3.7.10 at level 10 serves as the anchor player on the 13x13 and 19x19 server, also with a fixed ELO of 1800. In a potential inflation or deflation situation these anchor players act as a stable presence to keep things in check.

For example 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. The anchor player effectly absorbs or removes points from the rating pool. In a deflation scenario, beating the anchor player adds points to the population.

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.