97271 - MATHEMATICAL PROGRAMMING

Anno Accademico 2022/2023

  • Docente: Valentina Cacchiani
  • Crediti formativi: 6
  • SSD: MAT/09
  • Lingua di insegnamento: Inglese

Conoscenze e abilità da conseguire

At the end of the course the student knows the main theoretical and algorithmic methods of mathematical programming for the solution of optimization problems and decision support; is able to analyse an optimization problem and develop the appropriate mathematical model for its resolution. The course includes the illustration of real world applications and laboratory experiences which shows how to implement an algorithm based on a mathematical programming model and how to use the main available solvers.

Contenuti

Prerequisiti: si richiede una buona conoscenza dell'algebra lineare e della matematica di base.

Il corso viene fornito in inglese: le slide e gli esercizi sono in inglese. L'esame deve essere sostenuto in inglese.

Il corso riguarda lo studio di problemi di ottimizzazione in ambito decisionale e la definizione di modelli matematici e di algoritmi esatti per la loro risoluzione. La teoria matematica su cui si basano i metodi risolutivi viene approfondita con lo studio di teoremi.

Programma

  • Introduzione ai problemi di ottimizzazione in ambito decisionale e alla Programmazione Matematica.
  • Programmazione convessa, Programmazione Lineare, algoritmo del simplesso, teoria della dualità.
  • Programmazione Lineare Intera, algoritmo del branch-and-bound, problemi classici di ottimizzazione combinatoria, rilassamenti, complessità computazionale.
  • Modelli di dimensione esponenziale, tecniche di generazione di colonne e separazione di vincoli
  • Problemi su grafo, esempi di applicazioni reali, software di ottimizzazione.

Testi/Bibliografia

Slide disponibili su virtuale.unibo.it (alla pagina del corso)

Per approfondimenti:
Fischetti M. Introduction to Mathematical Optimization. Kindle Direct Publishing, 2019.

Christos H. Papadimitriou and Ken Steiglitz, Combinatorial optimization: algorithms and complexity. Dover, 1998.

D. Bertsimas and J. Tsitsiklis, Introduction to linear programming. Dynamic Ideas and Athena Scientific, Belmont, Massachusetts, 2008.

D. Bertsimas, D. and R. Weismantel, Optimization over integers. Dynamic Ideas, Belmont, Massachusetts, 2005.

Metodi didattici

Il corso consiste in lezioni frontali ed esercitazioni.

Modalità di verifica e valutazione dell'apprendimento

L'esame consiste in un compito scritto in cui lo studente risolve alcuni esercizi sugli argomenti visti nel corso (durata circa 60 minuti). Il giorno successivo allo scritto, un esame orale su tutti gli argomenti del corso (inclusi teoremi e dimostrazioni) completa l'esame.

Scritto e orale vanno sostenuti nello stesso appello. Dopo lo scritto, viene fornita la lista degli studenti che sono ammessi all'orale. Il voto d'esame e' unico per scritto e orale.

Strumenti a supporto della didattica

Slide disponibili su virtuale.unibo.it (alla pagina del corso) e software di ottimizzazione

Orario di ricevimento

Consulta il sito web di Valentina Cacchiani