[computer-go] A new pairing system idea for CGOS

Don Dailey drd at mit.edu
Thu Oct 5 13:35:53 PDT 2006


While thinking about the problem of a fair pairing system for CGOS, I
think I have discovered an interesting alternative system for fair
pairings ...   turn CGOS into a tournament server!

Here is how it would work:

  1.  Play 1 Swiss tournament after another.  If a program is logged in
      when a tournament begins, it is automatically registered to play
      on the server.

  2. If a player drops out during a tournament, no worries.  That
     doesn't prevent a tournament from continuing.  If there are an
     odd number of players remaining  CGOS would schedule a bye.

  3. When a player logs in, he doesn't have to wait to play a game, he
     is scheduled to play games against others waiting around for the
     next tournament to begin.  ALL players are guaranteed a rated
     game whether playing in a tournament, waiting for a tournament,
     or enjoying a bye.


If you have the ratings of players available, which CGOS does, you can
pair Swiss tournaments fairly.  KGS doesn't have this (because
computers usually do not have ratings) but CGOS would know how to do
the pairing fairly and correctly.

Another idea to consider:

Perhaps a simpler way is to simply schedule a brand new ELIMINATION
tournament during each scheduling cycle.  Once you are in a tournament,
you stay there until you are eliminated.  But once you are free you
immediately play in the one that is about to start, since a new one
starts on each round.

I'm curious about the elimination tournament idea and what its
characteristics are.  At any given moment, many will be many happening
simultaneously and most of these won't involve the strongest players.
The strongest players of course will be in fewer tournaments.
However, when each tournament begins at least HALF the players
currently logged on to CGOS will be available to play!  That seems
like a good thing!

I still have problems with fairness perhaps.  If you are weak and tend
to lose most of your games, you will rarely get to play players near
your own strength because of how elimination tournament are supposed
to be paired.  The weakest players will play against someone in the
top half in the first round.     A possible solution is to arrange the
initial pairing table randomly.   But this only helps a little at the
expense of the stronger players who will now play each other less.
With randomized pairing charts, a really weak player will still likely 
play an "average" player in the first round, probably losing.

I believe the Swiss system will be more in tune with the design goals
of CGOS, but both ideas are very interesting.



- Don
 




More information about the computer-go mailing list