Modelli e Algoritmi per la Logistica

Slides:



Advertisements
Presentazioni simili
Flusso Massimo Certificati di (non-) ottimalità
Advertisements

Meccanismi one-parameter. Riepilogo Archi di un grafo controllati da agenti egoistici Solo lagente conosce il peso associato al proprio arco Obiettivo:
Algoritmi e Strutture Dati
Algoritmi e Strutture Dati
Il problema del cammino minimo tra 2 nodi in un grafo non cooperativo
Master Bioinformatica 2002: Grafi Problema: cammini minimi da tutti i vertici a tutti i vertici Dato un grafo pesato G =(V,E,w), trovare un cammino minimo.
Introduzione ai grafi Grafo diretto e non diretto
Il problema del minimo albero ricoprente in un grafo non cooperativo
programmazione lineare: un esempio
Cammini minimi con una sorgente
Università degli Studi di Roma Tor Vergata
Algoritmi e Strutture Dati
Scenario Archi di un grafo controllati da agenti egoistici
U V U V (a) |cfc|=2 prima e dopo (b) |cfc|=2 prima e |cfc|=1 dopo
Algoritmi e Strutture Dati
Algoritmi e Strutture Dati
Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.
Modelli e Algoritmi della Logistica
Progetto e Sviluppo di un algoritmo per la gestione della Federazione Interdominio in unarchitettura di Service Discovery Candidato: XXX Roma, Febbraio.
Seminario su clustering dei dati – Parte II
Seminario su clustering dei dati – Parte II
Modelli e Algoritmi della Logistica
Modelli e Algoritmi della Logistica
Modelli e Algoritmi per la Logistica Branch & Bound Prof. Carlo Mannino Prof. Antonio Sassano Dipartimento di Informatica e Sistemistica Università di.
Ottimizzazione Combinatoria
Modelli e Algoritmi per la Logistica
Modelli e Algoritmi per la Logistica
Modelli e Algoritmi per la Logistica
Modelli e Algoritmi per la Logistica
Modelli e Algoritmi della Logistica
1. ( punti 7 ) Siano dati un insieme di localizzazioni potenziali (nodi grandi) ed un insieme di clienti da servire (nodi piccoli). Il costo di afferenza.
Modelli e Algoritmi per la Logistica
Tecniche di Risoluzione della Programmazione a Breve Termine.
Modelli e Algoritmi della Logistica
Modelli e Algoritmi per la Logistica
1. ( punti 7 ) Siano dati un insieme di localizzazioni potenziali (nodi grandi) ed un insieme di clienti da servire (nodi piccoli). Il costo di afferenza.
Ottimizzazione nella gestione dei progetti
Algoritmi e Strutture Dati
Algoritmi greedy Gli algoritmi greedy in genere non sono esatti, cioè determinano soluzioni non necessariamente ottime Per il problema dell’albero ricoprente.
Prof. Cerulli – Dott.ssa Gentili
Esempio di esecuzione dellalgoritmo di Prim 1 v1v1 v5v5 v2v2 v3v3 v4v U = {v 1 } X =Ø 1 v1v1 v5v5 v2v2 v3v3 v4v U = {v.
Main tools of the probabilistic method with applications in graph theory Attività formativa - Yuri Faenza Supervisore: Prof. B. Scoppola CdLS in Ingegneria.
Prof. Cerulli – Dott.ssa Gentili
Lezioni di Ricerca Operativa Corso di Laurea in Informatica
Prof. Cerulli – Dott.ssa Gentili
Prof. Cerulli – Dott.ssa Gentili
Prof. Cerulli – Dott.ssa Gentili
Lezione n° 18: Maggio Problema del trasporto: formulazione matematica Anno accademico 2008/2009 Prof. Cerulli – Dott.ssa Gentili Lezioni di.
Prof. Cerulli – Dott.ssa Gentili
Algoritmi di classificazione e reti neurali Seminario su clustering dei dati Università Sapienza di Roma Dipartimento di ingegneria Informatica, Automatica.
Ottimizzazione nella gestione dei progetti Prova scritta del 16/04/2005 COMPITO B Studente: ………………………………… Matricola: ………………………………… (2 punti) Disegnare.
Capitolo 13 Cammini minimi: Ordinamento topologico Algoritmi e Strutture Dati.
Università degli Studi di Roma Tor Vergata
Claudio Arbib Università dell’Aquila Ricerca Operativa Metodo del simplesso per problemi di distribuzione single-commodity.
Capitolo 12 Minimo albero ricoprente Algoritmi e Strutture Dati.
1/20 NP completezza. 2/20 Problemi astratti Un problema è un’entità astratta (es. il TSP). Una istanza del problema è un suo caso particolare in cui vengono.
Capitolo 12 Minimo albero ricoprente: Algoritmo di Kruskal Algoritmi e Strutture Dati.
Capitolo 13 Cammini minimi Algoritmi e Strutture Dati.
Algoritmi e Strutture Dati
Meccanismi one-parameter. Riepilogo Archi di un grafo controllati da agenti egoistici Solo l’agente conosce il peso associato al proprio arco Obiettivo:
Università degli Studi di Cagliari FACOLTA’ DI INGEGNERIA
Cammini minimi in grafi:
Modelli e Algoritmi per la Logistica Lezione – 7 Pianificazione degli Investimenti ANTONIO SASSANO Università di Roma“La Sapienza” Dipartimento di Informatica.
Programmazione lineare: un esempio Mix produttivo ottimo con risorse vincolate Materiale di studio: M. Fischetti, Lezioni di RO, Cap. 3. Libreria Progetto.
Capitolo 12 Minimo albero ricoprente: Algoritmo di Kruskal Algoritmi e Strutture Dati.
Lezione n° 8 - Matrice di base. - Soluzioni di base ammissibili. - Relazione tra vertici di un poliedro e soluzioni basiche. - Teorema fondamentale della.
Lezione n° 10 Algoritmo del Simplesso: - Coefficienti di costo ridotto - Condizioni di ottimalità - Test dei minimi rapporti - Cambio di base Lezioni di.
Lezioni di Ricerca Operativa Corso di Laurea in Informatica
Lezioni di Ricerca Operativa Corso di Laurea in Informatica
Programmazione lineare: un esempio Mix produttivo ottimo con risorse vincolate Materiale di studio: M. Fischetti, Lezioni di RO, Cap. 3. Libreria Progetto.
Transcript della presentazione:

Modelli e Algoritmi per la Logistica Lezione 4 Formulazioni e Formulazioni Ottime Prof. Carlo Mannino Prof. Antonio Sassano Dipartimento di Informatica e Sistemistica Università di Roma “La Sapienza” A.A. 2006-2007

P è una FORMULAZIONE di S Formulazione Lineare min {cTx : xÎ S} Problema di PL01: P = {xÎ Rn: Ax < b} POLIEDRO con (AÎ Rmn, bÎ Rm) P è una FORMULAZIONE di S P Ç {0,1}n =S Un poliedro P è una formulazione se e solo se - contiene tutti i vettori di S - non contiene alcun vettore di {0,1}n - S Posso avere infinite formulazioni dello stesso problema di PL01

“Lower Bounds” (approssimazioni inferiori) min {cTx: xÎ S} Problema di PL01: P è una FORMULAZIONE di S P Ç {0,1}n =S min {cTx: xÎ S} = min {cTx: xÎ P Ç {0,1}n} = cTx* = z* > min {cTx: xÎ P}= LB(P) LB(P) z* Valore della Soluzione Ottima del Problema di PL01 Problema di PL (Rilassamento Lineare) LB(P)  z* LB(P) “Lower Bound” per z*

Lower Bound = Certificato di Qualità min {cTx: xÎ S} Problema di PL01: LB(P)  min {cTx: xÎ S} = z* Calcolare z* è (di solito) difficile Calcolare LB(P) è facile (Simplesso) Se conosciamo una soluzione ammissibile x°S (di valore z°=cTx° ) LB(P) fornisce una certificazione di qualità per x°. LB(P) z° z* “gap” gap x° cTx decrescente “gap” nullo  x° ottimo per PL01

Lower Bounds ... riassumendo min {cTx: xÎ S} Problema di PL01: LB(P)  min {cTx: xÎ S} = z* Calcolare z* è difficile Calcolare LB(P) è facile (Problema di Programmazione Lineare) Trovare una soluzione x°S è (di solito) facile (Euristiche) Il “gap” cTx° - LB(P) certifica la qualità di x° piccolo “gap” = buona qualità di x° “gap” nullo = x° ottimo per PL01 S ammette molte formulazioni alternative Il “gap” dipende dalla formulazione P Come classificarle (e sceglierle) ?

Criteri di qualità delle Formulazioni (1) No. disequazioni di Ax<b ? ; No. variabili ? ; facilità di calcolo ? Qualità = “piccolo gap” = massimo “lower bound CRITERIO 1: P1 migliore di P2 LB( P1) > LB(P2) Problema: Dipendenza dalla funzione obiettivo LB(P1) > LB(P2) P1 P2 cTx dTx LB(P2) > LB(P1) P1 migliore di P2 Se utilizzo cTx P2 migliore di P1 Se utilizzo dTx

Criteri di qualità delle Formulazioni (2) Il criterio di qualità deve essere indipendente dalla funzione obiettivo (che non è prevedibile a priori) CRITERIO 2: P1 migliore di P2 LB( P1) > LB(P2) per ogni cÎ Rn Equivalente a: CRITERIO 3: P1 migliore di P2 P1 Í P2 Esiste una formulazione contenuta in ogni altra ? PS=conv(S) Í P " formulazione P di S Formulazione ottima

x° soluzione ottima del PL01 Formulazione Ottima z*= min {cTx : xÎ S} Problema di PL01: PS =Conv(S) = {xÎ Rn: Ax < b} POLIEDRO (AÎ Rmn, bÎ Rm) S insieme dei vertici di PS (S=Ext(PS)) Ogni disequazione di Ax < b definisce una faccia massimale di PS (... se dim(PS)=n) z*=min {cTx : xÎ S}= min {cTx: xÎ Ext(PS)} = min {cTx : xÎ PS}= LB(PS)= cTx° x° soluzione ottima del rilassamento lineare z*= LB(PS) = cTx° (gap=0) cTx° = z*  cTx xS x°  Ext(PS)=S x° soluzione ottima del PL01

Rilassamenti di PS (I) Disponiamo di una descrizione (esplicita) di: PS ={xÎ Rn: Ax<b} per ogni problema di PL01 ? Ovvero: Conosciamo la matrice A e il vettore b ? Dove “conoscere” significa: conoscere i coefficienti oppure avere una regola che consente di calcolare i coefficienti di ogni riga della matrice (A,b) Sfortunatamente NO ! Quasi sempre conosciamo solo alcune (poche) righe di (A,b) che definiscono una formulazione di S P ={xÎ Rn: Dx < d} P Ç {0,1}n =S A D d ? b

Esempio di PS S={ y{0,1}5: 7y1 + 6y2 + 5y3 + 3y4 + 2y5  11} PS ={ y R5 : Ay< b, y > 05} Regola di costruzione di un “tipo” di riga di A: Se la somma dei coefficienti di k variabili è maggiore di 11 allora al più k-1 di esse possono essere poste ad 1. Famiglia di disequazioni di PS

Rilassamenti di PS (II) Non disponiamo di una descrizione di PS per ogni problema di PL01. Disponiamo di Rilassamenti di PS , ovvero: Poliedri P ={xÎ Rn: Dx < d }) con le seguenti proprietà: Il poliedro P è una formulazione di S Il sistema Dx < d è costituito da alcune famiglie di disequazioni appartenenti al sistema Ax < b. Ciascun rilassamento produce un “lower bound” di z* : LB(P) = min {cTx: xÎ P} < z*

