Classement Elo

Fonctionnement, calculs et construction mathématique


Sur les systèmes de classement

Généralités

Un système de classement est un ensemble de règles qui permet de classer les adversaires dans une dicipline donnée.
Même si la question peut paraître simple, de nombreuses façon de procéder peuvent être imaginées, possédant chacune par la même occasion ses qualités et ses défauts.
En général, un système de points est mis en place: à chaque rencontre le gagnant gagne des points et le perdant en perd (ou en gagne moins). Le premier est alors celui qui le plus de points, puis vient le deuxième, ... La question du système de classement se reporte alors sur celle du nombre de points à attribuer après chaque rencontre: attribue-t-on autant de points au premier du classement qui bat (facilement) le dernier du classement, que si ce premier du classement bat le deuxième ? autant de point lors d'un championnat de niveau mondial que lors d'une rencontre nationale ou plus locale, ou plus anecdotique ?
Par exemple, notamment au tennis, le nombre de points attribués dépend du type de tournoi et des resultats passés (l'année précédente) du joueur. On a ainsi pu voir le paradoxe suivant (après la finale du tournoi de Pékin, signalé dans Classons, de G. Grancher):

En finale d'un tournoi, N. Djokovic, numéro 1 mondial, bat R. Nadal, numéro 2 mondial.
À la suite de cette victoire, N. Djokovic devient numéro 2 mondial laissant la place à R. Nadal qui le dépasse dans le classement…
Ce paradoxe s'explique assez simplement dans le système de classement par points ATP: le vainqueur N. Djokovic avait déjà remporté le tournoi l'an passé et son nombre de points ne change pas, tandis que R. Nadal était blessé l'année précédente aux dates de ce même tournoi et n'avait donc pas pu y participer: son nombre de points augmente donc car cette année il atteint la finale.
En fait, en y regardant de plus près, l'inversion dans le classement entre les deux premières place était déjà joué avant la finale, quelqu'en soit l'issue.
D'une certaine façon, le classement ne reflète donc pas directement le résultat des matchs. Peut-on alors s'en servir pour prédire le résultat des matchs futurs ?

Un système de classement est donc un ensemble de règles qui permet d'ordonner les joueurs en fonction de leurs résultats face aux autres. Cet ordre permet en retour de se donner une idée de la "force" de chaque joueur. Ceci est l'élément essentiel, exclusivement, sur lequel est basé et construit le système de classement Elo.

Classement Elo

Dans le système de classement Elo, du nom de son inventeur Arpad Elo, un physicien de l'université de Chicago, le classement de chaque joueur dépend de ses résultats lors de ses rencontres avec d'autres joueurs.
Une des particularités de ce système de classement est de pouvoir refléter directement la probabilité qu'à un joueur de vaincre un autre joueur.
Ce système de classement est donc, en fait, un modèle mathématique d'évaluation du niveau de chaque joueur, niveau relatif aux autres joueurs classés.

Le système mathématique Elo a intialement été pensé pour les échecs. Il tend, très lentement, à attirer d'autres disciplines comme le football avec le classement FIFA, notamment le classement classement mondial féminin de la FIFA qui est un classement de type Elo.
Au tennis aussi, le classement mondial Elo des joueurs commence à apparaître.

Construction mathématique du système de classement Elo

Le système Elo se propose de mesure la force relative de deux advsersaires A et B en estimant la probabilité que l'un a de gagner sur l'autre.
On note alors P(A/B) la probabilité que A gagne contre B. On a donc déjà directement la propriété P(B/A) = 1 − P(A/B).

Hypothèse pour la construction du système de classement

On souhaite que les chances de gagner ou de perdre d'un joueur contre un autre, ou plutôt la probabilité de gagner/perdre, ne dépende que de la différence entre les classements: en d'autres termes, on souhaite que
P(A/B) = F ( Elo(A) − Elo(B) )
F est une fonction, a priori quelconque.
Construire un tel système de classement revient finalement et simplement à définir cette fonction F.

Choix de la fonction F

On a F: R]0;1[. On impose assez naturellement que F soit une fonction continue est croissante: plus l'écart de classement est grand plus grande est la probabilité de gagner.
Enfin, la valeur F(0) = 0,5 s'impose aussi logiquement: à classement égal, la même probabilité de gagner pour chaque adversaire.

Rapport de force, ou force relative des adversaires

On définit le rapport de force entre les adversaires A et B, ou force relative des deux joueurs, par
R(A/B) = P(A/B)/P(B/A) = P(A/B)/1 − P(A/B)
Par exemple, si P(A/B) = 60% alors
R(A/B) = 0,6/0,4 = 1,5
En d'autres termes, si la probabilité que A gagne est de 60% alors A a une fois et demie plus de chance de gagner que B.

Hypothèse sur le rapport de force

Un système de classement doit permettre entre autre de mesurer la force de deux adversaires même lorsqu'ils ne se sont jamais rencontrés. On doit donc être capable de l'évaluer par transitivité, c'est-à-dire évaluer la force de A par rapport à C connaissant celle de A par rapport à B et celle de B par rapport à C.
On suppose pour le classement Elo que ce rapport de force est multiplicatif, soit
R(A/C) = R(A/B) × R(B/C)

Choix de la fonction F

D'après les expressions précédentes, on introduit maintenant assez naturellement la fonction
G: x ↦ ln x/1 − x
qui permet d'exprimer le rapport de force selon
ln(R(A/B)) = ln P(A/B)/1 − P(A/B) = G(P(A/B))
On revient maintenant à notre fonction F recherchée, qu'on avait introduit dans la relation
P(A/B) = F ( Elo(A) − Elo(B) )
d'où maintenant
ln(R(A/B)) = G ( F ( Elo(A) − Elo(B) )) = H( Elo(A) − Elo(B) )
en posant H = G o F la fonction composée.

L'hypothèse de multiplicité des rapports de force
R(A/C) = R(A/B) × R(B/C)
se transforme alors en additivité via le logarithme:
ln(R(A/C)) = ln(R(A/B)) + ln(R(B/C))
Posons pour simplifier d1 = Elo(A) - Elo(B) et d2 = Elo(B) - Elo(C). On a alors d1 + d2 = Elo(A) - Elo(C) et alors la relation précédente se réécrit:
H(d1 + d2) = H(d1) + H(d2)
ce qui montre que la fonction H est une fonction additive.
Comme on a supposé que F est continue, la fonction H est donc continue et additive: on en déduit qu'elle est linéaire, c'est-à-dire qu'il existe une constante réelle α telle que, pour tout réel d,
H(d) = αd

On peut maintenant revenir à la fonction F:
H(d) = G o F (d) = αd
d'où
F(d) = G−1d)
Il reste maintenant à déterminer l'expression analytique explicite.

