• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EST 12:58
CET 18:58
KST 02:58
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
Intel X Team Liquid Seoul event: Showmatches and Meet the Pros10[ASL20] Finals Preview: Arrival13TL.net Map Contest #21: Voting10[ASL20] Ro4 Preview: Descent11Team TLMC #5: Winners Announced!3
Community News
Weekly Cups (Oct 26-Nov 2): Liquid, Clem, Solar win; LAN in Philly1Weekly Cups (Oct 20-26): MaxPax, Clem, Creator win62025 RSL Offline Finals Dates + Ticket Sales!10BSL21 Open Qualifiers Week & CONFIRM PARTICIPATION3Crank Gathers Season 2: SC II Pro Teams12
StarCraft 2
General
Weekly Cups (Oct 26-Nov 2): Liquid, Clem, Solar win; LAN in Philly RotterdaM "Serral is the GOAT, and it's not close" Intel X Team Liquid Seoul event: Showmatches and Meet the Pros Weekly Cups (Oct 20-26): MaxPax, Clem, Creator win Weekly Cups (Oct 13-19): Clem Goes for Four
Tourneys
SC4ALL $6,000 Open LAN in Philadelphia $3,500 WardiTV Korean Royale S4 Crank Gathers Season 2: SC II Pro Teams Merivale 8 Open - LAN - Stellar Fest Kirktown Chat Brawl #9 $50 8:30PM EST
Strategy
Custom Maps
Map Editor closed ?
External Content
Mutation # 498 Wheel of Misfortune|Cradle of Death Mutation # 497 Battle Haredened Mutation # 496 Endless Infection Mutation # 495 Rest In Peace
Brood War
General
SnOw on 'Experimental' Nonstandard Maps in ASL Ladder Map Matchup Stats SnOw's ASL S20 Finals Review Map pack for 3v3/4v4/FFA games BW General Discussion
Tourneys
BSL21 Open Qualifiers Week & CONFIRM PARTICIPATION [ASL20] Grand Finals Small VOD Thread 2.0 The Casual Games of the Week Thread
Strategy
How to stay on top of macro? Current Meta PvZ map balance Soma's 9 hatch build from ASL Game 2
Other Games
General Games
Nintendo Switch Thread ZeroSpace Megathread Stormgate/Frost Giant Megathread General RTS Discussion Thread Path of Exile
Dota 2
Official 'what is Dota anymore' discussion
League of Legends
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Deck construction bug Heroes of StarCraft mini-set
TL Mafia
TL Mafia Community Thread SPIRED by.ASL Mafia {211640}
Community
General
US Politics Mega-thread Dating: How's your luck? Things Aren’t Peaceful in Palestine Russo-Ukrainian War Thread Canadian Politics Mega-thread
Fan Clubs
White-Ra Fan Club The herO Fan Club!
Media & Entertainment
[Manga] One Piece Anime Discussion Thread Movie Discussion! Korean Music Discussion Series you have seen recently...
Sports
MLB/Baseball 2023 TeamLiquid Health and Fitness Initiative For 2023 Formula 1 Discussion 2024 - 2026 Football Thread NBA General Discussion
World Cup 2022
Tech Support
SC2 Client Relocalization [Change SC2 Language] Linksys AE2500 USB WIFI keeps disconnecting Computer Build, Upgrade & Buying Resource Thread
TL Community
The Automated Ban List Recent Gifted Posts
Blogs
What is "Original Sin"?
Peanutsc
Challenge: Maths isn't all…
Hildegard
Career Paths and Skills for …
TrAiDoS
Customize Sidebar...

Website Feedback

Closed Threads



Active: 1577 users

Starcraft Statistics in R: Part 3 - Transitivity

Blogs > zoniusalexandr
Post a Reply
zoniusalexandr
Profile Blog Joined August 2010
United States39 Posts
July 22 2011 04:24 GMT
#1
This post is part of my ongoing series on statistics in Starcraft 2. Thus far, I've looked at the network structure of professional games, and explained why ELO is not really appropriate for ranking players by skill. Today, I'll be taking a step back and trying to measure how much of a difference skill makes at the pro level.

The ultimate goal of this project is to build a system of ranking players that won't fall prey to some of the issues that plague ELO. Before we get into the details of such a system, though, it's important to ask whether or not such a system exists. If we want to rank players on one dimension, then it would be important for skill to be approximately one-dimensional, otherwise our results might be meaningless.

Basically, I want to be able to say, these are the top 10 players, in some particular order. In order for that to be accurate, we'd want as few upsets as possible. But I also want to be able to take that one step further, and compare players who haven't played each other yet. If you look at the networks from part 1, you will notice that each of the scenes is fairly segregated, which means that we will need to examine a lot of hypothetical matchups to develop a set of rankings.

