SlideShare a Scribd company logo
ANNO ACCADEMICO 2021/2022
DIPARTIMENTO DI INGEGNERIA E ARCHITETTURA
TESI TRIENNALE IN INGEGNERIA ELETTRONICA ED INFORMATICA
Extendedsummary of
“Deep Learning for Video Game Playing”
Candidato: Relatore:
Kevin Vargu Prof. Andrea DeLorenzo
INTRODUZIONE
In questo articolo è offerta una panoramicasui recenti sviluppi riguardanti
l’applicazione del deep learning nei videogiochi. Questi ultimi offrono una
grandevarietà di sfide che dipendono non solo dal genere ma anche dal gioco
stesso, presentando così un’ambiente ideale per testare quelli che sono i
progressi nel campo.
L’obiettivo di questo articolo è visionarele tecniche di deep learning utilizzate
per giocare bene ai videogiochi, soffermandosisu diversi generi e sulle
difficoltà che si incontrano in essi. Esistono inoltre diverse sfide aperte per
l’intelligenza artificiale nell’ambiente videoludico di cui si sta cercando
soluzione anche attraverso il deep learning.
PANORAMICA DEEP LEARNING NEI VIDEOGIOCHI
La base del deep learning sono le reti neurali artificiali (ANNs), funzionidefinite
dalla loro struttura di rete e dal peso di ciascuna connessione interna; in base
all’architettura si possono suddividere in due categorie: reti neurali
feedforward, cheprendono in ingresso un singolo input e danno come risultato
la probabilità o il valore di ogni possibile azione, e reti neurali ricorrenti (RNN),
nelle quali tra gli input sono presenti informazioniriguardantilo stato
precedente della rete.
Le ANNs possono essere ottimizzate per giocare ai videogiochi e le principali
metodologie per farlo sono le seguenti:
1. Supervised learning
Un modello, cioè un programma allenato attraverso un insieme di dati
con l’obiettivo di operaresu di essi, è addestrato attraverso esempi.
Durantel’allenamento gli viene chiesto di prendere decisioni di cui è
nota la risposta corretta, usando poi l’errorecommesso per aggiornarlo,
con l’obiettivo di farlo operare con esempi mai incontrati.
I dati necessari possono essere fornitidalla registrazione di una persona
che gioca o da un algoritmo che è in grado di completare il gioco, usando
poi le informazioniacquisite non solo per giocare ma anche per imparare
a prevedere le possibili transazionidi stato di un gioco.
2. Unsupervised learning
Viene fornito come input un insieme di dati con l’obiettivo di trovare
caratteristiche comuni al suo interno ed effettuare operazionidi
interesse.
3. Reinforcement learning
Un agente, cioè un’entità che opera in un’ambiente per raggiungere
degli obiettivi, interagisce con l’ambiente circostante e quest’ultimo
fornisce dei premi sui quali l’agente si baserà per le azionifuture. Nei
videogiochi i giocatori sono modellati come agenti e i premi sono i
risultati del gioco. Gli approccimaggiormente usati sono: temporal
difference (TD) learning, Q-learning, SARSA (State-Action-Reward-State-
Action) e i metodi Actor-Critic.
4. Approcci evolutivi
Spesso riferiti come neuroevolutivi(NE), sono approcciin grado di
ottimizzare la struttura della rete, offrendo potenzialmente la possibilità
di trovareautomaticamente l’architettura migliore per giocare a uno
specifico videogioco.
5. Approcci di apprendimento ibrido
Metodi che combinano deep learning con altri approccidi machine
learning con l’obiettivo di sfruttareal meglio i pregi di entrambi.
METODI DI DEEP LEARNING PER I VIDEOGIOCHI
Ciascun genere di videogioco deve essere considerato come un ambiente
autonomo data la ponderosa differenza che due diversi generi possono avere.
Risulta quindi indispensabile trattare separatamente per ciascuno di essi le
sfide offerte, le piattaforme utilizzate per la ricercae i metodi impiegati.
A. Giochi Arcade
Sono videogiochi sviluppati prevalentemente in due dimensioni dovei
requisiti principali sono riflessi rapidi e abilità di lettura dell’ambiente
circostante. La piattaforma più utilizzata per il deep learning è l’Arcade
Learning Environment(ALE), che estrae il punteggio del gioco e il
contenuto della RAM per poterli adoperare successivamente per
allenare l’agente.
Il primo algoritmo che ha mostrato prestazioni paragonabilia quelle di
un umano esperto è stato Deep Q-Network (DQN), basato sul Q-
learning, nel quale le esperienze di gioco sono mantenute in memoria
permettendo così di riutilizzarle e imparare da esse. Nel corso degli anni
è stato modificato più volte portando a diverse versioni che hanno
cercato di migliorarne le prestazioni e i punti deboli.
DQNnon è stato l’unico metodo di reinforcement learning utilizzato, a
esso sono seguiti AsynchronousAdvantageActor-Critic (A3C) e sue
varianti come AdvantageActor-Critic (A2C) e Unsupervised
Reinforcement and Auxiliary Learning (UNREAL), actor-critic method
with experience replay (ACER),ImportanceWeighted Actor-Learner
Architecture (IMPALA), TrustRegion Policy Optimization (TRPO) e
Proximal Policy Optimization (PPO).
Il reinforcement learning non è stata l’unica strategia utilizzata, approcci
neuroevolutivicome le Evolution Strategies (ES), Novelty search e Deep
Ga hanno ottenuto risultati migliori di DQN, allo stesso modo di approcci
di supervised learning come UCTtoClassification; questi ultimi si sono
pure dimostrati capaci di ridurrele dimensioni della rete e migliorare le
prestazioni.
Tra i giochi Arcade è di particolare interesse Montezuma’s Revenge,
gioco con premi quasi assenti che rappresenta una sfida per il
reinforcement learning. I metodi classici dei giochi Arcade ottengono
risultati quasi nulli, portando alla necessità di nuovestrategie che
cercano di favorirel’esplorazionestimolando la curiosità, come Pseudo-
counts che premia configurazionidi pixel inaspettate.
Metodi promettenti sono hierarchical-DQN(h-DQN) e Ape-X DQN, dove
vengono separati i processi decisionali da quelli operativi, e Deep Q-
learning fromDemonstrations (DQfD) checontiene una memoria
inizializzata con dati di gioco forniti da un giocatore esperto.
B. Giochi di corsa
Giochi dove si controlla un veicolo, gestendone eventualmente le
risorse, con l’obiettivo di completare un circuito nel più breve tempo
possibile, sfruttando al meglio l’ambiente circostante e interagendo con
avversari; ambiente popolareper reinforcement learning è TORCS.
A causa della continuità e dell’elevata dimensione dello spazio d’azione
algoritmi end-to-end come DQNnon possono essere utilizzati, portando
alla ricercadi soluzioni alternative basate principalmente su due
paradigmi: sistemi che mappano dalle immagini alle azioni e sistemi che
analizzano i dati forniti per prenderedecisioni. Direct perception è un
approccio intermedio, dove una rete converte le immagini in indicatori
significativi, dai quali vengono prese le decisioni.
C. First-Person Shooters (FPS)
Sfida principale è l’individuare nemici ed eliminarli sfruttando al meglio
l’ambiente circostante, cercando di prevederele loro mosse e in alcuni
casi lavorando in squadra.
Una piattaforma popolareè VizDoom, permette agli agenti di giocare a
Doomed è stata sede della Visual Doom AI Competition 2016, nella
quale una rete neurale feedforward addestrata con A3Cusando reward
shaping, per gestire il meccanismo di assegnazione dei premi, e
curriculumlearning, per velocizzarel’apprendimento, ha offerto le
prestazioni migliori in caso di ambienti già incontrati, mentre Direct
FuturePrediction (DFP), la cui architettura si basa su tre reti che
gestiscono i pixel dello schermo, lo stato dell’agente e il suo obiettivo, si
è adeguato meglio ad ambienti nuovi.
Altri metodi utilizzati nei giochi FPS sono UNREAL, Distill and Transfer
Learning (Distral) ed Intrinsic Curiosity Module (ICM).
D. Giochi Open-World
Giochi con grandelibertà di azione, con obiettivi che possono non
esistere o non essere direttamente individuabili, formando un’ambiente
ideale per metodi di reinforcement learning che riutilizzano durante il
gioco le informazionigià acquisite, come per esempio HierarchicalDeep
Reinforcement Learning Network (H-DRLN).
Altre tecniche utilizzate sono Teacher-StudentCurriculumLearning
(TSCL), formato da un insegnante che gestisce degli studenti che
svolgono compiti specifici, RecurrentMemory Q-Network (RMQN) e
Feedback Recurrent Memory Q-Network (FRMQN), capaci di risolvere
problemi che richiedono memoria e percezione dell’ambiente
circostante.
Piattaforma popolare è ProjectMalmo, costruita su Minecraft.
E. Giochi di strategia in tempo reale
Giocatore controlla un vasto insieme di unità con l’obiettivo di
sopraffarel’avversario potendo fare le propriemosse in qualsiasi istante.
La sfida principale è organizzarepianicomplessi cercando di prevedere
le azioni nemiche.
StarCraftè il gioco più studiato; La Brood War API (BWAPI) permette di
comunicarecon esso per estrarre informazioni; ci sono però poche
tecniche di deep learning.
L’ambiente è molto complesso a causa dei multipli agenti da controllare
contemporaneamente e dell’assenza di premi in gioco oltre a chi vince la
partita. Il secondo problema si può risolvere aggiungendo un premio
come differenza tra danni inflitti e subiti. Gli agenti invece non possono
essere allenati individualmente poiché non sarebbe possibile individuare
chi ha contribuito al raggiungimento dell’obiettivo. Le soluzioni possono
essere allenare una rete che controlla tutti gli agenti, come Multiagent
Bidirectionally-Coordinated Network (BiCNet) o CounterfactualMulti-
Agent (COMA), o allenare ciascun agente trattando gli altri come parte
dell’ambiente, Independent Q-learning (IQL).
F. Giochi sportivi di squadra
Giochi che tentano di simulare il più realisticamente possibile sport di
squadra.
Le piattaforme più utilizzate si basano sul calcio, come RoboCup 2D Half-
Field-Offense (HFO) dovedue squadresi alternano in attacco e difesa,
nel quale Inverting Gradients bounding approach ha portato ai risultati
migliori.
G. Giochi di avventura testuale
Gioco interattivo dove ai giocatori viene raccontata una storia a cui
prendono parte attivamente, scegliendo le azioni da compiere da una
lista o scrivendole.
Data la natura di questa tipologia di giochi, è stata sviluppata
un’architettura della rete apposita, chiamata LSTM-DQN, inoltre per
migliorare le prestazioni la ricerca si è spostata verso l’apprendimento di
modelli linguistici e “l’immersione di parole”, tecniche utilizzate da Deep
Reinforcement Relevance Net (DRRN), Golovin Agent e Action
Elimination Network (AEN).
I risultati ottenuti sono stati adoperati anche all’esterno di questa
tipologia di giochi, per esempio deep distributed recurrentQ-network
(DDRQN) ha implementato un protocollo per facilitare la comunicazione
tra gli agenti.
SFIDE APERTE
Nonostante i progressi ottenuti, esistono ancora diverse sfide aperte per il
deep learning che possono essere divise in quattro categorie:
A. Proprietà dell’agente
La maggioranza dei lavori di deep learning è focalizzata sul
completamento di un singolo gioco, senza riuscire a trasmettere le
conoscenze acquisite in giochi differenti. Non è inoltre sufficiente
riuscire a perfezionareun gioco, un agente dovrebbeessere in grado di
adattare le proprieazioni in base all’ambiente circostante e simulare i
comportamenti umani, modificando le prestazioni a seconda delle
necessità e degli obiettivi.
I moderni approccidi deep learning non sono ancora in grado di
completare al meglio tutte le sfide offerte dai videogiochi, quelli che
offrono un basso numero di premi, che richiedono un’elevata
pianificazione delle azioni da svolgere o che richiedono di controllare più
agenti contemporaneamente sono ancora un ostacolo.
B. Utilizzo nell’industria videoludica
La maggior parte delle architetture dei modernigiochi derivano da
soluzioni adottate in un periodo in cui non era possibile utilizzare l’IA.
Riprogettare nuovi giochi libererebbe da queste limitazioni e
permetterebbe un migliore utilizzo dell’IA, come per creare e addestrare
NPC, poiché ad oggi è utilizzata maggiormente per testare i giochi.
C. Apprendimento di modelli di gioco
Gran parte dei lavoridi deep learning per i videogiochiaddestra una rete
neurale a comportarsi in base al suo stato, senza comprenderele
meccaniche del gioco, che permetterebbero all’agente non solo di
performaremeglio ma anche di adeguarsi più facilmente ad altri
videogiochi.
D. Risorse computazionali
A causa dei modelli computazionalipiù avanzati e dell’elevato numero di
agenti diventa un problema la velocità computazionale, portando alla
ricerca di nuoviapprocci in grado di alleggerire il carico di lavoro.
CONCLUSIONI
Dall’articolo si è evidenziato che la maggior parte degli approccidi deep
learning per giocare ai videogiochi si basano sul reinforcement learning, anche
se alternative competitive sono fornite da algoritmi evolutivi e di supervised
learning, riuscendo a superarele prestazioni umane nei videogiochipiù
semplici, mentre si stanno ancora svolgendo studi per completare quelli più
complicati e affrontaresfide diverse dal completamento di un gioco.
FONTI
N. Justesen, P. Bontrager, J. Togelius and S. Risi, "Deep Learning for Video
Game Playing," in IEEE Transactions on Games, vol. 12, no. 1, pp. 1-20, March
2020, doi: 10.1109/TG.2019.2896986.

