Slashdot Mirror


Details on XBox TrueSkill Ranking System

rupert0 writes "A research paper on the Microsoft website gives an insight into the way that gamers will be ranked on the new-style Xbox Live. The paper outlines some existing ranking systems, as well." From the article: "The TrueSkill(TM) ranking system is a skill-based ranking system designed to overcome the limitations of existing ranking systems, and to ensure that interesting matches can be reliably arranged within a league. It uses a technique called Bayesian inference for ranking players. Rather than assuming a single fixed skill for each player, the system characterises its belief using a bell-curve belief distribution (also referred to as Gaussian) which is uniquely described by its mean (speak [mju:]) ("peak point") and standard deviation (speak [sigma])("spread")."

5 of 50 comments (clear)

  1. It has to be an improvement. by numbski · · Score: 4, Interesting

    Given that the current system could be described as a "bubble sort".

    That is, the cheaters and glitchers bubble to the top, the people looking for a fair and fun game drop to the bottom and eventually give up and stop playing. :\

    --

    Karma: Chameleon (mostly due to the fact that you come and go).

  2. Re:The proof of the pudding is in the tasting by Joe+Random · · Score: 5, Informative
    I'll believe this method works if I can join a Halo 3 game as a level 1 player and not have my ass kicked.
    It's not possible to guarantee that. Even if the ranking system puts you in a game with other newbie players, it has no idea what any of the players' skill levels are prior to them playing their first match. However, after getting your ass kicked a couple of times, the ranking system should be able to more reliably group you with players of an approximately equal skill level.

    But it is necessary that your very first game is more likely to have some major asskicking, and you may be on the giving end or the receiving end depending on your prior, unrecorded experience.
  3. Most importantly... by game+kid · · Score: 4, Interesting

    ...one must not be able to rank up with simple tactics.

    --
    You can hold down the "B" button for continuous firing.
  4. A Bayesian slight of hand? by Anonymous Coward · · Score: 5, Interesting

    Let me start this by saying I have no problem with the Bayesian framework... this usually can be a source for a fight in statistics departments ... I've seen a situation where a professor snapped a potential professor hire for his usage of the Bayesian framework in his presentation.

    Typically the Elo system works on a iterative mechanism that updates after a match... that is to say that you have a prior rank, you play your game, and you have a post-match rank (not technical terms mind you) usually its R[player,after]=Rank[player,before]+("speed factor")(Result(0/1) - WinExpectancy(yourrank,theirrank). For Chess the logit function is used with some additional scaling factor (1/(1+exp(-(yours-theirs)/400)).

    This new system is taking advantage of the Bayesian framework, for those not P(A[i]|B)=P(B|A[i])*P(A[i])/sum(P(B|A[j])*P(A[j]), j=1..n)... or in more typical terms of likelihood the posterior density (density shaped by events) is proportional to the likelihood times a "prior" belief, or distribution.

    What's the problem in this... the Elo system can adapt to change in ability of the player over time. A Bayes based system can't. The Bayes estimates converge to what is the true values of the parameters in the model as the number of samples increase to infinity. So an estimate given under frequentist frameworks (MLE, UMVUE, Method of Moments) converge to the same estimate given under Bayes frameworks (mode of the posterior, mean of the posterior). Your estimate can only become more refined with data... if you play enough games, the framework cannot account for any substantial changes in skill. The variance of your stregth or ability rating will decrease. Of course the property of the updating scheme is a nice one to have... I've got to figure there is some usage of approximations... they are very scant in terms of either a prior or a modeled distribution for the event (logit, probit, cloglog, some arbitrary cumulative density function). I'm not going to complain about the normality assumptions in prior or posterior though... I wouldn't know about this situation in particular but the Central Limit Theorem pops up over and over again in statistics (there is a Bayesian CLT but I don't know what that entails). Especially in linear model variants such as this. I see this more as improvement by obfuscation... throw out cute words like "True Skill" and the idea that you have this better system that people will impart its own hopes on it. So, if you want to game the system, just win a lot really early before your variance decreases... looking at the formulae there doesn't seem to be any indication that they are utilizing a conjugate prior (which can help for giving forms for solutions that will not want to eat your pets)... otherwise they'd be staring at a gigantic matrix... and anybody who has dealt with multiple parameters in this situation knows that there will be a correlation structure... which seems to be ignored in the formulae.

    Most approaches I have seen thus far (as a second year grad student) in Bayes methods works away from a nice framework... many sound methods and realistic problems require Markov Chain Monte Carlo or similar techniques (which can be a nightmare in a computation sense)... either you have to have something of an incredibly nice form or you need to make use use of approximations to make a system like this work. I don't see how this will be all that appropriate in online gaming... sports I can see since you aren't taking somebody who mastered squash and putting them right into rugby. (Irrelevant to topic at hand-->) I've always had an interest in methods of ranking players/competitors but mainly from a sports angle. I've got a system drawn up in my head, its a matter of seeing if I can get it to work and then having a few hundred breaks work my way in terms of implementation (again, MCMC is probably the best tool in a lot of cases... but its a computational/time killer). The Bayesian framework is great if you have a good sense of piror belief as it can help guide you to a solution... but it is naturally biased (not necessarily from a point of malice) and at times it is used inappropriately.

    1. Re:A Bayesian slight of hand? by Ralf+Herbrich · · Score: 5, Informative
      Thanks a lot for your comments; you certainly understood the math behind TrueSkill(TM) really well! But there are a few details (that we did not want to bore people with on our web pages) which address all your concerns:

      • The first problem you point out is that Bayesian estimates (in general) asymptotically converge to the maximum likelihood estimates and, hence, in the TrueSkill sytem the sigma's would eventually go to zero and not allow for adaptation in the change of the player's "true" skill. This is true for stationary models but not for models with dynamics (think of a Kalman filter, for example). In fact, in the TrueSkill system we have a dynamics factor in our model equation that says that the skill of every gamer can slightly go up or down (zero mean, small variance) between two consecutive games. If you want to see this at work, please go to http://www.research.microsoft.com/mlp/trueskill/Ra nkCalculator.aspx and put every gamer's Sigma at 0.5; then press Recalculate Skill Level Distribution and you will see that the Sigma's after the game are slighly bigger (they should be 0.504). We have worked out the asymptotic value of the uncertainity, sigma, theoretically and compared our solution to empirical findings on 3 million games; our asymptotic limit was close up to 3 digits of precision. This limit is reasonably large to allow constant adaptation for skill changes.
      • The second problem you point out is that of a conjugate prior. Unfortunately, there is no conjugate prior for the probit likelihood in any representation. The approximation method we are using is called "Expectation Propagation" (see http://research.microsoft.com/~minka/papers/ep/roa dmap.html) or belief propagation in factor graphs. This IS an "incredibly nice" algorithm, to say it in your words :)
      • The third problem you point out is that the whole correlation structure would be gigantic and you are absolutely right when considering that there are millions of people on Xbox Live so this matrix would be couple of million rows times couple of million columns. However, we only save the diagonal of the matrix, that is, the uncertainity in the skill of every gamer. Please note, though, that we do build up the whole correlation structure (temporarily) for all gamers within a game (to make the approximation of the update step as exact as possible).

      Best wishes,
      Ralf Herbrich & Thore Graepel, Microsoft Research Cambridge (UK)