Forum pubblico/privato: Pubblico
Permessi di scrittura: Utenti registrati
Giorno: 12/05/2018, 14:48:38
Tablebases a 7 pezzi (Syzygy) in arrivo!
Sembra incredibile, solo un anno fa si credeva impensabile a causa delle enormi risorse hardware che avrebbero richiesto (100 TBytes, anni di calcolo, ecc.), e invece sono già pronti i finali senza pedoni: http://tablebase.lichess.ovh/tables/standard/7/. Si parla di 20~35 TBytes... zizi.gif
"Niente è più curativo di un gesto umano!" - Bobby Fischer
Giorno: 10/12/2018, 21:30:04
Link sponsorizzati
Giorno: 12/05/2018, 16:53:26
Mi sa che c'è sotto lo zampino dell'amico cinese (quello che ha messo a disposizione del Team di SF 600 e più core fisici).
Con un migliaio di core a disposizione, credo che si possa questo ed altro ... biggrin.gifbiggrin.gifbiggrin.gif

Pur essendo di scarsissima utilità pratica, questi files di soli pezzi dovrebbero essere necessari affinché si possa poi gestire al meglio quelli con i pedoni.

Si pone però il problema di dove depositare tutta questa roba: se anche esistessero HD così capaci, i motori rallenterebbero fin quasi a fermarsi, a meno di usare un probe depth molto ma molto elevato. dho.gif

Aspettiamo che arrivino le tipologie più interessanti, come T e 2p contro T e p (o Alfiere e 2 pedoni contro 2 pedoni, per far risolvere finalmente il famigerato finale del Mondiale del 1972 biggrin.gifbiggrin.gif).

Magari potrebbero funzionare discretamente anche inserendo solo le poche tipologie più frequenti nei finali pratici ... mmmm.gifmmmm.gifmmmm.gif

ciao.gifciao.gif
"TB or not TB..."
Giorno: 08/08/2018, 20:48:53
Grazie alle immense risorse hardware del cinese Bujun Guo coadiuvato da Ronald De Man, continua alacremente il lavoro di generazione delle TableBase a 7 pezzi.

Si stanno mettendo ora a punto le tipologie più interessanti, cioè quelle relative ai finali di 4 "pezzi" contro 3, in presenza anche di pedoni.

Si stima che, a lavoro concluso, ci vorranno circa 12 Terabyte per poter archiviare tutti i file.

Ed ora abbiamo anche il motore che può leggerli al meglio: a partire dal 31 Luglio, le dev di SF supportano il nuovo formato delle Syzygy a 7 pezzi: chi volesse cominciare a scaricarle faccia pure ... biggrin.gifbiggrin.gif

ciao.gifciao.gif
"TB or not TB..."
Giorno: 10/08/2018, 18:15:32
Essendo al momento quasi impossibile anche il solo pensare di poter memorizzare i circa 13TB della serie completa delle Syzygy a 7 pezzi (a meno che non si abbiano le risorse di Bujun biggrin.gifbiggrin.gif), coloro che dispongono di qualche Tera di spazio di memoria potrebbero accarezzare l'idea di una versione "ridotta", accontentandosi delle tipologie più comuni e "utili" che potrebbero essere quelle caratterizzate dalla presenza di Re, pezzo e 2 pedoni contro Re, pezzo e pedone, incluse in

4v3 pawnful

Fra le tipologie già disponibili c'è ad esempio la classica Torre e 2 pedoni contro Torre e pedone, la "madre" di tutti i finali a 7 "pezzi" zizi.gifzizi.gif

Si dovrebbero scaricare 3 file per ogni tipologia, e quindi, nel nostro caso,

KRPPvKRP.rtbw (21.7 GB)

KRPPvKRP.rtbz (8.8 GB)

e

KRPPvKRP.txt (11.9 kB)

Una trentina di gigabyte, quindi, per questa sola tipologia biggrin.gifbiggrin.gif dho.gifdho.gif

Dopo di che si potrebbe passare alle altre in cui al posto delle Torri ci siano le Donne, gli Alfieri o i Cavalli o una loro combinazione, tipo Alfiere contro Cavallo, Torre contro Alfiere, ecc...