More Related Content

Similar to Extended summary of 'Deep Learning for Video Game Playing'

Progetto e Sviluppo di un Sistema per il Gioco degli Scacchi Tridimensionali
Progetto e Sviluppo di un Sistema per il Gioco degli Scacchi TridimensionaliProgetto e Sviluppo di un Sistema per il Gioco degli Scacchi Tridimensionali
Progetto e Sviluppo di un Sistema per il Gioco degli Scacchi Tridimensionali
Marco Bresciani
 
Game2vec
Game2vecGame2vec
Game2vec
Paolo Verdini
 
Linux Day 2019 Catania - Deep Learning
Linux Day 2019 Catania - Deep LearningLinux Day 2019 Catania - Deep Learning
Linux Day 2019 Catania - Deep Learning
Francesca Murabito
 
Thesis marco de_marco
Thesis marco de_marcoThesis marco de_marco
Thesis marco de_marco
Marco De Marco
 
Identificare feature significative per l’analisi nell’informatica forense uti...
Identificare feature significative per l’analisi nell’informatica forense uti...Identificare feature significative per l’analisi nell’informatica forense uti...
Identificare feature significative per l’analisi nell’informatica forense uti...
Antonio Notarangelo
 
Presentazione eXtreme Programming
Presentazione eXtreme ProgrammingPresentazione eXtreme Programming
Presentazione eXtreme Programming
Roberto Bettazzoni
 
