Skip to main content

Dota 2: un'IA ha battuto un team di professionisti e mira a fare molto di più - articolo

Voglio i tuoi vestiti, i tuoi stivali... e il tuo corriere!

È successo tutto molto rapidamente. Il 5 agosto, cinque giocatori esperti di Dota 2 hanno cobattuto contro un team di bot creato dal laboratorio di ricerca no-profit OpenAI. E hanno perso malamente. Lo stesso team di bot, nonostante il beneficio di qualche settimana d'allenamento in più, è apparso sul palco del più grande torneo di Dota 2, The International, e ha giocato contro una squadra composta dai migliori giocatori professionisti del mondo. Vincere in quell'occasione sarebbe stato qualcosa senza alcun precedente, un vero e proprio punto di svolta per l'AI e per l'industria videoludica. Dopo aver visto la performance dei bot, all'inizio del mese, non sembrava un'eventualità così remota, ei capiremmo se vi sentiste come se fossimo davanti a una nuova era per quanto riguarda l'Intelligenza Artificiale. Ma i bot stavolta hanno perso.

OpenAI è apparsa a sorpresa al torneo International dell'anno scorso per dimostrare che i loro bot potevano battere i migliori giocatori professionisti in una partita 1v1 Mid, una modalità più semplice per due giocatori. È stato sicuramente un evento impressionante ma la sensazione era che fosse un tipo di modalità in cui l'AI potesse eccellere: semplice, corta, con obiettivi chiari e un'enfasi particolare sui tempi di reazione. La vera sfida, a detta di tutti, sarebbe stata una partita standard completa.

OpenAI ha portato a casa una straordinaria vittoria contro i 99.95th Percentile.

I bot di OpenAI non riescono a giocare ancora un'intera partita ma, meno di 12 mesi dopo, ci vanno sorprendentemente vicini, molto più di quanto avremmo pensato l'anno scorso di questi tempi. Con alcune delle meccaniche del gioco disabilitate, i bot hanno esibito straordinarie capacità di calcolo, uno stile di gioco aggressivo e un implacabile senso del momentum. Quando non esibiscono abilità sovrumane, si impegnano a distruggere convenzioni decennali legate a Dota 2 e a trovare nuovi modi per giocare gli eroi, distribuire risorse e conquistare obiettivi.

Uno dei motivi per cui giocano in modo così diverso dagli umani è che, ovviamente, non sono umani: i bot possono fare calcoli in modo decisamente più rapido rispetto anche ai professionisti migliori al mondo, il che si traduce in livelli sovrumani di efficienza e precisione. Il motivo più importante del loro stile inusuale, però, è da ricercare nel modo in cui sono stati creati. I bot di OpenAI non sono stati codificati usando dati forniti dagli esperti e migliaia di regole, e non gli sono nemmeno stati mostrati centinaia di esempi di come giocano gli umani da cui imparare. Gli ingegneri di OpenAI, invece, hanno usato qualcosa che chiamano Reinforcement Learning per permettere ai loro bot di iniziare senza alcuna conoscenza di Dota 2 o dei videogiochi in generale e, in breve tempo, imparare da soli a diventare più bravi dei migliori al mondo.

Il modo in cui questo funziona, come tutto ciò che riguarda l'intelligenza artificiale, è allo stesso tempo più e meno complicato di quanto sembri. Ogni frazione di secondo, i bot di OpenAI ricevono dall'API di Dota 2 più di 20.000 informazioni che vanno dal quantitativo di salute rimanente a ciascun bot fino al numero di secondi necessari al debuff di un particolare nemico. Nello stesso momento ci sono migliaia di azioni che possono scegliere di intraprendere: muoversi, attaccare, utilizzare incantesimi od oggetti, il tutto applicabile a vari obiettivi o luoghi della mappa. La sfida per i bot è capire quale delle 20.000 informazioni sia la più importante in un preciso momento e quale azione possano compiere per cercare di vincere.

OpenAI predice il posizionamento degli eroi nel breve termine. In questa immagine sono evidenziate le caselle che prevedono i movimenti di Sven nei successivi sei secondi.

La cosa più incredibile succede nel frattempo: una rete neurale raccoglie tutti quegli input e output e li connette insieme. Uno dei ruoli più importanti di questa rete è quello di applicare il giusto peso a ciascun input, ovvero una serie di moltipicatori che possono incrementare o diminuire l'impatto di un particolare input su uno specifico output. Immaginatelo come una sorta di mixer audio in cui i pesi sono i vari slider e manopole che rendono la canzone più rumorosa o più soffice nella composizione finale. In questo caso, tuttavia, ci sono circa 20.000 strumenti che suonano all'unisono e i bot devono trovare un mix che funzioni per tutta la durata della canzone, dall'inizio alla fine, anche se i musicisti iniziano improvvisando.

I bot di OpenAI cominciano con pesi scelti casualmente, il che li fanno giocare in modo assolutamente caotico: qualcuno che non ha mai giocato ad un videogame in precedenza potrebbe batterli, in questa fase. Nel corso del tempo, però, i bot ricevono una serie di feedback (premio quando guadagnano oro o uccidono un eroe; penalità quando muoiono) che aiutano a calibrare con precisione i pesi della rete neurale. Presto alcuni dei bot iniziano a giocare meglio degli altri e quelli più deboli vengono rimpiazzati con copie di quelli più forti. Considerando che i sistemi di OpenAI giocano oltre 900 anni di Dota 2 al giorno su centinaia di server diversi, i bot più scarsi diventano medi, poi buoni, poi grandiosi e infine, si spera, sovrumani.

