95601 - OPTIMIZATION AND MACHINE LEARNING M

Anno Accademico 2022/2023

  • Docente: Michele Monaci
  • Crediti formativi: 6
  • SSD: MAT/09
  • Lingua di insegnamento: Inglese

Conoscenze e abilità da conseguire

The aim of this course is to provide the advanced methods for the solution of difficult optimization problem and their applications Graph coloring, paths and circuits, network synthesis (location/allocation). Heuristics for graph and network optimization problems. Advanced heuristics and exact methods for discrete optimization problems. Branch and cut and Column generation methods. Problem decomposition techniques. Metaheuristics for discrete optimization problems. Optimization with uncertainty. Stochastic optimization and Monte Carlo methods. Heuristics for Stochastic optimization. Robust optimization: reformulations and solution algorithms. Prescriptive analytics and Decision Support. Decision analysis and decision trees. Algorithms configuration, Clustering and Classification. Big Data and large scale problems. Applications in telecommunications, energy distribution and circuits, automation and production (machine scheduling, job/flow shop).

Contenuti

L'allievo che accede a questo insegnamento deve conoscere i concetti fondamentali della Ricerca Operativa, della implementazione di codici di calcolo e dell'analisi della loro complessità.

Tutte le lezioni saranno tenute in inglese. È quindi necessaria la comprensione della lingua inglese.

 

Il corso presenta algoritmi per la soluzione di problemi di ottimizzazione non lineari che sono alla base delle tecniche di machine learning, estremamente diffuse in diversi contesti, incluse le telecomunicazioni, l'elettronica, i controlli automatici e i sistemi di supporto alle decisioni.

Il corso è diviso in due moduli

Modulo 1: Il primo modulo introduce alcuni algoritmi di ottimizzazione per problemi non lineari.

  • Ottimizzazione non lineare: introduzione alla Programmazione Matematica, modelli ed algoritmi.
  • Modelli non lineari: ottimizzazione non vincolata ed ottimizzazione vincolata. Rilassamenti e algoritmi basati su funzioni di penalità.
  • Ottimizzazione convessa: rilassamento lagrangiano in ottimizzazione convessa. L'algoritmo barriera.
  • Algoritmi euristici ed applicazioni dell'ottimizzazione convessa al support vector machine ed al deep learning.

Modulo 2: Il secondo modulo introduce i fondamenti delle tecniche di machine learning per la classificazione e l'apprendimento.

  • Algoritmi per clustering e classificazione
  • Reti neurali
  • Attività di laboratorio su applicazioni degli algoritmi di machine learning e di ottimizzazione ad alcuni problemi reali.

Testi/Bibliografia

Slides disponibili online.

 

Per approfondimenti:

-- C. Bishop, Pattern Recognition and Machine Learning. Springer

-- S. Boyd e L. Vandenberghe, Convex Optimization. Cambridge University Press
-- L. Grippo e M. Sciandrone, Metodi di Ottimizzazione Non Vincolata. Springer
-- J. Nocedal e S. J. Wright, Numerical Optimization. Springer


Metodi didattici

Il corso prevede lezioni frontali in aula (ove possibile) integrate con esempi relativi ad applicazioni reali.

Le lezioni sono relative agli aspetti teorici ed algoritmici dei vari argomenti trattati. Ogni argomento verrà accompagnato dallo studio di casi che ne mettano in luce le applicazioni pratiche.

Modalità di verifica e valutazione dell'apprendimento

Per ciascun modulo è previsto un esame scritto (senza utilizzo di libri/appunti) e/o una discussione orale (eventualmente da effettuare nella stessa giornata).

Il voto finale viene determinato analizzando i voti di entrambi i moduli.

Strumenti a supporto della didattica

Il materiale didattico utilizzato è reperibile tramite username e password presso Virtual Learning Environment.

Orario di ricevimento

Consulta il sito web di Michele Monaci

Consulta il sito web di Andrea Lodi