Problemi di Network Flow

Documenti analoghi
2.4 Flussi di valore massimo

Esercizi per il corso di Algoritmi

UNIVERSITÀ DI ROMA ``TOR VERGATA'

Applicazioni del Massimo flusso. Progettazione di Algoritmi a.a Matricole congrue a 1 Docente: Annalisa De Bonis

Modelli di Programmazione Lineare. PRTLC - Modelli

RICERCA OPERATIVA GRUPPO A prova scritta del 21 giugno 2010

Richiami di Teoria dei Grafi. Paolo Detti Dipartimento di Ingegneria dell Informazione Università di Siena

ed interpretare geometricamente il risultato ottenuto. Esprimere, per t 2, l integrale

Esame di Ricerca Operativa del 18/06/18

Ottimizzazione su grafi: massimo flusso (parte 1) Ottimizzazione su grafi:massimo flusso (parte 1) p. 1/33

Esame di Ricerca Operativa del 19/07/19. Esercizio 1. (a) Risolvere mediante il metodo del simplesso il seguente problema di programmazione lineare:

), dove K è una costante positiva della quale si richiede l unità di

Ottimizzazione Combinatoria Massimo Flusso - Algoritmi ANTONIO SASSANO

Esame di Ricerca Operativa del 06/02/17

FLUSSI SU RETI. Una piccola introduzione. Ricerca Operativa. Prof. R. Tadei. Politecnico di Torino. Flussi su Reti / 1.

Esame di Ricerca Operativa del 07/06/2019

Esame di Ricerca Operativa del 09/04/2019. (Cognome) (Nome) (Numero di Matricola)

Processi di cost management - Programmazione multiperiodale

Problema del flusso massimo

Esercizio 1. min. Esercizio 2. Esercizio 3

Introduzione ai grafi

Soluzioni degli esercizi di Analisi Matematica I

Esame di Ricerca Operativa del 28/06/2019. max 9 x 1 +8 x 2 6 x x x 1 +2 x x 1 +2 x x 1 3 x x 1 4 x 2 3

Esame di Ricerca Operativa del 03/09/2015

Esame di Ricerca Operativa del 05/09/18

2.3.3 Cammini ottimi nei grafi senza circuiti

Modelli decisionali su grafi - Problemi di Localizzazione

Esercizio 2. Domanda 3

Volume FISICA. Elementi di teoria ed applicazioni. Fisica 1

Problemi di Flusso e Applicazioni

Problema di flusso massimo

Esame di Ricerca Operativa del 22/01/18

Esame di Ricerca Operativa del 16/06/2015

Esame di Ricerca Operativa del 09/06/15. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

AMPL Problemi su Reti

Soluzione degli esercizi del Capitolo 3

Segnali e Sistemi. Proprietà dei sistemi ed operatori

Ulteriori Esercizi su Grafi. Ugo Vaccaro

1 TEORIA DELLE RETI 1. 1 Teoria delle reti. 1.1 Grafi

FACOLTA DI ECONOMIA ESAME SCRITTO DI RICERCA OPERATIVA. Verona, 6 Giugno 1996

Esame di Ricerca Operativa del 16/02/15. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneria Informatica Ricerca Operativa 1 Seconda prova intermedia 20 giugno 2014

Esame di Ricerca Operativa del 18/12/12. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Esame di Ricerca Operativa del 12/07/17

Esame di Ricerca Operativa del 11/02/2015

A-2 a PI. Esercizio 2. Domanda 3

Grafi e reti di flusso

Fisica Generale Modulo di Fisica II A.A Ingegneria Meccanica Edile - Informatica Esercitazione 4 CIRCUITI ELETTRICI

Esame di Ricerca Operativa del 09/06/14. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Esame di Ricerca Operativa del 06/02/17

Esercizi di formulazione

1. Domanda La funzione di costo totale di breve periodo (con il costo espresso in euro) di un impresa è la seguente:

Esame di Ricerca Operativa del 12/06/18. Base x Degenere? y Indice Rapporti Indice uscente entrante

Esame di Ricerca Operativa del 03/07/18. Base x degenere y Indice Rapporti Indice entrante uscente

Progetto di rete con unica sorgente e costi fissi

