Giochi e videogiochi condividono uno storico percorso comune con la ricerca sull’intelligenza artificiale. Da un lato, i videogiochi offrono affascinanti sfide ancora oggi irrisolte dai ricercatori: sfide tanto impegnative quanto quelle offerte dalle applicazioni “serie”, ma al tempo stesso più economicamente riproducibili e controllabili.
Dall’altro lato, l’industria videoludica, da sempre affamata di risultati tangibili, guarda costantemente al mondo dell’IA in cerca di spunti e nuove tecnologie, ponendo una intrinseca “sfida sulla concretezza” non semplice da vincere.
Possono i videogiochi essere davvero considerati una “super-Drosophila” per chi fa ricerca in IA? Ha davvero senso far ricerca sui videogame?
eSport e giochi “picchiaduro”: quando la sconfitta è propedeutica
A che serve l’IA nei videogame
“Ma, esattamente, cosa fai per lavoro?”. I miei colleghi sanno quanto possa essere doloroso trovare una risposta soddisfacente a questa domanda, soprattutto se ti occupi di logica computazionale, rappresentazione della conoscenza, formalismi dichiarativi e altri paroloni sconosciuti ai più.
Credevo di avere risolto questo problema quando ho cominciato ad avvicinarmi al mondo dell’intelligenza artificiale nei videogame. Con un videogioco è molto più facile mostrare il risultato colorato, sgargiante e concreto dei propri sforzi, sia esso un giocatore robotico capace di giocare autonomamente a “Candy Crush Saga”, l’innocente giochino digitale basato sullo scambio di caramelle colorate, che fattura oltre un miliardo di dollari all’anno e conta su una base stabile di almeno 250 milioni di utenti [1], o un giocatore artificiale capace di far da sé in “Angry Birds”, altra famosa serie di videogame dal fatturato miliardario [2], dove l’apparente, semplice compito, è quello di scagliare dei “volatili infuriati” contro maialini protetti da strutture improbabili.
Invece mi sono trovato a dover rispondere a “Sì, ma a che serve?”. Domanda ancora più spinosa e delicata, quasi esistenziale per un ricercatore, soprattutto quando sottende “Allora ti paghiamo lo stipendio per giocare?”.
Perché occuparsi di intelligenza artificiale per videogame?
“Perché i videogiochi sono una super-Drosophila” può essere una delle risposte migliori. Per il lettore sbigottito è necessario però un dettagliato chiarimento, alla fine del quale svelerò, per chi non lo sapesse, che cos’è una Drosophila Melanogaster.
IA usabile, simbolica e subsimbolica
Per poter rispondere alla domanda “Sì, ma a che serve?”, partiamo da tre modi differenti, ma parzialmente sovrapposti, di utilizzare il termine Intelligenza Artificiale (di seguito, IA o AI): usable AI, symbolic AI, subsymbolic AI.
Da un lato, occorre considerare cosa si intenda per “IA” nell’industria dei videogame, categoria più forte del settore intrattenimento e probabilmente destinata a fatturare oltre 200 miliardi di dollari nel 2022 [3], un valore comparabile al PIL di una nazione come la Nuova Zelanda. Dall’altro, c’è da considerare cosa intenda chi dice “IA” provenendo dal mondo della ricerca accademica o anche industriale.
Nell’industria videoludica si parla di usable AI [4], che richiama concretezza e utilizzabilità. L’industria dei videogame ha accolto tecnologie di IA solo quando queste sono state in grado di garantire vantaggi concreti: minori tempi di realizzazione dei giochi, maggior credibilità dei cosiddetti NPC (Non Player-Character) e, soprattutto, garanzie di performance.
La maggior parte dei videogiochi si svolge infatti in tempo reale, o comunque con ridottissimi tempi a disposizione quando bisogna prendere delle decisioni automatizzate. E anche i tempi di realizzazione di un videogioco non possono essere infiniti.
L’IA “accademica” si riferisce invece a symbolic AI e subsymbolic AI. La prima combina alcuni grandi sogni, tra cui quello di poter dire a una macchina che cosa fare, anziché spendere tempo tedioso e costoso a programmare passo dopo passo come debba essere eseguito un certo compito. Sulla seconda mi dilungherò più avanti.
L’IA simbolica nel caso del videogame F.E.A.R.
É l’IA simbolica che è stata protagonista della rivoluzione tecnica introdotta nel videogame F.E.A.R. [5]. In questo gioco, il processo decisionale di ogni NPC – sia esso un avversario digitale, un personaggio di contorno, o finanche i topi che si incontrano nei bassifondi del gioco – non è scripted (e cioè programmato manualmente) ma è definito dichiarativamente indicandone i cosiddetti obiettivi (goal).
I goal di ogni NPC vengono combinati con una descrizione qualitativa della attuale scena di gioco per poi essere dati in pasto a un motore di ragionamento automatico, un planner per l’esattezza, che si occupa di tradurre gli obiettivi del giocatore artificiale in sequenze di azioni poi eseguite concretamente, i piani per l’appunto.
Il risultato è stato un videogioco ancora oggi apprezzato per la credibilità dei personaggi artificiali, ma soprattutto un esempio di progettazione dichiarativa. I designer di giochi, spesso chiamati a definire centinaia di livelli e personaggi, manualmente e in poche settimane, si sono trovati a disposizione uno strumento relativamente semplice per trasferire conoscenza di alto livello (es. i comportamenti desiderati per i personaggi) dall’uomo alla macchina.
F.E.A.R. risale al 2005 e ha segnato l’inizio dell’uso nel mondo dei videogiochi delle tecniche di automated planning, note in accademia sin dagli anni ’70 del secolo scorso e pensate per pianificare automaticamente le sequenze di attività di robot, gru per container o telescopi orbitanti ([6], cap. 11).
La realizzazione del gioco non è avvenuta senza adattamenti, limature e “accrocchi” rispetto alla teoria: a causa della enorme dinamicità delle situazioni di gioco, un giocatore artificiale in F.E.A.R. produce piani non più lunghi di tre o quattro azioni in tempi inferiori al secondo, ma soprattutto è stato necessario trovare un modo efficace di sostituire un piano con un altro non appena la scena di gioco cambia a causa di situazioni impreviste.
A partire da F.E.A.R., altri videogame hanno adottato tecniche di automated planning e hierarchical task planning, anche se come minoranza nel panorama complessivo.
Le sfide aperte restano: i planner e i ragionatori automatici accademici, presi così come sono dal loro scaffale senza tediosi lavori di adattamento e ottimizzazione, restano oggi troppo lenti per i videogame.
E rimane irrisolta la questione di quanto sia concretamente dichiarativa e facile da usare la conoscenza che bisogna trasferire ai ragionatori automatici prima di ottenere risultati concreti, in un mondo come quello degli sviluppatori di videogame che cerca strumenti di facile utilizzo e che non fa sconti.
Come funziona l’IA subsimbolica
Il lettore riconoscerà sicuramente il terzo tipo di IA protagonista di questo racconto, perché coincide con la metodologia che fa breccia quotidianamente sulla stampa specialistica e non, parlandoci di macchine capaci di sintetizzare quadri e poesie, di riconoscere segnali stradali e gattini, di indovinare la prossima parola che vogliamo digitare nei nostri Whatsapp e tanto altro ancora. Questo modo di intendere le intelligenze artificiali nasconde un metodo diametralmente opposto di costruire i sistemi autonomi.
Non c’è più conoscenza umana codificata e trasferita in maniera più o meno diretta a una macchina, ma dati. Immani, gigantesche quantità di dati vengono utilizzate come esempi per addestrare una IA a svolgere un determinato compito durante la learning phase, che sostituisce la fase di design di un sistema autonomo.
Una IA così “allevata”, usando il machine learning, può essere capace di risultati sorprendenti in termini di abilità di riconoscimento, predizione e generazione di pattern visivi, vocali e testuali.
L’opportunità di usare questo tipo di IA è interessante, ed è stata varie volte colta nel mondo dei videogiochi a partire da “Creatures” e “Black & White” [7], giochi di oltre venti anni fa, in cui il giocatore poteva condizionare il comportamento di lungo termine di alcune creature artificiali impartendo delle rudimentali azioni di reinforcement learning. Quasi sempre i meccanismi di learning induttivo sono limitati ad alcuni aspetti di dettaglio del gioco, come il controllo del livello di difficoltà introdotto nei giochi della serie “Halo” (dal 2001 a oggi).
C’è anche un certo interesse per le reti generative, una forma di machine learning che può essere usata per generare scenari, dialoghi, narrazioni, universi e livelli di gioco sufficientemente creativi e sempre nuovi [8].
Tuttavia, l’industria dei videogame continua ad amare metodi solidi come la procedural content generation, una tecnica semplice ed efficace che non può essere definita neanche per sbaglio come IA e che ha prodotto risultati anche sorprendenti: siamo passati dai 2000 pianeti generati proceduralmente in “Elite” (1984) ai 18 quintilioni di pianeti differenti dell’universo di “No Man’s Sky” (2016).
Ma la timida accoglienza da parte del mondo videoludico all’introduzione di tecniche di machine learning ha le sue ragioni.
Una IA del genere subsimbolico funziona bene se precedentemente “nutrita” con grandi quantità di dati. Posto che questi ultimi siano disponibili, il processo di training può richiedere molto tempo: ma soprattutto non è possibile rivedere le proprie scelte progettuali cambiando un parametro o aggiungendo semplici direttive di alto livello. Un limite assolutamente sgradito a un game designer.
Se si vuole sintetizzare uno scenario artificiale con più piante e grattacieli più bassi, bisognerà ripetere da capo il processo di training del sistema generatore di contenuti. E non c’è modo più semplice per dire a una IA subsimbolica che “quando generi una casa questa deve sempre avere una porta a piano terra” se non quello di mostrarle centinaia, se non migliaia di case con la porta a pianterreno.
Detto in altre parole, i metodi di IA subsimbolica non dispongono di evidenti manopole per essere controllate, ispezionate e modificate, e non sono dunque, per ora, sufficientemente elaboration tolerant [9].
La ricerca e i giocatori artificiali
Il mondo dei videogame commerciali offre di per sé sfide per tutti i gusti e tutti i tipi di ricerca in ambito IA, che varrebbe la pena cogliere. Ma il quadro si fa ancora più interessante se spostiamo la prospettiva da “cosa vogliono i videogiochi dall’accademia?” a “cosa può avere l’accademia dai videogiochi?”.
Sebbene siano stati finora rari gli incontri tra IA accademica e industria videoludica, il mondo della ricerca non ignora affatto i videogiochi. Esistono tornei per giocatori artificiali basati su “Super Mario Bros”, “StarCraft”, “Pac Man”, “Angry Birds” e tanti altri videogiochi noti [10]. Ciascuno di questi tornei ha un suo interesse intrinseco. Ad esempio “Angry Birds” è un gioco molto interessante se si considera la prospettiva di insegnare a una macchina come giocarvi [11,12]: ci sono vari elementi di planning e di ragionamento spaziale che vanno al di là del lanciare dei proiettili alla cieca, e i limiti temporali per ogni decisione sono ridotti a pochi secondi.
C’è però da considerare che i giocatori artificiali che partecipano a queste competizioni sono a volte troppo bravi. Sono talmente bravi da non essere utilizzabili nei videogiochi commerciali come avversari. Ma soprattutto, si tratta di giocatori artificiali talmente superspecializzati nello specifico gioco che poco ci insegnano come raggiungere quella che chiamiamo General AI.
Per fare un esempio, un essere umano messo di fronte a un gioco nuovo può impararne i rudimenti in pochi minuti, mentre un Super Mario artificiale, costruito giocando milioni di partite, non ha nessuna capacità di riutilizzare le proprie abilità su un gioco diverso.
Per tale motivo è stata introdotta la General Video Game Playing Competition (GVGAI) [13]. A questo evento possono partecipare giocatori artificiali a cui vengono sottoposti videogame mai visti prima. L’ambizioso scopo è quello di arrivare alla sintesi di giocatori abili indipendentemente dal tipo di gioco proposto, raggiungendo la prima forma di IA definibile come generale.
Perché l’esempio della Drosophila
La Drosophila è emblema del terreno di ricerca semplice e a basso costo. Meglio nota come moscerino della frutta, la Drosophila Melanogaster è stato uno dei primi organismi oggetto di analisi genetica, per via della sua economicità, della sua velocità riproduttiva e del suo patrimonio genetico relativamente semplice.
Lo studio dei processi di trascrizione dei geni nella Drosophila è stato una pietra miliare per comprendere gli stessi processi in organismi ben più complessi come gli esseri umani. Se vogliamo trovare un analogo nel mondo dell’IA, allora dobbiamo pensare al ruolo che hanno avuto gli scacchi e in seguito il gioco del Go [14].
Generalizzando rispetto ai soli giochi da tavolo, un videogioco può essere un ambiente economico e controllato dove riprodurre l’oggetto della propria ricerca in IA senza fattori confondenti, anzi col potere di attivare o disattivare i fattori confondenti a proprio piacimento.
Se si vuole lavorare in un ambiente che evolve dinamicamente ma piccolo, dove tutta la scena di gioco è nota, si può prendere il semplice “Pac-Man”; se si è interessati a studiare meccanismi di cooperazione allora possiamo pensare a come coordinare l’IA dei tre fantasmini dello stesso gioco. Se il tempo di decisione non ci interessa ma vogliamo un qualche elemento di imprevedibilità, possiamo costruire un ambiente simile a quello di “Candy Crush Saga” e così via.
Lo stream reasoning e i videogame
Mi sono (ri)avvicinato ai videogame in un momento in cui mi stavo occupando di stream reasoning [15]. In termini semplificati, lo stream reasoning nasce quando si hanno flussi di dati, anche enormi e fortemente variabili nel tempo, provenienti da reti di sensori, come quelli provenienti da una smart city, e si vuole fare del ragionamento automatico in accordo a quello che ci dicono i sensori.
Ad esempio, realizzare un sistema autonomo che piloti i semafori della mia città in maniera intelligente in base a quello che mi dicono i sensori e combinando gli orari delle uscite da scuola.
Non potendo affidare una vera città sensorizzata a ciascun ricercatore del ramo, se ne può offrire una versione simulata, dove il flusso di dati può essere modulato a piacimento aggiungendo oggetti e sensori, fino a raggiungere una dimensione del flusso di dati analoga all’applicazione reale, se non ancora più imponente. Lo scenario e le sfide poste sono tra l’altro molto simili a quelle dove è necessario monitorare una intera scena di gioco, con migliaia di giocatori e oggetti all’interno di questa [16].
Potrei portare diversi altri esempi che tra l’altro mostrano quanto sia labile il confine tra videogiochi e simulazione applicativa. Il noto ambiente di sviluppo per videogiochi Unity [17] è oggi usato anche per riprodurre le situazioni spaziali in cui può trovarsi un robot: ci sono esempi in cui lo strumento è stato usato per fare ricerca sulla chirurgia robotica [18].
Chi vuole sperimentare con i metodi di IA basati sull’automated commonsense reasoning, molto promettenti in ambito forense, può potenzialmente avere a disposizione scene del crimine digitali altrimenti non riproducibili a piacimento. Sempre in ambito forense, Unity stesso è stato usato come luogo virtuale dove analizzare movimenti e contatti tra sospetti [19].
Conclusioni
Questo terreno di lavoro è una “super-Drosophila”: vasto, variegato, flessibile e, se lo si desidera, semplificabile a piacimento o impegnativo tanto quanto le situazioni applicative reali.
I videogiochi non sono solo il posto dove molti scienziati sognano di poter dare vita alle proprie idee, ma anche un genere di arte dove si possono vivere storie, mondi e atmosfere avvolgenti, a volte affettivamente indimenticabili. E questo detto da un professore universitario che si sarebbe laureato molto prima se non fosse esistito “Alone in the Dark”. E “Quake 2”. E “Half Life”. E…
Note
[1] “Candy Crush Revenue and Usage Statistics” (2022). https://www.businessofapps.com/data/candy-crush-statistics/
[2] “Rovio reports record Q4 revenues of €286.2 million” https://www.gamesindustry.biz/articles/2022-02-11-record-q4-revenues-cap-off-year-of-growth-for-rovio
[3] “Games industry revenue ‘will pass $200 billion’ in 2022”. https://www.pcgamesn.com/games-industry-revenue-2022
[4] J. Pfau, J.D. Smeddinck, R. Malaka. “The Case for Usable AI: What Industry Professionals Make of Academic AI in Video Games” 2020 Annual Symposium on Computer-Human Interaction in Play (CHIPLAY).
[5] J.Orkin. “Three states and a plan: the AI of FEAR”, Game Developers Conference, 2006.
[6] S. Russell, P. Norvig, “Artificial Intelligence: A Modern Approach (4th Edition)”, Pearson 2020.
[7] Lionhead Studios. 2001. Black & White. Videogame. Lionhead Studios, Guildford, UK.
[8] R. Torrado et al, “Bootstrapping conditional GANs for video game level generation”, IEEE Conference on Games. 2020.
[9] J McCarthy, “Elaboration Tolerance”- Common Sense, 1998.
[10] J. Togelius, “AI Researchers, Video Games are your Friends!”, Computational Intelligence – International Joint Conference (IJCCI). 2015.
[11] J. Renz, X. Ge, S. Gould, P. Zhang, “The Angry Birds AI Competition”, AI Magazine. 2015
[12] F. Calimeri, M. Fink, S. Germano, A. Humenberger, G. Ianni, C. Redl, D. Stepanova, A. Tucci, A. Wimmer, “Angry-HEX: An Artificial Player for Angry Birds Based on Declarative Knowledge Bases”, IEEE Trans. Comput. Intell. AI Games. 2016.
[13] Perez-Liebana, D., Samothrakis, S., Togelius, J., Schaul, T., Lucas, S.M., “General video game AI: Competition, challenges and opportunities”, In: AAAI 2016.
[14] N. Nathan Ensmenger, “Is chess the drosophila of artificial intelligence? A social history of an algorithm”, Social Studies of Science. Vol. 42. N. 1. 2012.
[15] D. Dell’Aglio, E. Della Valle, F. van Harmelen, A. Bernstein, “Stream reasoning: A survey and outlook”, Data Sci. 1(1-2): 59-83. 2017.
[16] G. N. Yannakakis, “Game AI revisited”, Conf. Computing Frontiers 2012.
[17] Unity Game Engine. https://unity3d.com
[18] A. Segato et al, “Inverse Reinforcement Learning Intra-operative Path Planning for Steerable Needle”, IEEE Transactions on Biomedical Engineering. 2021.
[19] A. Biagetti, A. Ferrando, and V. Mascardi, “The DigForSim Agent Based Simulator of People Movements in Crime Scenes. Advances in Practical Applications of Agents, Multi-Agent Systems, and Trustworthiness”, PAAMS 2020.