È sorprendente come mi trovi spesso allineato con IoGioco. In particolare adoro gli editoriali che trovo approfondire domande che io stesso mi stavo facendo.
Nella rivista ioGioco n°45 c’è un interessante articolo sull’Intelligenza Artificiale (IA) fatta sedere ad un tavolo di Alta Società.
E mi sono detto: che accadrebbe se giocasse a NoGrazie?
⌛ 9 minuti
In realtà non è andata proprio così. Pasticcio con la IA da quando è stata proposta al grande pubblico.
Ancora acerba la coinvolsi nella creazione di un gioco, più di recente parlai del suo uso nella scrittura di articoli.
Seguo anche con interesse gli “esperimenti” che Spartaco Albertarelli condivide in rete.
Ecco che l’articolo di A. Ferrara e S. Picascia su IoGioco ha potuto solo che innescare una scintilla.
IA: un torneo tra 12 agenti dal finale inaspettato

Questa, seppur lunga, è solo una sintesi. Qui trovate un report più dettagliato.
Gli strumenti in campo
Ho un abbonamento Pro a Claude ed uso Claude Code su un minipc da 300€ dove ho installato Debian. Sono contento di questo setup sia per stabilità che per prestazioni. Inoltre è facilmente accessibile.
Il punto è che per l’attività che mi proponevo sapevo che la disponibilità di risorse (token) che il mio abbonamento mette a disposizione poteva essere una limitazione.
Chi ha un abbonamento di questo tipo, sa che i token sono la moneta con cui si paga la IA. Finiti quelli previsti dall’abbonamento bisogna aspettare il giorno della settimana in cui l’azienda li ricarica oppure comprarne addizionali pagando moneta sonante.
Di conseguenza non siamo di fronte ad una rigorosa analisi, ma ad un esperimento che a tratti potrebbe essere sfociato in un imbarazzante pasticcio.
Ma è stato divertente farlo.

Il gioco in questione
Ho sempre ritenuto NoGrazie un gioco semplice ma non banale. Non ha forse quel twist alla Knizia, come proprio Alta Società ha, ma porta a riflettere.
La sua semplicità è stata un punto a favore nella sua scelta, sia per le mie capacità sia per la scarsa disponibilità di token.
Le regole di NoGrazie
Un mazzo di 33 carte numerate da 3 a 35. Se ne tolgono 9 a caso, senza rivelarle, e si mischia il mazzo.
Ogni giocatore ha 11 gettoni. La riserva personale di gettoni è segreta. I giocatori non sono tenuti a mostrare il numero di gettoni che possiedono agli avversari. C’è da dire che si potrebbero contare, ma è umanamente impossibile farlo e quindi non ho concesso neppure alla IA di farlo.
Una carta viene scoperta dal mazzo e nel proprio turno il giocatore ha 2 opzioni:
- passare: mette un gettone sulla carta attiva e il turno va al giocatore a sinistra. Chi non ha più gettoni non può passare;
- prendere: si porta via la carta attiva con tutti i gettoni accumulati sopra, gira una nuova carta e decide di nuovo, cioè continua il turno.
La partita finisce quando il mazzo è esaurito. Ogni gettone nella propria riserva vale -1. Il valore delle carte si somma.
Tuttavia, nelle “scale” conta solo il numero più basso. Il piccolo twist a cui accennavo. Un giocatore con 13, 14 e 15 “paga” solo 13.
Vince il giocatore con il punteggio più basso.
Digitalizzare NoGrazie
La mia perplessità era legata a quanto sarebbe stato complicato far capire il gioco a Claude. Credo in realtà sia bastata tipo mezz’ora.
Fornitogli il regolamento, liberamente scaricabile da diverse fonti, Claude ha creato un’applicazione web.
Sono bastate un paio di richieste (prompt) per avere una copia giocabile su un browser, come Chrome, senza installare nulla.
Poi mi sono divertito a metterci qualche fronzolo, ma sempre nel timore reverenziale verso la IA.
Il punto è che i giocatori avversari (bot o anche agenti in questo articolo) giocavano semplicemente a caso.
La sfida era proprio quella di dare un’intelligenza ai miei avversari.

