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

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

Vorlesung 4 BETWEENNESS CENTRALITY

Algorithmische Methoden zur Netzwerkanalyse

Algorithmische Methoden zur Netzwerkanalyse Vorlesung 7, Henning Meyerhenke

Theoretische Informatik 1 WS 2007/2008. Prof. Dr. Rainer Lütticke

DATENSTRUKTUREN UND ALGORITHMEN

Algorithmen und Datenstrukturen

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

Graphen: Datenstrukturen und Algorithmen

Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen 2

Theoretische Überlegungen zur Ausbreitung von Infektionserregern auf Kontaktnetzen. Hartmut Lentz, Maria Kasper, Ansgar Aschfalk und Thomas Selhorst

Definition Ein gerichteter Graph G = (V, E) ist ein Graph von geordneten Paaren (u, v) mit u V und v V.

Algorithmen und Datenstrukturen 2

Minimal spannende Bäume

Algorithmische Methoden zur Netzwerkanalyse

Gliederung. Definition Wichtige Aussagen und Sätze Algorithmen zum Finden von Starken Zusammenhangskomponenten

Algorithmen und Datenstrukturen

8 Diskrete Optimierung

Aufgabe 4.2 Sei G = (V, E, l) ein ungerichteter, gewichteter und zusammenhängender Graph.

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

Algorithmische Methoden zur Netzwerkanalyse Vorlesung 14, Henning Meyerhenke

Datenstrukturen & Algorithmen

MafI I: Logik & Diskrete Mathematik (F. Hoffmann)

Was bisher geschah. 1. Zerlegung in monotone Polygone 2. Triangulierung der monotonen Teilpolygone

Very simple methods for all pairs network flow analysis

3.1 Konstruktion von minimalen Spannbäumen Es gibt zwei Prinzipien für die Konstruktion von minimalen Spannbäumen (Tarjan): blaue Regel rote Regel

INSTITUT FÜR THEORETISCHE INFORMATIK, PROF. SANDERS

16. All Pairs Shortest Path (ASPS)

4 Greedy-Algorithmen (gierige Algorithmen)

Vorlesung 3 MINIMALE SPANNBÄUME

Ein Graph ist ein Paar (V,E), wobei V eine Menge von Knoten und E eine Menge von Kanten (v,w) mit v,w in V ist.

Datenstrukturen. Mariano Zelke. Sommersemester 2012

Routing Algorithmen. Begriffe, Definitionen

Effiziente Algorithmen und Datenstrukturen I. Kapitel 9: Minimale Spannbäume

2.5. VERBINDUNGSNETZWERKE GESTALTUNGSKRITERIEN DER NETZWERKE TOPOLOGIE ALS GRAPH. Vorlesung 5 TOPOLOGIE: DEFINITIONEN : Sei G = (V, E) ein Graph mit:

ADS: Algorithmen und Datenstrukturen 2

6. Übung zur Linearen Optimierung SS08

1 topologisches Sortieren

Breiten- und Tiefensuche in Graphen

Algorithmen II Vorlesung am

Overview. Testen von Planarität. Planare Graphen. Beliebige Knotenpositionen. Gerade Linien. Faces

WS 2009/10. Diskrete Strukturen

Seminarvortag zum Thema Virtual Private Network Design im Rahmen des Seminars Network Design an der Universität Paderborn

Algorithmen & Datenstrukturen 1. Klausur

Proseminar Online Algorithmen, Prof. Dr. Rolf Klein

ADS: Algorithmen und Datenstrukturen 2

Grundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny

WS 2009/10. Diskrete Strukturen

C++, LEDA und STL Visualisierung minimal/maximal aufspannender Bäume

Netzwerkmodelle. Seminar Netzwerkanalyse. Sommersemester 2005 Jasmine Metzler

Algorithmische Methoden der Netzwerkanalyse

Klausur Algorithmen und Datenstrukturen

2 Tiefen- und Breitensuche

Literatur. Dominating Set (DS) Dominating Sets in Sensornetzen. Problem Minimum Dominating Set (MDS)

Ferienkurs zur algorithmischen diskreten Mathematik Kapitel 3: Minimal aufspannende Bäume und Matroide

Algorithmen und Datenstrukturen 2

Algorithmen und Datenstrukturen 2-2. Seminar -

Graphen. Leonhard Euler ( )

Algorithmische Methoden zur Netzwerkanalyse

Westfählische Wilhelms-Universität. Eulersche Graphen. Autor: Jan-Hendrik Hoffeld

Einführung in minimale Spannbäume und deren Berechnung

INTERVALLBÄUME. Tanja Lehenauer, Besart Sylejmani

