Vai al contenuto

Laboratorio di Ricerca Operativa

Materiale didattico ideato e sviluppato da Fabio Furini, professore associato al DIAG, Sapienza Università di Roma.

Modelli continui di ottimizzazione — la dispensa del corso in versione online, con codice Python/Gurobi, dati e casi di studio riproducibili.

Ogni capitolo parte da un problema gestionale concreto — quanto produrre, dove localizzare un servizio, quale prezzo fissare, quanto rischio accettare — lo trasforma in un modello di ottimizzazione, lo risolve con Gurobi chiamato da Python e, soprattutto, lo interroga: quanto vale un'ora di capacità in più? La soluzione resiste se i dati cambiano del 5%?

Tutti i modelli si possono eseguire subito nel browser: ogni capitolo ha il suo notebook che si apre in Colab, senza installare niente.

La domanda giusta

Alla fine di ogni esercitazione la domanda non è soltanto «qual è l'ottimo?», ma «quale decisione suggeriamo e quanto è robusta?». Tutte le variabili di decisione sono continue; a seconda della classe del modello la soluzione si legge con la dualità LP/QP, con i prezzi ombra o con le condizioni KKT.

Le quattro parti del laboratorio

  • Strumenti


    Come si costruisce un modello, come si fa girare, come si leggono soluzione, prezzi ombra e costi ridotti: la teoria e il solver.

    I quattro capitoli

  • Modelli deterministici


    Produzione, supply chain, portafoglio, prezzi, budget, localizzazione, ricarica dei veicoli elettrici, code: tutti i dati sono noti.

    Gli otto problemi

  • Decisioni sotto incertezza


    Si decide prima di sapere: la regola del quantile, il rischio di coda e la dualità che dà il prezzo agli strumenti finanziari.

    I tre problemi

  • Ottimizzazione e machine learning


    La SVM come QP convesso e la regressione robusta come LP: margine, duale, support vector e punti di appoggio — senza librerie di ML.

    I due problemi

Il laboratorio in breve

13 capitoli applicativi · 4 capitoli di strumenti · LP, QP e NLP · un notebook Colab per capitolo · codice Python/Gurobi riproducibile. L'elenco completo, capitolo per capitolo, sta nel programma.

Scarica in PDF

Per cominciare

Non serve installare niente: ogni capitolo ha il suo notebook che si apre in Colab e gira nel browser. Chi preferisce lavorare in locale trova i comandi e le note sulla licenza Gurobi nella stessa pagina.


Dello stesso autore:

  • Programmazione lineare — poliedri, algoritmo del simplesso, dualità e simplesso duale, con il laboratorio interattivo;
  • Ottimizzazione convessa — insiemi e funzioni convesse, problemi di ottimizzazione convessa, con grafici interattivi;
  • Algoritmi — rappresentazione dei numeri, pseudocodice, ordinamento e ricerca, analisi e algoritmi ricorsivi;
  • Programmazione lineare intera — rilassamento continuo, disuguaglianze valide, piani di taglio, branch-and-bound e branch-and-cut;
  • Ottimizzazione combinatoria — zaino, bin packing, colorazione, TSP, scheduling e lot sizing, risolti in tutti i modi;
  • Ottimizzazione su reti — grafi, alberi ricoprenti, cammini minimi, flussi su reti, simplesso su reti e gestione dei progetti;
  • Modellazione MIP — modelli di programmazione lineare a variabili intere, dalla formulazione alla soluzione con i solver;
  • Analisi Matematica 1 — numeri reali, funzioni, limiti, derivate e serie, con i grafici interattivi;
  • Algebra lineare — vettori, matrici, determinanti, sistemi lineari e autovalori, con il laboratorio di calcolo.

Materiale didattico di Fabio Furini — DIAG, Sapienza Università di Roma.