Chess::Elo

Chess::Elo is a Perl module to calculate Chess "Elo" ratings.
Download

Chess::Elo Ranking & Summary

Advertisement

  • Rating:
  • License:
  • Perl Artistic License
  • Price:
  • FREE
  • Publisher Name:
  • Terrence Brannon
  • Publisher web site:
  • http://search.cpan.org/~tbone/

Chess::Elo Tags


Chess::Elo Description

Chess::Elo is a Perl module to calculate Chess "Elo" ratings. Chess::Elo is a Perl module to calculate Chess "Elo" ratings.SYNOPSIS use Chess::Elo qw(:all); # Alice is going to thump Bob... my ($alice_elo, $bob_elo) = (2100, 1200); # Oh no, Alice lost to Bob! my $result = 0; # 0.5 for draw, 1 for win my @new_elo_alice_bob = elo ($alice, 0, $bob); use Data::Dumper; warn Dumper(@new_elo_alice_bob); ;This module provides a single function, elo which allows one to calculate individual ratings based on performance. Typically, a player is given an initial provisional rating of 1600 points. In all cases, one gains and loses points as a function of the playing strength of both parties and the result of their encounter.The formula used is the same one used at magi-nation:http://www.magi-nation.com/Tournaments/ratingsfaq.htmOr, quantitatively speaking: A2 = A1 + 32 ( G - ( 1 / ( 1 + 10 ** ( ( B1 -A1) / 400 ) ) ) )A2 is Alice's post-game rating A1 is Alice rating before the game against Bob B1 is Bobs rating before the game against Alice G is the game result, in this case: 1, if A beats B 0, if A loses to B 0.5, if A draws to BMETHODS($new_a, $new_b) = elo($elo_a, $result, $elo_b)This function takes 3 arguments describing the result of a person with rating $elo_a competing with the person with rating $elo_b. The result argument is from the perspective of person A. Thus if A won $result is 1. If A lost, $result is 0. If A drew, $result is 0.5.EXPORTNone by default, elo upon request.Requirements:· Perl Requirements: · Perl


Chess::Elo Related Software