ID:
000983L
Durata (ore):
48
CFU:
6
SSD:
INFORMATICA
Sede:
PESCARA
Url:
ECONOMIA E INFORMATICA PER L'IMPRESA/CORSO GENERICO Anno: 3
Anno:
2026
Course Catalogue:
Dati Generali
Periodo di attività
Secondo Semestre (11/02/2027 - 18/05/2027)
Syllabus
Obiettivi Formativi
Il corso è volto a fornire conoscenze e competenze fondamentali sull'apprendimento per rinforzo, con particolare attenzione alla comprensione dei principali algoritmi, alla loro implementazione e alla valutazione sperimentale degli agenti.
In particolare, tale obiettivo è correlato ai seguenti risultati di apprendimento.
Conoscenza e comprensione - L'insegnamento intende fornire conoscenze riferite ai concetti fondamentali e al linguaggio dell'apprendimento per rinforzo. Lo studente dovrà comprendere il modello agente-ambiente, i processi decisionali di Markov, le politiche, i ritorni, le funzioni di valore e le equazioni di Bellman; il ruolo dell'esplorazione; le differenze tra metodi Monte Carlo, temporal-difference, on-policy e off-policy; i principi di Q-learning, SARSA, Deep Q-Network, policy gradient, actor-critic e PPO.
Capacità di applicare conoscenza e comprensione - L'insegnamento intende sviluppare la capacità di tradurre un semplice problema decisionale sequenziale in un ambiente di reinforcement learning e di applicare algoritmi appropriati. Lo studente dovrà essere in grado di implementare metodi tabulari, utilizzare librerie per il deep reinforcement learning, addestrare un agente, analizzarne le curve di apprendimento, confrontarlo con semplici baseline e interpretarne criticamente i risultati.
Autonomia di giudizio - Il corso intende sviluppare la capacità di scegliere in modo motivato la rappresentazione dello stato, lo spazio delle azioni, la funzione di ricompensa, l'algoritmo e le metriche di valutazione. Lo studente dovrà inoltre riconoscere fenomeni di instabilità, scarsa esplorazione, overfitting alla simulazione e risultati non riproducibili.
Abilità comunicative - Lo studente dovrà acquisire la capacità di descrivere con linguaggio appropriato un problema di reinforcement learning, motivare le scelte algoritmiche e presentare in modo chiaro codice, esperimenti, risultati e limiti della soluzione proposta.
Capacità di apprendimento - Il corso intende fornire le basi per approfondire autonomamente algoritmi e applicazioni più avanzate, attraverso la consultazione di testi, articoli scientifici, documentazione software e implementazioni disponibili.
In particolare, tale obiettivo è correlato ai seguenti risultati di apprendimento.
Conoscenza e comprensione - L'insegnamento intende fornire conoscenze riferite ai concetti fondamentali e al linguaggio dell'apprendimento per rinforzo. Lo studente dovrà comprendere il modello agente-ambiente, i processi decisionali di Markov, le politiche, i ritorni, le funzioni di valore e le equazioni di Bellman; il ruolo dell'esplorazione; le differenze tra metodi Monte Carlo, temporal-difference, on-policy e off-policy; i principi di Q-learning, SARSA, Deep Q-Network, policy gradient, actor-critic e PPO.
Capacità di applicare conoscenza e comprensione - L'insegnamento intende sviluppare la capacità di tradurre un semplice problema decisionale sequenziale in un ambiente di reinforcement learning e di applicare algoritmi appropriati. Lo studente dovrà essere in grado di implementare metodi tabulari, utilizzare librerie per il deep reinforcement learning, addestrare un agente, analizzarne le curve di apprendimento, confrontarlo con semplici baseline e interpretarne criticamente i risultati.
Autonomia di giudizio - Il corso intende sviluppare la capacità di scegliere in modo motivato la rappresentazione dello stato, lo spazio delle azioni, la funzione di ricompensa, l'algoritmo e le metriche di valutazione. Lo studente dovrà inoltre riconoscere fenomeni di instabilità, scarsa esplorazione, overfitting alla simulazione e risultati non riproducibili.
Abilità comunicative - Lo studente dovrà acquisire la capacità di descrivere con linguaggio appropriato un problema di reinforcement learning, motivare le scelte algoritmiche e presentare in modo chiaro codice, esperimenti, risultati e limiti della soluzione proposta.
Capacità di apprendimento - Il corso intende fornire le basi per approfondire autonomamente algoritmi e applicazioni più avanzate, attraverso la consultazione di testi, articoli scientifici, documentazione software e implementazioni disponibili.
Prerequisiti
Sono richieste conoscenze di base di programmazione e la capacità di leggere, modificare ed eseguire script, preferibilmente in Python.
Sono inoltre utili conoscenze elementari di algebra lineare, probabilità, statistica e calcolo differenziale.
La familiarità con i concetti di base del machine learning e delle reti neurali è utile, ma non indispensabile. I richiami necessari saranno introdotti durante il corso prima di affrontare gli algoritmi di deep reinforcement learning.
Sono inoltre utili conoscenze elementari di algebra lineare, probabilità, statistica e calcolo differenziale.
La familiarità con i concetti di base del machine learning e delle reti neurali è utile, ma non indispensabile. I richiami necessari saranno introdotti durante il corso prima di affrontare gli algoritmi di deep reinforcement learning.
Metodi didattici
Lezioni frontali.
Esercitazioni di programmazione e attività di laboratorio.
Sviluppo guidato di algoritmi e notebook in Python.
Presentazione e discussione di esperimenti svolti con ambienti Gymnasium e librerie per il reinforcement learning.
Realizzazione di un progetto applicativo individuale o di gruppo.
Esercitazioni di programmazione e attività di laboratorio.
Sviluppo guidato di algoritmi e notebook in Python.
Presentazione e discussione di esperimenti svolti con ambienti Gymnasium e librerie per il reinforcement learning.
Realizzazione di un progetto applicativo individuale o di gruppo.
Verifica Apprendimento
Conoscenza e comprensione - L'efficacia formativa dell'insegnamento è verificata attraverso la realizzazione di un progetto applicativo e un colloquio orale individuale.
Il progetto, sviluppato individualmente o in gruppo secondo le indicazioni fornite dal docente, consiste nell'applicazione di uno o più algoritmi di reinforcement learning a un ambiente standard o a un semplice ambiente definito dagli studenti. Il lavoro comprende la formulazione del problema, la definizione di stato, azioni e ricompensa, l'implementazione o l'adattamento del codice, l'addestramento dell'agente, la valutazione sperimentale e la presentazione dei risultati.
Il colloquio orale individuale riguarda i contenuti del programma e il progetto svolto. Esso è volto ad accertare la comprensione dei concetti teorici, degli algoritmi utilizzati e delle scelte effettuate nell'implementazione e nella valutazione.
Capacità di applicare conoscenza e comprensione - Durante la discussione del progetto il docente verifica la capacità dello studente di costruire o utilizzare un ambiente, implementare o configurare un algoritmo, interpretare le curve di apprendimento, confrontare i risultati con una baseline, riconoscere limiti e instabilità e motivare le scelte effettuate.
La valutazione dell'esame è espressa in trentesimi e tiene conto della correttezza del codice e della metodologia sperimentale, della comprensione degli algoritmi, della qualità dell'analisi dei risultati, della chiarezza espositiva e del contributo individuale dello studente.
Gli studenti e le studentesse con disabilità, DSA o altri bisogni educativi speciali possono usufruire di un trattamento individualizzato in sede di esame, nel rispetto della normativa e di quanto previsto nella Carta dei Servizi di Ateneo (https://www.unich.it/sites/default/files/2024-02/carta_dei_servizi_0.pdf), previa intesa con il docente della materia. Per richiedere le misure compensative e dispensative è necessario afferire al Servizio CON_TE_STO seguendo la procedura indicata nella Carta dei Servizi.
Si invitano gli studenti e le studentesse a prendere contatti con la/il docente durante lo svolgimento delle lezioni, o comunque con largo anticipo rispetto alla data dell’appello, per conoscere le modalità di esame e le misure che sono accettate.
Per essere orientati e indirizzati ai diversi servizi offerti dall’Ateneo è possibile contattare il Docente Referente del Dipartimento, Prof. Domenico Raucci..
Il progetto, sviluppato individualmente o in gruppo secondo le indicazioni fornite dal docente, consiste nell'applicazione di uno o più algoritmi di reinforcement learning a un ambiente standard o a un semplice ambiente definito dagli studenti. Il lavoro comprende la formulazione del problema, la definizione di stato, azioni e ricompensa, l'implementazione o l'adattamento del codice, l'addestramento dell'agente, la valutazione sperimentale e la presentazione dei risultati.
Il colloquio orale individuale riguarda i contenuti del programma e il progetto svolto. Esso è volto ad accertare la comprensione dei concetti teorici, degli algoritmi utilizzati e delle scelte effettuate nell'implementazione e nella valutazione.
Capacità di applicare conoscenza e comprensione - Durante la discussione del progetto il docente verifica la capacità dello studente di costruire o utilizzare un ambiente, implementare o configurare un algoritmo, interpretare le curve di apprendimento, confrontare i risultati con una baseline, riconoscere limiti e instabilità e motivare le scelte effettuate.
La valutazione dell'esame è espressa in trentesimi e tiene conto della correttezza del codice e della metodologia sperimentale, della comprensione degli algoritmi, della qualità dell'analisi dei risultati, della chiarezza espositiva e del contributo individuale dello studente.
Gli studenti e le studentesse con disabilità, DSA o altri bisogni educativi speciali possono usufruire di un trattamento individualizzato in sede di esame, nel rispetto della normativa e di quanto previsto nella Carta dei Servizi di Ateneo (https://www.unich.it/sites/default/files/2024-02/carta_dei_servizi_0.pdf), previa intesa con il docente della materia. Per richiedere le misure compensative e dispensative è necessario afferire al Servizio CON_TE_STO seguendo la procedura indicata nella Carta dei Servizi.
Si invitano gli studenti e le studentesse a prendere contatti con la/il docente durante lo svolgimento delle lezioni, o comunque con largo anticipo rispetto alla data dell’appello, per conoscere le modalità di esame e le misure che sono accettate.
Per essere orientati e indirizzati ai diversi servizi offerti dall’Ateneo è possibile contattare il Docente Referente del Dipartimento, Prof. Domenico Raucci..
Testi
R. S. Sutton, A. G. Barto, Reinforcement Learning: An Introduction, MIT Press, 2018.
Il materiale di riferimento principale è costituito da dispense, slide, esempi guidati, notebook e codice resi disponibili o indicati dal docente durante il corso.
Saranno inoltre utilizzate la documentazione ufficiale di Python, NumPy, Gymnasium, PyTorch e Stable-Baselines3 e, ove opportuno, risorse tecniche relative agli ambienti e agli algoritmi impiegati nelle attività pratiche.
Lo studio integrale del testo non è richiesto; i capitoli e i materiali effettivamente oggetto di studio saranno indicati dal docente.
Il materiale di riferimento principale è costituito da dispense, slide, esempi guidati, notebook e codice resi disponibili o indicati dal docente durante il corso.
Saranno inoltre utilizzate la documentazione ufficiale di Python, NumPy, Gymnasium, PyTorch e Stable-Baselines3 e, ove opportuno, risorse tecniche relative agli ambienti e agli algoritmi impiegati nelle attività pratiche.
Lo studio integrale del testo non è richiesto; i capitoli e i materiali effettivamente oggetto di studio saranno indicati dal docente.
Contenuti
Il corso di Reinforcement Learning in Artificial Intelligence introduce i fondamenti teorici e computazionali dell'apprendimento per rinforzo attraverso un percorso progressivo e orientato alla programmazione.
In particolare, vengono presi in esame: l'interazione tra agente e ambiente; i processi decisionali di Markov; politiche, ricompense, ritorni e funzioni di valore; le equazioni di Bellman; il problema dell'esplorazione e dello sfruttamento; i metodi di programmazione dinamica; i metodi Monte Carlo e temporal-difference; SARSA e Q-learning; l'approssimazione delle funzioni di valore; Deep Q-Network; i metodi policy gradient, actor-critic e Proximal Policy Optimization.
Le lezioni sono affiancate da attività pratiche in Python. Gli studenti implementano algoritmi di base e utilizzano ambienti e librerie moderne, tra cui NumPy, Gymnasium, PyTorch e Stable-Baselines3, per addestrare e valutare agenti in semplici problemi decisionali sequenziali.
Particolare attenzione è dedicata alla progettazione dello stato, delle azioni e della funzione di ricompensa, alla valutazione sperimentale degli agenti, alla riproducibilità dei risultati e ai principali problemi di stabilità e affidabilità dell'apprendimento per rinforzo.
In particolare, vengono presi in esame: l'interazione tra agente e ambiente; i processi decisionali di Markov; politiche, ricompense, ritorni e funzioni di valore; le equazioni di Bellman; il problema dell'esplorazione e dello sfruttamento; i metodi di programmazione dinamica; i metodi Monte Carlo e temporal-difference; SARSA e Q-learning; l'approssimazione delle funzioni di valore; Deep Q-Network; i metodi policy gradient, actor-critic e Proximal Policy Optimization.
Le lezioni sono affiancate da attività pratiche in Python. Gli studenti implementano algoritmi di base e utilizzano ambienti e librerie moderne, tra cui NumPy, Gymnasium, PyTorch e Stable-Baselines3, per addestrare e valutare agenti in semplici problemi decisionali sequenziali.
Particolare attenzione è dedicata alla progettazione dello stato, delle azioni e della funzione di ricompensa, alla valutazione sperimentale degli agenti, alla riproducibilità dei risultati e ai principali problemi di stabilità e affidabilità dell'apprendimento per rinforzo.
Lingua Insegnamento
Italiano
Altre informazioni
E-mail: maurizio.parton@unich.it.
WhatsApp o Telegram: 349-5323-199.
WhatsApp o Telegram: 349-5323-199.
Corsi
Corsi
3 anni
No Results Found
Persone
Persone
Docenti di ruolo di Ia fascia
No Results Found