Prof. Cerulli – Dott.ssa Gentili

Slides:



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

Premessa: si assume di aver risolto (correttamente
Flusso Massimo Applicazione di algoritmi
Algoritmi e Strutture Dati
Algoritmi e Strutture Dati
Il problema del minimo albero ricoprente in un grafo non cooperativo
Introduzione Cosa sono le reti di Petri?
Algoritmi e Strutture Dati
Cammini minimi con una sorgente
Breath-first search Visita in ampiezza di un grafo Algoritmo Esempio
Breath-first search Visita in ampiezza di un grafo Algoritmo Esempio
Cammini minimi con sorgente singola
Implementazione dell algortimo di Viterbi attraverso la soluzione del problema di cammino mi- nimo tramite software specifico. Università degli studi di.
Il problema del cammino minimo tra 2 nodi in un grafo con archi privati.
Università degli Studi di Roma Tor Vergata
Algoritmi e Strutture Dati
Scenario Archi di un grafo controllati da agenti egoistici
Algoritmi Paralleli e Distribuiti a.a. 2008/09
Algoritmi Paralleli e Distribuiti a.a. 2008/09 Lezione del 12/05/2009 Prof. ssa ROSSELLA PETRESCHI a cura del Dott. SAVERIO CAMINITI.
Algoritmi Paralleli e Distribuiti a.a. 2008/09 Lezione del 05/05/2009 Prof. ssa ROSSELLA PETRESCHI a cura del Dott. SAVERIO CAMINITI.
Algoritmi Paralleli e Distribuiti a.a. 2008/09 Lezione del 15/05/2009 Prof. ssa ROSSELLA PETRESCHI a cura del Dott. SAVERIO CAMINITI.
Algoritmo di Ford-Fulkerson
Il problema del minimo albero ricoprente in un grafo con archi privati
Algoritmi e Strutture Dati
Algoritmi e Strutture Dati
Il problema del cammino minimo tra 2 nodi in un grafo con archi privati.
Flusso Massimo Applicazione di algoritmi
Flusso Massimo Applicazione Algoritmi Esercizio 1 Sia dato la seguente rete di flusso, in cui la sorgente è il nodo 1 e la destinazione è il nodo 6. I.
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Problemi e algoritmi Anno Accademico 2009/2010.
Modelli e Algoritmi della Logistica
Seminario su clustering dei dati – Parte II
Modelli e Algoritmi della Logistica
Modelli e Algoritmi per la 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.
Dipartimento di Informatica e Sistemistica Alessandro DE CARLI Anno Accademico MOVIMENTAZIONE CONTROLLATA AZIONAMENTI CON MOTORE BRUSHLESS.
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.
Maurizio Patrignani seminario sullarticolo On the Single-Source Unsplittable Flow Problem di Yefim Dinitz Naveen Garg Michel X. Goemans (aprile 98)
Algoritmi e Strutture Dati
Num / 36 Lezione 9 Numerosità del campione.
1 Algoritmo di Ford-Fulkerson s t G: Valore del flusso = 0 0 flusso capacità
Università degli Studi di Padova Progetto Lauree scientifiche Buratto Alessandra Dipartimento Di Matematica Pura Ed Applicata Liceo Scientifico "L. da.
Algoritmi e diagrammi di flusso
Prof. Cerulli – Dott.ssa Gentili
Università degli studi di salerno
Elementi di Informatica di base
Prof. Cerulli – Dott.ssa Gentili
Lezioni di Ricerca Operativa Corso di Laurea in Informatica
1 Questionario di soddisfazione ATA - a. sc. 2008/09 Il questionario è stato somministrato nel mese di aprile Sono stati restituiti 29 questionari.
PARTE SECONDA: Reti Senza Fili
Prof. Cerulli – Dott.ssa Gentili
Prof. Cerulli – Dott.ssa Gentili

Prof. Cerulli – Dott.ssa Gentili
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
Prof. Cerulli – Dott.ssa Gentili
Pippo.
Claudio Arbib Università dell’Aquila Ricerca Operativa Metodo del simplesso per problemi di distribuzione single-commodity.
Flusso Massimo Applicazione di algoritmi
Flusso di Costo Minimo Trasformazioni Equivalenti e Trasformazioni Inverse Viene data la seguente rete di flusso, in cui i valori riportati vicino agli.
Prof. Cerulli – Dott. Carrabs
Flusso di Costo Minimo Applicazione di algoritmi: Cammini Minimi Successivi (SSP) Esercizio 1 Sia data la seguente rete di flusso, in cui i valori riportati.
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
Transcript della presentazione:

Prof. Cerulli – Dott.ssa Gentili Lezioni di Ricerca Operativa Corso di Laurea in Informatica ed Informatica Applicata Università di Salerno Lezione n° 20: 19-20 Maggio 2009 Problema del Massimo Flusso: Formulazione Matematica Algoritmo del grafo ausiliario Anno accademico 2008/2009 Prof. Cerulli – Dott.ssa Gentili

Il Problema del Massimo Flusso Capacità: uij 15 2 3 10 4 12 5 6 6 1 8 15 6 4 5 10 Nodo sorgente: s Nodo destinazione: t

Il Problema del Massimo Flusso Nodo sorgente fornisce flusso f Nodo destinazione assorbe flusso -f Tutti gli altri nodi sono nodi di transito Voglio spedire dalla sorgente la massima quantità di flusso fino al pozzo senza violare i vincoli di capacità

Il Problema del Massimo Flusso: esempio 15 2 3 10 4 12 5 6 6 1 8 15 6 4 5 10

Il Problema del Massimo Flusso: esempio 3,15 2 3 3,10 3,4 12 5 6 6 1 8 1,15 1,6 4 5 1,10

Il Problema del Massimo Flusso: Formulazione Parametri di input: - Grafo orientato G=(V,A) - Nodo sorgente s - Nodo destinazione t Variabili decisionali

Problema del Massimo Flusso FORMULAZIONE

Il Problema del massimo flusso: concetti fondamentali 10 8 6 9 flusso massimo su questo grafo è pari a 6 corrispondente all’arco del cammino con capacità minima t s 10 6 8 9 Riesco ad individuare un taglio sul grafo

Il Problema del massimo flusso: concetti fondamentali 10 8 6 9 ho individuato un taglio: cioè una partizione dei nodi in due insiemi tali V1 e V2 tali che: - Il nodo sorgente appartiene a V1 - Il nodo pozzo appartiene a V2 - V1  V2 = V - V1  V2 = Ø estendiamo questo concetto di taglio ad un grafo più complesso

Taglio e archi di un taglio 15 2 3 10 4 12 5 6 6 1 8 15 6 4 5 10 Taglio 1: V1 ={1,2,3} V2 = {4,5,6}  archi del taglio ={(1,4) (2,4) (2,5) (3,6)} Taglio 2: V1 ={1,3,5} V2 = {2,4,6}  archi del taglio ={(1,2) (1,4) (3,6) (5,6)} Taglio 3: V1 ={1,4,5} V2 = {2,3,6}  archi del taglio ={(1,2) (4,3) (5,3) (5,6)}

Capacità di un Taglio 15 2 3 10 4 12 5 6 6 1 8 15 6 4 5 10 Dato il taglio (V1, V2) la capacità del taglio è la somma delle capacità degli archi del taglio

Capacità di un Taglio 15 2 3 10 4 12 5 6 6 1 8 15 6 4 5 10 Taglio 1: V1 ={1,2,3} V2 = {4,5,6}  archi del taglio ={(1,4) (2,4) (2,5) (3,6)} Capacità = 6 + 5 + 12 + 4 =27 Taglio 2: V1 ={1,3,5} V2 = {2,4,6}  archi del taglio ={(1,2) (1,4) (3,6) (5,6)} Capacità = 10 + 6 + 4 + 15 = 35 Taglio 3: V1 ={1,4,5} V2 = {2,3,6}  archi del taglio ={(1,2) (4,3) (5,3) (5,6)} Capacità = 10 + 8 + 6 + 15 = 39

Relazione tra il massimo flusso e la capacità di un taglio La capacità di un taglio mi fornisce un limite superiore al valore di flusso che posso spedire dalla sorgente al pozzo Mi interessa il taglio di capacità minima se riuscissi ad individuare tutti i tagli del grafo quello di capacità minima mi individuerebbe la strozzatura della rete la capacità del taglio minimo mi individua il massimo flusso (relazione di dualità) metodo per testare l’ottimalità di una soluzione

Grafo ausiliario e Capacità residua 2;5 1 1;3 2;4 1;4 s t 2 3 3 1 2 s t 3 1 2 Grafo ausiliario

Grafo ausiliario e Capacità residua Dato un grafo G=(V,A) ed un flusso ammissibile X, il grafo ausiliario G’=(V,A’) è tale che: 1. se xij<uij  esiste in G’ l’arco (i,j) con capacità pari a uij-xij 2. Se xij>0 esiste in G’ l’arco (j,i) con capacità pari a xij Tutti gli algoritmi risolutivi del problema utilizzano il grafo ausiliario (o rete residua) per decidere come spedire il flusso sulla rete

Grafo ausiliario e Cammino aumentante 2 Potrei spedire flusso da s a t tramite cammini 5 4 Spedisco 1 unità di flusso tramite il cammino P1 : s – 2 – 3 – t f = 1 s t 1 4 3 3 4 1 3 s t 2 Spedisco 4 unità di flusso tramite il cammino P2 : s – 2 – t f = 1 +4 =5

Grafo ausiliario e Cammino aumentante 2 5 4 Spedisco 3 unità di flusso tramite il cammino P3 : s – 3 – t f = 5 +3 =8 t s 1 3 3 1 3 1 3 4 s t 5 2 Il flusso che ho individuato è ottimo?

Grafo ausiliario e Cammino aumentante 1 3 4 s t 5 2 Il flusso che ho individuato è ottimo? Se riuscissi ad individuare un taglio con capacità uguale al flusso che ho individuato potrei dire che è ottimo 5 1 3 4 s t 2 V1= {s} V2= {2,3,t} Archi del taglio: (s,2) (s,3) Capacità = 5 + 3= 8

Cammino aumentante 2 5 4 Cammino : s – 3 – t Individuato sul grafo ausiliario t s 1 3 3 1 Cammino aumentante 3 Capacità del Cammino aumentante:  = min{u’ij : (i,j) appartiene al cammino }

L’algoritmo del grafo ausiliario (1/3) Dato un grafo G=(V,A,u): 1.1 definisci un flusso iniziale X ammissibile, in particolare il flusso nullo: xij=0 per ogni i e per ogni j 1.2 f=0 Costruisci il grafo ausiliario G(X) 3. Cerca in G(X) un cammino aumentante p dalla sorgente al pozzo 3.1 Se non esiste alcun cammino allora STOP: il flusso corrente è massimo 4. Sia =min{u’ij: (i,j) appartiene a p } 5. Aggiorna il flusso: 5.1 f=f+  5.2 xij= xij +  se (i,j) appartiene ad A 5.3 xij= xij -  se (j,i) non appartiene ad A 6. Torna al passo 2

L’algoritmo del grafo ausiliario (2/3) Nota: Questo algoritmo è generico: c’e’ almeno un passo che non è univocamente interpretabile Il passo 3: Cerca in G(X) un qualsiasi cammino orientato p dalla sorgente al pozzo Può essere realizzato in diversi modi che influenzano la complessità computazionale dell’algoritmo: - posso cercare un cammino a caso - posso cercare un cammino con il numero minimo di archi (shortest augmenting path algorithm ) - posso cercare un cammino con una capacità almeno pari ad una quantità  fissata di volta in volta (capacity scaling algorithm)

L’algoritmo del grafo ausiliario (3/3) 21000 21000 1 21000 21000