habillage

Se connecter

League of Legends [Actualités], le 10/08/2012 16:02:46

LoL : Système d'elo, Partie 1

35

Arniw vous décrit dans une série d'article le fonctionnement du système de l'elo dans LoL.

Comme vous le savez sans doute, il existe un mystère dans League of legend ; l'elo. Certains trouvent le système bien fait, d'autres pensent qu’il est inutile, mal fait, non adapté ou autres qualificatifs dont je ne ferais pas une liste exhaustive, sinon j'y serais encore dans une décennie quand lol n'existera plus.


Si cet article parait aujourd'hui c’est pour une très bonne raison. Je vais dans un premier temps m'intéresser au système en lui même. La première partie de cette suite d'articles sera la plus théorique, néanmoins la plus intéressante à lire si vous prenez le temps de la comprendre en profondeur.


Nous allons étudier en détail ce système de classement, pour enfin arriver dans un futur proche à une compréhension totale de ce système, autant du point de vue mathématique que stratégique.

Utilisant des règles mathématiques, j'ai essayé de rendre cette explication la plus simple possible à comprendre.

Utilisation :

Le système d'elo fut également adapté à de nombreux jeux sous différents noms. La côte d'arène de World of Warcraft par exemple utilise ce système, avec un facteur 2,27 pour faciliter aux développeurs les calculs pour différents objets requérant une certaine côte. Starcraft utilise également pour son classement le système d'elo pour base. Finissons par LoL qui se base également sur ce système pour classer le niveau individuel des joueurs.

Histoire :

Petit rappel historique nécessaire pour la suite des explications. Le système d'elo fut inventé dans les années 60 et fut ensuite, pour la première fois, utilisé afin de classer mondialement les joueurs d'échecs en 1970. C’est le professeur de physique Arpad Elo qui l'inventa. Ce système devait permettre d'établir un classement de tous les joueurs d'échecs entre eux, même ceux ne s'étant jamais rencontrés lors de matchs. Il est basé sur ce qui s'appelle la « force relative des joueurs », autrement dit leurs chances de gagner l'un contre l'autre sans ne s'être jamais rencontré.


Pour faire simple, un joueur nommé « X » a gagné 10 matchs sur 15 contre un joueur « Y ». Ce même joueur « Y » ayant gagné 8 parties sur 10 contre un troisième et dernier joueur « Z », combien de chance le joueur « X » a de gagner un match contre « Z » ? En théorie, cela est très simple à réaliser à l'aide de simples probabilités. Mais il restait ensuite la partie la plus compliquée, à savoir établir un tableau des scores permettant de connaître le niveau de tous les joueurs entre eux. Je passerais sur les différents calculs de probabilité qui ne sont en aucun cas intéressants. Une fois ces calculs établis et le système de points (elo) mis en place il fallait également faire le chemin en sens inverse, à savoir, si un joueur à 1500 elo rencontre un joueur à 1200 elo, combien ce joueur avait-il en pourcentage de chance de gagner. Plusieurs exemples seront utilisés tout au long de cette explication. Arpad Elo mit au point un système ingénieux permettant de faire ce calcul.

Application théorique de calcul de la probabilité (p) de gagner du joueur « x » contre le joueur « Z » et système d'elo :

Pour cela on utilise une règle mathématique simple de probabilité que je n'expliquerais pas car trop longue. (Prenez cette règle et toutes les suivantes pour exactes s'il vous plait.)

Toutes les lettres présentes dans les équations représentent des variables, c’est-à-dire des valeurs numériques pouvant varier d'un cas à un autre.

Q = P (X/Y) la probabilité de gagner du joueur X contre le joueur Y.
R = P (Y/Z) la probabilité de gagner du joueur Y contre le joueur Z.
S = P (X/Z) la probabilité de gain (selon la théorie de l’elo) du joueur X contre le joueur Z, de façon à ce qu'on obtienne cette équation :

(S / (1 – S)) = (Q /  (1 – Q)) x (R / (1- R))

Cette équation représente donc la force relative F entre deux joueurs. La probabilité de gain du joueur X contre le joueur Z est donc égale à la multiplication des forces intermédiaires de gain entre le joueur X et Y, et Y contre Z.

Si l'on se rapporte à une fonction « f » (courbe) de l'évolution des forces de tous les joueurs, on obtient donc :

f(R) = f(Q) x f(R) ou f(R) = (P / (1 – P)) et de là, nous pouvons déduire la probabilité de gain du joueur X contre le joueur Z que l'on notera : S = (f(S) / (1 + f(S)).

Cette force est une mesure, toutefois pour avoir un classement évoluant au fil des victoires de chacun, il faut passer par une deuxième fonction, que nous noterons, pour simplifier la chose, f*(S), de façon à ce qu'elle soit égale à : f*(S) = f*(Q) + f*(R).

Posons dès à présent F* (S) = t [f(S)]t est également une fonction qu'il nous reste à définir.