Laboratorio di Algoritmi e Strutture Dati

ANALISI VETTORIALE ESERCIZI SU EQUADIFF. y = y(y 1)t. = e C e t2 /2 y 1 y

Esame di Ricerca Operativa del 22/01/18

FACOLTA DI ECONOMIA ESAME SCRITTO DI RICERCA OPERATIVA. Verona, 5 Febbraio , : ; ;,, trovare il punto di

Progettazione di Algoritmi Anno Accademico Esercizi su Grafi: Parte Seconda

Esame di Ricerca Operativa del 18/02/13

Ricerca Operativa. Facoltà di Ingegneria dell Informazione, Informatica e Statistica. (Massimo Flusso) Giovanni Fasano.

Esame di Ricerca Operativa del 04/02/16. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Esame di Ricerca Operativa del 15/01/16. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

1 3 x. UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneria Informatica Ricerca Operativa 1 Secondo appello 16 settembre 2004 SOLUZIONI

Università di Napoli Parthenope Facoltà di Ingegneria

Esame di Ricerca Operativa del 19/07/13. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Esame di Ricerca Operativa del 15/09/14. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Cammini minimi con una sorgente

Esame di Ricerca Operativa del 23/02/17

INSTRADAMENTO: ALGORITMO DI BELLMAN-FORD

Esame di Ricerca Operativa del 28/05/14. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Esame di Ricerca Operativa del 09/02/2016

Esame di Ricerca Operativa del 04/07/17

Massimo Flusso. Ulteriori vincoli. Descrizione del problema. Rete di flusso. Flusso in G

Esame di Ricerca Operativa del 10/09/13. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

2.3 Cammini ottimi. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

Esame di Ricerca Operativa del 09/01/15. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Esame di Ricerca Operativa del 17/01/17. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Esame di Ricerca Operativa del 6/2/18. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

ESERCIZI E ALCUNE SOLUZIONI ANALISI MATEMATICA 1 SETTIMANA 27

Vediamo come si sviluppa la soluzione esplicita del problema. ( t)

Esame di Ricerca Operativa del 13/06/17. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Esame di Ricerca Operativa del 21/07/14. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Circuiti in regime sinusoidale

Gestione della produzione e della supply chain Logistica distributiva

Teoria dei Grafi Concetti fondamentali

Esame di Ricerca Operativa. max 14 x x 2 5 x 1 3 x x 1 3 x x x 2 16 x x x 1 x 2 15 x x 2 41

Problema del flusso massimo

Equazioni Differenziali (5)

Esame di Ricerca Operativa del 30/06/14. max 4 x 1 7 x 2 x 1 +7 x 2 7 x 1 4 x 2 7 x 1 +5 x 2 5 x 1 x 2 5 x 2 1 x 1 +4 x 2 6

Transcript:

Problemi di Nework Flow Massimo Paolucci (paolucci@dis.unige.i) DIST Universià di Genova Grafi di Flusso - Nework Flow I modelli di flusso (rei di flusso) sono uilizzai per prendere decisioni in vari conesi applicaivi, e.g.: sisemi di elecomunicazioni raspori sisemi idraulici e/o sisemi meccanici Araverso modelli di nework flow si possono affronare anche problemi in cui non esise un vero e proprio flusso, e.g.: problemi di percorso minimo problemi di assignazione problemi di scheduling problemi di pianificazione

Grafi di Flusso - Nework Flow Dao un grafo G=(V, E) orienao con definie le segueni grandezze: d ij (i, j) E capacià dell arco (i, j) w ij (i, j) E coso del flusso in (i, j) b i i V flusso nel nodo i, dove: b i >0 sorgene b i <0 pozzo inolre bi = 0 i V Grafi di Flusso - Nework Flow Un flusso ammissibile in G: x ij R (i, j) E aleche (1) xij x ji = bi (i,j) δ + (i) (j,i) δ (i) i V () 0 xij dij (i,j) E dove δ + (i) è la sella uscene da i e δ - (i) la sella enrane.

