At line 24 added 56 lines |
|
Tein itse pikaisesti ohjelmanpätkän, joka laskee vahvuudet yllä kuvatulla tavalla. Sain tällaisen listan (mukana vain ne, joilla on vähintään 25 peliä ja ovat pelanneet 1.1.2003 jälkeen): |
|
|| pelaaja || pisteet || pelit || voitot || tappiot |
| Laatikainen, Vesa | 1265 | 100 | 82 | 18 |
| Siivola, Matti | 1144 | 112 | 78 | 34 |
| Törmänen, Antti | 1094 | 31 | 23 | 8 |
| Paatero, Lauri | 1072 | 95 | 50 | 45 |
| Visala, Kari | 1053 | 55 | 33 | 22 |
| Jantunen, Kare | 1047 | 54 | 29 | 25 |
| Lounela, Olli | 1038 | 66 | 38 | 28 |
| Holappa, Antti | 1020 | 51 | 27 | 24 |
| Alanko, Otso | 1007 | 58 | 30 | 28 |
| Niskanen, Einari | 1005 | 33 | 17 | 16 |
| Salo, Tuomo | 996 | 41 | 22 | 19 |
| Puha, Timo | 991 | 71 | 43 | 28 |
| Brockman, Marko | 989 | 29 | 13 | 16 |
| Viljanen, Joose | 978 | 45 | 22 | 23 |
| Hirsimäki, Teemu | 974 | 61 | 30 | 31 |
| Jantunen, Markku | 970 | 109 | 56 | 53 |
| Virtanen, Jaakko | 960 | 38 | 18 | 20 |
| Suorsa, Seppo | 945 | 42 | 21 | 21 |
| Kauppi, Ari | 938 | 34 | 12 | 22 |
| Hippeläinen, Eero | 934 | 26 | 9 | 17 |
| Rovio, Teemu | 929 | 65 | 27 | 38 |
| Reijola, Timo | 927 | 52 | 23 | 29 |
| Aapola, Lauri | 909 | 61 | 25 | 36 |
| Kohonen, Sari | 906 | 36 | 12 | 24 |
| Karppinen, Ari | 902 | 71 | 26 | 45 |
| Pietarila, Paavo | 856 | 75 | 25 | 50 |
|
|
Käytin datana 64 Suomessa pelattua tasa-avausturnausta (otin ne [Paavon pullauttimesta|http://www.ee.oulu.fi/~paavo/go/voittotilastot/voittotilastot.cgi]). Vain sellaiset pelit huomioitiin, joissa molemmat pelaajat olivat tasoltaan vähintään 3 kyu. Aloituspistemäärä uusille pelaajille oli 1000, mutta niin että 25 ensimmäistä peliä eivät vaikuttaneet vastustajan pistemäärään lainkaan (paitsi jos vastustajallakaan ei ollut 25 peliä). Pelaajien pistemäärä ja uuden pelaajan status päivitettiin vain turnausten välissä, ei niiden aikana. |
|
Pelit-sarake kertoo 3 kyuita tai vahvempia vastaan pelattujen pelien määrän (mukaanlukien ne pelit, jotka eivät vaikuttaneet pelaajan pistemäärään, koska vastustajalla ei ollut 25 peliä). |
|
Pisteitä päivitettiin seuraavalla funktiolla: |
|
<pre> |
def laskePistemuutos(pelaajanPisteet, vastustajanPisteet, tulos): |
ennuste = 1. / (1. + 10 **((vastustajanPisteet - pelaajanPisteet) / 400.)) |
muutos = 0 |
if tulos == "+": |
muutos = ELO_K_ARVO * (1. - ennuste) |
elif tulos == "-": |
muutos = - ELO_K_ARVO * ennuste |
else: |
muutos = ELO_K_ARVO * (.5 - ennuste) |
return muutos |
</pre> |
|
Laitoin ELO_K_ARVOksi 20. Sen muuttaminen muuttaa listaa radikaalisti. Mitä suurempi arvo, sen herkempi pistemäärä on. |
|
Lähdekoodi on saatavilla [täältä|http://www.cs.tut.fi/~tarvaina/elogo.zip]. Se ei ole erityisen luettavaa. |
|
[Antti Tarvainen] |