Organizzazione del laboratorio
Percorso essenziale in quattro laboratori
|
Contenuto |
Obiettivi di apprendimento |
| Lab 1 |
Produzione e scorte |
formulare un LP multiperiodale; leggere duali, slack e range; verificare un prezzo ombra per perturbazione |
| Lab 2 |
Markowitz |
costruire un QP convesso; tracciare una frontiera; discutere la fragilità delle stime |
| Lab 3 |
Pricing oppure budget |
modellare funzioni non lineari; studiare la concavità; verificare le KKT numericamente |
| Lab 4 |
Progetto a scelta |
supply chain, ricarica EV, localizzazione, code, Newsvendor, CVaR o SVM; presentazione manageriale |
Struttura della consegna (report, max 8 pagine)
- Problema e ipotesi — contesto e semplificazioni dichiarate;
- Modello — dati, variabili, vincoli e obiettivo, ciascuno spiegato;
- Dati — origine, unità di misura, generazione;
- Risultati — valore ottimo, decisioni, vincoli attivi;
- Sensitività — il protocollo completo in sei passi;
- Raccomandazione manageriale — massimo dieci righe, senza formule.
Criteri di valutazione
| Dimensione |
Peso |
| Correttezza della formulazione |
30% |
| Implementazione e verifica numerica |
25% |
| Analisi di sensitività |
25% |
| Interpretazione e comunicazione |
20% |
Domande tipiche di discussione
- Quale risorsa conviene aumentare per prima, e quanto si può pagare per essa?
- Qual è il costo di una promessa di servizio più ambiziosa?
- La soluzione resta credibile se i dati cambiano del 5%?
- Quale punto della frontiera consigliereste a un decisore, e perché?
- Che cosa NON dice il modello?
Gli errori più comuni
- Leggere
.X o .Pi senza controllare m.Status.
- Dimenticare
lb=-GRB.INFINITY sulle variabili libere (\(b\) della SVM, \(\eta\) del CVaR).
- Usare un prezzo ombra fuori dal suo intervallo di validità.
- Sbagliare il segno dei duali nei problemi di minimo.
- Aggiornare il RHS di un vincolo con costanti a sinistra.
- Ottimizzare un solo obiettivo quando ce ne sono due (minimax puro).
- Scegliere gli iperparametri guardando il test set.
- Riportare sei cifre decimali da stime che ballano alla seconda.
Riproducibilità
python3 -m pip install gurobipy matplotlib pandas scipy # scipy: solo funzioni statistiche
python3 python/esegui_tutti.py # rigenera dati, risultati e figure
Le slide del corso e le soluzioni degli esercizi vengono distribuite a lezione.