Articulo de referencia

TrueSkill

TrueSkill es un sistema de clasificación basado en habilidades desarrollado por Microsoft para su uso en el emparejamiento de videojuegos en la red Xbox . A diferencia del popul...

TrueSkill es un sistema de clasificación basado en habilidades desarrollado por Microsoft para su uso en el emparejamiento de videojuegos en la red Xbox . A diferencia del popular sistema de clasificación Elo , que fue diseñado inicialmente para el ajedrez , TrueSkill está diseñado para admitir juegos con más de dos jugadores. [ 1 ] [ 2 ] [ 3 ] En 2018, Microsoft publicó detalles sobre una versión extendida de TrueSkill, llamada TrueSkill2. [ 4 ]

Se basa en un modelo thurstoniano con una distribución de puntuación gaussiana. No satisface el axioma de elección de Luce . [ 5 ]

Historia y uso

TrueSkill fue desarrollado por investigadores de Microsoft Research como un sistema de calificación de habilidades bayesiano diseñado para juegos en línea en los que los jugadores suelen competir en equipos y las partidas pueden involucrar a más de dos jugadores o equipos. [ 2 ] En su primera descripción publicada del sistema, Ralf Herbrich, Tom Minka y Thore Graepel evaluaron el método utilizando datos de partidas recopilados por Bungie Studios durante la prueba beta de Halo 2 y describieron su funcionamiento en el servicio Xbox Live . [ 2 ]

Christopher Bishop escribió más tarde que TrueSkill se implementó en Xbox Live en 2005 y ha operado continuamente desde entonces, procesando millones de resultados de juegos por día. [ 6 ] Herbrich y sus colegas informaron que, a septiembre de 2005, Xbox Live tenía más de 2 millones de usuarios suscritos y que el servicio Xbox 360 Live usaba TrueSkill para la clasificación automática de jugadores y el emparejamiento, procesando cientos de miles de juegos por día. [ 2 ]

En un estudio sobre sistemas de clasificación para juegos y evaluaciones, los investigadores del Educational Testing Service describieron TrueSkill como una generalización de las clasificaciones tipo Elo para competiciones multijugador y por equipos, y señalaron su uso en los juegos en línea de Xbox de Microsoft. [ 7 ] Investigaciones posteriores de Microsoft propusieron revisiones y extensiones al modelo original, incluyendo TrueSkill2. [ 4 ]

Modelo estadístico

En el modelo descrito por Herbrich, Minka y Graepel, la habilidad de cada jugador se trata como una cantidad no observada (latente), y el sistema mantiene una distribución de probabilidad sobre esa habilidad. [ 2 ] Se supone que la distribución a priori sobre las habilidades de los jugadores se factoriza entre ellos, y cada habilidad individual se modela como una distribución gaussiana con mediaμi{\displaystyle \mu _{i}}y varianzaσi2{\displaystyle \sigma _{i}^{2}}representando la incertidumbre del sistema sobre la habilidad de ese jugador. [ 2 ]

Los resultados de los partidos se modelan como resultado de actuaciones ruidosas. Para un juego dado, cada jugadori{\displaystyle i}genera un valor de rendimiento latentepagi{\displaystyle p_{i}}que normalmente se distribuye en torno a su habilidadsi{\displaystyle s_{i}}, con un parámetro de varianza de rendimiento fijoβ2{\displaystyle \beta ^{2}}: [ 2 ]sinorte(μi,σi2),paginorte(si,β2).{\displaystyle s_{i}\sim {\mathcal {N}}(\mu _{i},\sigma _{i}^{2}),\qquad p_{i}\sim {\mathcal {N}}(s_{i},\beta ^{2}).} El parámetroβ{\displaystyle \beta }controla cuán fuertemente se espera que varíe el resultado de un solo juego en función de la habilidad subyacente (menorβ{\displaystyle \beta }implica menor aleatoriedad en los resultados). [ 2 ]

Para juegos con equipos, el modelo asume una estructura de rendimiento de equipo aditiva: el rendimiento latentetj{\displaystyle t_{j}}del equipoj{\displaystyle j}es la suma de las actuaciones de sus miembros,tj:=iAjpagi{\displaystyle \textstyle t_{j}:=\sum _{i\in A_{j}}p_{i}}, dóndeAj{\displaystyle A_{j}}es el conjunto de jugadores asignados a ese equipo. [ 2 ] El resultado de un partido se representa como una clasificación de los equipos (con la posibilidad de empates), y la probabilidad de la clasificación observada se define en términos de desigualdades entre las variables de rendimiento del equipo correspondientes. [ 2 ]