Credo che 1 terabyte dovrebbe essere sufficiente per poter fare i primi, utili, esperimenti biggrin.gifbiggrin.gif

Se qualcuno vuole fare da "pioniere", non si dimentichi di farci sapere i risultati ... biggrin.gifbiggrin.gif

ciao.gifciao.gif
"TB or not TB..."
Giorno: 10/08/2018, 19:24:46
Fino a pochi anni fa sembrava impossibile arrivare a questi risultati.
Luigi, tu che sei ferrato in materia, di questo passo, quando pensi saranno disponibili quelle a 8 pezzi?
ciao.gif
worldchess.it
Giorno: 11/08/2018, 09:12:32
Ciao Lupin:

Aumentare di una unità il numero di pezzi delle table base ha finora sempre comportato un incremento nello spazio di memoria di un fattore 100, cosicché le Syzygy 8, se e quando verranno, richiederanno un supporto di memoria di oltre 1000 TB, e i singoli file potrebbero essere lunghi anche 1TB dho.gifdho.gifdho.gif

Ad occhio e croce, direi che la cosa non possa essere realmente fattibile prima di una decina di anni, se la legge di Moore vale ancora qualcosa.

Ma questa è la stessa previsione fatta appena un anno fa da Ronald de Man per le Syzygy a 7 pezzi, e si basava su considerazioni legate alla dotazione hardware mediamente a disposizione di un programmatore.

Poi è arrivato Guo con i suoi 1000 e passa core a disposizione, e le cose sono andate molto più in fretta, anche se ci sono voluti ugualmente mesi ...

In tutto quest'entusiasmo, non dimentichiamo poi che le Syzygy hanno grossi limiti in quanto ci dicono solo se una posizione è vinta o no, ma non consentono di trovare la via più veloce per una vittoria, come possono fare invece le Lomonosov, che richiedono però 10 volte più memoria. dho.gif

Tuttavia, nelle "mani" di un motore molto selettivo, come è senz'altro SF, le Syzygy compensano ampiamente tale svantaggio, indicando quasi sempre la strada maestra alla macchina anche nel caso in cui sulla scacchiera i pezzi siano molti di più.

Si tratta in definitiva di un ottimo navigatore, che potrebbe anche andare di tanto in tanto in tilt, ma che è sicuramente meglio avere a disposizione nei percorsi più difficili ... zizi.gifzizi.gif

ciao.gifciao.gif
"TB or not TB..."
Giorno: 11/08/2018, 10:42:54
Sempre eccezionale Luigi, grazie della spiegazione. Buona giornata!
ciao.gif
worldchess.it
Giorno: 16/08/2018, 19:38:03
Ho iniziato il download dei 2 file relativi al finale Torre e 2 pedoni contro Torre e pedone.

Il link riportato da Riddick nel primo post di questo topic funziona molto bene: il file KRPPvKRP.rtbz, della lunghezza di 8.8 GB è stato scaricato in circa 2 ore, con una velocità media di oltre 1000 kB al secondo, e sono ora alle prese col KRPPvKRP.rtbw, che è circa due volte e mezzo più lungo. dho.gif

Sconsiglio invece l'altro collegamento, quello del sito di Guo, che sembra 6 volte più lento ...

ciao.gifciao.gif
"TB or not TB..."
Giorno: 17/08/2018, 17:32:26
Dopo aver scaricato, a titolo di prova, i file relativi al finale di Torre e 2 pedoni contro Torre e pedone, ecco le prime impressioni "a caldo" sul funzionamento delle Syzygy7:

1) I file etichettati come ".rtbz" sembrano del tutto inutili, nel senso che ci sono o no, il motore sembra lavorare sempre allo stesso modo! dho.gif

2) Avere i file (ma in pratica serve, come abbiamo già detto, il solo ".rtbw" biggrin.gifbiggrin.gif) relativi a una data tipologia di finale a 7 pezzi non è molto utile se non si usano anche tutti quelli relativi ai finali a 6 pezzi.

