Algorithmische Methoden zur Netzwerkanalyse Vorlesung 12, Henning Meyerhenke

Ähnliche Dokumente
Algorithmische Methoden für schwere Optimierungsprobleme

Algorithmische Methoden zur Netzwerkanalyse

Algorithmische Methoden zur Netzwerkanalyse

Algorithmische Methoden zur Netzwerkanalyse Vorlesung 8, Henning Meyerhenke

Algorithmische Methoden zur Netzwerkanalyse Vorlesung 11, Henning Meyerhenke

Algorithmische Methoden für schwere Optimierungsprobleme

Algorithmische Methoden zur Netzwerkanalyse Vorlesung 13, Henning Meyerhenke

Algorithmische Methoden zur Netzwerkanalyse

Datenstrukturen und Algorithmen. Christian Sohler FG Algorithmen & Komplexität

Algorithmische Methoden zur Netzwerkanalyse

Algorithmische Methoden für schwere Optimierungsprobleme

Algorithmische Methoden zur Netzwerkanalyse

Vorlesung 7 GRAPHBASIERTE BILDSEGMENTIERUNG

Algorithmische Methoden zur Netzwerkanalyse

Algorithmische Methoden zur Netzwerkanalyse Vorlesung 7, Henning Meyerhenke

Algorithmische Methoden zur Netzwerkanalyse

Vorlesung 3 MINIMALE SPANNBÄUME

Theoretische Informatik. Exkurs: Komplexität von Optimierungsproblemen. Optimierungsprobleme. Optimierungsprobleme. Exkurs Optimierungsprobleme

Theoretische Grundlagen der Informatik

Kombinatorische Optimierung

Algorithmische Methoden zur Netzwerkanalyse

Kombinatorische Optimierung

16. November 2011 Zentralitätsmaße. H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 87

Clusteranalyse für Netzwerke

Algorithmische Methoden zur Netzwerkanalyse

Algorithmen II Vorlesung am

2. November Gradfolgen Zusammenhang Kürzeste Wege. H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 37

Kombinatorische Optimierung

Algorithmische Methoden zur Netzwerkanalyse

3-Färbbarkeit. Korollar: Zu Entscheiden, ob ein Graph k-färbbar ist mit k 3, ist NP-vollständig.

Kochrezept für NP-Vollständigkeitsbeweise

Algorithmische Methoden zur Netzwerkanalyse

9. Übung Algorithmen I

Eulerweg, Eulerkreis. Das Königsberger Brückenproblem. Definition 3.1. Ein Weg, der jede Kante von G genau einmal

Hamiltonsche Graphen

Algorithmische Graphentheorie

9. November ZHK in dynamischen Graphen Zentralitäten. H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 67

NETZWERKANALYSE Clusteranalyse

Vorlesung 2 KÜRZESTE WEGE

Formale Grundlagen der Informatik 1 Kapitel 23 NP-Vollständigkeit (Teil 2)

Algorithmische Methoden zur Netzwerkanalyse

8. Übung Algorithmen I

Kombinatorische Optimierung

Näherungsalgorithmen (Approximationsalgorithmen) WiSe 2012/13 in Trier

Einführung in die Theoretische Informatik

Algorithmische Methoden zur Netzwerkanalyse Vorlesung für den Bereich Master Informatik

Zentralübung zur Vorlesung Diskrete Strukturen (Prof. Esparza)

Diskrete Strukturen. Hausaufgabe 1 (5 Punkte) Hausaufgabe 2 (5 Punkte) Wintersemester 2007/08 Lösungsblatt Januar 2008

Vorlesung 4 BETWEENNESS CENTRALITY

Optimierung. Optimierung. Vorlesung 9 Lineare Programmierung & Kombinatorische Optimierung Fabian Kuhn

Algorithmische Methoden für schwere Optimierungsprobleme

Komplexität von Algorithmen Musterlösungen zu ausgewählten Übungsaufgaben

23. November Betweenness Centrality Closeness Centrality. H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 108

Sudoku ist NP-vollständig

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik

Kombinatorische Optimierung

KAPITEL 3 MATCHINGS IN BIPARTITEN GRAPHEN

Maximum and Minimum Satisfiability Problem

