PlayPendium
WordChess · Spunti di riflessione

Come un computer sceglie una parola

Prima di giocare, l'IA deve trovare la sua mossa in un pagliaio di centocinquantamila parole, e poi smettere di cercare.

Scritto e redatto in inglese. Questa versione italiana è stata prodotta con traduzione automatica; dove conta la precisione, fa fede l'originale inglese. Leggi l'originale in inglese →

01 · Il pagliaio

Uno spazio troppo grande da vedere

Dai a una persona un set completo di tessere di WordChess con l'istruzione "gioca una buona parola", e restringerà il problema senza nemmeno accorgersene. Il computer non gode di alcuna intuizione simile. Su una tavola 25×25, con un proprio set completo di cento tessere, può tentare quasi tutte le 148.941 parole del dizionario, e ogni parola può essere posata in migliaia di coordinate e orientamenti legali. Peggio ancora, un piazzamento è legale solo se ogni nuova lettera che introduce completa anche una parola reale là dove incrocia ciò che è già sulla tavola. Moltiplica le parole per i piazzamenti per quel vincolo di incrocio e ottieni uno spazio di ricerca che nessun giocatore, di silicio o no, può enumerare e classificare per intero.

È per questo che i motori seri per giochi di parole, tra cui Quackle, l'implementazione open source di riferimento, non esplorano mai il dizionario a forza bruta. 4 La struttura GADDAG di Steven Gordon del 1994, e il DAWG prima di essa, permettono a un programma di far crescere le parole a partire dalle tessere già sulla tavola e di verificare gli incroci strada facendo, così che i rami illegali muoiano presto invece di essere valutati e scartati. 1 Il compito non è "elencare ogni parola". È "generare solo le mosse che potrebbero essere legali, e farlo in fretta".

02 · L'orologio

Abbastanza buono batte perfetto

Anche un generatore snello restituisce più mosse candidate di quante se ne possano valutare a fondo, perciò il secondo problema è il tempo. Maven di Brian Sheppard, il primo programma a superare avversari umani di vertice, affrontò esattamente questo e rispose in due fasi: un'euristica rapida ordina le giocate grezze in un ordine approssimativo di qualità, e solo una rosa ristretta delle più promettenti viene studiata con cura, simulando la partita in avanti molte volte per vedere quale candidata renda davvero meglio. 2 Altri giochi conoscono la stessa idea con altri nomi, il rollout del backgammon e il playout dei programmi di Go; in Maven si chiama simulation (simulazione).

WordChess lavora con lo stesso spirito sotto un vincolo più severo: un budget fisso di tempo di ricerca per mossa. Quando il budget si esaurisce, l'IA si impegna sulla migliore parola trovata fino a quel momento. Non è un compromesso di cui gli ingegneri si pentono; è l'intero progetto. Un giocatore che pensa all'infinito non è un avversario migliore, solo più lento. L'orologio costringe la macchina a fare ciò che le persone fanno d'istinto: accontentarsi di una mossa chiaramente buona anziché dimostrabilmente migliore.

Conoscere il dizionario è la parte facile. Sapere quando smettere di frugarci dentro è quella difficile.

03 · Difficoltà onesta

Una debolezza di cui fidarsi

Il modo pigro per rendere più facile un'IA da gioco è renderla stupida a caso, farle sbagliare una mossa che aveva chiaramente visto. I giocatori se ne accorgono, e se ne risentono. Il designer Sid Meier viene spesso citato per aver eliminato da Civilization le funzioni di alleanza perché il computer poteva sfruttarle quasi quanto un giocatore; l'effetto, nelle parole di Meier riportate da un resoconto sulla progettazione degli avversari IA, avrebbe "lasciato ai giocatori la sensazione di non poter vincere perché il computer barava". 3 Una difficoltà che sembra disonestà avvelena il gioco, ed è per questo che la letteratura di ricerca sull'adattamento dinamico della difficoltà si occupa di regolare ciò di cui l'IA è capace, anziché ciò che le è permesso vedere. 5

