mst-appl - Home di homes.di.unimi.it

annuncio pubblicitario
Alberi ricoprenti minimi
Alcune applicazioni
Lunedì 17 novembre 2003
Minimum Spanning Tree problem (MST)
Problema
Esempio
Dato un grafo G = (V, E) e una funzione di costo
c: E  R, determinare un sottografo T(U,X)
ricoprente (U = V), connesso e aciclico (albero)
di costo minimo
Progettare una rete di comunicazione che
colleghi n luoghi a costo minimo
1
1
Istanza:
n=5
2
2
6
4
4
2
4
5
2
5
Grafo G = (V,E) con n = |V|, m = |E|
Funzione di costo ce : E  R con e = [v,w]  E
3
3
Proprietà richieste alla soluzione:
• Ogni città deve far parte della rete 
sottografo ricoprente (che contiene tutti i vertici)
• Ogni coppia di città deve poter comunicare 
sottografo connesso
• Non devono essere presenti collegamenti superflui 
sottografo aciclico
1
v1
4
2
v2
2
v1
4
3
6
2
v2
2
2
v5
5
v3
4
3
2
v2
2
3
6
4
v4
1
v1
6
4
v4
1
2
v5
5
v3
4
v4
2
v5
5
v3
Un’applicazione genetica
Memorizzare in forma compatta un insieme di n stringhe
binarie di uguale lunghezza
Per ogni coppia di stringhe [i,j] è nota la distanza (quali e
quanti bit commutare per convertirle una nell’altra).
Per esempio
d12 = 4
Un’applicazione genetica
• Si costruisce un grafo G(V,E) in cui
i vertici sono le stringhe, i lati le differenze
• Si sceglie arbitrariamente una stringa di riferimento
• Si esprime ciascuna stringa come variante di un’altra
(elencando le differenze)
• Si descrive l’insieme di stringhe con l’albero
ricoprente minimo
3
Stringa di riferimento
1
1) 011100011101
Albero ricoprente minimo
lati differenze lati differenze
(1,6) 3,6,12
(1,3) 1,3,7,10
(3,5) 2,10
(4,5) 3,4,6
6
(2,4) 4,7,10
2
4
5
Diffusione ottimale di un messaggio
(“optimal message passing”)
E’ data una rete di comunicazione G = (V, E) ove i lati
[i, j]  E indicano quali coppie di elementi possono
comunicare direttamente.
Si conosce la probabilità pij, 0  pij  1, di intercettazione
di un messaggio lungo ogni lato [i, j]  E
Problema
Come trasmettere a tutti gli elementi
un messaggio segreto minimizzando la
probabilità che sia intercettato?
Minimizzare la probabilità di intercettazione (lungo uno o
più lati)
min 1 
(1  p )

ij
[ i , j ]T
Massimizzare probabilità di non intercettazione su
alcun lato
max
(1  pij )

[ i , j ]T
• diffusione verso tutti i nodi 
ricopertura e connessione alla radice
• evitare ridondanza e ridurre la
probabilità di intercettazione  aciclicità
T è un albero
ricoprente
Applicando all’obiettivo una funzione monotona
crescente, non cambiano le soluzioni ottime (cambia solo
il valore)

Es: log(.)
max log(  (1  pij ))  max
[ i , j ]T
 log(1  p )
ij
[ i , j ]T
Scarica