Newsgroup: it.hobby.scacchi
Titolo: Torneo a eliminazione diretta

Qualcuno è in grado di segnalare, o postare, un algoritmo per produrre
un tabellone di un torneo a eliminazione diretta, per un qualsivoglia
numero di partecipanti?
Grazie
Franco De Sio

 numero di partecipanti?
Intendi un modo standard di gestire un numero di partecipanti che non
e' potenza di due,
in modo da minimizzare i bye al primo turno o i ripescaggi degli
sconfitti al primo turno
o cose del genere, in modo da ottenere un formato il piu' vicino
possibile a una eliminazione
diretta "pulita" (per cui ti serve un numero di partecipanti che e'
potenza di 2)?
Oppure intendi qualcos'altro e io non ho capito la domanda?
Ciao.Fabio.

 numero di partecipanti?
Se il punto della questione e': che faccio se il numero dei
partecipanti non e' potenza di due?
esiste questo semplice metodo:
hai n giocatori con n non potenza di due;
prendi il piu' piccolo numero superiore a n che e' potenza di due,
chiamiamolo p;
al primo turno fai p-n bye promessi direttamente al secondo (i primi p
in classifica se hai
una classifica di riferimento, tipo l'ELO Italia/Fide o qualunque
altra cosa, altrimenti li sorteggi);
al secondo turno di ritrovi con un numero di concorrenti che e'
potenza di due e sei a posto.
Esempio: 29 giocatori;
n=29 p=32, 3 bye
al secondo turno ti ritrovi con 16 giocatori e sei a posto.
Ciao.Fabio.

 al secondo turno ti ritrovi con 16 giocatori e sei a posto.
OK, come inizio di un algoritmo non c'è male.
Bisogna capire ancora, nell'ipotesi che si usi il rating dei giocatori
(per esempio):
a) come abbinare i numeri di lista fin dall'inizio in modo che,
concettualmente, in finale arrivino il n° 1 e il 2 di tale lista,
ovvero le teste di serie principali;
b) rispettare il principio che gli abbinamenti di ogni turno siano il
meno squilibrati possibile confrontandoli tra loro: per esempio
evitare che al primo turno, su 32 partecipanti, il n° 1 sia abbinato
al 32 e contemporaneamente il 16 con il 17.
Su quest'ultimo punto credo che la soluzione più equa sia, pur
salvaguardando le teste di serie individuate, che la distanza tra i
numeri abbinati debba essere più o meno la stessa, per ogni coppia.
E infine, tutti stì bei desideri dovrebbero essere generalizzati in
formule e/o step di procedimento.
:-)
Ciao
Franco De Sio

 al 32 e contemporaneamente il 16 con il 17.
Si', e' quello che si fa. Allora direi cosi':
intanto iscrivi fittiziamente fino a p giocatori, chiamando bye quelli
oltre n.
Nell'esempio sopra 30,31,32 sono i signori bye. I bye andranno
automaticamente alle prime teste di serie.
Quindi lavorando a ritroso hai in finale 1 contro 2.
In semifinale quindi 1 contro 4 e 2 contro 3.
Nei quarti 1 contro 8, 2 contro 7, 3 contro 6, e 4 contro 5.
Negli ottavi 1 contro 16, 2 contro 15, 3 contro 14, 4 contro 13, 5
contro 12, 6 contro 11.... 8 contro 9.
Nei sedicesmi 1 contro 32, ecc...
Concettualmente siamo a posto, mi pare.
Se disegni il tabellone su un foglio e riempi cosi' arrivi a ottenere
i primi turni e tutti gli accoppiamenti
successivi.
Poi si potrebbe tirar fuori un metodo meccanico piu' veloce.
Ma tu vuoi una cosa da fare a mano o una cosa da far fare a un
programma?
Ciao.Fabio.