Lokalisierung von inneren und äußeren Grenzen in Sensornetzwerken

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Algorithmische Graphentheorie

Komplexitätstheorie. Vorlesung im Sommersemester 2009

Algorithmische Methoden zur Netzwerkanalyse Vorlesung 14, Henning Meyerhenke

Algorithmische Methoden zur Netzwerkanalyse Vorlesung für den Bereich Master Informatik

11. Übung zu Algorithmen I 6. Juli 2016

Das Steinerbaumproblem

Vorlesung 2 KÜRZESTE WEGE

Optimierungsprobleme. B. Langfeld, M. Ritter, B. Wilhelm Diskrete Optimierung: Fallstudien aus der Praxis

Graphenalgorithmen und lineare Algebra Hand in Hand Vorlesung für den Bereich Master Informatik

Topological Fisheye Views for Visualizing Large Graphs

Zentralübung zur Vorlesung Diskrete Strukturen (Prof. Mayr)

Approximationsalgorithmen für NP-harte Optimierungsprobleme

Approximationsalgorithmen für NP-harte Optimierungsprobleme

Kapitel 4: Minimale spannende Bäume Gliederung der Vorlesung

durch Einfügen von Knoten konstruiert werden kann.

Statt Turingmaschinen anzugeben, genügt die Angabe eines C++ Programms oder die Angabe eines Pseudocodes.

Überblick. TSP Vergleich der Lösungen. Das Travelling Salesman Problem. Nearest-Neighbor Heuristik für TSP

Kap. 7.1 Heuristiken Kap. 7.2 Approximative Algorithmen und Gütegarantien

Dank. Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I. Reduktion. Komplexitätsklassen.

Probleme aus NP und die polynomielle Reduktion

Vorlesung Diskrete Strukturen Eulersche und Hamiltonsche Graphen

Theoretische Grundlagen der Informatik

Graphentheorie. Vorkurs Informatik WS 2016/2017. Dennis Aumiller

3 Klassifikation wichtiger Optimierungsprobleme

Die Klasse NP und die polynomielle Reduktion

Algorithmische Geometrie: Lineare Optimierung (I)

UNABHÄNGIGER LASTEN. Vorlesung 9 BALANCIERUNG DYNAMISCHER. Graphenalgorithmen und lineare Algebra Hand in Hand

Grundbegriffe der Informatik

Grundlagen der Informatik Kapitel 20. Harald Krottmaier Sven Havemann

Maximale s t-flüsse in Planaren Graphen

Künstliche Intelligenz

9 Minimum Spanning Trees

Diskrete Strukturen Endterm

4.Tutorium Multivariate Verfahren

Kapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung

10. Übung Algorithmen I

Wie komme ich von hier zum Hauptbahnhof?

Visualisierung von Graphen

Formale Systeme. Prof. Dr. Bernhard Beckert, WS 2016/ KIT Die Forschungsuniversita t in der Helmholtz-Gemeinschaft

Transkript:

Algorithmische Methoden zur Netzwerkanalyse Vorlesung 12, 25.01.2012 Henning Meyerhenke 1 KIT Henning Universität desmeyerhenke: Landes Baden-Württemberg und nationales Algorithmische Forschungszentrum Methoden in der Helmholtz-Gemeinschaft zur Netzwerkanalyse www.kit.edu

Inhalt Zerlegungen von Graphen Clusteranalyse Einführung Komplexität Greedy-Algorithmus 2 Henning Meyerhenke:

Schlagwort BIG Data Irregulär strukturierte Daten wachsen mit enormer Geschwindigkeit: Facebook: 800M+ Mitglieder (+50% innerhalb eines Jahres), durchschnittlich 130 Freunde, 1G+ neue Inhalte pro Tag Twitter: 1G Tweets pro Woche Web-Graph Finanztransaktionen 3 Henning Meyerhenke:

Clusteranalyse Auch Community Detection genannt Teile Knoten in Gruppen (oder Cluster oder Communitys) derart ein, dass Knoten derselben Gruppe zueinander ähnlich sind Knoten verschiedener Gruppen zueinander unähnlich sind 4 Henning Meyerhenke:

