rats - Perl script to calculate ratings adjustments from go tournament results (using AGA format files).
$ rats [ round_number ]
The rats script uses the same algorithm used by the American Go Association (AGA), and allegedly the Internet Go Server (IGS) to adjust go players' ratings from new game results during a tournament. The adjusted results might be used (for example) to feed the pairing routine for the next round (similar to how the Accelerat pairing program works).
Normally, rats attempts to read the register.tde file and all the available round files (in the form 1.tde, 2.tde, etc). If round_number is provided on the command line, rats reads only up to (and including) that round:
$ rats 3 # adjust ratings based on rounds 1, 2, and 3 only
NOTE: The rats implementation is taken from Fred Hansen's "Pseudo-code for a ratings algorithm" posted to rec.games.go in late 1995, also currently available at:
Restore sigma after making proposed changes in compute_player_impact.
Default: sigma is not restored
Do not include player PRs in total probablility (only game POs).
Default: player PRs are included
Do not perform all-wins and all-losses correction. Correction for players who have all wins or all losses is done by adding a 'fake' game with slightly lower probability than his least likely game, and then make the result the opposite (ie: a loss for an all-wins player and a win for an all-losses player).
Correction is never done on round 1 since everyone is an all-wins or all-losses player after round 1.
Default: correction is done if round > 1
Read in a previous ratings file (output from a previous rats run) and use the modified ratings instead of the ratings from the register.tde file.
Default: ratings are taken from register.tde
A number by itself (no minus sign) is taken as the round to calculate ratings for.
Default: rats calculates new ratings from all available result files (1.tde, 2.tde, etc). Games with no result are not included.
Reid Augustin, <email@example.com>
Copyright (C) 2004, 2005 by Reid Augustin
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.5 or, at your option, any later version of Perl 5 you may have available.