Grafi di Flusso - Nework Flow Un flusso a coso minimo in G: x ij R (i, j) E ale che min wijxij (i,j) E s.. (1) e () Caso paricolare: il problema del rasporo G=(V 1 V, E) bipario e ale che b i >0 i V 1 e b i <0 i V Grafi di Flusso - Max Flow e Min Cu Dao un nodo s sorgene ed un nodo pozzo in G, deerminare il flusso massimo che può fluire ra s e senza conribui nei nodi inermedi. s

Grafi di Flusso - Max Flow e Min Cu 7 Il Max Flow si puo formulare come problema lineare b i =0 i V\{s,} w ij =0 (i,j) E (i,j) (,s) w s =-1 Deo v il flusso da s a : v = x = si (s,i) δ + (s) (i,) δ () x = x i s Grafi di Flusso - Max Flow e Min Cu 8 Il Max Flow si puo formulare come problema lineare Il problema del Max Flow max v s.. v xij x ji = 0 (i,j) δ + (i) (j,i) δ (i) v 0 xij dij (i,j) E i = s i s,i i =

Grafi di Flusso - Max Flow e Min Cu 9 Il Max Flow è sreamene legao al Min Cu Taglio (Cu) Un aglio (U,U ) è una parizione di V s- cu L insieme degli archi δ + (U)={(i,j) E, i U, j U } dove s U e U. Grafi di Flusso - Max Flow e Min Cu 10 di s- cu s s- cu Capacià del aglio dij ( i,j) δ + (U)

Grafi di Flusso - Max Flow e Min Cu 11 Il problema del aglio minimo Trovare il s- cu a minima capacià. Teorema (Max Flow - Min Cu) IL valore del flusso massimo da s a è pari al flusso che può passare per il aglio minimo che separa s da. Max Flow - Algorimo di Ford-Fulkerson 1 Si basa sul conceo di cammino aumenane (augmening pah) rispeo ad un flusso x. i (x ij, d ij ) j Esempio (,) (1,) (1,) (1,1) s 1 (0,) (,8) (,) (,)

Max Flow - Algorimo di Ford-Fulkerson 1 Definiamo: Arco saurao Dao x, (i,j) E è saurao se x ij =d ij Se P è un s- pah senza archi saurai allora poso: min (dij (i,j) P x ij ) = il flusso x non è massimo ma può essere aumenao di. Max Flow - Algorimo di Ford-Fulkerson 1 Se non esisono s- pah senza archi saurai allora x è un blocking flow. Noa: un blocking flow può non essere massimo Esempio s 1 +1 +1-1 +1 +1 Un unià di flusso è rimandaa da a (per poi proseguire verso ).

Max Flow - Algorimo di Ford-Fulkerson 1 Cammino aumenane rispeo ad un flusso x Dao x si definisce un grafo orienao D(x)=(V, E(x)) ale che E(x) = {(i,j): (i,j) E, x ij <d ij } {(i,j): (j,i) E, x ji >0} = E f (x) E r (x) dove E f (x) è l insieme degli archi forward menre E r (x) è l insieme degli archi reverse. Max Flow - Algorimo di Ford-Fulkerson 1 Cammino aumenane rispeo ad un flusso x Un s- pah in D(x) è un cammino aumenane rispeo a x Un flusso ammissibile è massimo se non esise un cammino aumenane rispeo a ale flusso. Esempio: D(x) s 1 cammino aumenane

Max Flow - Algorimo di Ford-Fulkerson 17 Labelling algorihm L algorimo del cammino aumenane eichea ogni nodo j con (p(j), ), dove p(j) è il nodo predecessore da cui si riceve il flusso. Max Flow - Algorimo di Ford-Fulkerson 18 L algorimo del cammino aumenane 1) Inizializzazione Fissare un flusso ammissibile (e.g., x=0). Eicheare s con (s, ). Tui gli alri nodi i V resano non eicheai. Porre i=s.

Max Flow - Algorimo di Ford-Fulkerson 19 L algorimo del cammino aumenane ) Esame del nodo i j V ale che (i,j) E e x ij <d ij, j non eicheao, eicheare j con (i, min [, d ij -x ij ]) j V ale che (j,i) E, xji>0, j non eicheao, eicheare j con (i, min [, x ji ]) marcare il nodo i come nodo esaminao. Max Flow - Algorimo di Ford-Fulkerson 0 L algorimo del cammino aumenane ) Se il pozzo è eicheao andare al passo. Scegliere un nodo i eicheao non esaminao ed andare al passo. Se non esisono nodi non esaminai il flusso correne è massimo.