La parola 'sovrumano' è divertente. Nella loro partita di esibizione, all'inizio del mese, non c'è stato dubbio in merito al fatto che i bot di OpenAI fossero superiori ai loro avversari umani nelle prime due partite. Nella terza, però, il pubblico ha scelto gli eroi che i bot avrebbero dovuto usare e il risultato è stato molto, molto peggiore. Non è stato solo un caso di sabotaggio da parte del pubblico: i bot hanno giocato peggio di quanto avrebbe fatto un team umano con lo stesso setup, semplicemente perché sono stati creati per giocare con uno stile aggressivo, anche quando la situazione non è delle migliori.

Guarda su YouTube

Tutto questo è riconducibile al modo in cui i bot imparano e a come collegano una avvenimento positivo ad una delle loro azioni compiute in passato. Uno stile aggressivo rende più semplice connettere causa ed effetto: questo eroe è morto perché gli ho sparato un laser enorme dalla punta delle mie dita. Pianificare un'intera partita rende necessario prevedere parecchie mosse in anticipo ed essere capaci di connettere eventi a distanza di 10, 20 o addirittura 30 minuti. Raccogliere oro per 30 minuti per diventare abbastanza potente da vincere la partita, è molto più difficile che studiare e imparare da quel laser enorme sparato dalle dita.

Quindi, quando i bot di OpenAI saranno in grado di battere i migliori giocatori al The International, cosa significherebbe? Che sono abbastanza bravi da poter vincere ma non abbastanza da dominare completamente Dota 2. Per i ricercatori dell'Intelligenza Artificiale, una vittoria è una vittoria e un trionfo sul palco di The International sarebbe un'altra pietra miliare nella storia dell'AI. Per l'industria dei videogiochi, invece, potrebbe non avere lo stesso significato. Tanto per cominciare l'approccio adottato da OpenAI non è adatto se non agli studi più ricchi presenti sul mercato. Richiede mesi di allenamento, milioni di dollari di equipaggiamenti e tempo di computazione su server remoti oltre che un team di ingegneri altamente qualificati, che hanno concentrato tutti i loro sforzi sul progetto. Il dubbio più grande, però, è se questi bot siano effettivamente utili a qualcosa.

Per OpenAI battere un team di umani a Dota 2 fa parte di un viaggio lunghissimo che mira a integrare l'Intelligenza Artificiale nel mondo reale. Per gli sviluppatori di videogiochi, l'AI è più utile se riesce a modellarsi su come giocano gli umani, in un certo senso. Supponete di voler testare il bilanciamento di un gioco multiplayer: potreste allenare dei bot per giocarci. Dei bot superumani che imparano autonomamente a giocare ai videogame potrebbero svelare solamente se il gioco sia bilanciato per i bot. Non possono sapere come imparano le persone, quali abilità e conoscenze di base possano avere, come possano interpretare le regole e quali strategie potrebbero sviluppare. Con un po' di calibrazione, potrebbero servire come un ragionevole rimpiazzo dei bot presenti in Dota 2 ma allenarsi contro di loro non vi preparerà alla marea di strategie e stili di gioco che gli umani possono sfoggiare nei match reali.

Allora perché dovremmo essere interessati? Cosa guadagneremmo, noi giocatori, se i bot di OpenAI diventassero maestri di Dota 2 o se Google brevettasse i migliori bot per StarCraft 2? Per cominciare dovremmo ricordarci che i videogame che giochiamo ogni giorno contengono una serie di variabili ignote. I bot di OpenAI potranno anche avere riflessi sovrumani ma spesso rompono anche le tradizioni: non è raro vederli mandare gli eroi di supporto a farmare in solitaria nelle safelane o mandare quattro eroi ad assediare le torri nel primo minuto. Dei bot superumani ci costringeranno sempre a superare noi stessi cercando nuovi segreti, nuove strategie e fornendoci un obiettivo da perseguire continuamente.

Una cosa ancora più interessante, però, è che come tutti i passi in avanti nella tecnologia, questo ci aiuterà a realizzare cose che non possiamo ancora concepire. Come nuovi generi di giochi in cui alleniamo i bot per completare le sfide, bot di rimpiazzo con il nostro stesso livello di abilità che possono sostituirci se la nostra connessione cade e tanto altro. Il vero potenziale di un'AI che impara a giocare così velocemente non è qualcosa di ordinario che si possa prevedere facilmente. La vittoria e la sconfitta di OpenAI, questo mese, non rappresenta né la fine per l'AI dei videogiochi, né per gli umani che competono per essere i migliori nei loro titoli preferiti. Si tratta invece di un nuovo inizio per qualcosa di completamente differente.

Avatar di Mike Cook
Mike Cook: Mike is an AI researcher and game designer from the UK. He's the creator of the game-designing AI ANGELINA, and the founder of the Procedural Generation Jam. There is not a single hero in Dota 2 he will not try to play as a support.
In this article

Dota 2

PC, Mac

Related topics

Sign in and unlock a world of features

Get access to commenting, newsletters, and more!