f*(S) = f*(Q) + f*(R) <=> t[f(S)]  =  t[f(Q)]  +  t[f(R)]
f(R) = f(Q) x f(R) => t [ f(Q) x f(R) ] = t[f(Q)]  +  t[f(R)]

Cette transformation par t en somme (résultat d'une addition) est la définition d'une fonction nommée logarithme. Plus particulièrement du logarithme décimal noté log, on choisit donc la fonction log pour définir t. Nous en déduisons donc que :

f*(S) = log[ f(S) ] = log[ S / ( 1 – S ) ].

Pour que les valeurs soient plus grandes et donc plus précises, nous introduisons un facteur fixé à 400.

La formule de l'elo est donc : f*(S) = 400 x log[S / (1 – S)]

Le réciproque p (D) de cette formule (ici, obtenir la probabilité de gain par rapport à l'elo) est donc :

log ((p(D) / (1 – p(D))) = D / 400 <=> p(D) = 1 / (1 + 10 -D/400)

Le résultat de cette fonction sera donc compris entre 0 et 1 qui, multiplié par 100, donnera le pourcentage de victoire. Cette fonction a pour résultat 0,5 si D =0


Pour calculer le nouvel elo d'un joueur après une partie, une dernière fonction est utilisée (eh oui, finis les maths après). Cette fonction que vous considérez comme vraie (puisqu’utilisée) est la suivante :

E(n)+1 = E(n) + K x (W - p(D))

E(n)+1  représente le nouvel elo après une partie.
E(n)      représente l'elo avant la dite partie.
W     est le résultat de la partie, trois valeurs possible : 1 si victoire, 0,5 pour un matche nul (ne s'applique pas à LoL) et 0 pour une défaite.
p(D) représente le résultat attendu en fonction de la différence d'elo avec son adversaire.
(W – p(D)) représente la différence entre le résultat attendu et le résultat obtenu.
K est un coefficient de développement ; dans LoL il vaut : 10 pour les 10 premières parties (matchs de placement), 7,5 pour tous les matchs en dessous des 2400elo, puis finalement 5 pour tous les matchs au-dessus de 2400elo.

À noter que dans LoL si vous avez un joueur à 1500 elo, il gagnera un nombre de points d’elo prenant en compte l'elo du joueur ayant l'elo le plus élevé dans l'équipe adverse, mais s’il perd, il perdra un nombre de points égal à l’elo moyen de l'équipe adverse.

Voilà, pour aujourd'hui c’est fini, vous connaissez désormais les secrets de l’elo dans LoL. Toutefois, je ne vous ai toujours pas démontré que vous pouviez monter et donc « carry » vos games seul, même si dans votre équipe il y a des joueurs moins doués que vous. Cependant, après une telle dose de mathématiques cela attendra la prochaine fois. Ne vous en faites pas cela arrivera très bientôt et cela sera moins compliqué que cette première partie.


Arniw

ARTICLES SIMILAIRES

COMMENTAIRES

  • J'ai déjà un compte

  • Je n'ai PAS de compte,

  • tatougagner, a écrit 11/08/2012 à 13h50 :

    Très bon article, peut être que quelques graphique auraient permis aux "anti matheux" de comprendre les formules et de sentir l'effet logarithmique de l'elo.
  • kyuub, a écrit 11/08/2012 à 13h20 :

    "Legeldor : Petit rappelle les probabilité sont étudié en 5ème et les log en seconde... Cela tien donc plus de l'inintérais que de l’incompréhension."

    Le niveau de l'education a vraiment du drastiquement chuté ... De nors jours la fonction logarithme n'est introduite qu'en terminale ...

    Je ne pense pas qu'il soit très pertinent de detailler la partie "technique" des calculs. Je ne pense pas que les personnes ayant jamais fait de maths puissent les comprendre, ou même s'y interesser, même avec des explications. En revanche, expliquer la signification d'une formule, ce qu'elle represente, peut être plus interessant, à la fois pour les matheux et les non matheux.

    Les articles restent cependant très interssant. Peut être faudrait-il moins de technique brute, et un peu plus d'analyse/comparaison.

    Chapeau bas en tout cas pour l'ensemble qui reste très
    interessant à lire !
  • Zoupla, a écrit 11/08/2012 à 05h17 :

    Il faudrait modifier l'affichage dans l'avant-dernière formule car ce n'est pas très clair pour voir la partie en exposant si on ne connaît pas trop la fonction log.

    Sinon le coefficient de développement est je pense faux dans l'article. Il se stabilise plus au niveau de 25 normalement. Si on prend un joueur qui a un elo de 1500 et qui bat une équipe où le joueur avec le plus haut elo est de 1490. On tombe sur un gain de 12 pour la partie ce qui semble assez proche de la réalité.
  • Dragnir, a écrit 11/08/2012 à 04h08 :

    @Winea Je ne reproche rien a ton article mais en le defendant il ne faudrait pas exagerer : les probabilites, on en fait des le college (je pense la 4eme) mais c'est alors vraiment mais vraiment tres basique ; pour ce qui est de la fonction log, je suis en premiere S et je n'en ait jamais entendu parler (en cours du moins, et l'argument que je suis mauvais en maths ne se tiendrait pas). Meme si tu le consideres comme tres vulgarise, cet article ne sera jamais compris des "masses".
    (desole pour l'orthographe mais je ne peux pas mettre d'accent)
  • Argaunots, a écrit 11/08/2012 à 01h25 :

    Ce système est complètement A CHIER. LoL c'est un jeux d'équipe. Comment il peuvent évaluer le niveau d'un joueur avec ce système ? Cependant ce système est correcte pour les match en équipe
    (L'élo c'est très bien POUR LE 1V1)
  • Smester, a écrit 10/08/2012 à 00h42 :

    Arniw, je suis en accord avec tes propos, mais s'il te plait relis toi avant de valider tes commentaires :P
  • winea, a écrit 10/08/2012 à 00h10 :

    Bibiri,

    à la base une partie de l'article démontrait cette formule mais la démonstration et les diverse forumle étais trop lourde et complexe. Elle tien au elo individuelle de chacun et autre variables, cette formule est une formule général que je detaillrais plus tard.Au vue du nombre de post QQ des joueurs qui n'attende qu'une formule miracle pour monter a 12650elo en une game présents dans les commentaires ( à vrai dire je m'en doutais =p ) j'ai préféré enlever cette partie pour mieux l'expliquer et prendre le temps de simplifier au maximum les formule.

    A la base l'article devais être composé de trois parties mais ils sera composé de quatre partie au moin de façon à me laisser le temps de faire tout ça du mieux que je le peu. En effet étant un rédacteur amateur j'ai des obligation en dehors de l'écriture surtout en cette période d'été ou j'ai au dernier moment trouver un emplois. Je ne peu donc pas passer autant de temps a écrire ou traduire des articles que je ne voudrais.

    Eiyona : La majorité ne te donne pas le droit d'être aussi vulgaire... Il existe des manière plus polie et moin rédhibitoire de manifester ton mécontentement. Si tu n'aime pas libre à toi de ne pas lire cette article. Les mathématiques ne sont pas les science qui passionne le plus grand nombre et ces une pation comme une autre et je peu le comprendre. Essaye juste d'être moin agressifs, ça t'aidera dans lol aussi =)

    Legeldor : Petit rappelle les probabilité sont étudié en 5ème et les log en seconde... Cela tien donc plus de l'inintérais que de l’incompréhension.

    Cordialement,

    Arniw
  • Eiyona, a écrit 10/08/2012 à 21h18 :

    T'es gentil j'ai 21 ans et ce genre de trucs me casse plus les couilles qu'autre chose et pourtant j'etait dans une filiere scientifique lol
  • Legeldor, a écrit 10/08/2012 à 20h48 :

    @airjax je vois pas le rapport certains même a 30 ans comprendrons pas ....
  • airjax, a écrit 10/08/2012 à 20h30 :

    C'est bete, la majorite des joueurs de LoL n'excedent pas les 18 ans, donc ne comprennent pas forcement la moitié de ces calculs..
  • Smester, a écrit 10/08/2012 à 20h06 :

    Merci Arniw, c'est toujours sympa le topics comme ça :) En espérant que la suite arrive bientôt!
  • Keegan, a écrit 10/08/2012 à 18h50 :

    Salut à l'auteur, apparemment collègue étudiant pictavien !

    Par contre, pour le plaisir de troller : Master Maths, ça se voit, ça fait longtemps que t'as pas eu de cours de français ! x)
  • Bibiri, a écrit 10/08/2012 à 18h30 :

    Très bel article mais il y a des choses que je comprends pas sur la dernière formule :

    Si E(n+1) = E(n) + K x (W - p(D)) ,
    alors K x (W - p(D)) correspond à l'élo gagné ou perdu donc à la variation d'élo.
    Or K={5;7.5;10} suivant l'élo du joueur, 0 < p(D) < 1 et W={0;1} donc que la variation maximale est : 10 x (1-0) = 10 or ce n'est pas le cas.
    Pareil si K=7.5, on obtient que la variation d'élo est de 7.5 or on gagne souvent plus de 10 d'élo.

    Est-ce une erreur d'incompréhension de ma part ? Si oui j'aimerais un éclaircissement sur ma faute.
    Ou bien est-ce une erreur de la formule/des données ?
  • ogs, a écrit 10/08/2012 à 18h18 :

    quoi yavait encore des gens qui savaient pas ça?

Voir tous les commentaires

  • millenium_tv Boblegob
    [M]Night : Good Morning BoB

  • millenium_tv Millenium TV

  • millenium_tv2 Divers
    Rediffusions Millenium TV 2

  • millenium_tv2 Millenium TV

  • millenium_tv3 FPS
    Specs and Go

  • millenium_tv3 Millenium TV

  • Articles les
    plus lus

  • Articles les
    plus commentés