1 / 19

Modelli e Algoritmi per la Logistica Lezione 4 Formulazioni e Formulazioni Ottime

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. min { c T x : x Î S }. Problema di PL01:.

Download Presentation

Modelli e Algoritmi per la Logistica Lezione 4 Formulazioni e Formulazioni Ottime

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 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

  2. 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 Formulazione Lineare 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

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

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

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

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

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

  8. 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 massimalediPS (... sedim(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 cTx° =z*cTxxS z*=LB(PS) = cTx° (gap=0) x°Ext(PS)=S x°soluzione ottima delPL01

  9. D d • P={xÎ Rn: Dx < d} • P Ç {0,1}n =S ? ? A b Rilassamenti di PS(I) Disponiamo di una descrizione (esplicita) di: PS ={xÎ Rn: Ax<b}per ogni problema di PL01 ? Ovvero: Conosciamo la matriceAe il vettoreb ? 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

  10. Esempio di PS y1 + y2 1 y1 + y3 1 y1 + y4 + y5 2 y1 + y2 + y3 + y4 2 y1 + y2 + y3 + y5 2 3y1 + 2y2 + 2y3 + y4 + y5  4 1 y1,…, y5 0 y1 + y2 1 y1 + y3 1 y1 + y4 + y5 2 Famiglia di disequazioni 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.

  11. Rilassamenti di PS (II) Non disponiamo di una descrizione diPS per ogni problema di PL01. Disponiamo di Rilassamenti diPS, ovvero: • PoliedriP={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*

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

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

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

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

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

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

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

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

More Related