Underpinning a lot of the structure of ELO and other ranking mechanisms is the idea of transitivity. Suppose we have three players under consideration, let's call them Adelscott, Bomber, and Catz. We ask each of them to play the other two, and record the results. Hypothetically, let's say Adelscott beats Bomber, Bomber beats Catz, and Catz loses to Adelscott. We call this situation transitive, because one of the players beat the other two (Adelscott in this case). This is a really helpful situation for ranking the players, because Adelscott went 2-0, Bomber went 1-1, and Catz went 0-2. Now, let's suppose instead that Catz had beaten Adelscott. This case is considered non-transitive, because each player went 1-1. Non-transitive cases make ranking players considerably more difficult, since we have no objective data to help us break the tie.

In a perfect world, where the player with "more skill" always won, non-transitivity would never occur. In the opposite world, where every game is determined at random, non-transitivity would occur about 25% of the time. This is because, among three players, there are eight different configurations (2 possibilities for each of 3 games, 2^3 =8). If your having trouble believing this, you can do what I did and draw out the eight possibilities:
[image loading]
Triangles 2-7 are transitive, while #1 & #8 are non-transitive.

A natural question to ask is, are we closer to the perfect world, or the random world? I fired up R to take a look at transitivity among the 293 most prolific pro players around the world.

I utilized the amazing igraph package for R to isolate all of the triads (sets of three players who have played at least one game against each other). In total, there are 20,350 triads to examine. Instead of looking at only one game played between each of the triad members, I look at all of their games against each other from the TLPD. I'm also throwing out all the triads in which two players had an equal number of wins and losses against each other, since I'm not sure how to handle that (these cases were a small minority). Additionally, I've isolated those sets of games played within one of the three scenes, and calculated the triad rate for each of those as well.

So what are the results? Here are the rates of non-transitivity, both for the entire international scene and broken down by continent:
Overall: 16.95%
Asia: 20.35%
America: 17.78%
Europe: 17.04%

The obvious news first: We don't live in a perfect world, but it's also not completely random. It's somewhere in the middle. The Asian scene has higher rates of non-transitivity than either America or Europe. This could be because Asian players tend to play more cheesy strategies, but it could also be an indication that there's less of a skill gap between the best players and the worst players in Asia.

The less obvious news: The overall rate of non-transitivity is lower than any of the regions individually. Keep in mind that games played between opponents from different regions are only counted in the "Overall" rate. Therefore, skill is more of a factor when two players from different regions play, compared to two players from the same region. I take this to mean that there are significant differences in the average skill of players from region to region. This method doesn't tell us which regions are "better" on average, but it does tell us that the three regions are not equal.

On the whole though, I'm not sure precisely how much this proves. I'd like to make the simple conclusion that, since all of the rates are above 12.5%, we live in a world where randomness is more important than skill. The problem is that I'm not sure these rates are sufficient evidence of that fact. It could be that skill is multi-dimensional, which would give a high level of non-transitivity even if randomness is not that important. Your thoughts on this subject would be much appreciated.

----------

Unrelated to the above:
Quick followup - In part 2, I attempted to predict the NASL based on ELO rankings. Out of 16 series, ELO correctly predicted the winners of 8 series. In other words, no better than chance.

Also, I've been working on my new algorithm and it's almost done. I've been getting some really good results, and I can't wait to share them with you guys. If all goes well ironing out the last few bugs, I should have a post up this weekend with the Top 100 players in the world.

As always, any thoughts/critiques are welcome. If any of you have experience with statistics, I'd be curious to get your thoughts on the transitivity test. I looked around for papers on the subject, but I'm not sure anyone has really looked at these kinds of tests before.

*****
Heyoka
Profile Blog Joined March 2008
Katowice25012 Posts
Last Edited: 2011-07-22 04:54:27
July 22 2011 04:53 GMT
#2
wow I missed your other blogs, these are really good. I've wanted to write a piece on why ELO is worthless for SC for years but never could articulate the argument well enough.

Keep up the awesome work! I tried to get some insight into the problem you're having a while back and ended up reading through the MS published papers on how TrueSkill works, but all it did was make me feel like I was even deeper in an endless rabbit hole.

I would really love a better way of objectively ranking players so keep us posted on the results of your algorithm, it has a lot of potential for the larger community as a resource.
@RealHeyoka | ESL / DreamHack StarCraft Lead
Taf the Ghost
Profile Joined December 2010
United States11751 Posts
July 22 2011 05:39 GMT
#3
This could be really interesting. Keep up the good work!
TheAmazombie
Profile Blog Joined September 2010
United States3714 Posts
July 22 2011 05:54 GMT
#4
This is great. Thanks for all of the work on this as I have been following your write-ups. I cannot wait to see some more results.
We think too much and feel too little. More than machinery, we need humanity. More than cleverness, we need kindness and gentleness. Without these qualities, life will be violent and all will be lost. -Charlie Chaplin
oxidized
Profile Blog Joined January 2009
United States324 Posts
July 22 2011 06:26 GMT
#5
Wow amazing series of blogs! I can't wait to see your algorithm and its results.