Kombinatorische Optimierung

Grundlagen Datenstrukturen Transitive Hülle Traversierung Kürzeste Wege Spannender Baum Max. Fluss Zuordnungen. 6. Graphen

Kapitel 5: Minimale spannende Bäume Gliederung der Vorlesung

Algorithmen und Datenstrukturen (WS 2007/08) 63

Algorithmen und Datenstrukturen 1

Grundbegriffe der Informatik

Das Voronoi Diagramm. 1. Definition. 2. Eigenschaften. 3. Größe und Speicherung. 4. Konstruktion. 5. Verwendung

Das Briefträgerproblem


Algorithmen - Eine Einführung

Lokalisierung von inneren und äußeren Grenzen in Sensornetzwerken

entheoretische Konzepte und Algorithmen

Algorithmen und Datenstrukturen Kapitel 10

Euklidische Distanzmatrizen. Andrei Grecu

Rekurrenzen T(n) = T(n 1) + N beschreibt Laufzeitverhalten eines rekursiven Algorithmus

2. Repräsentationen von Graphen in Computern

κ(k) k K S Algorithmus zur Bestimmung eines spannenden Baumes mit minimalen Kosten (Kruskal, 1965).

Übung zur Vorlesung Algorithmische Geometrie

Vorlesung 5: DATENSTRUKTUREN UND ALGORITHMEN

Studientag zur Algorithmischen Mathematik

Motivation Kenngrößen von Graphen Modelle. Small Worlds. in Vorlesung Semantische Suche in P2P-Netzwerken. Florian Holz

Kapitel 4: Minimal spannende Bäume Gliederung der Vorlesung

Customization (Zuschneiden)

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

Vollständiger Graph. Definition 1.5. Sei G =(V,E) ein Graph. Gilt {v, w} E für alle v, w V,v w, dann heißt G vollständig (complete).

Universität des Saarlandes

Alle bislang betrachteten Sortieralgorithmen hatten (worst-case) Laufzeit Ω(nlog(n)).

Algorithmen und Datenstrukturen

Kapitel 4: Minimale spannende Bäume Gliederung der Vorlesung

Institut für Mathematik Geometrie und Lineare Algebra J. Schönenberger-Deuel. Aufgabe 1. Wir geben nur zwei von sehr vielen möglichen Strategien.

Polygontriangulierung

Datenstrukturen. Mariano Zelke. Sommersemester 2012

Kombinatorische Optimierung

2. Optimierungsprobleme 6

Wiederholung zu Flüssen

Teil XII. Datenstrukturen: Bäume, Stacks und Queues. Scientific Computing in Computer Science, Technische Universität München

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

Transkript:

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

ZHK in dynamischen Graphen Ungerichteter schlichter dynamischer Graph Dynamisch: Kanten werden eingefügt und gelöscht Annahme: Skaleninvariantes Netzwerk Aufgabe: Berechnung und kostengünstige Aktualisierung der ZHK ZHK ist globale Eigenschaft Einfacher Fall: Einfügen von Kanten Schwieriger: Löschen von Kanten H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 68

Annahme: Skaleninvarianter Graph Soziale Netzwerke (und weitere) sind oft skaleninvariant Stark unterschiedliche Gradverteilung (power law) Kleine maximale Distanz zwischen beliebigem Knotenpaar (Durchmesser) Was bedeutet das für die Berechnung der ZHK? Die meisten Änderungen innerhalb einer Komponente Einfügungen verschmelzen meist kleine mit einer (der) großen Komponente H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 69

Problemfall: Löschungen Komponenten werden nur selten getrennt Erkenntnis: Der Tiefensuch Baum erleichtert einem die Arbeit! Vorschläge? H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 70

DFS Kantentypus hilft bei Löschung Baumkanten bilden Spannbaum Ein Spannbaum ist ein Teilgraph, der alle Knoten des Obergraphen verbindet und ein Baum ist Wenn die zu löschende Kante keine Baumkante ist, wird die Komponente nicht zerschnitten Nur bei wenigen Löschungen müssen aufwändigere Verfahren zum Einsatz kommen Was könnte die nächst aufwändigere Aktion sein? H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 71

Datenhaltung vs. Analyse Annahmen bzw. Entwurfsentscheidungen: Kantenaktionen (Einfügungen, Löschungen) treffen kontinuierlich ein Die Analyse findet in regelmäßigen Abständen statt Aktionen werden stapelweise bearbeitet Während der Analyse werden neu eintreffende Aktionen gepuffert H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 72