Expression analytique

Dans l'expression précédente de la fonction F intervient la fonction réciproque G−1 de G dont il nous faut maintenant déterminer l'expression:
G(x) = y ⇔ ln x/1 − x = y x/1 − x = ey x = (1−x)ey x(1+ey) = ey x = ey/1 + ey = G−1(y)
et on trouve donc l'expression analytique de la fonction F recherchée, et sur laquelle sont basés les calculs du système de classement Elo:
F(d) = G−1d) = eαd/1 + eαd
ou encore, en multipliant numérateur et dénominateur par e−αd,
F(d) = 1/1 + e−αd
On aboutit donc assez naturellement à une loi logistique, plus précisément ici F est la fonction de répartition de la loi logistique standard.

Retour sur la probabilité de victoire

On rappelle l'utilisation principale et recherchée de cette fonction: la probabilité que A gagne contre son adversaire B à la distance, en classement,
d = Elo(A) − Elo(B)
est
P(A/B) = F(d) = 1/1 + e−αd
Il reste maintenant deux éléments à préciser: cette constante α, et la méthode à utiliser pour actualiser les classements Elo à l'issue de la rencontre et victoire ou défaite de A.

Choix du paramètre α

Le coefficient α est un paramètre d'echelle de l'ensemble des classements des joueurs. Aux échecs, le choix de la valeur
α = ln(10)/400
permet d'avoir une plage de classements de l'ordre de 0 jusqu'à 3000.
Avec cette valeur, on a
exp(−αd) = expd ln(10)/400 = expln10d/400 = 10d/400
et on a donc l'expression de la probabilité en fonction de l'écart de classement d = Elo(A) − Elo(B):
P(A/B) = 1/1 + 10d / 400

Actualisation des classements Elo après victoire ou défaite

La fonction probabilité précédente est utilisée pour actualiser les classements après une rencontre.
Lorsqu'un joueur A avec le classement Elo(A) rencontre un adversaire B avec le classement Elo(B), son nouveau classement Elo'(A) se calcule par la formule
Elo'(A) = Elo(A) + K(W − P(A/B))
  • W est le résultat du match: W = 1 si A gagne, W = 0 s'il perd, et W = 0,5 en cas de match nul.
  • K est un paramètre de stabilité / volatilité des classements. Plus la valeur de K est petite plus les classements sont stables et varient donc peu à l'issue d'une rencontre; beaucoup de matchs sont nécessaires pour faire vraiment varier le classement. Ces petites valeurs sont en général (et en particulier aux échecs) utilisées pour les joueurs forts, avec déjà un bon classement (joueurs professionnels, maîtres internationaux aux échecs, ...).
    Une valeur plus importante pour ce paramètre K implique au contraire que chaque résultat influe de manière plus significative sur le classement.
    À titre d'exemple pour le classement Elo aux échecs, le choix est le suivant:
    • K = 40 jusqu’à la 30ème partie du joueur
    • K = 20 pour un classement Elo en dessous de 2 400 Elo
    • K = 10 pour un classement Elo au-dessus de 2 400.

Calculatrice classement Elo

La calculatrice suivante permet de calculer automatiquement le nouveau classement ELo de deux adversaires, en fonction de leurs classements lors de la rencontre, du résultat bien sûr de la rencontre, et enfin du paramètre K.

Classement initial


Gagnant



Classement final







LongPage: h2: 6 - h3: 8