About the non-transitivity: I think that it is going to be a combination of multi-dimensional skill as well as randomness (unfortunately). In SC2, some players may have a playstyle that is particularly strong against a playstyle set, but weak to another. Still randomness is going to be a large factor due to circumstances that we could not account for in an algorithm, such as a player's mental state (micro mistakes, etc) or some luck factor with scouting and positional spawning. Maps and matchup would also play a huge role, and I don't know if you would take this into account.
Cassel_Castle
Profile Blog Joined July 2011
United States820 Posts
Last Edited: 2011-07-22 06:46:55
July 22 2011 06:43 GMT
#6
Out of 16 series, ELO correctly predicted the winners of 8 series. In other words, no better than chance.


I read a paper where ELO and other ranking systems were used to predict outcomes of Go matches. ELO was right about 55% of the time, and the other ones were right about 56%. So it is a little better than chance in the long run. Your sample of 16 Bernoulli trials with a ~55% rate of success (assuming ELO is as accurate for SC2 as for Go) could easily land 8 successes, so we can't really conclude it's "no better than chance".

Underpinning a lot of the structure of ELO and other ranking mechanisms is the idea of transitivity. Suppose we have three players under consideration, let's call them Adelscott, Bomber, and Catz. We ask each of them to play the other two, and record the results. Hypothetically, let's say Adelscott beats Bomber, Bomber beats Catz, and Catz loses to Adelscott. We call this situation transitive, because one of the players beat the other two (Adelscott in this case). This is a really helpful situation for ranking the players, because Adelscott went 2-0, Bomber went 1-1, and Catz went 0-2. Now, let's suppose instead that Catz had beaten Adelscott. This case is considered non-transitive, because each player went 1-1. Non-transitive cases make ranking players considerably more difficult, since we have no objective data to help us break the tie.


Note that all three players are of different races, and I don't mean there's one hispanic, one caucasian, and one asian. If, in the second scenario, Adelscott has great PvT and bad PvZ, Bomber has great TvZ and bad TvP, and Catz has great ZvP and bad ZvT, I would say that the results are transitive with regards to matchups. If it's possible to run the analysis with respect to matchups I would love to see the results.
Primadog
Profile Blog Joined April 2010
United States4411 Posts
July 22 2011 06:46 GMT
#7
Putting statistics in the title guarantees a read and 5-star from me, and I'll bet I aint the only one.
Thank God and gunrun.
Primadog
Profile Blog Joined April 2010
United States4411 Posts
Last Edited: 2011-07-22 08:54:22
July 22 2011 07:05 GMT
#8
I simply play with numbers as a hobby, so my methods are far more primitive in comparison.

Based on my readings, Elo is not a perfect system for StarCraft, but it certainly can be predictive if used properly. For example, while it or other rating system (like yours) will perform poorly for elimination tournaments, it provide certain level of reliability for league-style, round-robin formats. Simple combination of expected values derived only from players' Elos shows approximately 70% hit-rate (NASL group stage, experimentally, with week 3 data), which is non-trivial.

There is no doubt that a better rating system can exist than the traditional Elo (TrueSkill, for one). However, any rating system that tries to distill a player's skill in a single rating will fail to capture certain properties unique to StarCraft. For one, players' skill in each racial matchup varies wildly, and my preliminary tests shows that proper use of that data can add about 5% more accuracy to projections. Another is map-balance. If you also account for these variables in your rating system, I am certain that non-transitivity can be reduced significantly, perhaps around 12% or lower.
Thank God and gunrun.
zoniusalexandr
Profile Blog Joined August 2010
United States39 Posts
July 22 2011 16:42 GMT
#9
On July 22 2011 15:43 Cassel_Castle wrote:
Note that all three players are of different races, and I don't mean there's one hispanic, one caucasian, and one asian. If, in the second scenario, Adelscott has great PvT and bad PvZ, Bomber has great TvZ and bad TvP, and Catz has great ZvP and bad ZvT, I would say that the results are transitive with regards to matchups. If it's possible to run the analysis with respect to matchups I would love to see the results.


That's an excellent point. I thought quite awhile about measuring the matchups individually, but I decided against it for two reasons:

1. Identification - Some players in the sample (i.e. DongRaeGu) have played less than 25 games in tournaments. If we broke each player down into three different matchups, we might be identify certain matchup skills based on only a handful of games. Even though we might be taking more aspects of player skill into account, our results might actually be less accurate, due to the fact that we've basically tripled the degrees of freedom.

2. Ranking - My point with this analysis is to try and rank players objectively. If I broke it down by matchup, I'd be ranking player-matchups instead, which would no doubt be interesting, but I'll leave that for another day.

You're absolutely right in that skill could be multi-dimensional, but for the time being I'm going to look at skill on one-dimension. My effort today was to show that skill is not zero-dimensional (aka random). Going forward, I'll try and address these extra possible dimensions by adding them one at a time.

@Primadog:

ELO achieves more accuracy if the disparities in skill between players are wider. Given ELO's faults, I like to think about it as a noisy indicator. If one player is much much better than another, his ELO is likely to be higher as well. However, if the gap in skill is reasonably small, the better player's ELO might be lower than his opponent's rating, due to the noise.

ELO might have done better in the NASL round-robin than in the finals because of the player pool. The round-robin had 50 players, with a wide distribution of skill, whereas the finals had much less variance among its players.

My new algorithm will be capturing a lot of the same information that ELO has, but without the noise. It should do just as well as ELO in the round-robin stages, but outperform ELO in situations like the NASL finals.
Please log in or register to reply.
Live Events Refresh
Monday Night Weeklies
17:00
Monday Night Weekly #29
RotterdaM699
TKL 269
IndyStarCraft 148
BRAT_OK 115
LiquipediaDiscussion
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
RotterdaM 699
TKL 269
IndyStarCraft 148
BRAT_OK 115
UpATreeSC 78
Codebar 57
MindelVK 31
ZombieGrub3
StarCraft: Brood War
firebathero 288
Mong 89
Rock 45
Dota 2
qojqva3121
420jenkins379
BananaSlamJamma188
XcaliburYe181
Counter-Strike
ScreaM1461
byalli432
kRYSTAL_41
Other Games
singsing2086
FrodaN1586
Lowko460
ceh9393
Liquid`VortiX257
Fuzer 184
ArmadaUGS167
C9.Mang094
QueenE83
Trikslyr56
Organizations
Other Games
gamesdonequick658
Counter-Strike
PGL356
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
sctven
[ Show 17 non-featured ]
StarCraft 2
• Hupsaiya 31
• Adnapsc2 8
• Reevou 2
• Migwel
• AfreecaTV YouTube
• sooper7s
• intothetv
• Kozan
• IndyKCrew
• LaughNgamezSOOP
StarCraft: Brood War
• Michael_bg 8
• STPLYoutube
• ZZZeroYoutube
• BSLYoutube
Dota 2
• WagamamaTV519
League of Legends
• Jankos3009
Other Games
• imaqtpie635
Upcoming Events
Replay Cast
5h 2m
Sparkling Tuna Cup
16h 2m
WardiTV Korean Royale
18h 2m
LAN Event
21h 2m
Replay Cast
1d 15h
WardiTV Korean Royale
1d 18h
LAN Event
1d 21h
OSC
2 days
The PondCast
2 days
LAN Event
2 days
[ Show More ]
Replay Cast
3 days
LAN Event
3 days
Korean StarCraft League
4 days
CranKy Ducklings
4 days
WardiTV Korean Royale
4 days
LAN Event
4 days
IPSL
5 days
dxtr13 vs OldBoy
Napoleon vs Doodle
Replay Cast
5 days
Sparkling Tuna Cup
5 days
WardiTV Korean Royale
5 days
LAN Event
5 days
IPSL
6 days
JDConan vs WIZARD
WolFix vs Cross
Replay Cast
6 days
Wardi Open
6 days
Liquipedia Results

Completed

BSL 21 Points
SC4ALL: StarCraft II
Eternal Conflict S1

Ongoing

C-Race Season 1
IPSL Winter 2025-26
KCM Race Survival 2025 Season 4
SOOP Univ League 2025
YSL S2
IEM Chengdu 2025
PGL Masters Bucharest 2025
Thunderpick World Champ.
CS Asia Championships 2025
ESL Pro League S22
StarSeries Fall 2025
FISSURE Playground #2
BLAST Open Fall 2025
BLAST Open Fall Qual
Esports World Cup 2025

Upcoming

BSL Season 21
SLON Tour Season 2
BSL 21 Non-Korean Championship
HSC XXVIII
RSL Offline Finals
WardiTV 2025
RSL Revival: Season 3
Stellar Fest
META Madness #9
BLAST Bounty Winter 2026: Closed Qualifier
eXTREMESLAND 2025
ESL Impact League Season 8
SL Budapest Major 2025
BLAST Rivals Fall 2025
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2025 TLnet. All Rights Reserved.