:-)
Trovi delle tabelle già pronte sul sito del settore arbitrale.
Spiegare un possibile procedimento può essere un vero macello, ma ci provo ...
Prima di tutto devi normalizzare i giocatori a potenza di due, e questo è facile.
Poi assegni un numero a ciascun giocatore in sequenza di rating o quant'altro, un pò
come in un normale svizzero, e questo anche è facile.
Adesso viene il difficile.
Facciamo un esempio con 16 giocatori.
Il ragionamento "mentale" viene più facile se parti dal fondo, cioè dalla finalissima,
che sarà ovviamente tra il numero 1 e il numero 2 di tabellone.
Quindi scriviamo:
1
2
Adesso bisogna trovare un avversario per il turno precedente (semifinale) per entrambi i giocatori.
Sono due avversari, che avranno i numeri subito dopo il numero più alto, cioè saranno
i numeri 3 e 4, che sono quelli subito dopo il numero più alto (il 2).
Deve abbinare il più scarso (4) con il più forte (1) o se preferisci il numero più
basso con il numero più alto. Quindi scriviamo:
1
4
3
2
Adesso bisogna trovare 4 avversari che saranno i numeri 5-6-7-8 e abbinarli allo stesso
modo (al più forte assegni il più scarso e così di seguito ...). Quindi scriviamo:
1
8
4
5
3
6
7
2
Adesso devi trovare 8 avversari che saranno i numeri 9-10-11-12-13-14-15-16 e abbinarli
allo stesso modo (all'1 assegni il 16, al 2 il 15, ecc.). Quindi scriviamo:
1
16
8
9
4
13
5
12
3
14
6
11
7
10
15
2
Bingo!
Questo è il tuo tabellone iniziale.
Come ulteriore nota, tieni presente che nel tabellone iniziale la somma di ogni coppia di
numeri deve dare n+1 (dove n è il numero dei giocatori).
Ciao!
Maurizio Mascheroni

 Si', e' quello che si fa. Allora direi cosi':
Scusa, avevo letto male, tu vuoi evitare gli squilibrii.
In realta' teoricamente si dovrebbero generare gli squilibrii,
in base al principio che se io sono il 31, devo essere "trattato"
meglio del 32, e cosi' via.
Potresti fare come si fa nei tornei di tennis, mettendo le teste di
serie solo fino a un certo punto e
sorteggiando gli altri.
Chesso' hai 40 giocatori, fai 8 o 16 teste di serie, per le posizioni
degli altri, fra il 9 (o il 17) e il 40 sorteggi,
poi in fondo fino al 64 metti i bye. E quindi abbini come spiegato nel
post prima.
Nel tennis fanno cosi' e nessuno si lamenta! :-)
Ciao.Fabio.

 programma?
Nessun programma informatico. Qualcosa di sufficientemente chiaro e di
uso generale scrivibile in un file di testo, ovvero le istruzioni per
compilare un tabellone con n partecipanti.
Ciao
Franco

 strada il più possibile.
Come ho scritto nell'altro post, si possono usare le teste di serie
solo fino a un certo punto e gli altri a caso
(a parte i bye che mi pare giusto mettere in fondo).
In questo modo, metti di essere in 64 e fare 32 teste di serie e gli
altri a caso,
se io sono il 64 non e' che sono abbinato di sicuro all'1 all'inizio
(che potrebbe farmi passare la voglia di fare il torneo), ma posso
anche beccare il 33.
Fra l'altro si segue anche il principio che nelle posizione piu' alte
le differenze sono minori.
Insomma fra l'1 e il 10 c'e' piu' differenza che fra 50 e 60.
Poi ovvio che qualcuno l'1lo deve pur beccare (se non ci sono bye).
Ciao.Fabio.

 Franco

 e cosi' via.
Piccola accortezza: per abbinare i bye alle prime teste di serie,
a questo punto i bye vanno piazzati dopo la p/2 posizione.
Quindi, solito caso 29 giocatori, p=32, i bye vanno messi con numero
17,18,19.
Tutto chiaro?
Ciao.Fabio.

 che sarà ovviamente tra il numero 1 e il numero 2 di tabellone.
In questo momento sono troppo fuso per immergermi con concretezza
nello studio di quanto hai pubblicato. Mi riservo di farlo dopo una
buona dormita.
In ogni caso il tuo ragionamento, opportunamente adattato, è
applicabile pure alla "filosofia" di abbinamento che sopra indico?
Ciao e grazie pure a te.
Franco

 classico,
Che voglia una cosa inusuale senz'altro, che sia sbagliata non sono
sicuro.
Vedila dalla parte del 2.
Ciao
Franco

 Tutto chiaro?
Si.
Ciao
Franco

 Vedila dalla parte del 2.
Il 2 ha un percorso piu' difficile dell'1, e piu' facile del 3. Non
puo' pretendere di piu'! :-)
Ciao.Fabio.

Qualcuno =E8 in grado di segnalare, o postare, un algoritmo per produrre


applicabile pure alla "filosofia" di abbinamento che sopra indico?
Non lo so, forse sì, forse no.
Nel tabellone classico, come nelle tabelle presenti sul sito degli
arbitri, la regola è chiara: massima distanza (di numero o forza che
sia) tra i giocatori. 
Quindi è relativamente semplice: l'1 gioca col 32, il 2 col 31, il
3 col 30, il 4 col 29, e via ...
Tu devi prima stabilire quale sia la tua "regola", poi costruisci a
mano dei tabelloni di prova, poi vedi se riesci a formalizzare un
algoritmo (amanuense o informatico che sia).
Ciao!
Maurizio Mascheroni


Il programma che gestisce i tornei su FICS, nel caso del KO, fa proprio come 
suggerito da Arouet.
D'altro canto e' giusto cosi.
Se vuoi avere i piu forti in finale, non puoi privilegiare nei turni chi e' 
meno forte, come nell'esempio che fai tu.
frengo 


