Inizialmente lavevo pubblicato su StackOverflow perché potrebbe essere un bug nelle implementazioni , ma alcuni mi hanno suggerito di postare in matematica. Ho appena trovato questo stackexchange e ho pensato chi è meglio? Alcuni di voi potrebbero sapere subito, piuttosto che questo sembra accurato o meno, senza la necessità di eseguire il debug. Qualsiasi collegamento a calcolatori online o metodi di valutazione alternativi sono ben accetti.
Glicko-2 è un sistema di valutazione utilizzato negli scacchi, ma può essere utilizzato in molte altre situazioni. Glicko-2 è un miglioramento di Glicko-1, che risolveva i problemi della vecchia classificazione ELO.
Ciò che rende speciale Glicko-2 rispetto alla versione 1 è che incorpora una deviazione di valutazione (RD) più alta qualcuno è stato inattivo da più tempo. Lo fa con la nozione di una costante di sistema che si riferisce a periodi di tempo / valutazione.
Un esempio scritto dallautore si trova qui: http://www.glicko.net/glicko/glicko2.pdf .
Allinterno di questo documento, spiega:
Il sistema Glicko-2 funziona meglio quando il numero di giochi in un periodo di valutazione è da moderato a grande, diciamo una media di almeno 10-15 partite per giocatore in un periodo di valutazione. Il periodo di tempo per un periodo di valutazione è a discrezione dellamministratore.
Partendo dal presupposto che un gruppo di giocatori di scacchi attivi giochino 10-15 partite in media in un periodo di tempo di 1 mese, lamministratore aggiornava le valutazioni alla fine di ogni mese.
Avevo bisogno di unimplementazione PHP del sistema di valutazione Glicko-2 e ho riscontrato quanto segue:
Implementazione di JavaScript Glicko-2
- Il JavaScript ha avuto un piccolo errore, in cui “non lo ha lasciato corrispondere allesempio di scrittura tecnica, lautore lha trovato abbastanza vicino e non si è preoccupato di debug.
- Limplementazione di PHP è stata afflitta da molti bug, ma ciò non era evidente a meno che non si facesse più di un periodo di valutazione (che il tecnico scrive- up nev er mostra i valori previsti di)
Calcolatrice Glicko-2 in Excel
- Finalmente il calcolatore Excel sembrava essere privo di errori e il più professionale, fatto da qualcuno della comunità scacchistica. Una volta risolto il bug JavaScript, JavaScript ed Excel Calculator corrispondevano molto strettamente tra loro (anche se non perfetti, potrebbe essere allinterno di un errore di arrotondamento)
Avevo corretto i bug (e presentato problemi / patch agli autori) Ho potuto trovare nelle versioni PHP e JavaScript per corrispondere il più fedelmente possibile a Excel Calculator
Ora sono sicuro al 99% di avere unimplementazione accurata di Glicko-2 (tra le 3 di loro) per lanalisi ed è allora che mi sono imbattuto in qualcosa di strano e largomento di questa discussione.
Dato il valore predefinito suggerito per Glicko-2 per un nuovo giocatore:
Rating: 1500 RD: 350 Volatility: 0.06
Se affronti un avversario medio di valutazione 1378 e RD 99 ( Fonte ) solo una volta per periodo di valutazione (1 mese) per i prossimi 12 periodi (1 anno) avrai accumulato una Classe A (1800-1999) valutazione di 1852 quando in realtà hai ha battuto solo 12 giocatori con una valutazione media nellarco di 12 mesi.
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 〃
Se affronti 2 avversari nella media per ogni periodo di valutazione, puoi arrivare alla Classe Nazionale A circa 4-5 mesi, affrontando solo 8-10 avversari nella media.
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 〃
Questi presupposti sono accurati? Cè un bug nella mia calcolatrice?
Se non si tratta di un bug, quali sono alcuni modi per contrastarlo oltre a:
- Considera “true rating” come limite inferiore della deviazione (Rating – RD)
- Non mostrare la valutazione degli utenti inattivi
- Non mostrare gli utenti con meno di N giochi
Commenti
- chess.com/forum/view/general/chess-ratings—glicko-vs-elo dai unocchiata a questo
- chesschat.org/showthread.php?t=13621
Risposta
Ho lavorato a unimplementazione di Scala alcuni mesi fa, anche se era un po rozza – dovrei tornare indietro per finirla. Almeno ho ottenuto dei risultati ragionevoli da .
Se vinci ogni partita che giochi, sì, il tuo punteggio crescerà fino a diventare piuttosto alto anche se giochi solo contro giocatori con un punteggio basso. La probabilità di vincere ogni partita contro un tale avversario è probabilmente su ciò che un giocatore di classe A otterrebbe (sebbene probabilmente i è un po gonfiato a causa del RD relativamente alto, ancora).
Il modo migliore per contrastare, a mio parere, è non considerare qualcuno con un RD superiore a un certo importo come una valutazione stabile, ovvero. considerarlo “provvisorio”. Inoltre, per ottenere effettivamente un titolo, almeno in USCF, hanno un sistema di norme, in cui devi esibirti a un certo livello in un torneo di 4 partite o più (4 volte, credo), il che rende probabile di giocare contro un ~ 1378 per lintero torneo [quattro volte] molto improbabile.
Il tuo obiettivo è usarlo per gli scacchi? Qual è il tuo caso duso?
Aggiornamento: FICS lo gestisce considerando solo le persone con un RD < 80 attivo. (Usano ancora Glicko-1, credo.) http://www.freechess.org/Help/ficsfaq.html#Q005.003
E da A proposito, Glicko-1 usa anche RD / decadimento temporale. Il miglioramento principale di Glicko-2 è stato il fattore di “volatilità”, che consente a persone con risultati irregolari o risultati stabili di essere calcolati in modo leggermente diverso. Penso che sia “una modifica molto minore a Glicko-1 che causa un considerevole calcolo extra, come te, ero ancora interessato a calcolarlo. In realtà ho chiesto a Glickman stesso alcuni datapoint aggiuntivi per i test, ma era troppo impegnato per fornirli in quel momento.
Commenti
- Cordiali saluti, a Il titolo a livello di classe USCF richiede di guadagnare una norma in 5 tornei.
Risposta
Tutti i sistemi di classificazione hanno problemi in vita reale. Nella migliore delle ipotesi nessuno di loro può fare più di unipotesi approssimativa della tua abilità.
Faranno meglio a livello GM poiché quei giocatori sono più coerenti e tendono a giocare più GM; mentre il resto di noi è più incoerente e tende a giocare una gamma più ampia di giocatori con rating inferiore che sono anche più incoerenti. E i nuovi giocatori tendono a migliorare molto più velocemente giocando in meno tornei, il che distorce ulteriormente tutte le valutazioni. E a qualsiasi livello alcuni giocatori hanno giorni di riposo o non si sforzano così tanto se non cambieranno la loro posizione nei risultati finali.
Cercare di mettere a punto le valutazioni in modo simile a Glicko2 è una commissione da pazzi.
Un altro fattore che aggrava il problema è che i giocatori tendono a giocare con gli stessi giocatori. Se ci fosse un sistema svizzero obbligatorio mondiale che giocasse abbastanza round, ci sarebbe un grande scossone nelle valutazioni della maggior parte dei giocatori. Un doppio round robin mondiale apporterebbe ulteriori modifiche, ma lo svizzero sarebbe un buon inizio per correggere gli errori di valutazione, almeno nel mezzo con giocatori affermati. Hai ancora il problema con i nuovi giocatori che distorcono le valutazioni.