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.
-
Modelli deterministici
Produzione, supply chain, portafoglio, prezzi, budget, localizzazione, ricarica dei veicoli elettrici, code: tutti i dati sono noti.
-
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.
-
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.
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
- 📘 Dispensa completa — 114 pagine: modelli, esempi svolti, casi di studio, analisi di sensitività
- 📊 Slide delle lezioni — una per capitolo della dispensa, nella pagina del materiale
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.