SCHNITTERHALTUNG (SPEKTRALE APPROXIMATION)

Ähnliche Dokumente
Algorithmische Methoden zur Netzwerkanalyse

Algorithmische Methoden zur Netzwerkanalyse Vorlesung 10, Henning Meyerhenke

Algorithmik WS 07/ Vorlesung, Andreas Jakoby Universität zu Lübeck. 10 Matching-Probleme

Vorlesung 14 FORTSETZUNG: LÖSER FÜR LAPLACE-GLEICHUNGSSYSTEME

Kombinatorische Optimierung

Definition 77 Sei n N. Der Median (das mittlere Element) einer total geordneten Menge von n Elementen ist deren i-kleinstes Element, wobei n i =.

Kombinatorische Optimierung

Flüsse, Schnitte, Bipartite Graphen

Beweis: Annahme: T (n) c n, wobei c = c(m) konstant ist. Die Annahme ist ok, falls T (n)

Vorlesung 2 KÜRZESTE WEGE

Algorithmische Methoden zur Netzwerkanalyse

Das Problem des minimalen Steiner-Baumes

Algorithmentechnik - U bung 3 4. Sitzung Tanja Hartmann 03. Dezember 2009

Algorithmische Methoden zur Netzwerkanalyse

Wiederholung zu Flüssen

Vorlesung 15 ABSCHLUSS UND ZUSAMMENFASSUNG