Max Flow - Algorimo di Ford-Fulkerson 1 L algorimo del cammino aumenane ) Sia (p(j), ) l eichea di. E sao rovao un cammino aumenane deerminao a riroso sino al nodo s dalla sequenza dei p(j). Il nuovo flusso è deerminao aumenando di + il flusso sugli archi forward del cammino e diminuendolo di - sugli archi reverse. Eliminare ue le eichee ed ierare al passo 1. Max Flow - Algorimo di Ford-Fulkerson L operazione di labelling sugli archi di G. Arco forward (d ij <x ij ) (p(i), ) (x ij, d ij ) i (i, min [, d j ij -x ij ]) Arco reverse (x ji >0) (p(i), ) i (x ij, d ij ) j (i, min [, x ji ])

Max Flow - Algorimo di Ford-Fulkerson s 1 (, ) (1, ) (1, ) (0, ) (1, 1) (, 8) (, ) (, ) Max Flow - Algorimo di Ford-Fulkerson esame nodo 1: (, ) (s, ) 1 (, 8) (1, ) (1, ) (0, ) (, ) (1,) (1, 1) (, )

Max Flow - Algorimo di Ford-Fulkerson esame nodo : (, ) (s, ) 1 (1, ) (1, ) (0, ) (,) (1, 1) (, 8) (1,) (, ) (, ) Max Flow - Algorimo di Ford-Fulkerson esame nodo : (, ) (s, ) 1 (, 8) (,1) (1, ) (1, ) (0, ) (, ) (1,) (,) (1, 1) (, )

Max Flow - Algorimo di Ford-Fulkerson 7 esame nodo : (, ) (s, ) 1 (,1) (1, ) (1, ) (0, ) (,) (1, 1) (, 8) (1,) (, ) (,1) (, ) Max Flow - Algorimo di Ford-Fulkerson 8 esame nodo : (, ) (s, ) 1 (, 8) (,1) (1, ) (1, ) (0, ) (, ) (1,) (,) (1, 1) (,1) (, ) (,1)

Max Flow - Algorimo di Ford-Fulkerson 9 L ierazione ermina avendo rovao un cammino aumenane Il nuovo flusso (, ) s 1 (0, ) (, ) (1, ) (1, 1) (, 8) (, ) (, ) Max Flow - Algorimo di Ford-Fulkerson 0 Inizia una nuova ierazione esame nodo 1: (, ) (s, ) 1 (, 8) (0, ) (, ) (1, ) (, ) (1,) (1, 1) (, )

Max Flow - Algorimo di Ford-Fulkerson 1 esame nodo : (s, ) 1 (, ) (, 8) Non è possibile eicheare alcun alro nodo. Il flusso rovao è massimo. (1,) (, ) (1, ) (0, ) (, ) (,) (1, 1) (, ) Max Flow - Algorimo di Ford-Fulkerson Si può verificare che ale flusso corrisponde al aglio minimo: L algorimo deermina un Min Cu: U={i V nodo esaminao} U =V\U s U e U Ad esempio: U={1,,} U ={,,}

Max Flow - Possibili variani Max Flow ra mole sorgeni e moli pozzi archi a capacià archi a capacià 1 s 1 s... s Ci si riconduce al caso precedene aggiungendo una sorgene ed un pozzo fiizi. Max Flow - Possibili variani Grafi con capacià negli archi e nei nodi Nodi con capacià c i. Il flusso enrane deve essere inferiore della capacià: xhi (h,i) δ (i) ci Si aggiungono degli archi fiizi. arco a capacià c i c i - i i+

Max Flow - Possibili variani Grafi con capacià negli archi e nei nodi Archi non orienai. Si inroduce una coppia di archi orienai i j i j Archi orienai con capacià minima negaiva. Si sosiuiscono con una coppia di archi orienai con capacià sempre posiiva 0 d ij q ij i j i j -c ij d ij q ij 0 d ij c ij