Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: How do I compute an unrated program's rating after a series matche

Author: Odd Gunnar Malin

Date: 08:58:49 03/18/05

Go up one level in this thread


On March 18, 2005 at 11:53:26, Odd Gunnar Malin wrote:

>On March 18, 2005 at 09:08:33, Mathieu Pagé wrote:
>
>>On March 18, 2005 at 07:01:57, Odd Gunnar Malin wrote:
>>
>>>On March 18, 2005 at 05:04:18, Tony Hedlund wrote:
>>>
>>>>On March 18, 2005 at 00:35:00, emerson tan wrote:
>>>>
>>>>>On March 18, 2005 at 00:27:04, emerson tan wrote:
>>>>>
>>>>>>I want to know the rating of Frizt 5.32 on Athlon 1200Mhz, so I run a series of
>>>>>>matches with programs that have established ratings.
>>>>>>
>>>>>>Supposed Fritz 5.32 scored from the following matches:
>>>>>>
>>>>>>Junior 8.0       elo 2782   14.5 - 5.5     Fritz 5.32
>>>>>>Shredder 7.0     elo 2772   12.0 - 8.0     Fritz 5.32
>>>>>>Deep Frizt 8.0   elo 2790   16.0 - 4.0     Fritz 5.32
>>>>>>Chess Tiger 14.0 elo 2719   11.5 - 8.5     Frizt 5.32
>>>>>>Hiarcs 9.0       elo 2747   13.5 - 6.5     Frizt 5.32
>>>>>>
>>>>>>How do I compute the elo of Fritz 5.32 ?
>>>>>>
>>>>>>Thanks
>>>>>
>>>>>
>>>>>I can only see some plus or minus from its matches but no elo rating.
>>>>
>>>>average elo+  400*(won-lost)/games
>>>>
>>>>2762+ 400*(32.5-67.5)/100
>>>>
>>>>2762-140 = 2622
>>>>
>>>>Tony
>>>
>>>Hi.
>>>
>>>Your formula are correct for unrated players but do you have the correct formula
>>>to calculate performans for rated players.
>>>
>>>First I used this approx:
>>>
>>>score=points/games
>>>average=average of opponents rating.
>>>
>>>perf=(average-400*log10((1.0-score)/score)
>>>
>>>This gives maybe correct performance rating around 50% score but as soon as you
>>>go a bit away the error get bigger.
>>>
>>>Then I tried from Excel with this:
>>>perf=average+NORMSINV(score)*ROT(2)*200
>>>This gives a much better result and the error is only when the score get close
>>>to 100% (or 0%)
>>>
>>>It kind of hard for me to remember all these math, it have been 26 years since I
>>>left the school so I'm luck if I even remember correct the names like standard
>>>deviation, standard distribution etc. so if you or other have a table with this
>>>calculated out with 3 decimals (0.001, 0.002 ...) for the score it would have
>>>been nice.
>>>I will create this table myself with the help of the table for 2 decimals (from
>>>Fide or elsewhere) and use the excel formula to find the in between numbers.
>>>
>>>What the usage?
>>>I have written a program to post results/tables to the internet (add result plus
>>>one click and it on the net) that we have been using in tournaments for live
>>>coverage the last 3-4 years.
>>>I use the formula with log10 now, but someone may check the program with
>>>tournamentresults found at Twic etc. and see that the performance isn't
>>>calculated correct. So instead of calculate the result I will change it to look
>>>up the numbers from a table
>>>
>>>Odd Gunnar
>>
>>
>>Hello Odd,
>>
>>http://en.wikipedia.org/wiki/ELO_rating_system
>>
>>MP.
>
>Hi, thanks for the link. Much interesting there.
>
>But, it suggest my alghorithm above (log10) as correct. This doesn't match with
>this table on the FIDE site:
>http://www.fide.com/official/handbook.asp?level=B0210
>
>What a player do to find his performance is to just calculate his score/games
>and go into the table to lookup the number.
>
>Some differences:

Sorry I used the normsinv function instead, here is the list:

Score Fide log10
--------------------
0.9    366  382
0.8    240  241
0.7    149  147
0.6     72   70

>
>Programmicaly its just as easy to use a lookuptable as calculate. 1000 integers
>(3 decimal on score) is only 4Kb memory usage (half with words).
>
>Odd Gunnar



This page took 0 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.