Beweis: Färbe jede Kante zufällig und unabhängig mit Ws 1 2. Ereignis A i : i-te Clique K (i), i = 1,..., ( n K (i)

Flüsse, Schnitte, bipartite Graphen

Algorithmische Methoden für schwere Optimierungsprobleme

Inhalt. 1. Flußprobleme. 2. Matching. 3. Lineares Programmieren. 4. Ganzzahliges Programmieren. 5. NP-Vollständigkeit. 6. Approximationsalgorithmen

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Algorithmen II Vorlesung am

Minimal spannende Bäume

Graphenalgorithmen und lineare Algebra Hand in Hand Prof. Dr. Henning Meyerhenke

5. Bäume und Minimalgerüste

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

1. Klausur zur Vorlesung Algorithmentechnik Wintersemester 2008/2009

Flüsse und Schnitte von Graphen

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

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Vorlesung 2 KÜRZESTE WEGE

Algorithmen II Vorlesung am

Randomisierte Algorithmen

2. Klausur zur Vorlesung Algorithmentechnik Wintersemester 2008/2009

SPEKTRALE GRAPHENTHEORIE

6. Flüsse und Zuordnungen

Algorithmen II Vorlesung am

Berechnung minimaler Spannbäume. Beispiel

2. Klausur zur Vorlesung Algorithmentechnik Wintersemester 2009/2010

Überblick. Kap. 1.4: Minimum Weight Perfect Matching. 1.3 Blüten-Schrumpf Algorithmus für Maximum Matching

Trennender Schnitt. Wie groß kann der Fluss in dem folgenden Flussnetzwerk höchstens sein?

1. Klausur zur Vorlesung Algorithmentechnik Wintersemester 2005/2006

Very simple methods for all pairs network flow analysis

7. Der Entwurf von Algorithmen (Fortsetzung)

Klausurvorbereitung. 1 Zentrale Begriffe. 2 Bipartite Graphen. 2.1 Begriffe. Vorlesung Graphen und Optimierung Sommersemester 2011 Prof. S.

KAPITEL 4 FLÜSSE IN NETZWERKEN

6. Flüsse in Netzwerken Berechnung maximaler Flüsse. dann berechnet der Markierungsalgorithmus für beliebige Kapazitätsfunktionen

Die Markov sche Ungleichung

Algorithmische Methoden zur Netzwerkanalyse

12 Ungleichungen. Wir beginnen mit einer einfachen Ungleichung über die Varianz. Satz 35 Es sei X eine zufällige Variable.

Proseminar Online Algorithmen, Prof. Dr. Rolf Klein

Effiziente Algorithmen I

VU Algorithmen auf Graphen Übungsblatt 2 - Aufgabe 2 Transformation einer MaxFlow- in eine MinCost Circulation Instanz

Algorithmische Methoden zur Netzwerkanalyse

Kapitel 8: Bipartite Graphen Gliederung der Vorlesung

Informatik II, SS 2016

Flüsse und Zuordnungen. Kapitel 6. Peter Becker (H-BRS) Graphentheorie Wintersemester 2018/ / 296

Bipartites Matching. Gegeben: Ein bipartiter, ungerichteter Graph (V 1, V 2, E). Gesucht: Ein Matching (Paarung) maximaler Kardinalität.

Kapitel III Selektieren und Sortieren

Algorithmen für schwierige Probleme

Graphentheorie. Zufallsgraphen. Zufallsgraphen. Zufallsgraphen. Rainer Schrader. 23. Januar 2008

Algorithmische Methoden zur Netzwerkanalyse

Algorithmische Methoden zur Netzwerkanalyse Vorlesung 13, Henning Meyerhenke

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

Fortgeschrittene Netzwerk- und Graph-Algorithmen

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

Datenstrukturen & Algorithmen

Vorlesung 4 BETWEENNESS CENTRALITY

Freie Bäume und Wälder

Ferienkurs zur algorithmischen diskreten Mathematik Kapitel 4: Flüsse

Very simple methods for all pairs network flow analysis

Maximale s t-flüsse in Planaren Graphen

Satz 61 (Chebyshev-Ungleichung)

Algorithmen und Datenstrukturen 2 VU 3.0 Nachtragstest SS Oktober 2016

Fortgeschrittene Netzwerk- und Graph-Algorithmen

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

Typischerweise sind randomisierte Algorithmen einfacher zu beschreiben und zu implementieren als deterministische Algorithmen.

2. Woche Eindeutige Entschlüsselbarleit, Sätze von Kraft und McMillan, Huffmancodierung

Effiziente Algorithmen I 11. Übungsblatt, Wintersemester 2015/16 Abgabetermin:

Rechenzeit für A. Sei t B die Rechenzeit eines Algo für B. Seien p,q,r monotone Polynome ( +).

Algorithmen zur Visualisierung von Graphen

Übung 5 Algorithmen II

Laufzeit. Finden eines Matchings maximaler Kardinalität dauert nur O( E min{ V 1, V 2 }) mit der Ford Fulkerson Methode.

Algorithmische Geometrie: Delaunay Triangulierung (Teil 1)

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

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

Approximation mit relativer Gütegarantie Überblick und einführende Beispiele

Statistik und Graphentheorie

5. Musterlösung. Problem 1: Vitale Kanten * ω(f) > ω(f ). (a) Untersuchen Sie, ob es in jedem Netzwerk vitale Kanten gibt.

Algorithmische Geometrie: Delaunay Triangulierung (Teil 2)

DWT 6.1 Die Ungleichungen von Markov und Chebyshev 157/467 Ernst W. Mayr

10 Kürzeste Pfade SSSP-Problem

Das EM-Modell. Vorlesung 3: Lubys Algorithmus. Graphenalgorithmen und lineare Algebra Hand in Hand

Ü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

Lösungshinweise 3 Vorlesung Algorithmentechnik im WS 08/09

Algorithmische Methoden zur Netzwerkanalyse

Transkript:

Vorlesung 12 AUSDÜNNUNG VON GRAPHEN SCHNITTERHALTUNG (SPEKTRALE APPROXIMATION) 387 Wiederholung: Approximative Schnitterhaltung Ziel: Approximationsalgorithmus: A(S(G)) Ziele bei Eingabe eines dichten Graphen G = (V, E) mit Gewichten u: E! R + : 1. Ausdünnen von G: Einige Kanten entfernen, dafür andere geeignet gewichten 2. Dabei den Wert jedes Schnitts ± in G approximativ erhalten: Ausgabe H = (V, F) mit F ½ E, F << E, Gewichten w: F! R + und w(± H (S)) = (1±²) u(± G (S)) 8 S µ V G H S S 388

Wiederholung: Algorithmus Randomisiertes Sampling in ½ Runden Eingabe: G = (V, E, u) Ausgabe: H = (V, F, w) mit F ½ E und w(± H (S)) = (1±²) u((± G (S)) 8 S µ V (1) 1. Initialisiere w = 0 2. Berechne k e für jede Kante e 3. for i = 1,..., ½ 4. for each e 2 E 5. Mit Wkt. 1/k e, erhöhe w e um k e /½ 389 Wiederholung: Kantenkonnektivität Def.: Die Konnektivität einer Kante e, k e, ist die minimale Größe eines Schnitts, der e enthält. Max-Flow-Min-Cut-Theorem: k e ist der maximale Fluss über e in einem geeigneten Flussproblem 390

Berechnung der Kantenkonnektivität Algorithmus SimpleEC(G, v, w) Eingabe: Graph G, Knotenpaar (v, w) Ausgabe: k v,w Ersetze jede ungerichtete Kante {x,y} durch zwei gerichtete Kanten (x,y) und (y,x) Setze v als Quelle und w als Senke Gib jeder gerichteten Kante die Kapazität 1 und nenne das resultierende Flussnetzwerk H Berechne die maximale Flussfunktion f in H return k v,w := f Laufzeit pro Paar (v, w): O(MaxFlow(n, m)) = O(nm) 391 Kantengewichte bleiben erhalten Beh.: Für jede Kante e gilt E[w e ] = 1. Beweis: Erwarteter Zuwachs von w e in Iteration i: (1/k e ) * (k e /½) = 1/½ Linearität des Erwartungswerts: Wert pro Iteration * ½ Iterationen Folgerung: Für jedes F µ E gilt: E[w(F)] = F. Beweis: Linearität des Erwartungswerts Also: Das Gewicht jedes Schnittes bleibt im Erwartungswert erhalten. 393

Gewicht jedes Schnitts bleibt erhalten Reicht das schon? Leider nicht! Wollen: Mit hoher Wkt. bleibt das Gewicht jedes Schnitts erhalten Hört sich nach Chernov-Schranke an... Satz (Chernov-Schranken): Sei X 1, X 2,..., X n eine Sequenz von n unabh. Bernoulli-Experimenten mit Erfolgswkt. p. E[Anzahl Erfolge] = pn Für jedes ± > 0 gilt: Für jedes ± 2 [0, 1] gilt: 394 Eine erste (erfolglose) Analyse Betrachte einen beliebigen Schnitt ±(S) X i,e : Bernoulli-ZV, gibt an, ob Kante e in Runde i ausgewählt wurde Gewicht des Schnitts ist Zufallsvariable X: X = Σ i=1 ½ Σ e 2 ±(S) X i, e * k e / ½ Chernov-Schranke ist für Summe von unabhängigen Bernoulli-ZV Was ist also das Problem? Die ZV dürfen für die beidseitige Schranke nur in [0, 1] liegen Unsere Koeffizienten k e können sehr viel größer sein Eigentlich: Die k e können sehr unterschiedlich sein 395

Beispiel für starke Ungleichheiten Siehe Tafel Chernov-Schranke so nicht verwendbar: Entworfen, um zu zeigen: Wkt., a mal größer zu sein als der Erwartungswert, nimmt exponentiell in a ab Gilt nicht für Y in unserem Beispiel! 396 Analysetrick: Gruppieren der Kanten Problem bei Analyse sind die starken Ungleichheiten Also: Betrachten von Gruppen, in denen Ungleichheit klein ist Partitionieren der Kantenmenge in Teilmengen: Anhand der Kantenkonnektivität: E i = {e 2 E : 2 i-1 k e 2 i } Beweisen dann Konzentration um Erwartungswert für Durchschnitt w(±(s) Å E i ) Alle Kanten in E i haben nahezu dieselben Koeffizienten k e / ½ Beispiel: Siehe Ausdruck 397

Schnittinduzierte Mengen Sei F eine Menge der Form ±(S) Å E i Wir nennen eine solche Menge schnittinduzierte Menge Achtung: Es könnte einen Schnitt S geben derart, dass F =±(S) Å E i = ±(S ) Å E i Daher: Kleinstmöglichen dieser Schnitte betrachten Grund: Der Stichprobenfehler von w(f) soll klein sein gegenüber ±(S) Das ist am schwierigsten, wenn ±(S) klein ist Beispiel: Siehe Ausdruck 398 Chernov-Schranke Allgemein: Für jedes ± > 0 gilt: Für jedes ± 2 [0, 1] gilt: Def.: Sei q(f) das Gewicht des leichtesten Schnitts in der schnittinduzierten Menge. Unser Fall: Sei F µ E i eine schnittinduzierte Menge. Dann: Pr(w(F) E[w(F)] > ² q(f) / log n) 2 exp(- ² 2 ½ q(f) / 3 2 i log 2 n) Beweis: Selbstübung 399

Hauptergebnis Theorem: Sei G = (V, E) ein Graph mit n Knoten. Mit Wkt. mindestens ½ produziert unser Sampling-Prozess Gewichte w, die den Wert aller Schnitte bis auf einen Faktor 1±² erhalten und nur O(n log 3 n/² 2 ) Nichtnulleinträge haben. Einordnung: Durch kompliziertere Analyse kann man den Faktor log 3 n auf log 2 n drücken oder sogar ganz eliminieren. 400 Beweis des Hauptresultats Wir setzen ½ = 100 log 3 n/² 2 Zahl der Nichtnulleinträge leicht zu analysieren: Sei X i, e die Indikator-Zufallsvariable mit Wert 1, falls Kante e in Runde i gezogen wurde E[X i, e ] = 1/k e Zahl der Nichtnulleinträge in w ist höchstens Σ i=1 ½ Σ e 2 E X i, e E[Nichtnulleinträge] ½ Σ e 1/k e = O(n log 3 n / ² 2 ) (wg. Fakt auf Folie TODO) Markov-Ungleichung: Sei X eine ZV mit Werten in [0, 1]. Dann ist P(X r*e[x]) 1/r für beliebige r > 0. => Zahl der Nichtnulleinträge 4 O(n log 3 n / ² 2 ) mit Wkt. ¾ Fehlt noch: Konzentration der Schnittgröße um Erw.wert 401

Wdh.: Schnittinduzierte Mengen Sei F eine Menge der Form ±(S) Å E i Wir nennen eine solche Menge schnittinduzierte Menge Achtung: Es könnte einen Schnitt S geben derart, dass F =±(S) Å E i = ±(S ) Å E i Daher: Kleinstmöglichen dieser Schnitte betrachten Grund: Der Stichprobenfehler von w(f) soll klein sein gegenüber ±(S) Das ist am schwierigsten, wenn ±(S) klein ist [Formelbild: http://nickhar.wordpress.com/2012/02/08/lecture-11-graph-sparsifiers/] 402 Konzentration um Erwartungswert Wollen zeigen: Mit hoher Wkt. erfüllt jede schnittinduzierte Menge F w(f) - F ² q(f) / log n (2) Wenn das gilt, gilt auch für jeden Schnitt C = ±(S): 1. Ungleichung: Dreiecksungleichung, Beträge 2. Ungleichung: Wegen (2) 3. Ungleichung: q(c Å E i ) ist Größe des kleinsten Schnitts, der C Å E i induziert [Formelbild: http://nickhar.wordpress.com/2012/02/08/lecture-11-graph-sparsifiers/] Gilt (2), gilt auch das Haupttheorem! 403

Hilfsresultate (1) Definition: Für jedes α >= 1 sei ein α-minimaler Schnitt ein Schnitt, dessen Gewicht höchstens α mal größer ist als der des minimalen Schnitts. Lemma: In jedem ungerichteten Graphen G und für jedes α >= 1 gilt: Die Zahl der α-minimalen Schnitte in G ist höchstens n 2α. Beweisskizze: Kontraktionsalgorithmus: Solange n > 2, wähle beliebige Kante {u,v} und kontrahiere sie (erzeugt ggf. parallele Kanten) Randomisierter MinCut: Wähle Kanten oben zufällig gleichverteilt Beweisidee: Stoppe MinCut-Algo frühzeitig, dann hat jeder α-minimale Schnitt eine angemessene Wkt. zu überleben 404 Hilfsresultate (2) Theorem: Sei G = (V, E) ein Graph. Sei B µ E beliebig und sei K min{k e : e 2 B}. Dann gilt für jedes 1: {±(S) Å B : S µ V Æ ±(S) K } < n 2 Anders ausgedrückt: Die Zahl der Schnittmengen eines Schnitts ±(S), dessen Größe durch K beschränkt ist, mit einer beliebigen Kantenteilmenge B ist kleiner als n 2. Fakt: Für jeden Graphen G = (V, E) mit n = V gilt Σ e 2 E 1/k e n-1. 405

Beweis für Formel (2) Sei i 2 {1,..., log n} beliebig, aber fest. Seien F 1, F 2,... alle schnittinduzierten Teilmengen von E i. Seien die Teilmengen derart geordnet, dass q(f 1 ) q(f 2 )... Definiere: Die Ungleichung gilt nach Ergebnis auf früherer Folie zur Anwendung der Chernov-Schranke [Formelbild: http://nickhar.wordpress.com/2012/02/08/lecture-11-graph-sparsifiers/] 406 Beweis für Formel (2), Forts. Union bound => alle F j sind konzentriert Problem: Es kann exponentiell viele F j geben Wir betrachten daher zunächst die ersten n 2 schnittinduzierten Mengen F 1,..., F n2 Weil jede Kante e 2 F j zu E i gehört, gilt k e 2 i-1 => Jeder Schnitt, der die Kante e enthält, hat mindestens Größe 2 i-1 => q(f j ) 2 i-1 Das wird nun in (3) eingesetzt 407

Beweis für Formel (2), Forts. q(f j ) 2 i-1 in (3) einsetzen Daraus folgt: Σ j=1 n 2 p j 2n -14 Nun betrachten wir noch die restlichen F j mit j > n 2. Wir wenden das Theorem von Folie TODO an mit B = E i => K = 2 i-1 Nach diesem Theorem: Für jedes 1: {schnittinduzierte Menge F µ E i : q(f) 2 i-1 } < n 2 [Formelbild: http://nickhar.wordpress.com/2012/02/08/lecture-11-graph-sparsifiers/] 408 Beweis für Formel (2), Forts. Nach diesem Theorem: Für jedes 1: {schnittinduzierte Menge F µ E i : q(f) 2 i-1 } < n 2 Also: Für 1 gilt: Zahl der F j mit q(f j ) 2 i-1 ist < n 2 Mit = ln j / 2 ln n erhalten wir: q(f j ) > 2 i-1 ln j / 2 ln n Einsetzen in (3) ergibt: Summiert man über alle j > n 2 : [Formelbilder: http://nickhar.wordpress.com/2012/02/08/lecture-11-graph-sparsifiers/] 409

Abschluss des Beweises für (2) Wegen einer union bound: P(schnittinduzierte Teilmenge von E i verletzt Formel (2)) Σ j p j Das war die Analyse für ein bestimmtes i Anwenden der union bound auf alle i 2 {1,..., log n} => Gesamtfehlerwkt. 1/n [Formelbilder: http://nickhar.wordpress.com/2012/02/08/lecture-11-graph-sparsifiers/] 410 Zwischenfazit Große dicht besetzte Graphen sind schwierig zu speichern und schwierig zu verarbeiten Ausdünnung allgemeines Konzept: Speichere weniger Kanten, aber......gewichte die erhaltenen Kanten derart, dass gewisse Grapheigenschaften approximativ erhalten bleiben Hier: Eigenschaft der Schnitterhaltung Schnitte wichtig in vielfältigen Anwendungen Literatur: http://nickhar.wordpress.com/2012/02/08/lecture-11-graph-sparsifiers/ Spielman, Srivastava: Graph Sparsification by Effective Resistances. SIAM J. Comput. 40(6): 1913-1926 (2011) oder http://arxiv.org/abs/0803.0929. Fung, Harvey: Graph Sparsification by Edge-Connectivity and Random Spanning Trees. http://www.cs.ubc.ca/~nickhar/publications/sparsifier/sparsifier.pdf. 411