Esempio: Problema di Decisione (II) Due progetti A e B xÎS = min cA xA + cB xB Vantaggi cA e cB associati Risorse necessarie dA =5 e dB =7 Vincolo: risorse utilizzate < D =10 min cA xA + cB xB 5xA + 7xB < 10 1>xA, xB >0 xÎPN= Formulazione Naturale: xA xB Verifica: PN Ç {0,1}2 =S a) xÎS xÎPN (SÍPN Ç {0,1}2) PN b) xÎPN Ç {0,1}2 xÎS (PN Ç{0,1}2Í S) vincoli di “box”

Esempio: Problema di Decisione (III) xB Formulazione Naturale: min -5/3 xA - 11 xB 5xA + 7xB < 10 1>xA, xB >0 xÎPN= PN xA Formulazione Ottima: min -5/3xA - 11 xB xA + xB < 1 1>xA, xB >0 xÎPS= Vincolo logico: uno solo dei due progetti può essere attivato -12 -11 -10 -9 -8 -7 PS

Esempio: Sottografo s-t Connesso di Peso Minimo c1t=2 cs3=2 ct4=3 Pesi cuv per ogni uvÎE Grafo G(V,E) con due nodi speciali s e t: 4 1 2 t 3 s å cuv uvÎF Peso di un insieme FÍ E : c(F) = Trovare il sottoinsieme di archi F* di peso minimo che contiene un cammino tra s e t: Sottografo s-t Connesso di Peso Minimo cuv > 0 F* insieme degli archi di un cammino