Gamification - Fabio Viola
Gamification - Fabio ViolaGamification - Fabio Viola
Gamification - Fabio Viola
Ravenna Future Lessons
 
Design of G.E.M.I.X.: Game Engine Movie Interaction eXperience
Design of G.E.M.I.X.: Game Engine Movie Interaction eXperienceDesign of G.E.M.I.X.: Game Engine Movie Interaction eXperience
Design of G.E.M.I.X.: Game Engine Movie Interaction eXperience
Antonio Notarangelo
 
Game2Vec - DataBeers Tuscany
Game2Vec - DataBeers TuscanyGame2Vec - DataBeers Tuscany
Game2Vec - DataBeers Tuscany
Data Beers Tuscany
 
Autenticazione Continua Durante la Navigazione Web Basata sulla Dinamica del ...
Autenticazione Continua Durante la Navigazione Web Basata sulla Dinamica del ...Autenticazione Continua Durante la Navigazione Web Basata sulla Dinamica del ...
Autenticazione Continua Durante la Navigazione Web Basata sulla Dinamica del ...danieledegan
 
Implementazione in Java di plugin Maven per algoritmi di addestramento per re...
Implementazione in Java di plugin Maven per algoritmi di addestramento per re...Implementazione in Java di plugin Maven per algoritmi di addestramento per re...
Implementazione in Java di plugin Maven per algoritmi di addestramento per re...
Francesco Komauli
 
