L'insegnamento si propone di dare agli studenti gli strumenti e la formazione necessaria per la comprensione e l'utilizzo dei principali algoritmi di ottimizzazione convessa e di ricerca operativa. L'insegnamento presenta i principali concetti teorici, e si concentra su aspetti modellistici e risultati utili nelle applicazioni, in particolare machine learning e problemi inversi.
L’obiettivo dell'insegnamento è fornire gli strumenti per una conoscenza teorica ed un utilizzo pratico dei principali algoritmi di ottimizzazione utilizzati per l’analisi dei dati.
Al termine del corso lo studente sarà in grado di:
In particolare, le ore di laboratorio permetteranno allo studente di essere in grado di:
Analisi per funzioni di più variabili, algebra lineare, probabilità
Lezioni alla lavagna in cui vengono introdotti i concetti e gli algoritmi da un punto di vista teorico. In laboratorio, tramite l'utilizzo di notebooks, gli algoritmi proposti verranno implementati ed utilizzati per verificarne l'efficacia pratica e i possibili difetti.
Il corso tratterà alcune nozioni di base relative ai problemi di ottimizzazione. Verrà poi trattato il problema della programmazione lineare e l'ottimizzazione di funzioni differenziabili e convesse. Verra' considerata in particolare la convergenza dell'algoritmo del gradiente e l'algoritmo prossimale del gradiente, anche stocastici. Il corso mostrerà le applicazioni degli algoritmi introdotti a problemi di ricostruzione di immagini e di machine learning, anche con lezioni di laboratorio.
Il corso contribuisce al raggiungimento dei seguenti Obiettivi di Sviluppo Sostenibile dell'Agenda ONU 2030:
S. Boyd and L. Vandenberghe, Convex Optimization, Cambridge University Press, 2004
S. Bubeck, Convex Optimization: Algorithms and Complexity, https://arxiv.org/abs/1405.4980?context=cs
S. Salzo, S. Villa, Proximal Gradient Methods for Machine Learning and Imaging, 2022
Ricevimento: Su appuntamento: parlare direttamente con il docente oppure scrivere a silvia.villa@unige.it
Secondo l'orario riportato qui
L'orario di questo insegnamento è consultabile all'indirizzo: Portale EasyAcademy
Esistono due modalità d'esame: la prima consiste nel svolgere delle verifiche scritte (e di laboratorio) intermedie che prevedano l'utilizzo dei concetti introdotti durante l'insegnamento. Il voto finale si calcola come la media delle valutazioni dei report sui laboratori e delle prove intermedie (se sono tutte sufficienti). Lo studente può decidere se completare l'esame con una prova orale oppure mantenere il voto ottenuto con lo scritto ed il laboratorio. Nel caso in cui una delle prove scritte sia insufficiente, lo studente può sostenere una prova orale solo su quella parte. Se i report dei laboratori sono insufficienti, è necessario correggerli e riconsegnarli.
Svolgimento della sola prova orale al termine dell'insegnamento su tutto il programma svolto oltre alla consegna dei report sui laboratori.
Si consigliano gli studenti con certificazione di DSA, di disabilità o di altri bisogni educativi speciali di contattare i docenti all’inizio del corso per concordare modalità didattiche e d’esame che, nel rispetto degli obiettivi dell’insegnamento, tengano conto delle modalità di apprendimento individuali e forniscano idonei strumenti compensativi.
Lo svolgimento degli esercizi e la prova orale sono finalizzate a verificare il raggiungimento da parte dello studente di una sufficiente capacità critica ed autonomia di ragionamento nell'ambito dell'ottimizzazione e pertanto consistono di esercizi e di domande teoriche che prevedano la comprensione e l'utilizzo dei concetti appresi. Le prove in laboratorio consistono in notebooks che permettono l'implementazione e l'utilizzo guidato degli algoritmi introdotti a teoria.
Rivolgersi al docente per ulteriori informazioni non comprese nella scheda insegnamento