La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Lezione n° 17: 11-12 Maggio 2009 - Algoritmo di Kruskal - Algoritmo di Prim - Problema del Flusso a Costo Minimo: Formulazione Anno accademico 2008/2009.

Presentazioni simili


Presentazione sul tema: "Lezione n° 17: 11-12 Maggio 2009 - Algoritmo di Kruskal - Algoritmo di Prim - Problema del Flusso a Costo Minimo: Formulazione Anno accademico 2008/2009."— Transcript della presentazione:

1 Lezione n° 17: Maggio Algoritmo di Kruskal - Algoritmo di Prim - Problema del Flusso a Costo Minimo: Formulazione Anno accademico 2008/2009 Prof. Cerulli – Dott.ssa Gentili Lezioni di Ricerca Operativa Corso di Laurea in Informatica ed Informatica Applicata Università di Salerno

2 2 Il Problema del Minimo Albero Ricoprente (Minimum Spanning Tree Problem) l Si considera un grafo G=(V,E) l Ad ogni arco e i, i=1,...,n di G è associato un costo c i, i=1,...,m Il problema: determinare lalbero ricoprente di G con il minimo costo associato. Esempio

3 3 Esempi di applicazioni: l determinare la rete di comunicazione più affidabile l determinare la connessione tra n centri a costo minimo (e.g., distribuzione del gas) Due algoritmi: l lalgoritmo di Kruskal (Greedy Algorithm) l lalgoritmo di Prim

4 4 Algoritmo di Kruskal (Minimum Spanning Tree) (1)E dato il grafo G=(V,E) con n nodi ed m archi. Si ordinano gli archi e 1, e 2,..., e m in modo che i costi associati non siano decrescenti (c 1 c 2... c m ). Si pone E 0 =, k=1 ed il grafo ST 0 =(V, ) (2)Se (V, E k-1 {e k }) è un grafo aciclico allora ST k =(V,E k ) con E k =E k-1 {e k }, altrimenti E k =E k-1 e ST k = ST k-1 Se E k =n-1 lalgoritmo si ferma ed ST k è lalbero ricoprente cercato, altrimenti k=k+1 e continuare col passo (2).

5 5 Esempio: n=9 m=

6 6 Algoritmo di Prim (Minimum Spanning Tree) (1)E dato il grafo G=(V,E) con n nodi ed m archi. Si sceglie un vertice arbitrario di G, V 0 ={v s }, si pone E 0 = e k=1 (2)Si connette un nodo v i V k-1 con un nodo v h V- V k-1 tale che il costo dellarco (v i,v h ) sia e si pone V k =V k-1 {v h } e E k =E k-1 {(v i,v h )} Se E k =n-1 lalgoritmo si ferma e ST=(V k,E k ) è lalbero ricoprente cercato, altrimenti k=k+1 e continuare col passo (2).

7 7 Esempio: n=6 m= Lalgoritmo di Prim O( V| 2 ) è più efficiente di quello di Kruskal (O( E log E )).

8 8 Matrici di Incidenza dei Grafi Dato G=(V,E) grafo non orientato, A G =[a ij ], con i=1,...,n e j=1,...,m è la matrice di incidenza di G, dove n= V ed m= E, e tale che

9 9 Esempio v4v4 v1v1 v2v2 v3v3 e1e1 e2e2 e3e3 e4e4 e5e5 matrice di incidenza di un grafo non orientato

10 10 Dato G=(V,E) grafo orientato, A G =[a ij ], con i=1,...,n e j=1,...,m è la matrice di incidenza di G, dove n= V ed m= E, e tale che

11 11 Esempio v3v3 v1v1 v2v2 v4v4 e1e1 e2e2 e3e3 e4e4 e5e5 matrice di incidenza di un grafo orientato

12 12 Problema del Flusso a costo Minimo FORMULAZIONE

13 13 Problema del Flusso a costo Minimo FORMULAZIONE In forma matriciale: NOTA: 1. La matrice A(m,n) è la matrice di incidenza nodo-arco, ogni colonna è associata ad un arco, il singolo elemento della matrice è dato da: 2. Il rango di questa matrice è: r(A)=m-1 (e i vettore colonna con tutti 0 eccetto un 1 in posizione i-ma.)


Scaricare ppt "Lezione n° 17: 11-12 Maggio 2009 - Algoritmo di Kruskal - Algoritmo di Prim - Problema del Flusso a Costo Minimo: Formulazione Anno accademico 2008/2009."

Presentazioni simili


Annunci Google