Marketing Aumentato e Intelligenza Artificiale - Master MUMM
Marketing Aumentato e Intelligenza Artificiale - Master MUMMMarketing Aumentato e Intelligenza Artificiale - Master MUMM
Marketing Aumentato e Intelligenza Artificiale - Master MUMM
MasterMarketing
 
Domain Driven Design e CQRS
Domain Driven Design e CQRSDomain Driven Design e CQRS
Domain Driven Design e CQRS
Manuel Scapolan
 
Tesi Todone
Tesi TodoneTesi Todone
Tesi Todone
guestb31690c
 
Guida alla gamification
Guida alla gamificationGuida alla gamification
Guida alla gamification
Fabio Viola
 
Graduation Thesis Presentation
Graduation Thesis PresentationGraduation Thesis Presentation
Graduation Thesis Presentationperceval84
 
Software testing with mocking framework (Android App)
Software testing with mocking framework (Android App)Software testing with mocking framework (Android App)
Software testing with mocking framework (Android App)
gioacchinolonardo
 
Extended Summary of "Evolutionary Optimization of Deep Learning Activation Fu...
Extended Summary of "Evolutionary Optimization of Deep Learning Activation Fu...Extended Summary of "Evolutionary Optimization of Deep Learning Activation Fu...
Extended Summary of "Evolutionary Optimization of Deep Learning Activation Fu...
MicheleScomina
 
Anti pattern se lo conosci lo eviti
Anti pattern se lo conosci lo evitiAnti pattern se lo conosci lo eviti
Anti pattern se lo conosci lo eviti
Simone Federici
 
Sviluppo di un Framework semantico per la contestualizzazione delle activity
Sviluppo di un Framework semantico per la contestualizzazione delle activitySviluppo di un Framework semantico per la contestualizzazione delle activity
Sviluppo di un Framework semantico per la contestualizzazione delle activity
Michele Palumbo
 

Similar to Extended summary of 'Deep Learning for Video Game Playing' (20)

Progetto e Sviluppo di un Sistema per il Gioco degli Scacchi Tridimensionali
Progetto e Sviluppo di un Sistema per il Gioco degli Scacchi TridimensionaliProgetto e Sviluppo di un Sistema per il Gioco degli Scacchi Tridimensionali
Progetto e Sviluppo di un Sistema per il Gioco degli Scacchi Tridimensionali
 
Game2vec
Game2vecGame2vec
Game2vec
 
Linux Day 2019 Catania - Deep Learning
Linux Day 2019 Catania - Deep LearningLinux Day 2019 Catania - Deep Learning
Linux Day 2019 Catania - Deep Learning
 
Thesis marco de_marco
Thesis marco de_marcoThesis marco de_marco
Thesis marco de_marco
 
Identificare feature significative per l’analisi nell’informatica forense uti...
Identificare feature significative per l’analisi nell’informatica forense uti...Identificare feature significative per l’analisi nell’informatica forense uti...
Identificare feature significative per l’analisi nell’informatica forense uti...
 
Presentazione eXtreme Programming
Presentazione eXtreme ProgrammingPresentazione eXtreme Programming
Presentazione eXtreme Programming
 
Gamification - Fabio Viola
Gamification - Fabio ViolaGamification - Fabio Viola
Gamification - Fabio Viola
 
Design of G.E.M.I.X.: Game Engine Movie Interaction eXperience
Design of G.E.M.I.X.: Game Engine Movie Interaction eXperienceDesign of G.E.M.I.X.: Game Engine Movie Interaction eXperience
Design of G.E.M.I.X.: Game Engine Movie Interaction eXperience
 
Game2Vec - DataBeers Tuscany
Game2Vec - DataBeers TuscanyGame2Vec - DataBeers Tuscany
Game2Vec - DataBeers Tuscany
 
Autenticazione Continua Durante la Navigazione Web Basata sulla Dinamica del ...
Autenticazione Continua Durante la Navigazione Web Basata sulla Dinamica del ...Autenticazione Continua Durante la Navigazione Web Basata sulla Dinamica del ...
Autenticazione Continua Durante la Navigazione Web Basata sulla Dinamica del ...
 
Implementazione in Java di plugin Maven per algoritmi di addestramento per re...
Implementazione in Java di plugin Maven per algoritmi di addestramento per re...Implementazione in Java di plugin Maven per algoritmi di addestramento per re...
Implementazione in Java di plugin Maven per algoritmi di addestramento per re...
 
Marketing Aumentato e Intelligenza Artificiale - Master MUMM
Marketing Aumentato e Intelligenza Artificiale - Master MUMMMarketing Aumentato e Intelligenza Artificiale - Master MUMM
Marketing Aumentato e Intelligenza Artificiale - Master MUMM
 
Domain Driven Design e CQRS
Domain Driven Design e CQRSDomain Driven Design e CQRS
Domain Driven Design e CQRS
 
Tesi Todone
Tesi TodoneTesi Todone
Tesi Todone
 
Guida alla gamification
Guida alla gamificationGuida alla gamification
Guida alla gamification
 
Graduation Thesis Presentation
Graduation Thesis PresentationGraduation Thesis Presentation
Graduation Thesis Presentation
 
Software testing with mocking framework (Android App)
Software testing with mocking framework (Android App)Software testing with mocking framework (Android App)
Software testing with mocking framework (Android App)
 
Extended Summary of "Evolutionary Optimization of Deep Learning Activation Fu...
Extended Summary of "Evolutionary Optimization of Deep Learning Activation Fu...Extended Summary of "Evolutionary Optimization of Deep Learning Activation Fu...
Extended Summary of "Evolutionary Optimization of Deep Learning Activation Fu...
 