Come istruisco i miei avversari
Non voglio perdermi in tecnicismi. Chi volesse leggere qualcosa di più completo trova un report che, sotto mia indicazione e istruzione, la IA stessa ha generato. Lo trovate come articolo del fascicolo Intersezioni che prima o poi mi devo decidere a mettere in ordine.
Qua è sufficiente capire che ho diviso gli agenti in due classi. La prima l’ho chiamata a zero token. Una volta istruita ci si può giocare contro senza consumare le risorse del mio abbonamento.
L’altro gruppo di agenti consuma invece token ogni volta che lo chiamo in causa per giocare. Non voglio comprare token addizionali, così ho dovuto centellinare quelli che avevo (e che condivido con altri progetti).
Nessuna magia, solo matematica
La IA non è magia. Grazie alla potenza computazionale messa a disposizione dalle schede grafiche, questo algoritmo è ora disponibile al grande pubblico.
Molti dei concetti che andremo a usare sono vecchissimi e ci riportano anche a quel Nash che tirammo in ballo quando si parlò del Dilemma del Prigioniero.
Nel proprio turno l’agente ha una visione della partita uguale o più ristretta, se vogliamo mettere in atto una semplificazione, di quella che avrebbe un qualunque giocatore “umano”.
Sa che carta è in ballo e i gettoni su di essa. Può sapere magari anche che carte ha già preso e quelle che hanno i suoi avversari.
Tutte queste informazioni finiscono in un tritacarne. Girando la manovella, anziché la carne macinata, uscirà una risposta: prendere o lasciare la carta pagando un gettone.
Vediamo quali tritacarne ho chiesto alla IA di creare e come si differenziano tra loro.

Gioco col regolamento alla mano: la IA in campo
Il vero pericolo non è che i computer inizino a pensare come gli uomini,
Sydney J. Harris, giornalista e saggista americano
ma che gli uomini inizino a pensare come i computer.
Ci sono diversi modi di usare la IA, come Claude, facendola giocare ad ogni turno della partita. Rispetto a una subroutine “tradizionale”, devo affrontare i costi del suo utilizzo.
Costi che variano anche da che IA si usa, dalla “meno intelligente alla più intelligente”.
Il modo più semplice è quello di darle il regolamento e di volta in volta, mettendola davanti ad uno scenario, dirle cosa fare. Ci sono poi diverse sfumature.
Ad esempio ho avuto la presunzione di darle anche dei consigli su che comportamento tenere in certi casi. Un po’ come se le suggerissi all’orecchio.
Ho chiamato questo agente Esperto.
Fai quello che ti dico
I computer sono bravissimi a seguire le istruzioni,
Sid Meier, leggendario game designer (creatore di Civilization)
ma non sanno cosa significa giocare.
Nei videogiochi di un certo tipo ed epoca, sapevi esattamente quando il nemico sarebbe uscito e quando avrebbe sparato. In un gioco di calcio sapevi che tirando da una certa posizione il portiere si sarebbe tuffato in un modo tale da non poter parare. Schemi di questo tipo si tramandavano oralmente da giocatore a giocatore nell’era pre-internet.
Due agenti si comportano in questo modo anche qui.
Casuale fa quello che il nome dice, mentre Euristico prende la carta quando la differenza fra il suo valore e i gettoni sopra raggiunge una soglia.
Non si hanno grandi aspettative su questi giocatori che sono sparring partner per agenti più esperti.

Non importa quante volte cadi
Hai provato. Hai fallito. Non importa.
Samuel Beckett
Riprova.
Fallisci di nuovo. Fallisci meglio.
Un neonato prova ad alzarsi in piedi e cade (sperando non si faccia male). Prova in un altro modo e probabilmente ricade, ma meglio.
In sostanza è quello che fa una porzione della classe di IA a zero token.
Gioca un numero elevato di partite e capisce, data l’istantanea di quel momento del suo turno, cosa conviene fare in base alla sua esperienza pregressa.
Ci sono diversi modi di come acquisisce questa esperienza (training) e di come gioca.
Può concedere un dubbio al suo training e quindi dare una possibilità anche alla mossa che per sua esperienza non è conveniente.
Alla fine quello che esce fuori è un normale programmino per computer, come già esistevano 30 anni fa, che gira gratuitamente sul mio minipc da quattro soldi.

