Algorithmische Methoden zur Netzwerkanalyse - Prof. Dr

Werbung
Algorithmische Methoden zur
Netzwerkanalyse
Prof. Dr. Henning Meyerhenke
Institut für Theoretische Informatik
1
Meyerhenke,
KIT –Henning
Die Forschungsuniversität
in der Institut für Theoretische
Helmholtz-Gemeinschaft
Algorithmische Methoden zur Netzwerkanalyse
Informatik
www.kit.edu
Vorlesung 17
Programm des Tages:
Übungsblätter 4 und 5
2
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Clusteranalyse
Vorlesung 18
Programm des Tages:
Clusteranalyse: N P -Schwere von Modularität
Präsenzübung
3
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Clusteranalyse
Inhalt
Clusteranalyse
Komplexität
4
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Clusteranalyse
Komplexität
Modularität
Komplexität
Optimierung bzgl. Modularität ist streng N P -schwer
Problem 1: M ODULARITY
Gegeben ein Graph G und eine Zahl K , gibt es eine Clusterung C von G,
für die q (C) ≥ K gilt?
5
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Clusteranalyse
Komplexität
Modularität
Komplexität
Optimierung bzgl. Modularität ist streng N P -schwer
Problem 1: M ODULARITY
Gegeben ein Graph G und eine Zahl K , gibt es eine Clusterung C von G,
für die q (C) ≥ K gilt?
Problem 2: 3-PARTITION
Seien 3k positive ganze Zahlen a1 , . . . , a3k derart gegeben, dass
∑3k
i =1 ai = kb und b/4 < ai < b/2 für eine ganze Zahl b und alle
i = 1, . . . , 3k .
Gibt es eine Partition dieser Zahlen in k Mengen derart, dass die Zahlen
in jeder Menge in der Summe b ergeben?
Beispiel: Siehe Tafel!
5
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Clusteranalyse
Komplexität
Komplexitätsbeweis
Vorüberlegungen zur Reduktion
3-PARTITION ist streng N P -vollständig, d.h. das Problem bleibt auch
bei unärer Kodierung N P -vollständig
⇒ Kein Algorithmus kann das Problem entscheiden in einer Zeit, die
polynomiell in der Summe der Eingabewerte ist (es sei denn,
P = N P)
Daher braucht unsere Transformation in der Reduktion auch nur
pseudo-polynomiell zu sein
6
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Clusteranalyse
Komplexität
Komplexitätsbeweis
Vorüberlegungen zur Reduktion
3-PARTITION ist streng N P -vollständig, d.h. das Problem bleibt auch
bei unärer Kodierung N P -vollständig
⇒ Kein Algorithmus kann das Problem entscheiden in einer Zeit, die
polynomiell in der Summe der Eingabewerte ist (es sei denn,
P = N P)
Daher braucht unsere Transformation in der Reduktion auch nur
pseudo-polynomiell zu sein
Zeigen: Instanz A = {a1 , . . . , a3k } von 3-PARTITION kann derart in
Instanz (G (A), K (A)) von M ODULARITY transformiert werden, dass
G (A) genau dann eine Clusterung C mit q (C ) ≥ K hat, wenn
3-PARTITION lösbar ist.
6
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Clusteranalyse
Komplexität
Reduktion
[Brandes et al., IEEE TKDE 2008]
7
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Clusteranalyse
Komplexität
Komplexitätsbeweis
Hilfsresultate
Lemma
In einer Clusterung von G (A) mit maximaler Modularität wird keine der
Cliquen H1 , . . . , Hk geteilt.
Lemma
In einer Clusterung von G (A) mit maximaler Modularität enthält jeder
Cluster höchstens eine der Cliquen H1 , . . . , Hk .
Lemma
In einer Clusterung von G (A) mit maximaler Modularität besteht kein
Cluster ausschließlich aus Element-Knoten.
8
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Clusteranalyse
Komplexität
Komplexitätsbeweis
Hauptteil (1)
Theorem (Brandes et al., IEEE TKDE 2008)
M ODULARITY ist streng N P -vollständig.
Beweis.
In Polynomialzeit lässt sich prüfen, ob q (C) ≥ K (A)
⇒ M ODULARITY ∈ N P
Zum Beweis der Vollständigkeit: Transformation wie an Tafel
beschrieben
Aus A = {a1 , . . . , a3k } wird (G (A), K (A))
9
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Clusteranalyse
Komplexität
Komplexitätsbeweis
Hauptteil (1)
Theorem (Brandes et al., IEEE TKDE 2008)
M ODULARITY ist streng N P -vollständig.
Beweis.
In Polynomialzeit lässt sich prüfen, ob q (C) ≥ K (A)
⇒ M ODULARITY ∈ N P
Zum Beweis der Vollständigkeit: Transformation wie an Tafel
beschrieben
Aus A = {a1 , . . . , a3k } wird (G (A), K (A))
Notation: Sei deg(Ci ) = ∑v ∈Ci deg(v ) (manchmal auch als Volumen
oder vol(Ci ) bezeichnet)
9
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Clusteranalyse
Komplexität
Komplexitätsbeweis
Hauptteil (2)
Beweis.
Bestimmung von K (A): Betrachte Clusterung in G (A) mit genau k
Clique-Clustern
Da jede solche Clusterung genau (k − 1)a Inter-Cluster-Kanten hat:
∑
C ∈C
m − (k − 1)a
2(k − 1)a
2k − 2
|E (C )|
=
= 1−
= 1−
m
m
ka(a + 1)
k (a + 1)
⇒ Clusterung C = (C1 , . . . , Ck ) mit maximaler Modularität muss
deg(C1 )2 + · · · + deg(Ck )2 minimieren.
⇒ Erfordert Aufteilung der Element-Knoten zwischen den Clustern, die
so gleichmäßig wie möglich bzgl. der Summe der Knotengrade pro
Cluster ist
10
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Clusteranalyse
Komplexität
Komplexitätsbeweis
Hauptteil (3)
Beweis.
Optimalfall (ausgeglichen): Jeder Cluster erhält Element-Knoten,
deren Elemente ai sich zu b = 1/k · a aufsummieren
Der Elementknoten zu ai hat Grad k · ai
⇒ Summe der Knotengrade der Element-Knoten in jedem
Cliquen-Cluster: k · b = k · 1/k · a = a
⇒ deg(Ci ) = a2 + a für jeden Cliquen-Cluster Ci , i = 1, . . . , k
⇒ deg(C1 )2 + · · · + deg(Ck )2 ≥ k (a2 + a)2 = ka2 (a + 1)2
Gleichheit gilt nur, wenn eine Zuweisung von b an jeden Cluster
möglich ist
Fortsetzung an der Tafel
11
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Clusteranalyse
Komplexität
Fazit
M ODULARITY ist streng N P -vollständig
Daher häufig Heuristiken
Local move: schnell, sehr gute Qualität
Local merge: mittelschnell, mittelgute Qualität
Exakte Methoden: sehr langsam, bestmögliche Qualität
Weitere Methoden: LP-Relaxierung, spektrales Clustering
12
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Clusteranalyse
Komplexität
Herunterladen