Siete spaventati dall’intelligenza artificiale? Oppure ne siete entusiasti, ma non sapete bene perché? In questo articolo Massimo Ferri, topologo, matematico applicato, ci fa giocare con una versione molto semplificata di “macchina che impara”, mettendo insieme dei… bicchieri. Forse è il modo per capire meglio questa rivoluzione che già sta cambiando le nostre vite.
Tanto tempo fa Martin Gardner, nella sua famosa rubrica, parlò di MENACE, un’Intelligenza Artificiale fatta non con l’elettronica, ma con 304 scatole da fiammiferi e tanti bottoncini colorati (l’articolo originale è accessibile qui). Da sempre ho avuto il desiderio di emularla, ma su scala ridotta. Finalmente ho escogitato la MAB (Macchina A Bicchieri) che vi presento oggi.
Nel 1961 le reti neurali e, in generale, l’Intelligenza Artificiale (IA) erano agli albori e quasi solo a livello concettuale. Il britannico Donald Michie, pioniere della allora nascente informatica – e, come si seppe molto dopo, uno dei ricercatori di Bletchley Park – ideò una “macchina” molto semplice, la Matchbox Educable Noughts And Crosses Engine, in breve MENACE, cioè “macchina a scatole da fiammiferi addestrabile per il Tris”, gioco chiamato anche Tondo e Croce. La macchina gioca Tondo contro un umano che gioca Croce. Il principio è molto semplice: ogni scatolina corrisponde a una possibile configurazione della classica griglia di Tris, che la macchina possa trovarsi davanti quando è il suo turno. All’interno della scatola ci sono bottoncini colorati. MENACE non ha le mani, perciò l’aiutiamo noi pescando a caso uno dei bottoncini: il suo colore corrisponde a una casella libera; aiutiamo di nuovo la macchina mettendo lì il suo Tondo. Finita una partita, se ha vinto l’umano non rimettiamo nelle scatoline i bottoni estratti (punizione); se invece ha vinto MENACE, non solo rimettiamo nelle scatole i bottoni estratti, ma anzi li raddoppiamo con altrettanti bottoni degli stessi colori (premio). Potete trovare qui una descrizione dettagliata in italiano: gli autori usano bicchierini usa e getta invece di scatole e io li ho imitati per la mia MAB. Nella stessa pagina c’è il link a un video in inglese che mostra un effettivo esperimento con MENACE Lo riproponiamo qui sotto:
Sono passati decenni, le reti neurali si sono evolute in mille modi, i calcolatori sono diventati tanto potenti da permettere addestramenti incredibilmente massicci, ma la sostanza è sempre quella: punizioni e premi, anche se è più figo (e corretto) parlare di “antigradiente della funzione costo”. Di recente si parla molto di IA e, in effetti, giocare con ChatGPT, Midjourney e soci qualche brivido lo fa venire; sperimentare MENACE aiuterebbe a riflettere su cosa fanno in effetti queste sorprendenti IA.
304 contenitori sono molti, non invitano il lettore normale a tentare l’esperimento, perciò ho ideato dei giochi appositi. La mia macchina funziona con 21 configurazioni (e altrettanti bicchierini); in effetti, giocando sulle simmetrie, come fa Michie, potrei averne ancora meno, ma ho preferito renderti la vita facile, caro lettore. Per avere così poche configurazioni, ho dovuto ideare tre giochi molto semplici, che chiamo 1, 2 e 3. Ada e Bruno giocano mettendo alternativamente pedine sui vertici A, B, C, D, E, F di un esagono (guarda la Fig. 1).
![](https://maddmaths.simai.eu/wp-content/uploads/2024/08/FigXXX.png)
Fig. 1
![](https://maddmaths.simai.eu/wp-content/uploads/2024/08/MAB-282x300.jpg)
La MAB in azione
Ada gioca con pedine rosse, Bruno con pedine blu. Ada gioca sempre per prima, mettendo una pedina rossa su A. In tutti e tre i giochi Ada vuole mettere tre pedine rosse in una certa configurazione (sempre la stessa durante una sessione) e Bruno vuole impedirglielo. Per esempio, nel gioco 2, Ada vuole mettere le sue tre pedine in fila, una vicino all’altra. Troppo semplice? Sì, ma il bello è che Bruno NON SA che configurazione vuole raggiungere Ada! Consiglio che all’inizio si giochi con un umano del tutto inconsapevole: il vostro Bruno deve capire cosa cerca di fare Ada (cioè tu, lettore) sulla base dei risultati di vittoria o sconfitta dichiarati da Ada stessa. Gli umani con cui ho giocato hanno dovuto prima di tutto capire la regola segreta che Ada sta seguendo, poi escogitare una strategia vincente. Non è del tutto banale: per esempio, nel blog su cui ho inaugurato la MAB un lettore non aveva scoperto la strategia per il gioco 3.
Ma ora tocca alla MAB: nel box 1 trovi le istruzioni in dettaglio e nel box 2 due simulazioni di gioco.
Box 1: Istruzioni dettagliate
I giochi
Una “sessione” è un insieme di k “partite” (decidete voi k a seconda del tempo che avete). Per tutta la sessione si gioca solo a uno dei tre giochi 1, 2, o 3. La sessione è vinta da chi ha vinto più partite. In tutti e tre i giochi:
- Si gioca mettendo pedine sui vertici A, B, C, D, E, F di un esagono;
- Ada gioca per prima, obbligatoriamente mettendo una pedina su A;
- Bruno e Ada giocano alternativamente, mettendo pedine sui vertici ancora vuoti;
- Ada sa che configurazioni deve comporre in tutte le partite della sessione, ma Bruno NON LO SA;
- Ada vince la partita se riesce a comporre una configurazione vincente, Bruno vince se glielo impedisce.
- Alla fine di ogni partita si tolgono le pedine dall’esagono.
Qui Ada gioca con pedine rosse e Bruno con pedine blu.
Gioco 1: Ada deve mettere tre pedine in posizioni non adiacenti. Unica configurazione vincente: ACE.
Gioco 2: Ada deve mettere tre pedine in posizioni adiacenti. Configurazioni vincenti: ABC, FAB, EFA.
Gioco3: Ada deve mettere due pedine in posizioni adiacenti e la terza non adiacente alle altre. Configurazioni vincenti: ABD, ABE, FAC, FAD, ACD, ADE.
La Macchina A Bicchieri (MAB)
Preparare la MAB Preparare un buon numero di foglietti, ognuno recante una delle lettere B, C, D, E, F. Stampare e ritagliare le 21 etichette; attaccare ognuna di esse a uno di 21 bicchieri. Ogni bicchiere corrisponde, ora, a una configurazione presente nel gioco, nel momento in cui tocca a Bruno. Mettere in ogni bicchiere un esemplare di ogni lettera indicata nell’etichetta (per esempio, nel bicchiere contrassegnato con
mettere una lettera B, una E e una F).
Come far giocare la MAB
Quando tocca a Bruno (cioè, ora, alla MAB), sull’esagono è presente una delle 21 configurazioni disegnate sulle etichette. Si sceglie il bicchiere corrispondente e si sorteggia una delle lettere in esso contenute. Bruno mette la sua pedina sul vertice corrispondente alla lettera sorteggiata.
Come addestrare la MAB
In ogni partita sono stati usati due bicchieri, da ognuno dei quali si è estratta una lettera.
- Se Bruno ha vinto la partita, rimettere ogni lettera nel suo bicchiere e aggiungerne una uguale.
- Se Bruno ha perso la partita, non rimettere la lettera estratta nel bicchiere (cioè toglierla definitivamente).
- Se un bicchiere è stato vuotato, rimetterci le lettere indicate nella sua etichetta.
Box 2: due simulazioni di gioco
Esempio di sessione (le prime due partite)
Ada decide (in segreto) di giocare il Gioco 2.
Partita 1 Ada mette una pedina rossa in A.
Bruno estrae (a caso) dal bicchiere la lettera C. Mette una pedina blu in C. Ada mette una pedina rossa in F.
Bruno sorteggia dal bicchiere la lettera E. Mette una pedina blu in E. Ada mette una pedina rossa in B e vince la partita. Bruno NON rimette la lettera C nel primo bicchiere, NON rimette la lettera E nel secondo.
Partita 2 Ada mette una pedina rossa in A.
Bruno sorteggia dal bicchiere (che ora contiene solo le lettere B, D, E, F) la lettera F. Mette una pedina blu in F. Ada mette una pedina rossa in B.
Bruno estrae (a caso) dal bicchiere la lettera C. Mette una pedina blu in C e vince la partita. Rimette la lettera F nel primo bicchiere e vi aggiunge un’altra F. Rimette la lettera C nel secondo bicchiere e vi aggiunge un’altra C.
E così via…
Tu, lettore, continui a essere Ada, ma Bruno – sempre col tuo aiuto manuale – è la MAB. Nel pdf seguente (che puoi scaricare) hai una scorta di lettere e pedine.
Nel pdf seguente ci sono le 21 etichette da applicare ai bicchierini: ognuna riporta una configurazione di gioco e la lista delle lettere da inserire nel bicchiere a inizio gioco.
Entrambe le figure sono riportate per comodità in formato pdf scaricabile in fondo all’articolo.
Un bicchiere corrisponde alla configurazione iniziale: una pedina rossa in A. Gli altri 20 corrispondono a ciò che Bruno può trovarsi davanti, dopo che lui ha giocato e Ada ha risposto. Il principio della MAB è lo stesso di MENACE: per far giocare Bruno/MAB sorteggiate una delle lettere contenute nel bicchiere e mettete una pedina blu nel vertice corrispondente. Alla fine di ogni partita, se ha vinto Ada non rimettete le lettere nei bicchieri; se invece ha vinto Bruno, le rimettete raddoppiate. Va bene: se volete, potete simulare i bicchieri con le colonne di questo file Excel (io uso le caselle gialle per segnare volta per volta la lettera estratta) e usare una app per il sorteggio; certo che i bicchieri sono più pittoreschi!
La MAB ci mette un po’ di tempo, ma poi comincia a vincere e non smette più. “Per forza!” dirai tu “Le hai tolto le mosse perdenti!”. Proprio così; ma se uno non pensa a come funziona, l’esperimento è abbastanza impressionante. Guardate le sperimentazioni su Commodore 64 di Jader Monari e su Apple 1 di Claudio Parmigiani e Francesco Sblendorio, tre appassionati di programmazione vintage che ringrazio calorosamente. Qual è la morale che vorrei comunicare? È la differenza sostanziale fra un Bruno umano e Bruno/MAB: i 21 bicchierini non creano un modello, non cercano regole o strategie, non sanno di vincere o perdere, non “sanno” neanche di giocare! Però finiscono per vincere. Quindi, caro lettore, quando qualcuno ti spaventa con minacce di intelligenze malvagie, o quando ChatGPT ti sembra un buon amico umano, ricordati i bicchierini; nel bene e nel male.
Massimo Ferri
Qui sotto trovi un pdf da scaricare e stampare con: la tavola su cui giocare, le etichette da mettere sui 21 bicchieri, una scorta di lettere e di pedine, le istruzioni, due esempi di partite. Buon divertimento!