Variable k based on games played

Sort:
woutersch

Hello guys,

 

I have no idea where to ask this but I'm about to host a 1v1 tournament/league with a bunch of friends/locals. This should be easy but we want to be able to challenge each other anytime, and get our ratings increased/decreased by the elo system. However, I thought we should get a fair judgement and the player playing only 10 games and winning them all should always be judged higher than the play winning 40 games and losing 20. So I looked at the formula's and thought of having a variable k. I've read on some starcraft forum that the first 20 games it would evaluate with a double k rating and I think that's should be ok, however I don't think it should be the same for having played 2 games or 20. If more games are played the system will automatically decrease the k value for all games, so it doesn't judge games different and it can judge the same game at different level for players.

 

My question is, can anyone find of a good way to do this? I came up with this by creating a linear line which can't get lower than 1 and using excel to get an exponential function. Is anyone able to help me or should I look elsewhere?

 


4,0594e^(-0,04*a)

Where a is the amount of games


 

 


E_A = 1 / ( 1 + pow( 10, ( (R_B - R_A) / 400 ) ) )

R_A_N = R_A + round( K * (S_A - E_A) )

E_A:expected score for player A

R_A:real/current ELO-score of player A

R_B:real/current ELO-score of player B

*K:weighting factor - normally 15, for top-players 10, for beginners 25

The 'Ducati-Style'-CTF-League and the GU-League use a value of 50 to get more significant changes for the scores after a match!

**round():rounding type - Usually, the result score (resp. the score change) won't be rounded off, but sometimes it's done by necessity or intention.

The 'Ducati-Style'-CTF-League and the GU-League use the type 'down' (rounding down).

S_A:match result of player A (1 for a victory, 0.5 for a draw, 0 for a defeat)

R_A_N:new ELO-rating of player A (new ELO score of player B is calculated vice versa since ELO is symmetric)

http://bzstats.strayer.de/bzinfo/elo

(source)