CODICE 98216 ANNO ACCADEMICO 2022/2023 CFU 5 cfu anno 2 INGEGNERIA ELETTRONICA 8732 (LM-29) - GENOVA 5 cfu anno 2 ENGINEERING TECHNOLOGY FOR STRATEGY (AND SECURITY) 10728 (LM/DS) - GENOVA SETTORE SCIENTIFICO DISCIPLINARE ING-INF/01 LINGUA Italiano (Inglese a richiesta) SEDE GENOVA PERIODO 1° Semestre MATERIALE DIDATTICO AULAWEB PRESENTAZIONE Il corso presenta il tema della realizzazione di agenti autonomi che si muovono e interagiscono in un ambiente incognito. In particolare, l'ambiente è rappresentato da un mondo virtuale realizzato tramite la tecnolgia dei videogiochi. Verranno affrontate e approfindite le tematiche del Reinforcement Learning e del Deep Reinforcement Learning. OBIETTIVI E CONTENUTI OBIETTIVI FORMATIVI Il corso fornisce metodologie e strumenti per lo sviluppo di sistemi software, secondo criteri di elevata efficienza e produttività. Viene offerta una panoramica generale sui sistemi multimediali e sulla modalità di interazione con gli utenti. Sono anche offerti elementi di programmazione di videogiochi e simulazione. OBIETTIVI FORMATIVI (DETTAGLIO) E RISULTATI DI APPRENDIMENTO Scopo del corso è fornire le basi per la progettazione e lo sviluppo di algortimi software in grado di agire autonomamente all'interno di un ambiente sconosciuto. Lo studente viene introdotto a diversi concetti di Reinforcement Learning e aiutato a comprenderli attraverso esercizi svolti al calcolatore durante le lezioni frontali utilizzando notebook Jupyter e il linguaggio Python. L'insegnamento si pone nella direzione di formare una figura professionale capace di progettare e realizzare complesse applicazioni software utilizzando algoritmi di intelligenza artificiale. PREREQUISITI Lo studente deve possedere conoscenze base di programmazione e di machine learning. MODALITA' DIDATTICHE Il corso è costruito da una parte di lezione frontale e una parte di esercitazione. Durante la lezione frontale, il docente presenta gli argomenti fornendo sempre esempi di codice che vengono provati sfruttando gli ambienti OpenAI Gym. Gli studenti possono utilizzare i propri calcolatori durante la lezione per mettere in pratica quanto proposto dal docente. Durante le esercitazioni, gli studenti devono affrontare al calcolatore problemi reali che possono essere risolti applicando le tecniche viste durante le lezioni frontali. PROGRAMMA/CONTENUTO Il seguente elenco riporta i contenuti affrontati a lezione. I notebook con le note possono essere scaricati qui: Reinforcement Learning e Deep Reinforcement Learning 01 - Markov Decision Process 02 - Dynamic Programming 03 - Exploration vs Exploitation 04 - Policy Evalutaion 05 - Policy Improvement 06 - Learning and Planning 07 - Function Approximation 08 - Deep Q-network 09 - Actor-Critic methods 10 - DDPG and PPO TESTI/BIBLIOGRAFIA Slides e notebooks delle lezioni (scaricabili da GitHub) Per approfondire (solo per chi è interessato) - Miguel Morales, Grokking Deep Reinforcement Learning, Manning - Richard S. Sutton, Andrew G. Barto, Reinforcement Learning: an Introduction, MIT Press DOCENTI E COMMISSIONI RICCARDO BERTA Ricevimento: Il docente riceve su appuntamento, per prendere appuntamento è possibile contattare il docente tramite Microsoft Teams (preferibilmente) o tramite email a riccardo.berta@unige.it Commissione d'esame RICCARDO BERTA (Presidente) ALESSANDRO DE GLORIA FRANCESCO BELLOTTI (Presidente Supplente) LEZIONI INIZIO LEZIONI https://corsi.unige.it/8732/p/studenti-orario Orari delle lezioni L'orario di questo insegnamento è consultabile all'indirizzo: Portale EasyAcademy ESAMI MODALITA' D'ESAME L'esame consiste in una interrogazione orale sugli argomenti teorici presentati a lezione oppure sull'approfondimento di un argomento sulla base di un recente articolo scientifico. In particolare, lo studente deve dimostrare di aver comprso appieno i concetti alla base dello sviluppo di agenti autonomi sfruttando il reinforcement learning. MODALITA' DI ACCERTAMENTO Durante l'orale, il docente chiede allo studente di illustrare alcuni concetti imparati a lezione. Per ogni concetto, lo studente deve anche presentare le condizioni per la sua applicazione, gli eventuali vantaggi e svantaggi. Durante la prova, il docente accerta che i concetti siano stati appresi ad un livello di conoscenza tale da permettere allo studente di applicarli in casi reali. Calendario appelli Data appello Orario Luogo Tipologia Note 17/02/2023 09:00 GENOVA Esame su appuntamento 15/09/2023 09:00 GENOVA Esame su appuntamento