Newsgroup: it.hobby.scacchi
Titolo: Elo e Ping Pong

Ciao!
Oltre che a scacchi, gioco spesso a ping pong con 2 amici, e mi e'
venuta l'idea di iniziare a calcolare i nostri Elo. Ho gia' lo storico
delle nostre precedenti partite.
Mi potete suggerire qualche risorsa su come calcolare rapidamente gli
Elo?
Il mio dubbio principale e': se un giorno io e un mio amico giochiamo 10
partite di ping pong, e, ad esempio, i nostri Elo sono 1500 e 1600,
bisogna calcolare tutte e 10 le partite allo stesso tempo, oppure quando
calcolo la seconda partita devo gia' tenere in considerazione la
variazione di Elo in seguito alla prima di quelle 10 partite?
Grazie!
-- 
|_|0|_| - Salvatore Iovene
|_|_|0| - Website:  
http://www.iovene.com/
|0|0|0| - Key:      
http://www.iovene.com/pubkey.asc
------- - Webcomic: 
http://geekhero.iovene.com/

 variazione di Elo in seguito alla prima di quelle 10 partite?
Dipende che criterio intendi usare per aggiornare il punteggio.
Le formule statistiche sono piu' precise se viene aggiornato il punteggio
di volta in volta, per avere un risultato ottimale.
Negli scacchi l'aggiornamento avviene trimestralmente per motivi di ordine
pratico. Una volta era di 6 mesi.
Magari in futuro, grazie alla tecnologia, gli aggiornamenti elo potranno
essere mensili.
Nel tuo caso puoi decidere se fare un aggiornamento giornaliero o alla
fine di ogni evento dove per evento si intende un torneo a tre o piu', o
un match al meglio delle x vittorie.
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 un match al meglio delle x vittorie.
Ciao e grazie per la risposta. Tu che frequenza di aggiornamento mi
consiglio? Ora ti spiego noi in che modo giochiamo:
quasi ogni giorno, io potrei trovarmi a giocare un numero casuale di
partite con A, e/o un numero casuale di partite con B, e/o A potrebbe
trovarsi a giocare un numero casuale di partite con B.
In parole povere, quando ci va si scende a giocare qualche partita.
Niente tornei. Alla fine della "sessione", semplicemente ci ricordiamo
quante partite abbiamo vinto e perso contro l'un l'altro. L'idea sarebbe
di andare subito semplicemente ad aggiornare i punteggi Elo in base a
queste nozioni.
Finora stavo tenendo un foglio elettronico con un grafico con il
rapporto vittorie/sconfitte. Guardalo qui:
http://spreadsheets.google.com/pub?key=p4VLiQUf2i0G9On9VC4h2VQ
Grazie ancora!


 variazione di Elo in seguito alla prima di quelle 10 partite?
Per rendere la cosa più interessante, dovresti trovare un modo di
convertire il risultato della partita di ping in un valore tra 0 e 1,
dove 0 corrisponde a sconfitta per cappotto e 1 viceversa. A scacchi
si è limitati a 0, 0.5 e 1... a ping pong no... cosa ne dici? Non
dovrebbe essere complicato.
Per la frequenza di aggiornamento, dovresti prendere un periodo
all'interno del quale la forza dei giocatori resta uniforme, imho.
J.