Los sorteos se incorporan mediante la introducción de un margen de sorteo.ϵ>0{\displaystyle \epsilon >0}Para dos equipos adyacentes en la clasificación, una victoria se modela exigiendo que el equipo mejor clasificado supere al equipo peor clasificado por más deϵ{\displaystyle \epsilon }, mientras que un empate se modela exigiendo que su diferencia de rendimiento se encuentre dentro de±ϵ{\displaystyle \pm \epsilon }. [ 2 ] Herbrich y colegas relacionaronϵ{\displaystyle \epsilon }a una probabilidad de empate supuesta o estimada empíricamente, lo que permite calibrar la tasa de empate para un modo de juego determinado. [ 2 ]

Actualizaciones de inferencia y calificación

TrueSkill representa el modelo conjunto de habilidades, desempeño y resultados observados como un grafo factorial . [ 2 ] La inferencia se plantea entonces como el cálculo de marginales aproximadas de una sola variable mediante el paso de mensajes utilizando el algoritmo suma-producto . [ 2 ] Para una sola coincidencia, la mayoría de los mensajes en el grafo pueden representarse como gaussianas unidimensionales, lo que hace que la actualización sea computacionalmente eficiente. [ 2 ]

Una dificultad clave es que las restricciones de resultados (victorias y empates) introducen términos no gaussianos. En el gráfico de factores, estos aparecen como factores de comparación que imponen desigualdades en las diferencias de rendimiento (y, para los empates, en un intervalo alrededor de cero). [ 2 ] Los mensajes exactos correspondientes no son gaussianos; el artículo de TrueSkill aplica la propagación de expectativas (EP) para aproximar estos mensajes mediante la igualación de momentos, reemplazando las formas gaussianas truncadas intratables con aproximaciones gaussianas que tienen la misma media y varianza. [ 2 ] [ 8 ] Debido a que los mensajes de comparación son aproximados, el algoritmo itera las actualizaciones de mensajes a lo largo de caminos que conectan las variables afectadas hasta que las marginales aproximadas se estabilizan. [ 2 ]

Tras la inferencia para un partido, la distribución marginal actualizada de cada jugador sigue siendo gaussiana y puede resumirse mediante una media actualizada.μ{\displaystyle \mu }y desviación estándarσ{\displaystyle \sigma }para su uso en partidos posteriores. [ 2 ] El sistema original también incluye un parámetro de varianza dinámica (a menudo escrito)τ2{\displaystyle \tau ^{2}}) para modelar los cambios de habilidad a lo largo del tiempo entre juegos. [ 2 ]

Visualización de parámetros y calificación

TrueSkill mantiene una distribución de creencias gaussiana.norte(μi,σi2){\displaystyle {\mathcal {N}}(\mu _ {i}, \sigma _ {i}^{2})}para la habilidad de cada jugador, pero las implementaciones prácticas también deben elegir una escala numérica y valores para parámetros del modelo como el ruido de rendimiento y la tasa a la que se permite que las habilidades varíen con el tiempo. [ 2 ] Herbrich y colegas informaron que Xbox Live utilizó una escala previa inicial conμ0=25{\displaystyle \mu _{0}=25}yσ02=(25/3)2{\displaystyle \sigma _{0}^{2}=(25/3)^{2}}, correspondiente a una distribución a priori en la que las habilidades negativas son improbables. [ 2 ]

En la misma descripción de despliegue, la varianza del rendimiento de un solo juego se estableció en relación con la incertidumbre previa comoβ2=(σ0/2)2{\displaystyle \beta ^{2}=(\sigma _ {0}/2)^{2}}y la varianza de la dinámica entre juegos (que modela los cambios de habilidad a lo largo del tiempo) se estableció enτ2=(σ0/100)2{\displaystyle \tau ^{2}=(\sigma _{0}/100)^{2}}. [ 2 ]