Milioni di universi possibili
Il futuro influenza il presente tanto quanto il passato.
Friedrich Nietzsche, Umano, troppo umano
Un’altra possibilità, sempre senza chiamare la IA a ogni partita, è quella di cercare di “prevedere il futuro”.
Uscendo di casa per andare al lavoro avete diverse possibilità. Non sono infinite, ma possono essere molto numerose.
Posso andare con la mia auto o fare car sharing con un collega. Oppure posso affidarmi a un mezzo pubblico: autobus, treno, aereo.
Ogni soluzione, in base alla mia “mossa”, mi porterà a destinazione in un tempo diverso che non conosco a priori. E io voglio metterci meno tempo possibile.
In questa situazione la IA può provare a esplorare tutti i mondi possibili creando universi paralleli (paroloni per dire che va a tentativi).
Magari la IA riesce a scartare a priori l’uso dell’aereo, ma non ha tutte le informazioni per le altre soluzioni. Se le fornisco gli orari degli autobus è un contesto sicuramente utile. Tuttavia non sa che traffico troverò.
Questa condizione può essere astratta come una mossa che “la vita” mette in atto per farmi fare tardi al lavoro.
Deve quindi fare assunzioni e per ogni assunzione assegnarvi una probabilità che realmente si verifichi.
Può accadere che gli universi possibili siano così tanti che non si riesce a esplorarli tutti (come ad esempio negli scacchi) ed esistono strategie per gestire questa evenienza. Potete approfondire in “Giocatori Non biologici in Azione”
Per noi qui basta assumere che la IA veda il fine partita di ogni universo nel futuro e scelga l’azione in quel turno che la indirizza verso il fine partita più vantaggioso.
Paired margin difference vs Euristica (G6b tournament)
Data table
| Agent | Type | Rounds | Diff. vs Euristica | SE |
|---|
Un torneo quanto più possibile corretto
Il punto è ora vedere quale IA è la migliore.
Robert Axelrod fece un torneo con uno scopo simile per il Dilemma del Prigioniero. Qui facciamo grosso modo la stessa cosa.
Le partite devono essere tante per annullare la componente di casualità (per favore non diciamo fortuna). Inoltre si adotta un sistema come quello dei tornei di bridge, che evita l’aleatorietà data dall’ordine in cui escono le carte.
Infatti, un po’ come nella realtà quotidiana, non è tanto importante vincere o perdere, ma fare il meglio possibile con le carte che la vita ci ha dato.
Far giocare i modelli a zero token non è un problema, gli altri hanno un costo.
Comunque con qualche stratagemma statistico sono riuscito ad organizzare il torneo.
In alto trovate i risultati.
In conclusione
Sono affascinato dall’intelligenza artificiale. È una nuova rivoluzione, come fu internet. C’è sempre il rischio di rimanere schiacciati dalla ruota della rivoluzione. È opportuno fare attenzione.
Allo stesso tempo la paura, e magari una propensione alla resistenza al cambiamento, non deve farci perdere l’opportunità di cogliere l’opportunità che la IA offre.
Una facilità strabiliante
Al netto del tempo di calcolo, il mio coinvolgimento su questo progetto si può quantificare in circa 10 ore. Ok, smanetto abbastanza con i computer e compagnia bella, ma è stato davvero semplice e veloce.
E anche formativo. Spesso la IA mi proponeva in questo progetto soluzioni e strategie per agenti che non conoscevo. Mi sono fatto fornire i riferimenti e me le sono studiate mentre calcolava.
Ne esco arricchito.

Risultati non scontati
Ho pensato per anni che la mia strategia di gioco a NoGrazie fosse efficace. Invece ho praticamente suggerito male ad Esperto che ha fatto peggio del suo gemello Regolamento, che era orfano dei miei consigli.
Ho capito che la mia strategia è vincente solo contro un determinato tipo di giocatori, forse principianti.
Qualche imbroglio
Il torneo non è stato condotto in maniera super-onesta. Alcuni agenti si allenano e imparano a giocare oggi con quelli che saranno i loro avversari nel torneo di domani. Imparano cioè a conoscere i propri polli.
Un po’ come se a carta-forbice-sasso sapessi che il mio avversario il più delle volte gioca sasso.
Tuttavia MC, che dovrebbe trarre vantaggio da questa situazione, si posiziona nei bassifondi della classifica sementendo la mia ipotesi.
Da capire.
Ci vuole tempo per imparare
Avrei puntato il mio dollaro su Rinforzo. Questo agente, dopo essersi allenato, continua ad imparare ad ogni round.
Per essere competitivo deve giocare tanto, ma non ho abbastanza soldi (token) per farlo giocare quanto necessiterebbe.
E forse NoGrazie non è il suo gioco.
Alzare l’asticella
Mi sono tenuto basso con la complessità del gioco oggetto di questa boutade per le mille ragioni viste. Ora ho il rimpianto di non aver osato di più.
Penso che tornerò di nuovo, magari in una giornata solitaria e uggiosa, a smanettare su questo tema.
Mi piacerebbe mettere alla prova la IA in un gioco cooperativo dove ogni agente ha informazioni riservate che non può condividere apertamente.
Avete un suggerimento riguardo ad un gioco già pubblicato o potreste immaginarne uno semplice?
Sono pronto ad accettare la sfida.