Anti pattern se lo conosci lo eviti
Anti pattern se lo conosci lo evitiAnti pattern se lo conosci lo eviti
Anti pattern se lo conosci lo eviti
 
Sviluppo di un Framework semantico per la contestualizzazione delle activity
Sviluppo di un Framework semantico per la contestualizzazione delle activitySviluppo di un Framework semantico per la contestualizzazione delle activity
Sviluppo di un Framework semantico per la contestualizzazione delle activity
 

Recently uploaded

Convegno SPEKTRA da A2A - 28 maggio 2024 | CARNI Marco
Convegno SPEKTRA da A2A - 28 maggio 2024 | CARNI MarcoConvegno SPEKTRA da A2A - 28 maggio 2024 | CARNI Marco
Convegno SPEKTRA da A2A - 28 maggio 2024 | CARNI Marco
Servizi a rete
 
onvegno SPEKTRA da A2A - 28 maggio 2024 | COLLA Simone
onvegno SPEKTRA da A2A - 28 maggio 2024 | COLLA Simoneonvegno SPEKTRA da A2A - 28 maggio 2024 | COLLA Simone
onvegno SPEKTRA da A2A - 28 maggio 2024 | COLLA Simone
Servizi a rete
 
Convegno SPEKTRA da A2A - 28 maggio 2024 | ALESIANO Yuri
Convegno SPEKTRA da A2A - 28 maggio 2024 | ALESIANO YuriConvegno SPEKTRA da A2A - 28 maggio 2024 | ALESIANO Yuri
Convegno SPEKTRA da A2A - 28 maggio 2024 | ALESIANO Yuri
Servizi a rete
 
Convegno SPEKTRA da A2A - 28 maggio 2024 | TROIANO Luigia
Convegno SPEKTRA da A2A - 28 maggio 2024 | TROIANO LuigiaConvegno SPEKTRA da A2A - 28 maggio 2024 | TROIANO Luigia
Convegno SPEKTRA da A2A - 28 maggio 2024 | TROIANO Luigia
Servizi a rete
 
Convegno SPEKTRA da A2A - 28 maggio 2024 | RUGGIERI Alfredo
Convegno SPEKTRA da A2A - 28 maggio 2024 | RUGGIERI AlfredoConvegno SPEKTRA da A2A - 28 maggio 2024 | RUGGIERI Alfredo
Convegno SPEKTRA da A2A - 28 maggio 2024 | RUGGIERI Alfredo
Servizi a rete
 
Convegno SPEKTRA da A2A - 28 maggio 2024 | VEIRANA Francesco
Convegno SPEKTRA da A2A - 28 maggio 2024 | VEIRANA FrancescoConvegno SPEKTRA da A2A - 28 maggio 2024 | VEIRANA Francesco
Convegno SPEKTRA da A2A - 28 maggio 2024 | VEIRANA Francesco
Servizi a rete
 
Convegno SPEKTRA da A2A - 28 maggio 2024 | BERTELLA Alessio
Convegno SPEKTRA da A2A - 28 maggio 2024 | BERTELLA AlessioConvegno SPEKTRA da A2A - 28 maggio 2024 | BERTELLA Alessio
Convegno SPEKTRA da A2A - 28 maggio 2024 | BERTELLA Alessio
Servizi a rete
 
BIM obblighi e opportunità (nicolafurcolo.it) R.pdf
BIM obblighi e opportunità (nicolafurcolo.it) R.pdfBIM obblighi e opportunità (nicolafurcolo.it) R.pdf
BIM obblighi e opportunità (nicolafurcolo.it) R.pdf
Nicola Furcolo
 
Convegno SPEKTRA da A2A - 28 maggio 2024 | UBERTI FOPPA Bianca
Convegno SPEKTRA da A2A - 28 maggio 2024 | UBERTI FOPPA BiancaConvegno SPEKTRA da A2A - 28 maggio 2024 | UBERTI FOPPA Bianca
Convegno SPEKTRA da A2A - 28 maggio 2024 | UBERTI FOPPA Bianca
Servizi a rete
 
Convegno SPEKTRA da A2A - 28 maggio 2024 | ORSENIGO Tiziano
Convegno SPEKTRA da A2A - 28 maggio 2024 | ORSENIGO TizianoConvegno SPEKTRA da A2A - 28 maggio 2024 | ORSENIGO Tiziano
Convegno SPEKTRA da A2A - 28 maggio 2024 | ORSENIGO Tiziano
Servizi a rete
 
Convegno SPEKTRA da A2A - 28 maggio 2024 | NERELLI Andrea
Convegno SPEKTRA da A2A - 28 maggio 2024 | NERELLI AndreaConvegno SPEKTRA da A2A - 28 maggio 2024 | NERELLI Andrea
Convegno SPEKTRA da A2A - 28 maggio 2024 | NERELLI Andrea
Servizi a rete
 

Recently uploaded (11)

Convegno SPEKTRA da A2A - 28 maggio 2024 | CARNI Marco
Convegno SPEKTRA da A2A - 28 maggio 2024 | CARNI MarcoConvegno SPEKTRA da A2A - 28 maggio 2024 | CARNI Marco
Convegno SPEKTRA da A2A - 28 maggio 2024 | CARNI Marco
 
onvegno SPEKTRA da A2A - 28 maggio 2024 | COLLA Simone
onvegno SPEKTRA da A2A - 28 maggio 2024 | COLLA Simoneonvegno SPEKTRA da A2A - 28 maggio 2024 | COLLA Simone
onvegno SPEKTRA da A2A - 28 maggio 2024 | COLLA Simone
 
