37e Olimpiadi degli Scacchi | Torino 2006

Home Page

login

Untitled Document
Dicembre 2018
LUN MAR MER GIO VEN SAB DOM
     12
3456789
10111213141516
17181920212223
24252627282930
31      
RASSEGNA STAMPA

FOCUS


L'uomo contro la macchina

Deep Blue e Hydra
Le migliori macchine per giocare a scacchi

L'automa giocatore

Il turco giocatore di scacchi fu presentato la prima volta nel l 1770 da Wolfgang von Kempelen. L'automa divertiva il pubblico per la sua abilità nel gioco e "incontrò" perfino personaggi di spicco come Maria Teresa e Napoleone.
La macchina era dotata in effetti di una meccanica raffinata, grazie alla quale l'automa muoveva i pezzi, ma il vero giocatore era un uomo nascosto all'interno della cassa. La posizione dei pezzi gli veniva comunicata da magneti fissati sul fondo dei pezzi stessi, e da piccole astine sotto la scacchiera.
Una riproduzione del Turco, divenuto a suo tempo proverbiale, è in esposizione presso l'Heinz Nixdorf Museum di Padeborn.

Meglio del campione del mondo di scacchi

Il nome Deep Blue per il suo supercomputer, IBM lo derivò dal famoso appellativo Big Blue con cui la società veniva identificata. Il lavoro per creare questo giocatore di scacchi virtuale iniziò nel 1989.
Otto anni dopo il "mostro", che pesava ben 16 tonnellate, era pronto per il decisivo incontro di torneo contro il campione del mondo di scacchi Garry Kasparov. IBM aveva dotato un computer RS/6000SP di 256 processori Power Two super Chip (P25C). Questi chip VLSI ripartiti su 32 schede Microchannel furono appositamente sviluppati per il computer scacchista, il cui codice di programma girava sotto AIX.
Il sistema scalabile a elevato funzionamento in parallelo di Deep Blue elaborava 200 milioni di posizioni al secondo.

Il giocattolo dello sceicco

Il supercomputer dei giorni nostri è di proprietà di alcuni arabi amanti degli scacchi, si trova ad Abu Dhabi ed è stato sviluppato in collaborazione da esperti tedeschi e austriaci.
È composto da un cluster di otto computer, complessivamente dotati di 16 processori Xeon che operano alla frequenza di 3 GHz.
Il completo sistema Linux dispone di 16 Gb di Ram. Come già Deep Blue, anche Hydra lavora in parallelo, utilizzando però schede Fpga programmabili.
Grazie soltanto alla sua enorme potenza di elaborazione è riuscito a battere altri programmi di scacchi, fra cui Shredder. Gli sviluppatori di Hydra vogliono ora rielaborare il supercomputer con cluster di 32 processori, rendendolo cosi cinque volte più veloce di quanto non sia adesso.
Il suo compito è stato soprattutto quello di sistemare l'enorme biblioteca di aperture di gioco del computer.
La base fondamentale per le mosse di apertura dei programmi di scacchi è costituita da enormi collezioni di dati in cui sono raccolti milioni di mosse ricavate da partite del passato disputate da giocatori umani.
Christopher Lutz ha dovuto soprattutto insegnare alla macchina a non scegliere un'apertura debole soltanto perché un giocatore del passato che ha iniziato con quelle mosse è risultato casualmente vincente.
Un tipico programma di scacchi consiste di tre parti. Per prima cosa un generatore ricerca tutte le mosse che sono attuabili in una certa posizione.
In un processo di valutazione vengono poi immesse, sotto forma di regole, le informazioni date da alcuni esperti sul gioco degli scacchi.
Il cuore del programma è infine un algoritmo di ricerca che calcola un'anteprima.
I moduli Fpga del cluster di Hydra offrono una serie di vantaggi. I chip sono programmabili e possono risolvere speciali compiti più rapidamente rispetto a processori universali quali Pentium o Athlon.
Per l'elaborazione di un nodo della partita di scacchi sono necessari nove cicli di clock: ciò significa che in nove cicli viene generata una mossa, eseguita sulla scacchiera virtuale interna, valutata e annullata se non vincente. La valutazione di singole mosse si svolge in parallelo sulle varie schede Fpga. Le informazioni sul gioco degli scacchi implementate nella macchina possono essere accresciute senza influire negativamente sulle prestazioni di calcolo: su Hydra vengono semplicemente aggiunti nuovi moduli di knowledge, che lavorano in parallelo con quelli già esistenti.