Esempio: Grafo s-t Connesso di Peso Minimo (II) S = vetttori di incidenza di un sottografo s-t connesso 4 1 2 t 3 s min {cTx: xÎ S Í {0,1}E } Problema di PL01: Quali condizioni deve soddisfare un vettore xÎ{0,1}E per essere il vettore di incidenza di un sottografo s-t connesso ? Formulazione ?

4 1 2 t 3 s Taglio s-t Insieme di archi K la cui rimozione distrugge tutti i cammini da s a t 4 1 t Xs Xs = nodi non connessi ad s K s 2 3 Xs Xs = nodi connessi ad s (Xs , Xs ) partizione di V t Ï Xs

F contiene s-t cammino P Teorema (4.1): (caratterizzazione dei grafi s-t connessi) Un insieme di archi F è un sottografo s-t connesso se e solo se F ha intersezione non vuota con ogni taglio s-t. Solo se F s-t connesso F contiene s-t cammino P K taglio s-t K  P   K  F   Se (per assurdo) Ogni Taglio s-t contiene arco di F F non è s-t connesso ma contraddizione F non contiene gli archi di un cammino s-t Xs = nodi connessi ad s con archi di F s Xs Xt = nodi non connessi ad s con archi di F t Xt Archi da Xs a Xt definiscono un taglio s-t s  Xs ; t  Xt ; s Ï Xt ; t Ï Xs (Xs , Xt ) partizione di V Nessun arco di F da Xs a Xt

Formulazione: Grafo s-t Connesso di Peso Minimo xFÎ S (vettore di incidenza sottografo s-t connesso F) K  F    taglio s-t K (Ogni taglio s-t contiene archi di F) 4 1 2 t 3 s K Se considero i vettori di incidenza Es. xFÎ S (xF)T (xK) 1  taglio s-t K å xe xKe > 1 eÎ E å xe > 1 eÎ K xÎ S (x)T (xK) 1  taglio s-t K

Formulazione: Grafo s-t Connesso di Peso Minimo xFÎ S Ogni taglio s-t contiene un arco di F Quindi: xÎ S å xe > 1 per ogni taglio s-t K eÎK eÎK min cx å xe > 1 K taglio s-t 1 xe > 0 e Î E xÎP= P è una Formulazione (formulazione ottima) Il numero di disequazioni (vincoli) è enorme (|V|=120 1036) Come risolvere il problema di PL? METODO DEL SIMPLESSO DINAMICO