Ratings Algorithm

The AccelRat ratings algorithm starts with seed ratings for all the players and a set of tournament game results, and finds a new set of ratings that maximize the likelihood of these data.

Likelihood Function

The likelihood function to be maximized is the product of the percentage expectancy functions for all the game results, times the product of the seed rating prior density functions.

Simultaneous Estimation

An iterative search algorithm is used to find a ratings vector that maximizes the likelihood function. Basically, a change vector is calculated for all the ratings, the vector is applied, and the likelihood function is checked to make sure it is greater. When no further improvements can be found, the algorithm stops.

This algorithm converges quickly, and is not sensitive to starting position. On a contemporary PC, run times are on the order of 1 second for order of 100 players and 1000 games, and increase linearly with the number of players and the number of games.

Standard Error

A marginal posterior standard deviation (sigma) is calculated for each new rating. These sigma values are carried forward in a ratings database for future updates.