Jump to content

- - - - -

The Math Behind WvW Ratings


  • Please log in to reply
8 replies to this topic

#1 Khalija


    Leaf on the Wind

  • Administrators
  • 4343 posts
  • Profession:Mesmer
  • Guild:Testing
  • Guild Tag:[TEST]
  • Server:Jade Quarry

Posted 09 November 2012 - 07:26 PM

Posted Image

Today, Habib Loew explains the math between the WvW ranking system:

People often ask how WvW rankings are determined so in this post I will outline exactly the system that we use.

The short, short summary is that after each battle we use the score differential between the worlds that fought each other, along with their previous ratings, to calculate new ratings. Once ratings have been calculated we re-sort the list of worlds and form new groupings of 3 for the next battle.

Far more details regarding the ratings calculation for the mathematically inclined:

WvW world ratings are calculated using the Glicko 2 rating system. Full details regarding Glicko 2 are available at http://www.glicko.net/glicko.html. How an algorithm is applied is often nearly as important as the algorithm itself, so here are the details of exactly how we use Glicko 2 in the context of each 3 world matchup. My explanation of these details assumes basic familiarity with the Glicko 2 algorithm.

Assume the worlds are wA, wB, and wC. In order to handle a 3 way battle we treat each match as having two battles for each world. So when calculating the new rating for wA the two battles are wA vs. wB and wA vs. wC. Likewise for wB and wC. Naturally, we do all the calculations before updating any of the ratings. Note that this usage is supported by Glicko 2.

We use a Tau of 0.6 and a k of 1.0

In standard Glicko 2 scores are represented as 0.0 for a loss, 0.5 for a draw, and 1.0 for a win. We use a slightly modified version that takes into account score differential. I’ll explain how using the wA vs. wB battle as an example. To calculate the Glicko 2 score for wA in the wA vs. wB matchup we do the following:

wAPercent = wAScore / (wAScore + wBScore)
wAGlickoScore = (sin((wAPercent – 0.5) * Pi) + 1) * 0.5

where wAScore and wBScore are the raw scores from the end of the match.

That last transform is easiest to visualize as a graph.

We perform the same score calculation for each world and then plug those results into Glicko 2. This means that ratings change over time as a result of battle outcomes and that the rating for a given server reflects the history of that server’s performance. [Source]

Just a quick clarification. The formulas

wAPercent = wAScore / (wAScore + wBScore)
wAGlickoScore = (sin((wAPercent – 0.5) * Pi) + 1) * 0.5

make no assumptions about winners or losers. The first simply calculates a relative score percentage between the two teams involved. This is a number between 0.0 and 1.0. The second transforms the relative percentage into a Glicko 2 score using a sine wave which has the effect of making large score differentials have a less than linear impact on the Glicko 2 score (see the linked graph). The result is still in the range 0.0 to 1.0. Effectively this means that as score differentials get larger and larger the actual Glicko 2 score for a team approaches 0.0 or 1.0 more and more slowly.

We perform these operations pairwise on all the teams, so we are calculating 6 matches (two for each team) which fits the Glicko 2’s one-way nature. This is because the rating changes are asymmetric.

Because the ratings of two teams matter when calculating the results of a match (a lower rated team beating a higher rated team results in more change than a higher rated team beating a lower rated team) if two teams are very close in score then there is generally very little change in their ratings. Again, I encourage you to read the Glicko 2 website for a more thorough explanation of that part of the process.

Hopefully we'll have the rankings posted for you guys by the end of the day.
  • 0

#2 Jentari


    Vanguard Scout

  • Curse Premium
  • 250 posts
  • Server:Crystal Desert

Posted 09 November 2012 - 08:28 PM

Looked over the Glicko2 details and it all makes sense. yup Clear as mud. :huh:
  • 1

#3 Doctor Overlord

Doctor Overlord

    If you hate MMOs....

  • Members
  • 5204 posts
  • Location:Austin, TX
  • Server:Sanctum of Rall

Posted 09 November 2012 - 08:58 PM

I love it when they talk that sexy math.
  • 2

#4 Lord Bazaah

Lord Bazaah

    Seraph Guardian

  • Members
  • 1523 posts
  • Location:With the girl who waited.
  • Guild Tag:[yZ]
  • Server:Gandara

Posted 09 November 2012 - 10:33 PM

Interesting, I didn't realize the patent had expired. That explains a lot.
  • 0

#5 scaur


    Fahrar Cub

  • Members
  • 32 posts

Posted 10 November 2012 - 02:35 AM

They forgot to add the # of free transfers.
  • 0

#6 DeConstruct


    Asuran Acolyte

  • Members
  • 134 posts

Posted 10 November 2012 - 05:08 PM

Well Habib Loew, how about you go calculate the French Canadians off the French EU servers so they stop skewing the results.
  • 0

#7 AstralPhoenix777


    Fahrar Cub

  • Members
  • 22 posts
  • Location:UK
  • Guild Tag:[AoF]
  • Server:Far Shiverpeaks

Posted 10 November 2012 - 09:48 PM

[quote name='DeConstruct' timestamp='1352567290' post='2071643']
Well Habib Loew, how about you go calculate the French Canadians off the French EU servers so they stop skewing the results.

This is true; as with tournament chess, Guild Wars 2's matching system uses Glicko. But in Chess your opponent isn't allowed to checkmate your king before you've even arrived at the table (*cough cough* [b][color=#b22222]NIGHT-CAPPING[/color][/b] *cough cough*).
  • 0

#8 mouthwash27


    Vanguard Scout

  • Members
  • 157 posts

Posted 12 November 2012 - 06:02 AM

I don't understand why they randomly multiply by Pi
  • 0

#9 Velicia


    Vanguard Scout

  • Members
  • 157 posts
  • Location:England
  • Guild Tag:[BoD]
  • Server:Seafarer’s Rest

Posted 12 November 2012 - 08:57 AM

Pi is their constant, everything else in the algorithm can be changed to tweak the results.
  • 0

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users