Convegno SPEKTRA da A2A - 28 maggio 2024 | ALESIANO Yuri
Convegno SPEKTRA da A2A - 28 maggio 2024 | ALESIANO YuriConvegno SPEKTRA da A2A - 28 maggio 2024 | ALESIANO Yuri
Convegno SPEKTRA da A2A - 28 maggio 2024 | ALESIANO Yuri
 
Convegno SPEKTRA da A2A - 28 maggio 2024 | TROIANO Luigia
Convegno SPEKTRA da A2A - 28 maggio 2024 | TROIANO LuigiaConvegno SPEKTRA da A2A - 28 maggio 2024 | TROIANO Luigia
Convegno SPEKTRA da A2A - 28 maggio 2024 | TROIANO Luigia
 
Convegno SPEKTRA da A2A - 28 maggio 2024 | RUGGIERI Alfredo
Convegno SPEKTRA da A2A - 28 maggio 2024 | RUGGIERI AlfredoConvegno SPEKTRA da A2A - 28 maggio 2024 | RUGGIERI Alfredo
Convegno SPEKTRA da A2A - 28 maggio 2024 | RUGGIERI Alfredo
 
Convegno SPEKTRA da A2A - 28 maggio 2024 | VEIRANA Francesco
Convegno SPEKTRA da A2A - 28 maggio 2024 | VEIRANA FrancescoConvegno SPEKTRA da A2A - 28 maggio 2024 | VEIRANA Francesco
Convegno SPEKTRA da A2A - 28 maggio 2024 | VEIRANA Francesco
 
Convegno SPEKTRA da A2A - 28 maggio 2024 | BERTELLA Alessio
Convegno SPEKTRA da A2A - 28 maggio 2024 | BERTELLA AlessioConvegno SPEKTRA da A2A - 28 maggio 2024 | BERTELLA Alessio
Convegno SPEKTRA da A2A - 28 maggio 2024 | BERTELLA Alessio
 
BIM obblighi e opportunità (nicolafurcolo.it) R.pdf
BIM obblighi e opportunità (nicolafurcolo.it) R.pdfBIM obblighi e opportunità (nicolafurcolo.it) R.pdf
BIM obblighi e opportunità (nicolafurcolo.it) R.pdf
 
Convegno SPEKTRA da A2A - 28 maggio 2024 | UBERTI FOPPA Bianca
Convegno SPEKTRA da A2A - 28 maggio 2024 | UBERTI FOPPA BiancaConvegno SPEKTRA da A2A - 28 maggio 2024 | UBERTI FOPPA Bianca
Convegno SPEKTRA da A2A - 28 maggio 2024 | UBERTI FOPPA Bianca
 
Convegno SPEKTRA da A2A - 28 maggio 2024 | ORSENIGO Tiziano
Convegno SPEKTRA da A2A - 28 maggio 2024 | ORSENIGO TizianoConvegno SPEKTRA da A2A - 28 maggio 2024 | ORSENIGO Tiziano
Convegno SPEKTRA da A2A - 28 maggio 2024 | ORSENIGO Tiziano
 
Convegno SPEKTRA da A2A - 28 maggio 2024 | NERELLI Andrea
Convegno SPEKTRA da A2A - 28 maggio 2024 | NERELLI AndreaConvegno SPEKTRA da A2A - 28 maggio 2024 | NERELLI Andrea
Convegno SPEKTRA da A2A - 28 maggio 2024 | NERELLI Andrea
 

