Sistem Peringkat Glicko-2: Bug atau exploit?

13

Saya awalnya memiliki ini diposting di StackOverflow karena itu bisa menjadi bug dalam implementasi, tetapi beberapa menyarankan saya memposting ke matematika. Saya baru saja menemukan stackexchange ini, dan saya pikir siapa yang lebih baik? Beberapa dari Anda mungkin tahu kelelawar ini sepertinya ini akurat atau tidak, tanpa perlu debugging. Setiap tautan ke kalkulator online atau metode penilaian alternatif disambut baik.


Glicko-2 adalah sistem peringkat yang digunakan dalam catur, tetapi dapat digunakan dalam banyak situasi lainnya. Glicko-2 adalah peningkatan pada Glicko-1, yang membahas masalah dari peringkat ELO yang lebih lama.

Apa yang membuat Glicko-2 istimewa dibandingkan dengan versi 1 adalah Glicko-2 memiliki penyimpangan peringkat yang lebih tinggi (RD) semakin lama seseorang tidak aktif. Ini melakukan ini dengan gagasan tentang konstanta sistem yang berkaitan dengan periode waktu / peringkat.

Contoh penulisan dari penulis dapat ditemukan di sini: http://www.glicko.net/glicko/glicko2.pdf .
Dalam dokumen ini, ia menjelaskan:

Sistem Glicko-2 bekerja paling baik ketika jumlah game dalam periode penilaian adalah sedang hingga besar, katakanlah rata-rata setidaknya 10-15 game per pemain dalam periode peringkat. Lamanya waktu untuk periode penilaian adalah atas kebijaksanaan administrator.

Membuat asumsi bahwa sekelompok pemain catur aktif rata-rata memainkan 10-15 game dalam periode waktu 1 bulan, administrator kemudian akan memperbarui peringkat pada akhir setiap bulan.


Saya membutuhkan Implementasi PHP dari sistem peringkat Glicko-2 dan menemukan yang berikut:

Implementasi Glicko-2 JavaScript

  • JavaScript memiliki kesalahan kecil, di mana tidak membiarkannya cocok dengan contoh penulisan teknis, penulis menemukannya cukup dekat, dan tidak repot-repot men-debug.

Implementasi PHP Glicko-2

  • Implementasi PHP terganggu dengan banyak bug, tetapi itu tidak terlihat kecuali Anda melakukan lebih dari satu periode peringkat (yang mana penulisan teknis tidak pernah menunjukkan nilai yang diharapkan dari)

Glicko-2 Calculator di Excel

  • Akhirnya kalkulator Excel tampaknya bebas kesalahan dan paling profesional, dilakukan oleh seseorang di komunitas catur. Setelah bug JavaScript dipecahkan, JavaScript dan Kalkulator Excel cocok sangat erat satu sama lain (meskipun tidak sempurna, bisa jadi dalam kesalahan pembulatan)

Saya telah memperbaiki bug (dan mengirimkan masalah / tambalan kepada penulis) yang dapat saya temukan di versi PHP dan JavaScript agar sesuai dengan Kalkulator Excel


Sekarang saya 99% yakin bahwa saya memiliki implementasi Glicko-2 yang akurat (antara 3 dari mereka) untuk analisis dan saat itulah saya menemukan sesuatu yang aneh, dan topik diskusi ini.

Diberikan default yang disarankan untuk Glicko-2 untuk pemain baru:

Rating:      1500
RD:           350
Volatility:  0.06

Jika Anda menghadapi lawan rata-rata peringkat 1378 dan RD 99 ( Sumber ) hanya sekali setiap periode penilaian (1 bulan) untuk 12 periode berikutnya (1 tahun), Anda akan mengakumulasikan peringkat Kelas A (1800-1999) yang diasumsikan di 1852 padahal pada kenyataannya Anda hanya mengalahkan 12 pemain dengan rata-rata selama rentang 12 bulan.

Month   Rating      RD      Volatility      Class
1       1625        259     0.059999        National Class B
2       1682        225     0.059998        〃
3       1718        205     0.059997        〃
6       1784        174     0.059994        〃
12      1852        148     0.059988        National Class A
24      1922        127     0.059976        〃

Jika Anda menghadapi 2 lawan rata-rata setiap periode penilaian, Anda bisa mencapai Kelas Nasional A sekitar 4-5 bulan, hanya menghadapi 8-10 lawan rata-rata.

Month   Rating      RD      Volatility      Class
1       1672        215     0.059999        National Class B
2       1733        183     0.059997        〃
3       1770        166     0.059995        〃
4       1797        154     0.059993        〃
5       1819        146     0.059992        National Class A
6       1836        140     0.059991        〃


Apakah asumsi ini akurat? Apakah ada bug di kalkulator saya?

Jika ini bukan bug, apa saja cara mengatasi ini selain:

  • Pertimbangkan "nilai sebenarnya" sebagai batas bawah dari penyimpangan (Peringkat - RD)
  • Jangan tampilkan peringkat pengguna yang tidak aktif
  • Jangan tampilkan pengguna dengan kurang dari N game
Parox
sumber

Jawaban:

9

Saya bekerja pada implementasi Scala beberapa bulan yang lalu, meskipun itu sedikit tidak terpolarisasi - saya harus kembali untuk menyelesaikannya. Saya setidaknya mendapat beberapa hasil yang masuk akal dari itu.

Jika Anda memenangkan setiap game yang Anda mainkan, ya, peringkat Anda akan tumbuh cukup tinggi bahkan jika Anda bermain melawan hanya pemain dengan peringkat rendah. Probabilitas bahwa Anda akan memenangkan setiap pertandingan melawan lawan seperti itu mungkin tentang apa yang akan dicapai oleh pemain kelas A (meskipun mungkin sedikit meningkat karena RD yang relatif tinggi, masih).

Menurut saya, cara terbaik untuk melawan adalah tidak menganggap seseorang dengan RD lebih dari jumlah tertentu sebagai peringkat yang stabil - yaitu menganggapnya "sementara". Juga, untuk benar-benar mendapatkan gelar, setidaknya di USCF, mereka memiliki sistem norma, di mana Anda harus tampil di tingkat tertentu dalam turnamen 4 pertandingan atau lebih (4 kali, saya percaya), yang membuat kemungkinan bermain melawan ~ 1378 untuk seluruh turnamen [empat kali] sangat tidak mungkin.

Apakah tujuan Anda menggunakan ini untuk catur? Apa kasus penggunaan Anda?

Pembaruan: FICS menanganinya dengan hanya mempertimbangkan orang-orang dengan RD <80 aktif. (Mereka menggunakan Glicko-1, masih, saya percaya.) Http://www.freechess.org/Help/ficsfaq.html#Q005.003

Dan omong-omong, Glicko-1 menggunakan RD / pembusukan waktu juga. Peningkatan utama Glicko-2 adalah faktor "volatilitas", yang memungkinkan orang dengan hasil tidak menentu atau hasil stabil dihitung sangat sedikit berbeda. Saya pikir ini adalah perubahan yang sangat kecil untuk Glicko-1 yang menyebabkan perhitungan ekstra - tetapi seperti Anda, saya masih tertarik untuk menghitungnya. Saya sebenarnya bertanya kepada Glickman sendiri untuk beberapa titik data tambahan untuk pengujian, tetapi dia terlalu sibuk untuk memasok mereka pada saat itu.

Eve Freeman
sumber
FYI, gelar tingkat kelas USCF mengharuskan untuk mendapatkan norma di 5 turnamen.
DM