Glicko-2 Derecelendirme Sistemi: Hata mı, istismar mı?


13

Başlangıçta bu uygulamalarda bir hata olabilir gibi StackOverflow yayınlanmıştır , ama bazı matematik sonrası önerdi. Bu stackexchange'i yeni buldum ve kimin daha iyi olduğunu düşündüm? Bazılarınız yarasayı biliyor olabilir, bu hata ayıklama ihtiyacı olmadan doğru ya da değil gibi görünüyor olabilir. Çevrimiçi hesaplayıcılara veya alternatif derecelendirme yöntemlerine yapılan bağlantılar memnuniyetle karşılanmaktadır.


Glicko-2 satrançta kullanılan bir derecelendirme sistemidir, ancak diğer birçok durumda kullanılabilir. Glicko-2, eski ELO derecelendirmesindeki sorunları ele alan Glicko-1'de bir gelişmedir.

Glicko-2'yi sürüm 1'e kıyasla özel kılan şey, birisi ne kadar uzun süre hareketsiz kaldığında daha yüksek bir derecelendirme sapması (RD) içermesidir. Bunu zaman / derecelendirme dönemleri ile ilgili bir sistem sabiti kavramı ile yapar.

Yazardan bir örnek yazı: http://www.glicko.net/glicko/glicko2.pdf .
Bu belgede şunları açıklıyor:

Glicko-2 sistemi, bir derecelendirme dönemindeki oyun sayısı orta ila büyük olduğunda en iyi şekilde çalışır, örneğin bir derecelendirme döneminde oyuncu başına ortalama en az 10-15 oyun. Derecelendirme süresi için süre yöneticinin takdirindedir.

Bir grup aktif satranç oyuncusu 1 aylık bir süre içinde ortalama 10-15 oyun oynadığını varsayarak, yönetici her ayın sonunda derecelendirmeleri güncelleyecektir.


Glicko-2 derecelendirme sisteminin bir PHP Uygulamasına ihtiyacım vardı ve aşağıdakilerle karşılaştım:

Glicko-2 JavaScript Uygulaması

  • JavaScript'in teknik yazma örneğiyle eşleşmesine izin vermeyen küçük bir hata vardı, yazar onu yeterince yakın buldu ve hata ayıklamak için uğraşmadı.

Glicko-2 PHP Uygulaması

  • PHP uygulaması birçok hata ile boğulmuştu, ancak birden fazla derecelendirme süresi (teknik yazmanın asla beklenen değerleri göstermediği sürece) belirgin değildi.

Excel'de Glicko-2 Hesap Makinesi

  • Sonunda Excel hesap makinesi, satranç topluluğundan biri tarafından yapılan hatasız ve en profesyonel gibi görünüyordu. JavaScript hatası çözüldükten sonra, JavaScript ve Excel Hesap Makinesi birbirleriyle çok yakından eşleşti (mükemmel olmasa da yuvarlama hatası olabilir)

Hataları giderdim (ve yazarlara sorunları / yamaları gönderdim) PHP ve JavaScript sürümlerinde Excel Hesap Makinesi ile yakından eşleşecek şekilde bulabildim


Şimdi, analiz için doğru bir Glicko-2 uygulamam (3 tanesi arasında) olduğumdan ve garip bir şeyle ve bu tartışmanın konusuyla karşılaştığımdan% 99 eminim.

Yeni bir oyuncu için Glicko-2 için önerilen varsayılan değer göz önüne alındığında:

Rating:      1500
RD:           350
Volatility:  0.06

Önümüzdeki 12 dönem (1 yıl) için ortalama 1378 ve RD 99 ( Kaynak ) derece rakipleriyle karşılaşırsanız , 1852 olduğu kabul edilen Ulusal A Sınıfı (1800-1999) 1852 puanı almış olacaksınız. gerçekte 12 aylık bir süre boyunca sadece 12 ortalama reytingli oyuncuyu yenmişseniz.

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        〃

Her reyting döneminde 2 ortalama rakiple karşılaşırsanız, sadece 4-10 ortalama rakiple karşılaşacak şekilde A Sınıfına yaklaşık 4-5 ay ulaşabilirsiniz.

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        〃


Bu varsayımlar doğru mu? Hesap makinemde bir hata var mı?

Eğer bir hata değilse, buna karşı koymanın bazı yolları nelerdir:

  • "Gerçek derecelendirme" nin sapmanın alt sınırı olduğunu düşünün (Derecelendirme - RD)
  • Etkin olmayan kullanıcının derecelendirmesini gösterme
  • N'den az oyunu olan kullanıcılara gösterme


Yanıtlar:


9

Birkaç ay önce bir Scala uygulaması üzerinde çalıştım, ancak biraz cilasız olmasına rağmen - bitirmek için geri dönmeliyim. En azından ondan bazı makul sonuçlar aldım.

Oynadığınız her oyunu kazanırsanız, evet, sadece düşük puanlı oyunculara karşı oynasanız bile puanınız oldukça yüksek olacaktır. Böyle bir rakibe karşı her maçı kazanma olasılığı muhtemelen A sınıfı bir oyuncunun ne elde edeceğiyle ilgilidir (muhtemelen nispeten yüksek RD nedeniyle biraz şişirilmiş olsa da).

Bence karşı koymanın en iyi yolu, belirli bir miktarın üzerinde RD'si olan birini kararlı bir derecelendirme olarak görmemek - yani "geçici" olarak düşünmektir. Ayrıca, en azından USCF'de gerçekten bir unvan kazanmak için, 4 oyun veya daha fazla (4 kez, inanıyorum) bir turnuvada belirli bir seviyede gerçekleştirmeniz gereken bir norm sistemine sahipler, bu da tüm turnuva için ~ 1378'e karşı oynamayı çok az olasıyordu.

Amacınız bunu satranç için kullanmak mı? Kullanım durumunuz nedir?

Güncelleme: FICS yalnızca RD'si <80 aktif olan kişileri göz önünde bulundurarak ele alır. (Onlar hala Glicko-1 kullanıyorlar, inanıyorum.) Http://www.freechess.org/Help/ficsfaq.html#Q005.003

Bu arada, Glicko-1 RD / zamanla bozulmayı da kullanır. Glicko-2'nin ana gelişimi, dengesiz sonuçlara veya istikrarlı sonuçlara sahip kişilerin çok az farklı bir şekilde hesaplanmasını sağlayan "volatilite" faktörüdür. Bence Glicko-1'de oldukça fazladan hesaplamaya neden olan çok küçük bir değişiklik - ama sizin gibi, hala hesaplamakla ilgileniyordum. Aslında Glickman'dan test için bazı ek veri noktaları istedi, ancak o zaman bunları sağlamak için çok meşguldü.


Bir USCF sınıf seviyesi unvanı olan FYI, 5 turnuvada norm kazanmayı gerektirir.
DM
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.