Ti invito comunque a riflettere a una limitazione del sistema Elo :
presi 3 giocatori A,B e C, calcolando gli scontri tra A e B ottieni la
differenza Elo tra A e B, calcolando poi gli scontri tra B e C ottieni
la differenza Elo tra B e C. Dati questi 2 valori, otterrai la
differenza Elo tra A e C, che puo` essere diversa da quella che
ottieni calcolando gli scontri tra A e C... insomma puoi avere
differenze Elo diverse a seconda di come organizzi i dati. L'unica
cosa "vera" è la tabella con i rispettivi punteggi percentuali negli
scontri diretti.
Spero di essermi spiegato... sono un po' di fretta!
J.

 dovrebbe essere complicato.
Interessante. Si potrebbe creare una funzione che ritorni un numero fra
0 e 1 a seconda del punteggio finale di una partita.
Ma in pratica questo e' equivalente a non considerare le partite, ma
semplicemente i punti totali, che sono piu' difficili da ricordare
mentre stiamo giocando.


 mentre stiamo giocando.
Esatto. Al limite, per l'Elo, puoi considerare ogni punto realizzato
come una vittoria.
J.

 dovrebbe essere complicato.
Ci ho pensato, e credo che la cosa migliore sia smettere di considerare
le partite (cioe' chi arriva prima a 11 punti), e contare semplicemente
i punti.
Cosi' ad esempio io e il mio amico andiamo a giocare oggi per un'ora e
magari finisce 125-110. Ora come fare a calcolare la variazione di Elo
giornalmente per risultati del genere?


 giornalmente per risultati del genere?
Puoi considerarla come un'unica partita e usare un K proporzionale al
numero di partite giocate... giusto un'idea buttata là!
J.

 i punti.
Non sono mica tanto d'accordo, sai...
A scacchi che io vinca dantoti matto in 12 mosse o in 227 mosse dopo
un'estenuante finale di pezzi pesanti la variazione ELO e' sempre la
stessa.
Ciao.Fabio.


Si' pero' se io e te giochiamo a ping pong, e tu mi batti sempre 11-0,
credo che la nostra forza relativa sia ben diversa da quella che si
avrebbe se tu mi battessi tutte le volte 11-9! No?



Mi aspettavo questa osservazione. Bisognerebbe vedere se,
all'aumentare della differenza Elo, il più forte vince più
velocemente. Se la correlazione tra numero di mosse e differenza di
forza fosse verificata, si potrebbe usare questa informazione per
modificare leggermente il K (per esempio, il K vale 30 per le partite
che finiscono in meno di 20 mosse e vale 10 per quelle sopra le 50).
Cosa ne dici?
J.

 avrebbe se tu mi battessi tutte le volte 11-9! No?
Ma se tu mi batti 5 volte 11-0 e io ti batto 6 volte 11-9, per me quel
giorno ho vinto io.
E' come uno che a tennis vince due set 6-0 e poi ne perde tre 7-5.
Non vince chi ha fatto piu' giochi...
Ciao.Fabio.

 giorno ho vinto io.
Dipende che cosa vuoi misurare con il tuo punteggio Elo, la probabilità di 
vincere partite o quella di fare punti. Il discorso parallelo vale nei match 
di scacchi: il match Fischer lo ha vinto, ma ha perso 5 punti Elo.
Alex

 dovrebbe essere complicato.
Piu' ci penso piu' mi sembra un'ottima idea. Anche perche' solo in
questo modo funzionerebbe bene in termini ti previsione Elo.
Siano x e y i punti fatti da A e B durante una sessione di gioco, voglio
un n tra 0 e 1 tale che:
* se x = Y, n := 0.5
* n tende a 0 quanto piu' y > x
* n tende a 1 quanto piu' x > y
n ovviamente e' il punteggio di A per questa sessione di gioco.
Come la fareste voi questa funzione?


 Come la fareste voi questa funzione?
Provo : se 0<=x,y<=11 , allora (x-y)/11 varia tra -1 e 1. Noi vogliamo
andare da 0 a 1, quindi si potrebbe fare 1/2 + 1/2 * ((x-y)/11)
J.

 J.
Ovviamente questo vale se almeno uno tra x e y vale 11...
J.


Oppure, molto più semplicemente, A ottiene x/(x+y) e B ottiene y(x
+y)... ovvero ognuno prende la percentuale dei punti totali
realizzati.
J.

Elo?
Io proverei a dare una chance all'ufficialissimo metodo Esox della
FITET, Federazione Italiana TennisTavolo.
Tutte le info qui: 
http://www.fitet.org/documenti/regolamenti/regolamento_classifiche_2007_2008.pdf
Sono solo quattro paginette, di cui una è l'indice! :-)
Magari non funziona per i tuoi scopi, però, hai visto mai ...
Ciao!
Maurizio Mascheroni

 Ciao!
[...]
Ciao,
per anni, fin quando io e i miei amici abbiamo tenuto in piedi la 
pseudo-associazione di tennis tavolo, ho utilizzato un software 
permutato dal "cugino povero" degli scacchi, l'Othello.
Un giocatore di Othello ha ben pensato di "convertire" il punteggio di 
una partita dell'Othello in quello del tennis-tavolo; la formula, tutto 
sommato, è lineare.
Questo software non usa la formula ELO usata negli scacchi ma una cosa 
molto simile. Tiene conto del risultato di vittoria, sconfitta e volendo 
pareggio, come negli scacchi e anche dello scarto punti. Per cui vincere 
11-0 non è la stessa cosa di vincere 11-9. Il bello del tennis tavolo 
che fornisce un indicatore statisticamente più efficace, oltre al 
risultato secco del match, è appunto la differenza punti.
I risultati del mio esperimento, durato anni, li vedi qui
http://www.deepthought.it/home.php?page=atta&link=0
Se ti interessa potrei spedirtelo il software.. credo. L'autore non ha 
fatto problemi nel darmelo, dopo tutto non ci sono i sorgenti.
saluti,
M.
P.S:
Ma non è che ci eravamo già sentiti per e-mail ? :-)

 permutato dal "cugino povero" degli scacchi, l'Othello.
Aggiungo...
Prima che il benefattore othellistico mi passasse il software... usavo 
il metodo del tennis ATP. Poi, a suo di data entry, ho inserito tutti i 
match e ricalcolato la classifica col software.
saluti,
M.

 risultato secco del match, è appunto la differenza punti.
Grazie, ma ho risolto. Alla fine, essendo solo in 3, ne sono uscito con
un foglio di calcolo dove ho riportato le equazione per l'Elo ed ho
espresso il risultato di una partita come un numero 0 < X < 1:
Xa = 1 / (1 + 2^((Pb -Pa)/11)) (per il giocatore a) e
Xb = 1 / (1 + 2^((Pa -Pb)/11)) (per il giocatore b)
Puoi seguire i risultati qui:
http://spreadsheets.google.com/pub?key=p4VLiQUf2i0F8wcrj__eoBA
:)
Se ci siamo sentiti via email, non ricordo. A proposito di cosa?


 Se ci siamo sentiti via email, non ricordo. A proposito di cosa?
A monte...
Me lo sono sognato, mi sa.
saluti,
M.