New ranking algorithm.
- Ootakamoku
- Lives with ko
- Posts: 126
- Joined: Wed Sep 28, 2011 6:44 am
- Rank: EGF 2 dan
- GD Posts: 0
- Universal go server handle: Ootakamoku
- Has thanked: 1 time
- Been thanked: 63 times
New ranking algorithm.
I wrote a ranking algorithm that tries to predict players rank at any given time. By predicting most likely rank at each game for both players, using the players other games around that time. Its a work in progress and there for the ranks are likely to change quite a bit as I improve upon the algorithm and fix bugs. I update the data on this first post with new results as I get them. The data shows players name, date he was at his peak strength. Strength in stones, relative to other players, note that there is no "base" value ie can only compare the strength to other players in the same list. And finally a 95% confidence interval.
GoGoD 2010 (http://www.gogod.co.uk/Database.htm)
Strongest players as of 2010.12 :
1. Lee Sedol : 0.82 ± 0.26
2. Lee Changho : 0.61 ± 0.24
3. Kong Jie : 0.61 ± 0.26
4. Kang Tong-yun : 0.61 ± 0.27
5. Gu Li : 0.59 ± 0.24
6. Cho U : 0.55 ± 0.28
7. Pak Yeong-hun : 0.54 ± 0.27
8. Ch'oe Ch'eol-han : 0.53 ± 0.27
9. Weon Seong-chin : 0.49 ± 0.28
10. Cho Han-seung : 0.45 ± 0.32
All time strongest players :
1. Lee Changho (1995.8) : 1.04 ± 0.21
2. Yasui Senchi (1782.2) : 0.97 ± 0.54
3. Toyama Sansetsu (1793.1) : 0.97 ± 0.58
4. Lee Sedol (2010.4) : 0.84 ± 0.24
5. Honinbo Jowa (1821.12) : 0.77 ± 0.36
6. Go Seigen (1934.10) : 0.77 ± 0.31
7. Cho Hun-hyeon (1994.10) : 0.72 ± 0.19
8. Gu Li (2005.10) : 0.69 ± 0.22
9. Murashima Yoshinori (1939.11) : 0.64 ± 0.42
10. Hashimoto Utaro (1934.8) : 0.64 ± 0.31
11. Kitani Minoru (1937.5) : 0.63 ± 0.31
12. Kong Jie (2008.10) : 0.61 ± 0.21
13. Kang Tong-yun (2010.3) : 0.61 ± 0.24
14. Cho U (2008.7) : 0.6 ± 0.21
15. Xie He (2006.3) : 0.6 ± 0.25
16. Yoo Changhyuk (2000.4) : 0.59 ± 0.23
17. Ch'oe Ch'eol-han (2006.2) : 0.59 ± 0.21
18. Pak Yeong-hun (2006.11) : 0.59 ± 0.22
19. Chang Hao (1997.12) : 0.58 ± 0.21
20. Ma Xiaochun (1994.1) : 0.58 ± 0.24
...
23. Kobayashi Koichi (1989.7) : 0.5 ± 0.24
27. Sakata Eio (1963.4) : 0.46 ± 0.28
28. Kato Masao (1978.1) : 0.45 ± 0.25
29. Cho Chikun (1991.9) : 0.45 ± 0.23
32. Yoda Norimoto (1997.11) : 0.44 ± 0.24
40. Takemiya Masaki (1986.12) : 0.42 ± 0.25
69. Otake Hideo (1988.1) : 0.32 ± 0.27
70. Rin Kaiho (1992.6) : 0.32 ± 0.24
71. Seo Pong-su (1973.4) : 0.32 ± 0.47
123. Takagawa Shukaku (1946.6) : 0.15 ± 0.39
KGS (http://www.u-go.net/gamerecords/)
Strongest players as of 2013.2 :
1. hearts : 2.27 ± 0.53
2. eku : 1.99 ± 0.35
3. MilanMilan : 1.99 ± 0.21
4. lsai : 1.86 ± 0.35
5. RustySword : 1.78 ± 0.47
6. himountain : 1.75 ± 0.3
7. Korondo : 1.63 ± 0.28
8. smartrobot : 1.62 ± 0.26
9. kyoungnang : 1.53 ± 0.32
10. jove : 1.5 ± 0.3
All time strongest players :
1. sariyu (2003.7) : 2.77 ± 0.56
2. tartrate (2004.1) : 2.49 ± 0.42
3. zq881127 (2009.10) : 2.43 ± 0.7
4. qsefthuko (2007.11) : 2.43 ± 0.42
5. kitahama (2004.6) : 2.42 ± 0.56
6. SHGoCamp (2010.11) : 2.38 ± 0.54
7. hearts (2012.3) : 2.27 ± 0.53
8. mymy (2006.1) : 2.26 ± 0.33
9. qingdao (2008.6) : 2.14 ± 1.29
10. tp (2008.3) : 2.12 ± 0.54
11. vegeance (2005.7) : 2.07 ± 0.56
12. Finnish8d (2009.8) : 2.03 ± 0.79
13. fondle (2006.7) : 2.03 ± 0.38
14. ssssssss (2005.2) : 2.0 ± 0.58
15. eku (2011.12) : 1.99 ± 0.31
16. MilanMilan (2012.12) : 1.99 ± 0.2
17. PeterPan2 (2008.5) : 1.93 ± 0.65
18. itsnothing (2008.7) : 1.93 ± 1.0
19. still10k (2006.1) : 1.9 ± 0.79
20. Toolucky (2006.7) : 1.86 ± 0.4
...
339. kghin (2010.9) : 0.68 ± 0.13
388. macisajt (2010.3) : 0.58 ± 0.17
399. supertjc (2013.1) : 0.57 ± 0.18
409. okao (2012.2) : 0.57 ± 0.14
535. Cornel (2009.10) : 0.45 ± 0.15
702. High55 (2010.2) : 0.31 ± 0.11
748. twoeye (2011.3) : 0.31 ± 0.1
784. GBPacker (2007.11) : 0.31 ± 0.18
831. abel (2007.1) : 0.31 ± 0.15
919. asiyanobom (2005.7) : 0.3 ± 0.11
GoGoD 2010 (http://www.gogod.co.uk/Database.htm)
Strongest players as of 2010.12 :
1. Lee Sedol : 0.82 ± 0.26
2. Lee Changho : 0.61 ± 0.24
3. Kong Jie : 0.61 ± 0.26
4. Kang Tong-yun : 0.61 ± 0.27
5. Gu Li : 0.59 ± 0.24
6. Cho U : 0.55 ± 0.28
7. Pak Yeong-hun : 0.54 ± 0.27
8. Ch'oe Ch'eol-han : 0.53 ± 0.27
9. Weon Seong-chin : 0.49 ± 0.28
10. Cho Han-seung : 0.45 ± 0.32
All time strongest players :
1. Lee Changho (1995.8) : 1.04 ± 0.21
2. Yasui Senchi (1782.2) : 0.97 ± 0.54
3. Toyama Sansetsu (1793.1) : 0.97 ± 0.58
4. Lee Sedol (2010.4) : 0.84 ± 0.24
5. Honinbo Jowa (1821.12) : 0.77 ± 0.36
6. Go Seigen (1934.10) : 0.77 ± 0.31
7. Cho Hun-hyeon (1994.10) : 0.72 ± 0.19
8. Gu Li (2005.10) : 0.69 ± 0.22
9. Murashima Yoshinori (1939.11) : 0.64 ± 0.42
10. Hashimoto Utaro (1934.8) : 0.64 ± 0.31
11. Kitani Minoru (1937.5) : 0.63 ± 0.31
12. Kong Jie (2008.10) : 0.61 ± 0.21
13. Kang Tong-yun (2010.3) : 0.61 ± 0.24
14. Cho U (2008.7) : 0.6 ± 0.21
15. Xie He (2006.3) : 0.6 ± 0.25
16. Yoo Changhyuk (2000.4) : 0.59 ± 0.23
17. Ch'oe Ch'eol-han (2006.2) : 0.59 ± 0.21
18. Pak Yeong-hun (2006.11) : 0.59 ± 0.22
19. Chang Hao (1997.12) : 0.58 ± 0.21
20. Ma Xiaochun (1994.1) : 0.58 ± 0.24
...
23. Kobayashi Koichi (1989.7) : 0.5 ± 0.24
27. Sakata Eio (1963.4) : 0.46 ± 0.28
28. Kato Masao (1978.1) : 0.45 ± 0.25
29. Cho Chikun (1991.9) : 0.45 ± 0.23
32. Yoda Norimoto (1997.11) : 0.44 ± 0.24
40. Takemiya Masaki (1986.12) : 0.42 ± 0.25
69. Otake Hideo (1988.1) : 0.32 ± 0.27
70. Rin Kaiho (1992.6) : 0.32 ± 0.24
71. Seo Pong-su (1973.4) : 0.32 ± 0.47
123. Takagawa Shukaku (1946.6) : 0.15 ± 0.39
KGS (http://www.u-go.net/gamerecords/)
Strongest players as of 2013.2 :
1. hearts : 2.27 ± 0.53
2. eku : 1.99 ± 0.35
3. MilanMilan : 1.99 ± 0.21
4. lsai : 1.86 ± 0.35
5. RustySword : 1.78 ± 0.47
6. himountain : 1.75 ± 0.3
7. Korondo : 1.63 ± 0.28
8. smartrobot : 1.62 ± 0.26
9. kyoungnang : 1.53 ± 0.32
10. jove : 1.5 ± 0.3
All time strongest players :
1. sariyu (2003.7) : 2.77 ± 0.56
2. tartrate (2004.1) : 2.49 ± 0.42
3. zq881127 (2009.10) : 2.43 ± 0.7
4. qsefthuko (2007.11) : 2.43 ± 0.42
5. kitahama (2004.6) : 2.42 ± 0.56
6. SHGoCamp (2010.11) : 2.38 ± 0.54
7. hearts (2012.3) : 2.27 ± 0.53
8. mymy (2006.1) : 2.26 ± 0.33
9. qingdao (2008.6) : 2.14 ± 1.29
10. tp (2008.3) : 2.12 ± 0.54
11. vegeance (2005.7) : 2.07 ± 0.56
12. Finnish8d (2009.8) : 2.03 ± 0.79
13. fondle (2006.7) : 2.03 ± 0.38
14. ssssssss (2005.2) : 2.0 ± 0.58
15. eku (2011.12) : 1.99 ± 0.31
16. MilanMilan (2012.12) : 1.99 ± 0.2
17. PeterPan2 (2008.5) : 1.93 ± 0.65
18. itsnothing (2008.7) : 1.93 ± 1.0
19. still10k (2006.1) : 1.9 ± 0.79
20. Toolucky (2006.7) : 1.86 ± 0.4
...
339. kghin (2010.9) : 0.68 ± 0.13
388. macisajt (2010.3) : 0.58 ± 0.17
399. supertjc (2013.1) : 0.57 ± 0.18
409. okao (2012.2) : 0.57 ± 0.14
535. Cornel (2009.10) : 0.45 ± 0.15
702. High55 (2010.2) : 0.31 ± 0.11
748. twoeye (2011.3) : 0.31 ± 0.1
784. GBPacker (2007.11) : 0.31 ± 0.18
831. abel (2007.1) : 0.31 ± 0.15
919. asiyanobom (2005.7) : 0.3 ± 0.11
Last edited by Ootakamoku on Thu Apr 18, 2013 1:48 am, edited 31 times in total.
-
Akura
- Dies with sente
- Posts: 87
- Joined: Thu Feb 10, 2011 7:37 am
- Rank: EGF 5kyu
- GD Posts: 0
- Location: Munich, Germany
- Has thanked: 341 times
- Been thanked: 17 times
Re: pro rankings based on KGS style ranking algorithm
What exactly do you mean by this? A generic average pro player needs 2.92 stones against Yi Chang-Ho to have a 50% winning probability?typohh wrote:The number is relative strength in stones.
- Ootakamoku
- Lives with ko
- Posts: 126
- Joined: Wed Sep 28, 2011 6:44 am
- Rank: EGF 2 dan
- GD Posts: 0
- Universal go server handle: Ootakamoku
- Has thanked: 1 time
- Been thanked: 63 times
Re: pro rankings based on KGS style ranking algorithm
It means Lee Changho of 1995 would win 50% of the time against against Gu Li of 2008 with no komi (as their difference is close to 0.5). The values are only relative to other value, there is no "base".Akura wrote:What exactly do you mean by this? A generic average pro player needs 2.92 stones against Yi Chang-Ho to have a 50% winning probability?typohh wrote:The number is relative strength in stones.
In any case, still fixing bugs so its only a preliminary list.
-
logan
- Lives in gote
- Posts: 641
- Joined: Sat May 29, 2010 11:52 am
- GD Posts: 9
- Has thanked: 141 times
- Been thanked: 437 times
Re: pro rankings based on KGS style ranking algorithm
Some of these names are the same person, such as Takagawa Kaku & Takagawa Shukaku; and Tamura Yasuhisa & Honinbo Shusai.
I also find the list interesting. For example Onoda Chiyotaro is high on the list, yet was beaten down consistently by Kogishi Soji.
I also find the list interesting. For example Onoda Chiyotaro is high on the list, yet was beaten down consistently by Kogishi Soji.
- Ootakamoku
- Lives with ko
- Posts: 126
- Joined: Wed Sep 28, 2011 6:44 am
- Rank: EGF 2 dan
- GD Posts: 0
- Universal go server handle: Ootakamoku
- Has thanked: 1 time
- Been thanked: 63 times
Re: pro rankings based on KGS style ranking algorithm
Ya, been aware of the problem. Is there a list of all known aliases for pro players that I can find somewhere?logan wrote:Some of these names are the same person, such as Takagawa Kaku & Takagawa Shukaku; and Tamura Yasuhisa & Honinbo Shusai.
- Ootakamoku
- Lives with ko
- Posts: 126
- Joined: Wed Sep 28, 2011 6:44 am
- Rank: EGF 2 dan
- GD Posts: 0
- Universal go server handle: Ootakamoku
- Has thanked: 1 time
- Been thanked: 63 times
Re: pro rankings based on KGS style ranking algorithm
This program had same bug as the other one, ie. that older games where there are no handicap stones but white moves first, were not handled correct. Fixed the bug and calculating a new list now.
-
hyperpape
- Tengen
- Posts: 4382
- Joined: Thu May 06, 2010 3:24 pm
- Rank: AGA 3k
- GD Posts: 65
- OGS: Hyperpape 4k
- Location: Caldas da Rainha, Portugal
- Has thanked: 499 times
- Been thanked: 727 times
Re: pro rankings based on KGS style ranking algorithm
Doesn't GoGoD contain names in go? I have no idea if the data is amenable to an automated treatment, but it's the most complete information I've ever heard of.
-
John Fairbairn
- Oza
- Posts: 3724
- Joined: Wed Apr 21, 2010 3:09 am
- Has thanked: 20 times
- Been thanked: 4672 times
Re: pro rankings based on KGS style ranking algorithm
A few points:
1. Older games (which are often not so old - e.g. as in the Oteai or the Korean equivalent) where Black gives no komi are rarely a one-stone handicap. The handicap may be B-W-B, i.e. the weaker player takes Black in two of a series of three games and White in one (still no komi).
2. A fairly large number of games have irregular komis (e.g. 2.5, or -5), and a very large number have the different main komis of 4.5, 5.5, 6.5 and 8.
3. Yes, the GoGoD Onomasticon (Names Dictionary) has just about every variant of every name of go players, go journalists, go aficionados, etc (currently over 4,100 entries). When dealing with the historical sweep of go, there are very good reasons for using the name of the moment, and so the GoGoD database generally uses that, though since the variants are explained in the dictionary we feel free to change that policy occasionally.
4. typohh refers to GoGoD having 60,000 games. His edition might, but the current total is over 76,000.
1. Older games (which are often not so old - e.g. as in the Oteai or the Korean equivalent) where Black gives no komi are rarely a one-stone handicap. The handicap may be B-W-B, i.e. the weaker player takes Black in two of a series of three games and White in one (still no komi).
2. A fairly large number of games have irregular komis (e.g. 2.5, or -5), and a very large number have the different main komis of 4.5, 5.5, 6.5 and 8.
3. Yes, the GoGoD Onomasticon (Names Dictionary) has just about every variant of every name of go players, go journalists, go aficionados, etc (currently over 4,100 entries). When dealing with the historical sweep of go, there are very good reasons for using the name of the moment, and so the GoGoD database generally uses that, though since the variants are explained in the dictionary we feel free to change that policy occasionally.
4. typohh refers to GoGoD having 60,000 games. His edition might, but the current total is over 76,000.
- Ootakamoku
- Lives with ko
- Posts: 126
- Joined: Wed Sep 28, 2011 6:44 am
- Rank: EGF 2 dan
- GD Posts: 0
- Universal go server handle: Ootakamoku
- Has thanked: 1 time
- Been thanked: 63 times
Re: pro rankings based on KGS style ranking algorithm
Posted updated version 2 of the rankings, and yes Im using old GoGoD (2011?). Need to get it updated at some point.
This version 2 is based on only 300 iterations. Ill let it run over the night and post an updated list when its more stabilized.
This version 2 is based on only 300 iterations. Ill let it run over the night and post an updated list when its more stabilized.
- Ootakamoku
- Lives with ko
- Posts: 126
- Joined: Wed Sep 28, 2011 6:44 am
- Rank: EGF 2 dan
- GD Posts: 0
- Universal go server handle: Ootakamoku
- Has thanked: 1 time
- Been thanked: 63 times
Re: pro rankings based on KGS style ranking algorithm
Posted version 3. A few major bugs fixed. Based on 1000 iterations.
The algorithm used for calculating the ranks. I presume winrate of 0.2832 ** number of stones difference in strength * 0.5. This seems to correlate nicely with EGF 7dan empirical results, and was derived from GoGoD data. I presume a fair komi to be 6.5. And I use a variable weighted window to calculate each players rank at any given time. The window is normal distributed, with standard deviation such that it provides total sample weight of 85. I normalize the ranks to median zero. After that just alot of iterations of the graph to try to find a most likely ranks.
The algorithm used for calculating the ranks. I presume winrate of 0.2832 ** number of stones difference in strength * 0.5. This seems to correlate nicely with EGF 7dan empirical results, and was derived from GoGoD data. I presume a fair komi to be 6.5. And I use a variable weighted window to calculate each players rank at any given time. The window is normal distributed, with standard deviation such that it provides total sample weight of 85. I normalize the ranks to median zero. After that just alot of iterations of the graph to try to find a most likely ranks.
- palapiku
- Lives in sente
- Posts: 761
- Joined: Sun Apr 25, 2010 11:25 pm
- Rank: the k-word
- GD Posts: 0
- Has thanked: 152 times
- Been thanked: 204 times
Re: pro rankings based on KGS style ranking algorithm
Do you account for rank degradation as a player gets older?
Because if you don't, you will get consistent rank inflation as younger players keep beating older high-ranked players, getting an even higher rank. Which could explain why the majority of the players on your list are currently active.
Because if you don't, you will get consistent rank inflation as younger players keep beating older high-ranked players, getting an even higher rank. Which could explain why the majority of the players on your list are currently active.
- Ootakamoku
- Lives with ko
- Posts: 126
- Joined: Wed Sep 28, 2011 6:44 am
- Rank: EGF 2 dan
- GD Posts: 0
- Universal go server handle: Ootakamoku
- Has thanked: 1 time
- Been thanked: 63 times
Re: pro rankings based on KGS style ranking algorithm
palapiku wrote:Do you account for rank degradation as a player gets older?
Because if you don't, you will get consistent rank inflation as younger players keep beating older high-ranked players, getting an even higher rank. Which could explain why the majority of the players on your list are currently active.
Nope, dont that it into account. But ofcourse it works other other way around too. The fresh 1p lose to the one foot out of the door 9p. 1p becomes a big time star few years later. Which would cause rank deflation.