Extended summary of 'Deep Learning for Video Game Playing'

  • 1. ANNO ACCADEMICO 2021/2022 DIPARTIMENTO DI INGEGNERIA E ARCHITETTURA TESI TRIENNALE IN INGEGNERIA ELETTRONICA ED INFORMATICA Extendedsummary of “Deep Learning for Video Game Playing” Candidato: Relatore: Kevin Vargu Prof. Andrea DeLorenzo
  • 2. INTRODUZIONE In questo articolo è offerta una panoramicasui recenti sviluppi riguardanti l’applicazione del deep learning nei videogiochi. Questi ultimi offrono una grandevarietà di sfide che dipendono non solo dal genere ma anche dal gioco stesso, presentando così un’ambiente ideale per testare quelli che sono i progressi nel campo. L’obiettivo di questo articolo è visionarele tecniche di deep learning utilizzate per giocare bene ai videogiochi, soffermandosisu diversi generi e sulle difficoltà che si incontrano in essi. Esistono inoltre diverse sfide aperte per l’intelligenza artificiale nell’ambiente videoludico di cui si sta cercando soluzione anche attraverso il deep learning. PANORAMICA DEEP LEARNING NEI VIDEOGIOCHI La base del deep learning sono le reti neurali artificiali (ANNs), funzionidefinite dalla loro struttura di rete e dal peso di ciascuna connessione interna; in base all’architettura si possono suddividere in due categorie: reti neurali feedforward, cheprendono in ingresso un singolo input e danno come risultato la probabilità o il valore di ogni possibile azione, e reti neurali ricorrenti (RNN), nelle quali tra gli input sono presenti informazioniriguardantilo stato precedente della rete. Le ANNs possono essere ottimizzate per giocare ai videogiochi e le principali metodologie per farlo sono le seguenti: 1. Supervised learning Un modello, cioè un programma allenato attraverso un insieme di dati con l’obiettivo di operaresu di essi, è addestrato attraverso esempi. Durantel’allenamento gli viene chiesto di prendere decisioni di cui è nota la risposta corretta, usando poi l’errorecommesso per aggiornarlo, con l’obiettivo di farlo operare con esempi mai incontrati. I dati necessari possono essere fornitidalla registrazione di una persona che gioca o da un algoritmo che è in grado di completare il gioco, usando poi le informazioniacquisite non solo per giocare ma anche per imparare a prevedere le possibili transazionidi stato di un gioco. 2. Unsupervised learning Viene fornito come input un insieme di dati con l’obiettivo di trovare caratteristiche comuni al suo interno ed effettuare operazionidi interesse.
  • 3. 3. Reinforcement learning Un agente, cioè un’entità che opera in un’ambiente per raggiungere degli obiettivi, interagisce con l’ambiente circostante e quest’ultimo fornisce dei premi sui quali l’agente si baserà per le azionifuture. Nei videogiochi i giocatori sono modellati come agenti e i premi sono i risultati del gioco. Gli approccimaggiormente usati sono: temporal difference (TD) learning, Q-learning, SARSA (State-Action-Reward-State- Action) e i metodi Actor-Critic. 4. Approcci evolutivi Spesso riferiti come neuroevolutivi(NE), sono approcciin grado di ottimizzare la struttura della rete, offrendo potenzialmente la possibilità di trovareautomaticamente l’architettura migliore per giocare a uno specifico videogioco. 5. Approcci di apprendimento ibrido Metodi che combinano deep learning con altri approccidi machine learning con l’obiettivo di sfruttareal meglio i pregi di entrambi. METODI DI DEEP LEARNING PER I VIDEOGIOCHI Ciascun genere di videogioco deve essere considerato come un ambiente autonomo data la ponderosa differenza che due diversi generi possono avere. Risulta quindi indispensabile trattare separatamente per ciascuno di essi le sfide offerte, le piattaforme utilizzate per la ricercae i metodi impiegati. A. Giochi Arcade Sono videogiochi sviluppati prevalentemente in due dimensioni dovei requisiti principali sono riflessi rapidi e abilità di lettura dell’ambiente circostante. La piattaforma più utilizzata per il deep learning è l’Arcade Learning Environment(ALE), che estrae il punteggio del gioco e il contenuto della RAM per poterli adoperare successivamente per allenare l’agente. Il primo algoritmo che ha mostrato prestazioni paragonabilia quelle di un umano esperto è stato Deep Q-Network (DQN), basato sul Q- learning, nel quale le esperienze di gioco sono mantenute in memoria permettendo così di riutilizzarle e imparare da esse. Nel corso degli anni è stato modificato più volte portando a diverse versioni che hanno cercato di migliorarne le prestazioni e i punti deboli. DQNnon è stato l’unico metodo di reinforcement learning utilizzato, a esso sono seguiti AsynchronousAdvantageActor-Critic (A3C) e sue
  • 4. varianti come AdvantageActor-Critic (A2C) e Unsupervised Reinforcement and Auxiliary Learning (UNREAL), actor-critic method with experience replay (ACER),ImportanceWeighted Actor-Learner Architecture (IMPALA), TrustRegion Policy Optimization (TRPO) e Proximal Policy Optimization (PPO). Il reinforcement learning non è stata l’unica strategia utilizzata, approcci neuroevolutivicome le Evolution Strategies (ES), Novelty search e Deep Ga hanno ottenuto risultati migliori di DQN, allo stesso modo di approcci di supervised learning come UCTtoClassification; questi ultimi si sono pure dimostrati capaci di ridurrele dimensioni della rete e migliorare le prestazioni. Tra i giochi Arcade è di particolare interesse Montezuma’s Revenge, gioco con premi quasi assenti che rappresenta una sfida per il reinforcement learning. I metodi classici dei giochi Arcade ottengono risultati quasi nulli, portando alla necessità di nuovestrategie che cercano di favorirel’esplorazionestimolando la curiosità, come Pseudo- counts che premia configurazionidi pixel inaspettate. Metodi promettenti sono hierarchical-DQN(h-DQN) e Ape-X DQN, dove vengono separati i processi decisionali da quelli operativi, e Deep Q- learning fromDemonstrations (DQfD) checontiene una memoria inizializzata con dati di gioco forniti da un giocatore esperto. B. Giochi di corsa Giochi dove si controlla un veicolo, gestendone eventualmente le risorse, con l’obiettivo di completare un circuito nel più breve tempo possibile, sfruttando al meglio l’ambiente circostante e interagendo con avversari; ambiente popolareper reinforcement learning è TORCS. A causa della continuità e dell’elevata dimensione dello spazio d’azione algoritmi end-to-end come DQNnon possono essere utilizzati, portando alla ricercadi soluzioni alternative basate principalmente su due paradigmi: sistemi che mappano dalle immagini alle azioni e sistemi che analizzano i dati forniti per prenderedecisioni. Direct perception è un approccio intermedio, dove una rete converte le immagini in indicatori significativi, dai quali vengono prese le decisioni. C. First-Person Shooters (FPS) Sfida principale è l’individuare nemici ed eliminarli sfruttando al meglio l’ambiente circostante, cercando di prevederele loro mosse e in alcuni casi lavorando in squadra.
  • 5. Una piattaforma popolareè VizDoom, permette agli agenti di giocare a Doomed è stata sede della Visual Doom AI Competition 2016, nella quale una rete neurale feedforward addestrata con A3Cusando reward shaping, per gestire il meccanismo di assegnazione dei premi, e curriculumlearning, per velocizzarel’apprendimento, ha offerto le prestazioni migliori in caso di ambienti già incontrati, mentre Direct FuturePrediction (DFP), la cui architettura si basa su tre reti che gestiscono i pixel dello schermo, lo stato dell’agente e il suo obiettivo, si è adeguato meglio ad ambienti nuovi. Altri metodi utilizzati nei giochi FPS sono UNREAL, Distill and Transfer Learning (Distral) ed Intrinsic Curiosity Module (ICM). D. Giochi Open-World Giochi con grandelibertà di azione, con obiettivi che possono non esistere o non essere direttamente individuabili, formando un’ambiente ideale per metodi di reinforcement learning che riutilizzano durante il gioco le informazionigià acquisite, come per esempio HierarchicalDeep Reinforcement Learning Network (H-DRLN). Altre tecniche utilizzate sono Teacher-StudentCurriculumLearning (TSCL), formato da un insegnante che gestisce degli studenti che svolgono compiti specifici, RecurrentMemory Q-Network (RMQN) e Feedback Recurrent Memory Q-Network (FRMQN), capaci di risolvere problemi che richiedono memoria e percezione dell’ambiente circostante. Piattaforma popolare è ProjectMalmo, costruita su Minecraft. E. Giochi di strategia in tempo reale Giocatore controlla un vasto insieme di unità con l’obiettivo di sopraffarel’avversario potendo fare le propriemosse in qualsiasi istante. La sfida principale è organizzarepianicomplessi cercando di prevedere le azioni nemiche. StarCraftè il gioco più studiato; La Brood War API (BWAPI) permette di comunicarecon esso per estrarre informazioni; ci sono però poche tecniche di deep learning. L’ambiente è molto complesso a causa dei multipli agenti da controllare contemporaneamente e dell’assenza di premi in gioco oltre a chi vince la partita. Il secondo problema si può risolvere aggiungendo un premio come differenza tra danni inflitti e subiti. Gli agenti invece non possono essere allenati individualmente poiché non sarebbe possibile individuare chi ha contribuito al raggiungimento dell’obiettivo. Le soluzioni possono
  • 6. essere allenare una rete che controlla tutti gli agenti, come Multiagent Bidirectionally-Coordinated Network (BiCNet) o CounterfactualMulti- Agent (COMA), o allenare ciascun agente trattando gli altri come parte dell’ambiente, Independent Q-learning (IQL). F. Giochi sportivi di squadra Giochi che tentano di simulare il più realisticamente possibile sport di squadra. Le piattaforme più utilizzate si basano sul calcio, come RoboCup 2D Half- Field-Offense (HFO) dovedue squadresi alternano in attacco e difesa, nel quale Inverting Gradients bounding approach ha portato ai risultati migliori. G. Giochi di avventura testuale Gioco interattivo dove ai giocatori viene raccontata una storia a cui prendono parte attivamente, scegliendo le azioni da compiere da una lista o scrivendole. Data la natura di questa tipologia di giochi, è stata sviluppata un’architettura della rete apposita, chiamata LSTM-DQN, inoltre per migliorare le prestazioni la ricerca si è spostata verso l’apprendimento di modelli linguistici e “l’immersione di parole”, tecniche utilizzate da Deep Reinforcement Relevance Net (DRRN), Golovin Agent e Action Elimination Network (AEN). I risultati ottenuti sono stati adoperati anche all’esterno di questa tipologia di giochi, per esempio deep distributed recurrentQ-network (DDRQN) ha implementato un protocollo per facilitare la comunicazione tra gli agenti. SFIDE APERTE Nonostante i progressi ottenuti, esistono ancora diverse sfide aperte per il deep learning che possono essere divise in quattro categorie: A. Proprietà dell’agente La maggioranza dei lavori di deep learning è focalizzata sul completamento di un singolo gioco, senza riuscire a trasmettere le conoscenze acquisite in giochi differenti. Non è inoltre sufficiente riuscire a perfezionareun gioco, un agente dovrebbeessere in grado di adattare le proprieazioni in base all’ambiente circostante e simulare i comportamenti umani, modificando le prestazioni a seconda delle necessità e degli obiettivi.
  • 7. I moderni approccidi deep learning non sono ancora in grado di completare al meglio tutte le sfide offerte dai videogiochi, quelli che offrono un basso numero di premi, che richiedono un’elevata pianificazione delle azioni da svolgere o che richiedono di controllare più agenti contemporaneamente sono ancora un ostacolo. B. Utilizzo nell’industria videoludica La maggior parte delle architetture dei modernigiochi derivano da soluzioni adottate in un periodo in cui non era possibile utilizzare l’IA. Riprogettare nuovi giochi libererebbe da queste limitazioni e permetterebbe un migliore utilizzo dell’IA, come per creare e addestrare NPC, poiché ad oggi è utilizzata maggiormente per testare i giochi. C. Apprendimento di modelli di gioco Gran parte dei lavoridi deep learning per i videogiochiaddestra una rete neurale a comportarsi in base al suo stato, senza comprenderele meccaniche del gioco, che permetterebbero all’agente non solo di performaremeglio ma anche di adeguarsi più facilmente ad altri videogiochi. D. Risorse computazionali A causa dei modelli computazionalipiù avanzati e dell’elevato numero di agenti diventa un problema la velocità computazionale, portando alla ricerca di nuoviapprocci in grado di alleggerire il carico di lavoro. CONCLUSIONI Dall’articolo si è evidenziato che la maggior parte degli approccidi deep learning per giocare ai videogiochi si basano sul reinforcement learning, anche se alternative competitive sono fornite da algoritmi evolutivi e di supervised learning, riuscendo a superarele prestazioni umane nei videogiochipiù semplici, mentre si stanno ancora svolgendo studi per completare quelli più complicati e affrontaresfide diverse dal completamento di un gioco. FONTI N. Justesen, P. Bontrager, J. Togelius and S. Risi, "Deep Learning for Video Game Playing," in IEEE Transactions on Games, vol. 12, no. 1, pp. 1-20, March 2020, doi: 10.1109/TG.2019.2896986.