Para las pantallas orientadas al jugador, como las tablas de clasificación, Xbox Live mostraba una estimación conservadora en lugar de solo la media posterior. El documento TrueSkill describía la visualización de la habilidad de un jugador como el 1% del cuartil inferior de la distribución de creencias,μi3σi{\displaystyle \mu _{i}-3\sigma _{i}}. [ 2 ] Herbrich y sus colegas escribieron que esta elección tenía como objetivo asegurar que los primeros puestos en las clasificaciones fueran ocupados por jugadores que fueran altamente calificados y estimados con alta certeza, y señalaron que la previa implicaba un valor inicial mostrado de0=μ03σ0{\displaystyle 0=\mu _{0}-3\sigma _{0}}. [ 2 ]

Ejemplo resuelto

El siguiente ejemplo práctico ilustra cómo TrueSkill actualiza las clasificaciones después de una partida de todos contra todos de tres jugadores, utilizando el modelo y las ecuaciones de actualización de victorias descritas por Herbrich, Minka y Graepel. [ 2 ] En TrueSkill, cada jugadori{\displaystyle i}tiene una distribución de creencias de habilidadnorte(μi,σi2){\displaystyle {\mathcal {N}}(\mu _ {i}, \sigma _ {i}^{2})}, dóndeμ{\displaystyle \mu }es la estimación media de habilidad yσ{\displaystyle \sigma }es la incertidumbre.

Tras un partido, el sistema combina la creencia previa con el resultado del partido para obtener una nueva distribución de creencias (la posterior ). La media posterior es la media de esa distribución actualizada, es decir, la mejor estimación numérica del sistema sobre la habilidad del jugador, dada la evidencia disponible hasta el momento. [ 2 ]

En la escala original de Xbox Live descrita en el documento de TrueSkill, una opción común para el ruido de rendimiento esβ=25/6{\displaystyle \beta =25/6}. [ 2 ] Este ejemplo utiliza ese valor y supone que no hay empates.

Calificación mostrada

En algunas implementaciones, se muestra una estimación de habilidad conservadora en lugar de la media posterior. El documento TrueSkill describe la visualización del cuartil inferior del 1% de la distribución de creencias, que para una distribución gaussiana es aproximadamenteμ3σ{\displaystyle \mu -3\sigma }. [ 2 ] En términos sencillos, este es un valor que el sistema espera que la verdadera habilidad del jugador supere aproximadamente el 99% del tiempo, dada la incertidumbre actual. Como resultado, un jugador con una media alta pero una gran incertidumbre (grandeσ{\displaystyle \sigma }) tendrá una calificación mostrada más baja que un jugador de calificación similar cuya habilidad se estima con mayor confianza. [ 2 ]

Configuración

Tres jugadores entran en un partido con las siguientes puntuaciones previas:

El juego finaliza con Chloe en primer lugar, Alice en segundo lugar y Ben en tercer lugar.

Cómo se representa el resultado de un partido de tres jugadores

Para una clasificación estricta sin empates, la formulación del grafo factorial representa el resultado utilizando restricciones de comparación adyacentes (Chloe supera a Alice; Alice supera a Ben). [ 2 ] No hay un factor separado "Chloe supera a Ben" en esta representación mínima porque está implícito en la clasificación: si Chloe está por encima de Alice y Alice está por encima de Ben, entonces Chloe está por encima de Ben.

En el algoritmo completo de TrueSkill, el paso de mensajes en el grafo de factores utiliza ambas restricciones adyacentes juntas para actualizar a los tres jugadores en un único problema de inferencia (y puede iterar). [ 2 ] Los cálculos paso a paso a continuación aplican la actualización estándar de victoria de dos jugadores a cada comparación adyacente en secuencia para hacer transparente la mecánica; la ventaja de Chloe sobre Ben todavía se refleja a través de la cadena, porque la victoria de Chloe hace que Alice baje, y la victoria de Alice hace que Ben baje.

Ecuaciones de actualización de victoria (dos jugadores)

Para un ganadorw{\displaystyle w}y perdedorl{\displaystyle l}, definir do=σw2+σl2+2β2,t=μwμldo.{\displaystyle c={\sqrt {\sigma _{w}^{2}+\sigma _{l}^{2}+2\beta ^{2}}},\qquad t={\frac {\mu _{w}-\mu _{l}}{c}}.}

