Bot, reti neurali e integrità del RNG
Il backgammon è stato il primo gioco complesso a due giocatori in cui un computer ha superato in maniera comprovata i migliori giocatori umani. La prova è stata pubblicata nel 1992, quattro anni prima che Deep Blue battesse Kasparov, e ventiquattro anni prima di AlphaGo. È venuta da una singola rete neurale addestrata per auto-gioco presso IBM Research. La stirpe che parte da quel programma, TD-Gammon di Gerald Tesauro, attraverso Jellyfish, Snowie, GNU Backgammon, eXtreme Gammon (XG), BGBlitz e fino ai motori open source moderni, traccia tutta la storia tecnica del backgammon al computer.
Questa pagina ripercorre quella stirpe, spiega come vengono valutati i bot moderni, documenta la famiglia originale di bot di GamesGrid (1996-2008) ed espone la nostra posizione sull'integrità del generatore di numeri casuali: l'algoritmo Mersenne Twister che usiamo, e un controesempio documentato preso dalla storia degli operatori di backgammon online.
La pagina Performance Rating (PR) ed ELO, in inglese, copre il quadro standard di misurazione del livello che usa tutta la scena competitiva moderna.
1. La cronologia dei motori
La storia dei bot del backgammon attraversa cinque fasi distinte. Ogni fase corrisponde a un approccio fondamentalmente diverso alla valutazione delle posizioni.
| Fase | Approccio | Motore rappresentativo | Anno |
|---|---|---|---|
| Pre-neurale | Euristiche scritte a mano e rollout | BKG 9.8 (Berliner) | 1979 |
| NN di prima generazione | Apprendimento per differenza temporale in auto-gioco, su reti poco profonde | TD-Gammon | 1992 |
| NN commerciale | Programmi neurali commerciali rifiniti | Jellyfish, Snowie | 1994-1998 |
| NN open source | Costruiti dalla comunità, gratuiti all'uso | GNU Backgammon | 2002+ |
| Riferimento moderno | Reti più profonde, set di feature più grandi, rollout più rapidi | eXtreme Gammon (XG), BGBlitz, Wildbg | 2009+ |
1.1 Pre-neurale: BKG (Hans Berliner, 1979)
Il primo programma informatico a battere un campione del mondo in carica in un gioco da tavolo complesso è stato BKG 9.8, scritto da Hans Berliner alla Carnegie Mellon. Nel 1979 ha sconfitto Luigi Villa, allora campione del mondo di backgammon in carica, in un match a soldi a Monte Carlo. La vittoria è stata attribuita, in parte e a ragione, a una serie eccezionale ai dadi; lo stesso Berliner ha scritto che il suo programma probabilmente giocava più debole di Villa su un campione più ampio. Ma il risultato era innegabile: l'epoca in cui si diceva che «i computer non sanno giocare a backgammon» era già finita all'inizio della fase successiva.
BKG valutava le posizioni con euristiche scritte a mano: lunghezza della prima, esposizione dei blot, pip count, ponderati da parametri che Berliner aveva tarato su posizioni di test rappresentative. Nessuna componente di apprendimento. Era il programma non apprendente più forte mai costruito per questo gioco.
1.2 TD-Gammon (Tesauro, IBM Research, 1992)
La svolta è arrivata da un altro paradigma. Gerald Tesauro, a IBM Research, ha applicato l'apprendimento per rinforzo con differenza temporale al backgammon. Il suo programma, TD-Gammon, era una rete neurale feedforward con uno strato di input a 198 unità che codificava la tavola (4 unità per punta e per colore per la distribuzione delle pedine, più 6 unità aggiuntive per la barra, le pedine uscite e il lato al tratto), collegato a un singolo strato nascosto di 40-80 unità sigmoidi a seconda della versione (TD-Gammon 2.1 usava 80 unità nascoste). Si addestrava per auto-gioco: il programma giocava contro sé stesso per centinaia di migliaia di partite, e dopo ogni mossa correggeva i pesi per avvicinare la sua valutazione della posizione prima della mossa alla sua valutazione della posizione dopo la mossa.
Il risultato notevole, pubblicato nel 1992 e raffinato fino al 1995, è che TD-Gammon ha scoperto aperture competitive che contraddicevano decenni di teoria consolidata. L'analisi via rollout, avviata da TD-Gammon e poi consolidata da Jellyfish e Snowie negli anni successivi, ha ribaltato il consenso pro-slot degli anni Settanta su diverse aperture (in particolare su 2-1, 4-1 e 5-1), a favore di mosse split-builder. Lo standard che oggi gioca ogni giocatore serio di torneo su diverse aperture è stato fissato, in parte, da questa prima ondata di analisi a reti neurali. Vedi la pagina delle aperture in inglese.
1.3 Jellyfish, Snowie, GNU Backgammon (1994 – primi anni Duemila)
Il primo programma commerciale a rete neurale è stato Jellyfish, pubblicato da Fredrik Dahl nel 1994. Jellyfish seguiva un'architettura in stile TD-Gammon (rete feedforward con uno strato nascosto) ed è stato per diversi anni il programma pubblico più forte. Snowie, pubblicato nel 1998, usava una rete più sofisticata e aggiungeva un analizzatore di azione del cubo rifinito; è stato il motore commerciale dominante della fine degli anni Novanta.
GNU Backgammon (anche GNUbg o gnubg) è l'erede open source di questa stirpe. Lo sviluppo è cominciato verso la fine degli anni Novanta; le grandi versioni si sono stabilizzate all'inizio degli anni Duemila. La valutazione di GNUbg è una rete feedforward multi-strato addestrata su rollout di milioni di posizioni; le sue modalità di valutazione a 0, 1, 2 e 3 ply offrono ai giocatori competitivi una scelta di compromessi velocità/precisione per l'analisi. GNU Backgammon pubblica anche la tavola di match equity (MET di Rockwell-Kazaross) che la comunità usa come riferimento.
1.4 eXtreme Gammon (XG) e oltre (2009+)
eXtreme Gammon, pubblicato nel 2009 da Xavier Dufaure de Citres, è oggi il riferimento mondiale. XG combina una rete neurale più profonda, rollout ottimizzati, un analizzatore di cubo integrato e l'interfaccia di analisi più usata nella scena competitiva. XG2 (la grande revisione) è il bot contro cui si calibra la maggior parte dei rating PR moderni. I Performance Rating di livello torneo si calibrano abitualmente contro rollout XG2 a 4 ply.
BGBlitz, di Frank Berger, è un motore a rete neurale indipendente in sviluppo attivo. Wildbg, un motore open source in Rust pubblicato nel 2023, si distingue non tanto per la pura forza di gioco quanto per la trasparenza dell'addestramento: la pipeline di addestramento è pubblica e verificabile, ed è diventato una piattaforma di ricerca per valutare architetture di rete e strategie di addestramento diverse. Questa filosofia di trasparenza si lega direttamente alla nostra documentazione del RNG e dello stack analitico, più sotto.
2. Come i bot analizzano le partite: la catena FIBS / GamesGrid → GNUbg
Il flusso di lavoro standard del backgammon competitivo, dal 1996 a oggi, è: giocare online, esportare la partita in un formato di testo standardizzato e analizzarla poi in un motore a rete neurale. La catena originale:
- Gioca la partita su FIBS, GamesGrid o un server equivalente.
- Esporta la partita in un file di testo in formato SGF o JF (Jellyfish). FIBS supportava l'export tramite il comando
oldboard; GamesGrid aveva la propria funzione di export. - Importa la partita in Jellyfish, Snowie, GNU Backgammon o, più tardi, XG.
- Analizza alla profondità scelta: di solito 2 ply per la revisione quotidiana, rollout completi per lo studio serio.
- Report con i tassi di errore per mossa, per decisione sul cubo, e un Performance Rating complessivo per la partita.
La piattaforma GamesGrid, nella sua versione 1996-2008, era inusuale tra i server commerciali per il posto di primo piano dato all'export delle partite. La comunità di giocatori forti che hanno costruito la loro reputazione su GamesGrid — migliaia di partite classificate analizzate una a una contro GNU Backgammon e Snowie — costituiva una parte importante dell'élite competitiva dei primi anni Duemila.
La piattaforma del 2026 prosegue su questa linea. Ogni partita su GamesGrid si esporta su richiesta nei formati standard e si importa in GNU Backgammon, eXtreme Gammon o BGBlitz per la revisione indipendente dopo la partita. Nessun blocco proprietario. L'oracolo di valutazione lo sceglie il giocatore.
3. La famiglia originale di bot di GamesGrid (1996-2008)
La piattaforma GamesGrid del 1996-2008 offriva una famiglia di bot graduati, costruiti tutti su un fork di GNU Backgammon a cura di GamesGrid Engineering (il ramo di ingegneria di CyberArts Inc., la casa madre). Le modifiche apportate al motore, comprese le migliorie agli algoritmi di valutazione n-ply, sono state restituite al progetto GNU upstream: GamesGrid è uno dei pochi operatori commerciali che ha materialmente fatto progredire l'ecosistema open source del backgammon.
La graduazione dei bot si otteneva introducendo errori a frequenze diverse, non addestrando reti più deboli da zero. Tutti i bot usavano la stessa rete neurale di base derivata da GNUbg; i più deboli giocavano semplicemente mosse sub-ottimali a una frequenza controllata. I rating pubblicati all'epoca:
| Bot | Rating obiettivo | Approccio | Range ELO originale (basso / medio / alto) |
|---|---|---|---|
| GG Forever | Nessuno (piena forza, solo Life Members) | Lookahead a 2 ply | 1850 / 1920 / 2114 |
| GG Raccoon | Nessuno (piena forza) | 0 ply (senza lookahead) | 1850 / 1920 / 2114 |
| GG Otter | ~1700 (avanzato) | Errori introdotti | 1543 / 1701 / 1827 |
| GG Weasel | ~1500 (principiante) | Errori introdotti più spesso | 1410 / 1516 / 1652 |
| GG Chipmunk | ~1300 (novizio) | Modalità ad alta frequenza di errore | 1171 / 1275 / 1487 |
I bot giocavano dai 2000 ai 4000 match al giorno sulla piattaforma, con lunghezza massima di match di 9 punti. Giocavano sia il backgammon standard sia il Nackgammon (la variante di apertura di Nack Ballard). Gli inviti erano filtrati per rating: GG Otter accettava inviti solo da giocatori sotto 1800, GG Weasel sotto 1600, GG Chipmunk sotto 1400.
MrHyperBot, un'architettura diversa
A parte, MrHyperBot giocava la variante Hypergammon: la variante rapida a tre pedine, in cui ogni giocatore parte con sole tre pedine sulle punte 22, 23 e 24. MrHyperBot non usava una rete neurale. Si appoggiava a un database esaustivo che conteneva la mossa migliore calcolata per ogni posizione legale di Hypergammon, sviluppato da Hugh Sconyers (nickname «hugh» su GamesGrid). Lo spazio degli stati ridotto di Hypergammon ha reso possibile una risoluzione teorica completa del gioco, e il database di Sconyers resta il riferimento canonico per questa variante.
Xbot, il bot di Paul Magriel
Un bot indipendente, Xbot, era operato su GamesGrid da Paul Magriel (nickname «X22»). Magriel — autore di Backgammon (1976), il testo canonico di teoria posizionale, ed editorialista di backgammon per il New York Times tra il 1977 e il 1980 — faceva girare un bot a rete neurale per partite a soldi a piccole poste, fino a 9 punti. La presenza di Magriel come operatore attivo su GamesGrid la dice lunga sul ruolo culturale che la piattaforma occupava nel backgammon competitivo dell'epoca 1996-2008.
L'intera famiglia — GG Forever, GG Raccoon, GG Otter, GG Weasel, GG Chipmunk, MrHyperBot e lo spirito di Xbot — torna sulla piattaforma del 2026, ricostruita a partire dalla impronta di gioco documentata di ciascuno e accompagnata da una nuova generazione di bot con nome. Più dettagli all'avvicinarsi della riapertura.
4. Generazione di numeri casuali: perché conta
Un server di backgammon è, in fondo, un generatore di dadi. La decisione tecnica su come il server produce i suoi lanci casuali ha conseguenze enormi sull'integrità competitiva — e la storia del backgammon online comprende casi documentati di operatori che hanno preso questa decisione male.
4.1 Mersenne Twister (MT19937)
La piattaforma GamesGrid 2026 usa il generatore di numeri pseudo-casuali Mersenne Twister, più precisamente la variante MT19937, sviluppata da Makoto Matsumoto e Takuji Nishimura nel 1997. L'algoritmo ha:
- Un periodo di , astronomicamente più grande del numero di lanci in qualsiasi durata immaginabile della piattaforma.
- Un'equidistribuzione in dimensione 623 con precisione a 32 bit: blocchi successivi di 623 uscite sono statisticamente uniformi in dimensione alta, non solo in dimensione 1.
- Velocità: ~ lanci al secondo su hardware standard, abbastanza veloce da non rendere mai il generatore un collo di bottiglia.
MT19937 è il RNG di default in GNU Backgammon, nel modulo random di Python e in una lunga lista di simulatori Monte Carlo scientifici. Due riserve tecniche vale la pena di esplicitarle:
- Non è crittograficamente sicuro. Un attaccante che osservi 624 uscite consecutive può ricostruire lo stato interno e prevedere le uscite successive. Per generare dadi in un server di gioco autenticato che non espone il suo stato grezzo, non è un problema, ma esclude MT19937 come unica fonte di entropia per usi critici dal punto di vista della sicurezza.
- Ha note debolezze statistiche sui test di linearità. Poiché l'algoritmo si basa su retroazione lineare sul campo a due elementi , fallisce in modo prevedibile certi test di complessità lineare della suite TestU01 BigCrush. Supera Diehard e le batterie NIST standard, e le modalità di fallimento sono ben caratterizzate, ortogonali al nostro caso d'uso (lanci uniformi di interi 1-6); ma una descrizione onesta di MT19937 deve menzionarle, non liquidarle.
Per la generazione di dadi, le proprietà di periodo e di equidistribuzione pesano molto di più di qualsiasi preoccupazione di linearità. Esistono anche alternative crittografiche (per esempio AES-CTR-DRBG), e il registro di audit della piattaforma registra l'algoritmo e la sorgente di seme di ciascuna partita.
4.2 Politica di audit del seme
Ogni partita su GamesGrid è associata a un seme generato lato server. Questo seme è:
- Registrato all'avvio della partita in un registro di audit in sola aggiunta.
- Derivato da una sorgente ad alta entropia (RNG hardware combinato con il pool di entropia di sistema) al momento dell'inizializzazione della partita; non prevedibile a partire dalle partite precedenti.
- Registrato con il fascicolo della partita, il che permette a un revisore indipendente di riprodurre in seguito la sequenza dei dadi.
In chiaro: ogni lancio di una partita GamesGrid è verificabile in modo indipendente come prodotto da MT19937 a partire da un seme dato in un istante dato. I dadi non sono «truccati» a favore o contro un account particolare, e non c'è alcun meccanismo algoritmico che inclini i risultati a favore o contro giocatori identificati.
4.3 Il controesempio: SafeHarbor Games
La storia del backgammon online comprende operatori che si sono allontanati da una politica RNG neutra. Il caso documentato è SafeHarbor Games, che in vari momenti ha gestito stanze in cui la frequenza dei pasch era deliberatamente ridotta per placare i giocatori che si lamentavano del fatto di «essere massacrati dai dadi».
L'intenzione era la fidelizzazione. L'effetto: un RNG sfruttabile. Ogni giocatore che sapesse che la distribuzione dei pasch era distorta otteneva, in valore atteso, un vantaggio misurabile rispetto a chi non lo sapeva. In un contesto di soldi veri, è una violazione dell'integrità competitiva, e la scena del backgammon online ha reagito di conseguenza. Quell'episodio è menzionato nei forum di giocatori dell'epoca e alimenta lo storico degli operatori che sta alla base della posizione della piattaforma del 2026 a favore di una generazione di dadi neutra, trasparente, algoritmica.
La posizione della piattaforma del 2026 non lascia spazio a equivoci: distribuzione uniforme, algoritmo citato per nome, semi registrati per audit. I dadi sono gli stessi per ogni giocatore, in ogni stanza, a ogni punteggio.
5. La piattaforma del 2026: cosa è pubblico, cosa arriverà
Il nuovo GamesGrid mantiene le scelte di architettura che distinguevano il server 1996-2008 — client chiuso con stato lato server, export trasparente delle partite verso GNU Backgammon e XG, famiglia graduata di bot derivati dalla formazione GG originale — e le ricostruisce su un'ingegneria moderna. L'insieme preciso delle funzionalità, comprese la struttura delle leghe di bot della modalità carriera e la nuova famiglia di bot, sarà pubblicato all'avvicinarsi della riapertura.
Cosa è pubblico fin da ora:
- Distribuzione uniforme dei dadi via MT19937, con semi auditati e registrati.
- Export delle partite in formati standard (SGF / JF) per analisi indipendente.
- Nessun blocco proprietario sulla valutazione delle posizioni. Ogni giocatore sceglie il proprio motore di analisi.
- Il ritorno della famiglia leggendaria dei bot GG, ricostruita a partire dalle impronte di gioco documentate.
- Una nuova generazione di bot con nome che copre tutta la scala di livello, dal principiante al livello da campione del mondo.
Il quadro completo del Performance Rating in cui si inserisce la famiglia di bot è sulla pagina PR ed ELO in inglese.
Vedi anche
- Performance Rating (PR) ed ELO, in inglese: metodologia di misurazione del livello.
- Storia, in inglese: l'era 1996-2008 di GamesGrid e il recupero del dominio dopo il 2020.
- Pagina di matematica: match equity, take point, teoria del cubo.
- Regole e posizione iniziale: fondamentali.
- Backgammon online: il manifesto della nuova piattaforma.