Sono d'accordo.
E mi viene pure un dubbio: perche' nello svizzero, che in fondo e' un 
compromesso tra il ko e il girone all'italiana, il primo del primo gruppo 
giuoca con il primo del secondo gruppo e non con l'ultimo ?
frengo 

 compromesso tra il ko e il girone all'italiana, [...]
Questa l'ho letta di recente da qualche parte, ma non riesco a
ricordare dove...
:-)))
Ciao
Franco De Sio

 necessariamente così), 1-8, 9-16, 17-24, 25-21.
Cioè sarebbe più *equo* che al primo turno il n. 8 torni a casa e il n. 17
vada avanti???? :-O
Singolare idea di equità... :-)
Rispetto la libertà di opinione, ma non la sua trasposizione pratica.
E' meglio che tu sappia che ove mi
trovassi ad essere il n. 8 di tabellone inseguirei l'arbitro con un forcone
per parecchi chilometri. O cambi idea o fai molto allenamento sul fondo. :-)
Ciao
Edoardo

 [...] O cambi idea o fai molto allenamento sul fondo. :-)
Calma, calma... oramai alla mia età non è pensabile che mi veda
costretto a dover scappare inseguito da forconi allupati :-).
In realtà non voglio e non devo far nulla di pratico, nell'immediato.
Al contempo e casualmente il discorso sta scivolando
generalisticamente su concetti di abbinamento in torneo, ancorché
sull'opportunità (o meno) di tutelare i giocatori di maggiore forza
presunta.
Bel tema!
Frengo in altro post si chiede come mai, seppur lo Svizzero in fondo
si basi sul concetto di teste di serie, al primo turno in un torneo a
40 giocatori il n. 1 è abbinato al 21 e non al 40, ovvero la filosofia
corrente della formula a eliminazione diretta.
Se lo scopo del torneo è quello di indivuduare un degno vincitore è un
conto. Se lo scopo è quello di delineare una degna classifica è altro
conto.
Nel primo caso è preferibile la formula a eliminazione diretta. Nel
secondo lo Svizzero è un buon compromesso pratico rispetto al girone
all'italiana.
In aggiunta a tutto questo c'è da non perdere di vista il contenuto
tecnico del torneo, ovvero rendere le singole partite accettabilmente
significative. Per raggiungere l'obiettivo sarebbero da evitare
incontri troppo squilibrati, in termini di valori tecnici in campo.
Nei righi soprastanti mi sono limitato a cercare di inquadrare i
termini della questione, che concettualmente è complessa (almeno per
me), senza fornire nessun parere o soluzione precotta :-).
Continuo nel descrivere lo stato dell'arte.
Faccio notare che attualmente il tipico torneo Svizzero open 6 turni,
formula comoda per millanta esigenze, spesso per il giocatore di rango
rispetto agli avversari del momento, si riduce a una quasi passeggiata
nei primi tre turni e a un comodo controllo della situazione di
classifica nella restante metà del torneo.
Al contempo per il giocatore di media forza è un continuo rimbalzo di
partite disputate con giocatori di fascia superiore alternate a
partite con giocatori di fascia inferiore, quasi sempre con partite di
scarso valore tecnico/agonistico.
Infine, il giocatore di forza medio/bassa in pratica salta le prime
due partite e il suo torneo comincia al terzo turno, con abbinamenti
più significativi.
Una possibile soluzione sono i tornei di fascia, pratica tutta
italiana o quasi.
A mio parere il grosso limite di tale scelta è che, almeno in ambito
locale, giochi sempre con gli stessi avversari.
Altra possibile soluzione a quanto descritto è, per gli open,
l'accelerazione degli abbinamenti, pratica che si sta diffondendo
velocemente.
Ma anch'essa mostra qualche limite.
Se i turni accelerati sono pochi rispetto al totale previsto accade
che, seppur in quantità ridotta rispetto allo Svizzero tradizionale,
quando si tolgono i punti virtuali almeno per un turno inevitabilmente
si assistono a incontri abbastanza squilibrati.
Se i turni accelerati sono in numero significativo rispetto al totale
dei turni del torneo, quando questo totale è comunque basso si rischia
di fatto di avere per un bel pò due tornei separati. In ciascuno di
esso si ha una selezione interna che, quando si toglie
l'accelerazione,  favorisce in classifica i giocatori top della fascia
che non ha ricevuto punti virtuali, meno inclini alla patta rispetto
al gruppo principale.
Una variante che riduce tali effetti e l'accelerato decrescente,
difficile da riassumere qui nel funzionamento.
Ma tale sistema è stato ideato per tornei con elevatissimo numero di
iscritti, ed è finalizzato ad ottimizzare la possibilità di realizzare
norme per titoli internazioli, quindi da usare in tornei di almeno 9
turni.
A presto.
Franco