Dejarϕ{\displaystyle \phi }yΦ{\displaystyle \Phi }sean las funciones de densidad de probabilidad normal estándar y de distribución acumulativa. Para una victoria (sin margen de empate), defina v(t)=ϕ(t)Φ(t),w(t)=v(t)(v(t)+t).{\displaystyle v(t)={\frac {\phi (t)}{\Phi (t)}},\qquad w(t)=v(t){\bigl (}v(t)+t{\bigr )}.}

Las actualizaciones medias son μw=μw+σw2dov(t),μl=μlσl2dov(t),{\displaystyle \mu _{w}'=\mu _{w}+{\frac {\sigma _{w}^{2}}{c}}v(t),\qquad \mu _{l}'=\mu _{l}-{\frac {\sigma _{l}^{2}}{c}}v(t),} y la incertidumbre disminuye según σw2=σw2(1σw2do2w(t)),σl2=σl2(1σl2do2w(t)).{\displaystyle \sigma _{w}'^{2}=\sigma _{w}^{2}\left(1-{\frac {\sigma _{w}^{2}}{c^{2}}}w(t)\right),\qquad \sigma _{l}'^{2}=\sigma _{l}^{2}\left(1-{\frac {\sigma _{l}^{2}}{c^{2}}}w(t)\right).}

Paso 1: Chloe vence a Alice

Usando a Chloe(μ=20,σ=8){\displaystyle (\mu =20,\sigma =8)}como ganador y Alice(μ=30,σ=6){\displaystyle (\mu =30,\sigma =6)}como perdedor, conβ=25/6{\displaystyle \beta =25/6}:

  • do=11.61{\displaystyle c=11.61},t=0,86{\displaystyle t=-0.86}
  • v(t)=1.42{\displaystyle v(t)=1.42},w(t)=0,78{\displaystyle w(t)=0.78}

Al aplicar la actualización se obtiene:

  • Chloe:μ{\displaystyle \mu }aumenta a27.80{\displaystyle 27.80};σ{\displaystyle \sigma }disminuye a6.34{\displaystyle 6.34}
  • Alicia:μ{\displaystyle \mu }disminuye a25.61{\displaystyle 25.61};σ{\displaystyle \sigma }disminuye a5.33{\displaystyle 5.33}

Paso 2: Alice vence a Ben

La segunda comparación utiliza la calificación actualizada de Alice del paso 1, mientras que la de Ben permanece sin cambios hasta el momento. Alice(μ=25.61,σ=5.33){\displaystyle (\mu =25,61,\sigma =5,33)}vence a Ben(μ=25,σ=7){\displaystyle (\mu =25,\sigma =7)}:

  • do=10.59{\displaystyle c=10.59},t=0,06{\displaystyle t=0.06}
  • v(t)=0,76{\displaystyle v(t)=0.76},w(t)=0,62{\displaystyle w(t)=0.62}

Al aplicar la actualización se obtiene:

  • Alicia:μ{\displaystyle \mu }aumenta a27,66{\displaystyle 27.66};σ{\displaystyle \sigma }disminuye a4.89{\displaystyle 4.89}
  • Ben:μ{\displaystyle \mu }disminuye a21.48{\displaystyle 21.48};σ{\displaystyle \sigma }disminuye a5,97{\displaystyle 5.97}

Calificaciones antes y después del partido

En este ejemplo, para que Chloe termine en primer lugar, su desempeño debe superar el de Alice, y el de Alice debe superar el de Ben, por lo que las distribuciones de habilidades inferidas cambian en consecuencia. El gran aumento de Chloe enμ{\displaystyle \mu }refleja que su victoria sobre un oponente con una calificación sustancialmente superior fue inesperada según las calificaciones anteriores, mientras que las disminuciones enσ{\displaystyle \sigma }Reflejan que el partido proporciona información adicional sobre las habilidades relativas de los jugadores.

TrueSkill2

En 2018, investigadores de Microsoft publicaron TrueSkill2 como una extensión del modelo TrueSkill original que incorpora información adicional disponible en algunos juegos en línea, más allá del orden final de victorias y derrotas. [ 4 ] El artículo describe el uso de señales como la experiencia del jugador, la pertenencia a un escuadrón, las estadísticas individuales (por ejemplo, recuentos de bajas y muertes), el comportamiento de abandono y el rendimiento en otros modos de juego, con el objetivo de mejorar la precisión de las habilidades inferidas para el emparejamiento. [ 4 ]

