AccueilIA et apprentissage automatiqueMoteur de matchmaking esport — Classement Glicko en direct

🎮 Moteur de matchmaking esport — Classement Glicko en direct

Observez un véritable système de classement de type Glicko-2 mettre à jour en direct l'estimation de niveau et la déviation de classement de joueurs simulés après chaque match, en appariant des adversaires de niveau actuel comparable.

IA et apprentissage automatique3DModéré60 FPS
ai-esports-player-matchmaking ↗ Ouvrir en autonome

À propos de cette simulation

Ce simulateur fait tourner un véritable moteur de classement Glicko-2 sur un ensemble de joueurs esport synthétiques. Chaque joueur possède un classement réel, une déviation de classement (RD) et une volatilité (σ) ; chaque match simulé tire un résultat à partir du niveau caché réel de chaque joueur, puis fait passer ce seul résultat (victoire/défaite/nul) dans les véritables équations de mise à jour Glicko-2 — la fonction d'amortissement g(RD), la formule logistique du score attendu, et le solveur itératif de volatilité — pour faire évoluer le classement, la RD et le σ des deux joueurs. Une véritable règle de matchmaking décide ensuite qui affronte qui, en favorisant les joueurs à forte RD et en les appariant à des adversaires qui maximisent un score de qualité de match basé sur classement/RD.

🔬 Ce que ça montre

Chaque joueur est une sphère positionnée selon son classement actuel (horizontal) et sa déviation de classement (vertical) dans une véritable scène 3D que vous pouvez faire pivoter. À mesure que les matchs se résolvent, les sphères se déplacent au fil des mises à jour de classement, la RD diminue avec l'expérience, et la paire appariée s'illumine en or avec une ligne de connexion. Un graphique en direct par joueur trace l'historique de classement avec une bande de confiance ± RD, et le classement général, le compteur de matchs et la métrique de convergence de l'erreur moyenne de classement se mettent à jour après chaque match.

🎮 Comment l'utiliser

Réglez la taille du groupe de joueurs, la RD initiale et la volatilité initiale, puis appuyez sur ▶ Lecture pour lancer un matchmaking continu à la vitesse choisie, ou sur Lancer N pour faire avancer un lot instantanément. Cliquez sur une sphère ou une ligne du classement pour inspecter le classement, la RD, la volatilité et le bilan victoires/défaites/nuls de ce joueur, ainsi que son graphique d'historique en direct. Cochez « Révéler le niveau réel caché » pour superposer la valeur de référence que le matchmaker lui-même ne voit jamais, et observez la ligne de classement converger vers elle. Réinitialiser génère un nouveau groupe avec de nouveaux niveaux cachés.

💡 Le saviez-vous ?

Le paramètre de volatilité de Glicko-2 est ce qui le distingue du système Glicko original : il permet au classement de réagir plus vite lorsque les résultats d'un joueur deviennent incohérents avec son classement (par exemple une victoire surprise), puis de se stabiliser à nouveau une fois les résultats redevenus prévisibles — un mécanisme autocorrecteur que la plupart des systèmes simples de type Elo n'ont pas.

Questions fréquentes

Qu'est-ce qu'un classement Glicko-2, et en quoi diffère-t-il d'Elo ?

Elo suit un seul nombre par joueur : son classement. Glicko et Glicko-2 suivent trois nombres : le classement, la déviation de classement (RD, une mesure de l'incertitude de ce classement), et — pour Glicko-2 seulement — la volatilité (à quel point les résultats d'un joueur ont été erratiques). Un joueur nouvellement ajouté part avec une RD élevée, donc un seul match déplace fortement son classement ; un vétéran à l'historique stable a une faible RD, donc son classement bouge à peine après une partie. Cela rend les changements de classement proportionnels à la quantité d'information réellement disponible sur un joueur, ce qu'Elo ne fait pas de lui-même.

Qu'est-ce que la fonction g(RD) et pourquoi est-elle importante ?

g(RD) = 1 / √(1 + 3·RD²/π²) est un facteur d'amortissement appliqué à la déviation de classement d'un adversaire avant de calculer un score attendu. Quand la RD d'un adversaire est faible, g(RD) est proche de 1 et son classement compte à pleine puissance. Quand la RD d'un adversaire est élevée, g(RD) se rapproche de 0, ce qui aplatit la courbe de score attendu — battre un adversaire imprévisible vous apprend moins que battre un adversaire bien établi, donc le système en tient compte en conséquence.

Comment la règle de matchmaking décide-t-elle qui affronte qui ?

À chaque round, le moteur favorise l'attribution d'un match au joueur ayant actuellement la plus haute déviation de classement, puis recherche parmi tous les autres joueurs celui qui maximise un score de qualité de match exp(−(Δclassement)² / (2·(RD_A² + RD_B²))). Ce score est maximal quand les classements sont proches et devient plus tolérant à un écart de classement quand la RD de l'un des joueurs est élevée — la même logique utilisée par les vrais systèmes de matchmaking pour garder des parties équitables tout en résolvant rapidement les classements incertains.

Qu'est-ce que le « niveau réel » caché, et pourquoi le système de classement ne peut-il pas le voir ?

Chaque joueur simulé possède une valeur de niveau caché fixe que le matchmaker ne lit jamais directement. Le résultat de chaque match est tiré de façon probabiliste à partir des niveaux cachés des deux joueurs via une courbe logistique de probabilité de victoire, et seul ce résultat alimente la mise à jour Glicko-2. Sur de nombreux matchs, le classement visible converge vers le niveau caché uniquement à partir des résultats observés, comme dans un vrai ladder classé.

Pourquoi le classement d'un joueur varie-t-il parfois beaucoup, même tard dans la simulation ?

De fortes variations se produisent lorsque la volatilité (σ) d'un joueur a augmenté parce que ses résultats récents étaient incohérents avec son classement — par exemple une victoire surprise contre un adversaire bien mieux classé. Le terme de volatilité de Glicko-2 détecte ce type de performance erratique et élargit temporairement l'amplitude dont un résultat surprenant peut faire bouger le classement, avant de se stabiliser à nouveau une fois les résultats redevenus prévisibles.

⚙ Sous le capot

Un véritable moteur de classement Glicko-2 met à jour le classement, la déviation de classement et la volatilité des joueurs simulés après chaque match, à l'aide de la fonction d'amortissement g(RD), de la formule logistique du score attendu et du solveur itératif de volatilité, tandis qu'une règle de matchmaking basée sur classement/RD apparie des adversaires de niveau actuel comparable.

Glicko-2Rating SystemsMatchmakingMachine LearningEsports

3D · Three.js / WebGL renderer · 60 FPS target · runs fully client-side, no install

Qu'avez-vous trouvé ?

Add reproduction steps (optional)