Struktur des Algorithmus Aktionen im Stapel aufbereiten Gemäß Startknoten sortieren In unterschiedliche Warteschlangen (ins/del) einfügen Aktualisieren der Datenstruktur ZHK Analyse: Löschungen durchführen Baumkante? Dreieck in Nachbarschaft? Falls zu viele mögliche Aufspaltungen: Statische Neuberechnung, sonst Einfügungen durchführen H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 73

Datenstruktur STINGER Spatiotemporal Interactive Networks and Graphs (STING) Extensible Representation Physical Vertex ID Physical to Logical Mapper 0 1 2 3 4 5 6 EType Array Len Hi Ptr 0 1 Z Logical Vertex Array a0 T0 W0 7 a1 T1 W1 6 a2 T2 W2 0 6 0 1 a4 T4 W4 2 17 a5 T5 W5 23 5 a6 T6 W6 1 0 EType 0 EType 1 EType Z Edge Block Edge Block Header Edge 1 Edge 2 Edge 3 Edge 4 Next Block Pointer Adj Vertex ID EType Edge Weight Vertex ID Timestamp 1 High Water Mark # Edges in this Block Timestamp 2 High Water Mark in this Block Length Smallest Largest Timestamp Timestamp Edge X N-1 Physical Vertex Vertex ID Weight in-deg VType out-deg Edge Block Pointer H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 74

Analyse: Löschen von Kanten Baumkante? n j Ist zu löschende Kante Teil eines Dreiecks? j n Statische Neuberechnung! Keine Aufspaltung! Vermerke mögliche Aufspaltung! j Weitere Kanten vorhanden? n Zahl möglicher Aufspaltungen über Grenzwert? j H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 75

Parallele Bestimmung von Dreiecken Dreieck: Drei Knoten sind paarweise Nachbarn zueinander Aufgabe: Schnell bestimmen, ob Kante Teil eines Dreiecks ist Gemeinsame Nachbarn finden Frage der Existenz! Eine Möglichkeit: Bit Vektoren H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 76

Pseudocode fürs Löschen von {u,v} F: Flag für Dreieck, R: Zahl der möglichen Aufspaltungen H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 77

Paralleles Einfügen von Kanten Sequentieller trivialer Ansatz: Falls die Kante zwei Knoten derselben Komponente verbindet: keine Änderung Falls die beide Knoten in unterschiedlichen Komponenten liegen: Verschmelze Komponenten So parallel schwierig umzusetzen Warum? Problemreduktion parallel H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 78

Aufbau des Komponentengraphs Für jede einzufügende Kante wird zunächst geprüft, ob sie den Komponentengraphen verändert Das muss parallel natürlich koordiniert werden Verschiedene Datenstrukturen möglich Schließlich: ZHK Algorithmus auf Komponentengraphen C C ist sehr viel kleiner als G, daher geringer Aufwand H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 79

Einfügen von Kanten C: Komponentengraph, M / M : ZHK Zugehörigkeit H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 80

Ein paar Ergebnisse (nicht ganz aktuell, beinhalten nicht alle algorithmischen Fortschritte) H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 81

Zusammenfassung Wege und Zusammenhang Wege: Wiederholung von grundlegenden Definitionen Kurze Wiederholung bekannter Algorithmen zur Bestimmung kürzester Wege Vertiefung APSP in den Übungen Zusammenhang: Bestimmung von (starken) ZHK mit DFS Kategorisierung von DFS Kanten Baumkanten bei der Aktualisierung der ZHK in dynamischen Graphen H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 82

H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 83

Zentralitäten Maße für die Bedeutung eines Knotens (oder evtl. auch einer Kante) in einem Netzwerk Beispiel: Gradzentralität Grad des Knotens Gibt einen Bonuspunkt für jeden Nachbarn Kann ein Indikator für die Bedeutung sein Aber: Was wird dadurch schlecht modelliert? H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 84

Eigenvektorzentralität Nicht alle Nachbarn sind gleich wichtig Die Wichtigkeit einer Person in einem Netzwerk hängt auch von der Wichtigkeit seiner Nachbarn ab Wert der Nachbarn soll proportional eingehen in eigenen Wert, Berechnung: Sei der Zentralitätsvektor, sei der initiale Zustand Aktualisierung: Matrixnotation: H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 85

Exkurs: Eigenwerte & Eigenvektoren H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 86

Darstellung in spektraler Form Zentralität genügt (Herleitung s. Tafel), daher ist der Eigenvektor von zum Eigenwert Zentralität von ist proportional zur Zentralität der Nachbarn: EV Zentralität kann groß sein, weil ein Knoten viele Nachbarn hat, die Nachbarn hohe EV Zentralität haben oder beides H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 87