Los autores describieron TrueSkill2 como un sistema que conserva la misma interfaz que el TrueSkill clásico, una calificación de habilidad numérica única diseñada para seguir siendo compatible con los sistemas de emparejamiento existentes, pero que cambia la forma en que se infieren las habilidades a partir de datos históricos. [ 4 ] Describieron la estimación automática de parámetros a partir de lotes de partidas históricas y dos modos de funcionamiento: un modo en línea que propaga las habilidades hacia adelante en el tiempo y un modo por lotes que infiere parámetros y habilidades a lo largo de todos los tiempos (conocido como TrueSkill Through Time ). [ 4 ]

En comparación con el TrueSkill clásico, el artículo enumera cambios en el modelo que incluyen: la incorporación de estadísticas individuales de los jugadores junto con las victorias/derrotas del equipo; el tratamiento del abandono de la partida a mitad de juego como una rendición a efectos de la clasificación; el intercambio de información entre modos de juego mediante el modelado de habilidades correlacionadas entre modos; y el modelado de la evolución de las habilidades con una tendencia a la mejora, especialmente en las primeras partidas de un jugador en un modo. [ 4 ] Añade un efecto de escuadrón explícito, modelando que los jugadores que juegan juntos rinden mejor que si lo hicieran individualmente. [ 4 ]

En los datos de partidas de Halo 5 , los autores informaron que TrueSkill2 mejoró la predicción de los resultados históricos de las partidas, obteniendo una precisión del 68% en su evaluación en comparación con el 52% del sistema TrueSkill original. [ 4 ]

TrueSkill forma parte de una familia más amplia de sistemas de clasificación estadística que se utilizan para inferir la fuerza relativa a partir de los resultados de las partidas. El sistema de clasificación Elo , desarrollado originalmente para el ajedrez, modela las probabilidades de victoria a partir de las diferencias de clasificación y actualiza las clasificaciones después de las partidas basándose en la diferencia entre los resultados observados y esperados. [ 9 ]

Glickman propuso posteriormente modelos dinámicos de comparación por pares que incorporan la incertidumbre en la fuerza estimada de un jugador y permiten que dicha incertidumbre cambie con el tiempo, motivado en parte por las limitaciones de las actualizaciones al estilo Elo para grandes poblaciones competitivas. [ 10 ] En un estudio de los sistemas de clasificación utilizados en juegos y evaluaciones, los investigadores de ETS describieron TrueSkill como una generalización al estilo Elo para competiciones multijugador y por equipos que mantiene estimaciones de incertidumbre junto con las puntuaciones. [ 7 ]

Algunos modelos probabilísticos relacionados tratan las clasificaciones como muestras de una distribución que satisface el axioma de elección de Luce . Guiver y Snelson señalan que un modelo thurstoniano con variables de puntuación independientes induce una distribución de Plackett-Luce si y solo si las puntuaciones siguen una distribución de Gumbel, y contrastan esto con TrueSkill, que utiliza variables de puntuación gaussianas. [ 5 ] Afirman que el modelo de puntuación gaussiana de TrueSkill no satisface el axioma de elección de Luce, al tiempo que señalan su uso en sistemas de calificación en línea a gran escala. [ 5 ]

Varias extensiones de investigación se basan en la formulación probabilística de TrueSkill. Dangauthier, Herbrich, Minka y Graepel propusieron TrueSkill Through Time , que reemplaza las actualizaciones originales de estilo filtrado con un suavizado sobre una serie temporal de habilidades de los jugadores, lo que permite la estimación retrospectiva de las trayectorias de las habilidades al tiempo que se conservan las estimaciones de incertidumbre y un modelo de sorteo explícito. [ 11 ]

Patentes y marcas registradas

TrueSkill está patentado, [ 12 ] y el nombre está registrado como marca comercial, por lo que su uso se limita a proyectos de Microsoft y proyectos comerciales que obtengan una licencia para utilizar el algoritmo. [ 13 ] La patente expirará el 9 de abril de 2029. [ 14 ]

Véase también