Come primo esempio ho utilizzato la seguente posizione

abcdefgh
8
8
7
7
6
6
5
5
4
4
3
3
2
2
1
1
abcdefgh
Fen: 8/5r2/R7/8/1p5k/p3P3/4K3/8 w - - 0 1


tratta dalla raccolta "hardends" di Albitex.

Impostando l'ultima dev di SF per leggere le TB7 dalla cartella "Syzygy7", il motore mi forniva sì la mossa corretta 1.Ta4!!, ma attribuendo al Nero un vantaggio di oltre un'unità di pedone.

Quando ho aggiunto nel percorso anche l'indicazione di tutte le Syzygy6, ecco che, istantaneamente è apparsa la corretta valutazione di "=0.00", mentre giocando qualsiasi altra mossa, appare a display "-+153.96", segno che le TB funzionano ora perfettamente.

3) I risultati migliori sembrano aversi quando tutti i file si trovano nella stessa cartella. Fornendo invece un percorso "misto" con le due cartelle separate dal punto e virgola, si nota un rallentamento decisamente maggiore.

4) Per chi, come me, non dispone di un SSD come supporto di memoria, è praticamente impossibile regolare il probe depth di SF in maniera ottimale. dho.gif senzasperanza.gif

Tutto ciò è dovuto al modo stesso in cui, un paio di anni fa, Ronald de Man ha scelto di far lavorare il probe depth di SF, facendolo in pratica funzionare solo al livello più elevato, cosicché si può regolare solo la frequenza degli accessi alle TB ad N pezzi, mentre quelli ad N-1 pezzi vengono sempre gestiti alla frequenza più alta possibile.

Se per N = 6 la cosa funzionava abbastanza bene, visto che gli accessi alle Syzygy a 5 pezzi rallentano il motore in maniera quasi impercettibile anche su un comune HD, e scegliendo un probe depth pari a 16 non perdevo quasi nulla in velocità, con N = 7 il rallentamento dovuto agli accessi incontrollati alle TB6 diventa davvero inaccettabile: in molte posizioni si scende dagli oltre 10000 kN/s a poche centinaia, con relativa enorme diminuzione della profondità di analisi raggiunta. dho.gifdho.gifdho.gif

Questo è un problema davvero gravissimo, soprattutto per chi fa uso di un comune HD, che non potrà essere efficacemente risolto se non fornendo un doppio comando di probe depth in maniera tale da poter regolare separatamente la frequenza degli accessi alle TB almeno per quanto riguarda quelle a 6 e quelle a 7 pezzi.

Magari chi dispone di un velocissimo SSD non avrà di questi problemi, o li avrà in maniera decisamente ridotta. mmmm.gifmmmm.gifmmmm.gif

Mi piacerebbe sapere da Riddick se ha già fatto qualche esperimento al riguardo ...

ciao.gifciao.gif
"TB or not TB..."
Giorno: 18/08/2018, 09:38:46
Per quanto riguarda il punto N° 1) Ronald de Man ha chiarito in maniera semplicissima la differenza fra i due tipi di file:

"There are *.rtbw and *.rtbz files.

The *.rtbw files contain WDL (win/draw/loss) information.
The *.rtbz files contain DTZ (distance to zero) information.

Distance to zero means the minimum (if you're winning) or maximum (if you're losing) number of moves until a mate, capture or pawn move.

The *.rtbw files are used during the search to determine if a winning TB position can be reached.

Once a winning TB position is on the board, the *.rtbz files are used to figure out how to make progress (get to a mate, winning capture or winning pawn move)."

Quindi durante l'analisi con un numero maggiore di pezzi sulla scacchiera vengono utilizzati esclusivamente i file .rtbw, mentre solo una volta che una posizione vincente a N pezzi viene raggiunta, entrano in funzione le .rtbz, che suggeriscono al motore la strada più veloce (o più lenta, se stiamo perdendo) per continuare ...

Chiarissimo, ora, Mr. de Man! biggrin.gifbiggrin.gif

ciao.gifciao.gif
"TB or not TB..."