WordChess regola i suoi quattro livelli lungo assi che un essere umano riconoscerebbe, mai fornendo all'IA informazioni nascoste. I livelli differiscono per quanto a lungo possono cercare, per quanto in profondità il loro vocabolario si spinge nel dizionario raro e per le fasce di lunghezza delle parole che prediligono. Un avversario facile gioca parole plausibilmente deboli: reali, sensate, brevi, non spazzatura. Un grande maestro condivide l'intero lessico oscuro con il livello difficile, e ha più tempo di tutti per scavarlo. Il giocatore perde contro qualcosa che sembra un vocabolario più ricco e una lettura più acuta, perché è esattamente ciò che è.

Quattro livelli, regolati tramite limiti, rilevati dalle note di progettazione e sviluppo di questo progetto
LivelloPortata del vocabolarioBudget di ricercaPreferenza di lunghezza
FacileSolo comuniIl più breveCorte
NormaleComuni + intermedie + metà delle rareBreveMiste
DifficileCompletaLungoPiù lunghe
Grande maestroCompletaIl più lungoSenza limiti
04 · Un avversario, non una calcolatrice

Che cosa lo fa sembrare umano

Una calcolatrice restituisce ogni volta la stessa risposta; un avversario ti sorprende. WordChess aggiunge alla selezione un passaggio deliberatamente casuale, così che mosse quasi equivalenti non vengano sempre risolte nello stesso modo e l'IA non ripeta ogni volta la stessa parola. Unito ai tetti di vocabolario per livello, l'effetto è la varietà: la sensazione che qualcuno sia seduto dall'altra parte della tavola a fare scelte, alcune delle quali avresti potuto fare anche tu.

È questa la sua arte discreta. Un avversario credibile ha bisogno di misura quanto di forza: la disponibilità a giocare una parola soltanto buona, a lasciare punti sul tavolo, a essere battibile in un modo che sembri meritato. Il problema ingegneristico più difficile della macchina era frugare nel pagliaio. Il più sottile era imparare quando smettere di cercare, che cosa sapere e quanto trattenersi.

Sources & notes
  1. Wikipedia, "GADDAG", the move-generation data structure introduced by Steven A. Gordon (1994) that grows words from placed tiles and validates crossings during generation. en.wikipedia.org/wiki/GADDAG
  2. Brian Sheppard, "World-Championship-Caliber Scrabble," Artificial Intelligence 134 (2002): 241–275, describes Maven, the first program to outperform the strongest human players against human opposition, with its selective move generation and its simulations of likely game scenarios. doi.org/10.1016/S0004-3702(01)00166-7. Overview of the program: en.wikipedia.org/wiki/Maven_(Scrabble)
  3. Vina Nguyen, "How to Design a Worthy Opponent: AI in Game Development", on believable difficulty, deliberately handicapping the AI, and the resentment bred by opponents that appear to cheat (source of the quoted Sid Meier / Civilization account). vinawrites.com
  4. Quackle (Jason Katz-Brown, John O'Laughlin, et al.), an open-source Scrabble engine bundling a GADDAG move generator, evaluator, and simulator for any lexicon or board. Source: github.com/quackle/quackle; project page: people.csail.mit.edu/jasonkb/quackle
  5. M. Zohaib, "Dynamic Difficulty Adjustment (DDA) in Computer Games: A Review," Advances in Human-Computer Interaction (2018), survey of tuning challenge by adjusting AI capability rather than cheating. onlinelibrary.wiley.com/doi/10.1155/2018/5681652
  6. WordChess-specific facts, the four difficulty tiers, the time/vocabulary/word-length levers, the randomized selection, and the opening-book collapse ("MY" fifteen times), are measured from this project's design and build notes.
Was this worth reading?
Play WordChess
PlayPendium · About · Contact · Privacy · Terms · Cookies · Accessibility · Copyright · Browse all games · Classic arcade games · © 2026