Referencias

  1. Murphy, Kevin (2012). Aprendizaje automático: una perspectiva probabilística . MIT Press. ISBN 978-0262018029.
  2. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 Herbrich, Ralf; Minka, Tom; Graepel, Thore (2006). "TrueSkill™: Un sistema de calificación de habilidades bayesiano" (PDF) . Avances en sistemas de procesamiento de información neuronal 19 (NIPS 2006) . MIT Press. págs. 569–576 . Recuperado el 11 de enero de 2026 . {{cite conference}}: CS1 mantenimiento: estado de la URL ( enlace )
  3. "Sistema de clasificación TrueSkill™" . Microsoft Research . Consultado el 11 de enero de 2026 .
  4. 1 2 3 4 5 6 7 8 9 Minka, Tom; Cleven, Ryan; Zaykov, Yordan (22 de marzo de 2018). TrueSkill 2: Un sistema mejorado de calificación de habilidades bayesianas (PDF) (Informe técnico). Microsoft Research. MSR-TR-2018-8 . Recuperado el 11 de enero de 2026 .{{cite tech report}}: CS1 mantenimiento: estado de la URL ( enlace )
  5. 1 2 3 Guiver, John; Snelson, Edward (2009). "Inferencia bayesiana para modelos de clasificación de Plackett-Luce" (PDF) . Actas de la 26.ª Conferencia Internacional Anual sobre Aprendizaje Automático (ICML '09) . Association for Computing Machinery. págs. 377–384 . doi : 10.1145/1553374.1553423 . Recuperado el 11 de enero de 2026 . {{cite conference}}: CS1 mantenimiento: estado de la URL ( enlace )
  6. Bishop, Christopher M. (13 de febrero de 2013). " Aprendizaje automático basado en modelos" . Philosophical Transactions of the Royal Society A: Mathematical, Physical and Engineering Sciences . 371 (1984). doi : 10.1098/rsta.2012.0222 . PMC 3538442. PMID 23277612. Recuperado el 11 de enero de 2026 .  
  7. 1 2 Rotou, Ourania; Qian, Xiaoyu; von Davier, Matthias (julio de 2015). Sistemas de clasificación utilizados en evaluaciones de juegos y/o juegos competitivos (PDF) (Informe). Memorando de investigación de ETS. Educational Testing Service . Recuperado el 11 de enero de 2026 .
  8. Minka, Thomas P. (2001). "Expectation propagation for approxy Bayesian inference" (PDF) . Actas de la Decimoséptima Conferencia sobre Incertidumbre en Inteligencia Artificial (UAI 2001) . Morgan Kaufmann. pp. 362–369 . Consultado el 11 de enero de 2026 . {{cite conference}}: CS1 mantenimiento: estado de la URL ( enlace )
  9. ^ Elo, Arpad E. (1978). La clasificación de los ajedrecistas, pasados ​​​​y presentes (2ª ed.). Pub Arco. ISBN  9780668047210Consultado el 11 de enero de 2026 .
  10. Glickman, Mark E. (1999). "Estimación de parámetros en experimentos de comparación por pares dinámicos a gran escala" (PDF) . Journal of the Royal Statistical Society Series C: Applied Statistics . 48 (3): 377– 394. doi : 10.1111/1467-9876.00159 . Consultado el 11 de enero de 2026 .
  11. Dangauthier, Pierre; Herbrich, Ralf; Minka, Tom; Graepel, Thore (2007). "TrueSkill Through Time: Revisiting the History of Chess" (PDF) . Advances in Neural Information Processing Systems 20 (NIPS 2007) . Consultado el 11 de enero de 2026 .{{cite conference}}: CS1 mantenimiento: estado de la URL ( enlace )
  12. "US8538910B2 – Determinación de las habilidades relativas de los jugadores" . Patentes de Google . Consultado el 11 de enero de 2026 .
  13. "Aviso de derechos de autor" . Microsoft Learn . 28 de abril de 2025. Consultado el 11 de enero de 2026 .
  14. "US20090227313A1 – Determinación de las habilidades relativas de los jugadores" . Patentes de Google . Consultado el 11 de enero de 2026 .
  • Página principal de TrueSkill de Microsoft Research
  • El documento TrueSkill de Microsoft Research
  • Explicación detallada de los fundamentos matemáticos.