Clusteranalyse Auch Community Detection genannt Teile Knoten in Gruppen (oder Cluster oder Communitys) derart ein, dass Knoten derselben Gruppe zueinander ähnlich sind Knoten verschiedener Gruppen zueinander unähnlich sind Anwendungen: Komplexitätsreduktion Klassifikation von Genen, Interaktion von Genen Verteiltes Speichern/Berechnen von Daten Visualisierung 4 Henning Meyerhenke:

Zielfunktion Modularität Frage: Wie formalisiert man Ähnlichkeit? 5 Henning Meyerhenke:

Zielfunktion Modularität Frage: Wie formalisiert man Ähnlichkeit? Populäre Zielfunktion (wenn auch mit Nachteilen): Modularität (engl. modularity) Man betrachtet die Differenz aus zwei Verhältnissen, dem Anteil der tatsächlichen Intra-Cluster-Kanten und dem erwarteten Anteil dieser Kanten in einem Zufallsgraphen mit gleicher Gradfolge q(c) = C C ( ( ) ) E(C) m v C deg(v) 2 2m 5 Henning Meyerhenke:

Zielfunktion Modularität Frage: Wie formalisiert man Ähnlichkeit? Populäre Zielfunktion (wenn auch mit Nachteilen): Modularität (engl. modularity) Man betrachtet die Differenz aus zwei Verhältnissen, dem Anteil der tatsächlichen Intra-Cluster-Kanten und dem erwarteten Anteil dieser Kanten in einem Zufallsgraphen mit gleicher Gradfolge q(c) = C C ( ( ) ) E(C) m v C deg(v) 2 2m Formel kann aus Darstellung auf Übungszettel hergeleitet werden Modularität hat einige bekannte Nachteile, z. B. das Auflösungsproblem (kann man durch ein Gewichtungsschema beseitigen) 5 Henning Meyerhenke:

Inhalt Zerlegungen von Graphen Clusteranalyse Einführung Komplexität Greedy-Algorithmus 6 Henning Meyerhenke:

Modularität Komplexität Optimierung bzgl. Modularität ist streng N P-schwer (N P-Schwere gilt aber auch für die meisten anderen interessanten Zielfunktionen auch) Problem 1: MODULARITY Gegeben ein Graph G und eine Zahl K, gibt es eine Clusterung C von G, für die q(c) K gilt? 7 Henning Meyerhenke:

Modularität Komplexität Optimierung bzgl. Modularität ist streng N P-schwer (N P-Schwere gilt aber auch für die meisten anderen interessanten Zielfunktionen auch) Problem 1: MODULARITY 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 a 1,..., a 3k derart gegeben, dass 3k i=1 a i = kb und b/4 < a i < 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? 7 Henning Meyerhenke:

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 Daraus folgt, dass kein Algorithmus das Problem entscheiden kann 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 8 Henning Meyerhenke:

Komplexitätsbeweis Hilfsresultate Lemma In einer Clusterung von G(A) mit maximaler Modularität wird keine der Cliquen H 1,..., H k geteilt. Lemma In einer Clusterung von G(A) mit maximaler Modularität enthält jeder Cluster höchstens eine der Cliquen H 1,..., H k. Lemma In einer Clusterung von G(A) mit maximaler Modularität besteht kein Cluster ausschließlich aus Element-Knoten. 9 Henning Meyerhenke:

Komplexitätsbeweis Hauptteil (1) Theorem (Brandes et al., IEEE TKDE 2008) MODULARITY ist streng N P-vollständig. Beweis. In Polynomialzeit lässt sich prüfen, ob q(c) K (A) MODULARITY N P Zum Beweis der Vollständigkeit: Transformation wie an Tafel beschrieben Aus A = {a 1,..., a 3k } wird (G(A), K (A)) 10 Henning Meyerhenke:

Komplexitätsbeweis Hauptteil (1) Theorem (Brandes et al., IEEE TKDE 2008) MODULARITY ist streng N P-vollständig. Beweis. In Polynomialzeit lässt sich prüfen, ob q(c) K (A) MODULARITY N P Zum Beweis der Vollständigkeit: Transformation wie an Tafel beschrieben Aus A = {a 1,..., a 3k } wird (G(A), K (A)) Notation: Sei deg(c i ) = v Ci deg(v) (manchmal auch als Volumen oder vol(c i ) bezeichnet) 10 Henning Meyerhenke:

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: E(C) m (k 1)a 2(k 1)a = = 1 m m ka(a + 1) = 1 2k 2 k(a + 1) C C Clusterung C = (C 1,..., C k ) mit maximaler Modularität muss deg(c 1 ) 2 + + deg(c k ) 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 11 Henning Meyerhenke:

Komplexitätsbeweis Hauptteil (3) Beweis. Optimalfall: Jeder Cluster erhält Element-Knoten, die sich zu b = 1/k a aufsummieren Summe der Knotengrade der Element-Knoten in jedem Cliquen-Cluster gleich k 1/k a = a deg(c i ) = a 2 + a für jeden Cliquen-Cluster C i, i = 1,..., k deg(c 1 ) 2 + + deg(c k ) 2 k(a 2 + a) = ka 2 (a + 1) 2 Gleichheit gilt nur, wenn eine Zuweisung von b an jeden Cluster möglich ist Fortsetzung an der Tafel 12 Henning Meyerhenke:

Inhalt Zerlegungen von Graphen Clusteranalyse Einführung Komplexität Greedy-Algorithmus 13 Henning Meyerhenke:

Komplexitätsbeweis Hauptteil (3) Clustering ist schwierig was nun? 14 Henning Meyerhenke:

Komplexitätsbeweis Hauptteil (3) Clustering ist schwierig was nun? Komplexität erfordert Approximation oder Heuristik für nicht-triviale Instanzen Heuristik in Übung: Spektrale Relaxierung Nun: Hierarchische Methode mit Greedy-Ansatz Literaturhinweis Vincent D. Blondel, Jean-Loup Guillaume, Renaud Lambiotte, Etienne Lefebvre: Fast unfolding of communities in large networks. J. Stat. Mech. (2008) P10008. doi:10.1088/1742-5468/2008/10/p10008. 14 Henning Meyerhenke:

Die Louvain-Methode Start: Jeder Knoten ist sein eigener Cluster Danach: Zwei Phasen, die sich wiederholen: Phase 1, lokale Verbesserung: Für jeden Knoten lokal entscheiden, ob ein Wechsel in die Community des Nachbarn eine Verbesserung der Modularität ergibt. Wechsel in Community mit höchster positiver Verbesserung. Wiederholt, bis keine Verbesserung möglich. 15 Henning Meyerhenke:

Die Louvain-Methode Start: Jeder Knoten ist sein eigener Cluster Danach: Zwei Phasen, die sich wiederholen: Phase 1, lokale Verbesserung: Für jeden Knoten lokal entscheiden, ob ein Wechsel in die Community des Nachbarn eine Verbesserung der Modularität ergibt. Wechsel in Community mit höchster positiver Verbesserung. Wiederholt, bis keine Verbesserung möglich. Phase 2, Schrumpfen des Graphen: Kontraktion der Communitys zu einem einzelnen Knoten. Aktualisierung der Knoten- und Kantengewichte: Schleifen erhalten Gewicht aller alten Intra-Cluster-Kanten, die übrigen Kanten erhalten das Gewicht der alten Kanten zwischen den zugehörigen Communitys 15 Henning Meyerhenke:

Zusammenfassung Clustering (= Community Detection) ist ein wichtiges, aber auch schwieriges Problem der Netzwerkanalyse In der Praxis setzt man häufig Heuristiken ein Zwei Heuristiken vorgestellt: Spektrale Relaxierung Agglomeration mit gieriger lokaler Verbesserung (Louvain-Methode) 16 Henning Meyerhenke:

Zusammenfassung Clustering (= Community Detection) ist ein wichtiges, aber auch schwieriges Problem der Netzwerkanalyse In der Praxis setzt man häufig Heuristiken ein Zwei Heuristiken vorgestellt: Spektrale Relaxierung Agglomeration mit gieriger lokaler Verbesserung (Louvain-Methode) Es existieren zahlreiche Abwandlungen Immer noch aktiver Forschungsbereich Heute von besonderem Interesse: Einbezug von Semantik 16 Henning Meyerhenke: