Artificial intelligence for video games
A.A. 2020/2021
Obiettivi formativi
Obiettivo di questo insegnamento è istruire gli studenti riguardo all'implementazione di tecniche di intelligenza artificiale in un video game.
A questo scopo, tecniche sia di base che avanzate verranno presentate e implementate facendo uso di un game engine.
A questo scopo, tecniche sia di base che avanzate verranno presentate e implementate facendo uso di un game engine.
Risultati apprendimento attesi
Lo studente dovrà essere in grado di illustrare in maniera efficace e critica gli algoritmi e le tecniche euristiche adottate per l'implementazione dell'intelligenza artificiale in un videogioco e contestualizzarle nell'ambito dei prodotti presenti oggi sul mercato. Inoltre, lo studente dovrà essere in grado di applicare le tecniche presentate durante il corso al fine di progettare e implementare la parte di intelligenza artificiale di un videogioco di media complessità.
Periodo: Secondo semestre
Modalità di valutazione: Esame
Giudizio di valutazione: voto verbalizzato in trentesimi
Corso singolo
Questo insegnamento non può essere seguito come corso singolo. Puoi trovare gli insegnamenti disponibili consultando il catalogo corsi singoli.
Programma e organizzazione didattica
Edizione unica
Responsabile
Periodo
Secondo semestre
Il corso sarà tenuto in presenza, qualora le condizioni sanitarie lo permettessero. In caso contrario il corso sarà tenuto online, utilizzando Teams. La registrazione delle lezioni online rimarrà disponibile per tutta la durata del corso sulla piattaforma Ariel.
Programma
I principali argomenti trattati sono:
- Nozioni base di game design
- Uso dell'I.A. in different generi di gioco
- Nozioni di base sui game engine
- Planning
- Movimento e pathfinding
- Processi decisionali
- Decizioni startegiche e tattiche
- Coordinazione di agenti
- Generazione procedurale di contenuti
- Algoritmi genetici
- Approcci implementativi
- Nozioni base di game design
- Uso dell'I.A. in different generi di gioco
- Nozioni di base sui game engine
- Planning
- Movimento e pathfinding
- Processi decisionali
- Decizioni startegiche e tattiche
- Coordinazione di agenti
- Generazione procedurale di contenuti
- Algoritmi genetici
- Approcci implementativi
Prerequisiti
È richiesto avere nozioni di programmazione in un linguaggio orientato agli oggetti.
Metodi didattici
Lezioni frontali
Materiale di riferimento
Sito web: http://aiforvideogames.ariel.ctu.unimi.it/
Testo di riferimento: Ian Millington and John Funge, 2009, "Artificial Intelligence for Games", seconda edizione, ISBN:0123747317
Ulteriore materiale integrativo sarà reso disponibile sul sito web dell'insegnamento
Testo di riferimento: Ian Millington and John Funge, 2009, "Artificial Intelligence for Games", seconda edizione, ISBN:0123747317
Ulteriore materiale integrativo sarà reso disponibile sul sito web dell'insegnamento
Modalità di verifica dell’apprendimento e criteri di valutazione
L'esame si compone di due parti.
La prima parte è un prova orale sugli argomenti teorici dell'insegnamento e contribuisce a due terzi del voto finale.
La seconda parte è la discussione di un progetto, da svolgere individualmente, in cui lo studente deve implementare alcune tecniche di intelligenza artificiale apprese a lezione usando un game engine. La seconda prova contribuisce a due terzi del voto finale.
Il voto finale, espresso in trentesimi, tiene conto del livello di conoscenza degli argomenti, della chiarezza espositiva e della proprieta' di linguaggio.
La prima parte è un prova orale sugli argomenti teorici dell'insegnamento e contribuisce a due terzi del voto finale.
La seconda parte è la discussione di un progetto, da svolgere individualmente, in cui lo studente deve implementare alcune tecniche di intelligenza artificiale apprese a lezione usando un game engine. La seconda prova contribuisce a due terzi del voto finale.
Il voto finale, espresso in trentesimi, tiene conto del livello di conoscenza degli argomenti, della chiarezza espositiva e della proprieta' di linguaggio.
Docente/i
Ricevimento:
giovedì 14:00 - 16:00 previo appuntamento via mail
Ufficio 3003