Dynamic Connectivity: Connecting to Networks and Geometry Timothy ChanMihai P ă trașcu Liam Roditty Weizmann.

Slides:



Advertisements
Similar presentations
Introduction to Algorithms
Advertisements

Network Design with Degree Constraints Guy Kortsarz Joint work with Rohit Khandekar and Zeev Nutov.
Lecture 15. Graph Algorithms
Planning for Fast Connectivity Updates Mihai Pă traşcu Mikkel Thorup …until June 2008 Jobs, anyone?
all-pairs shortest paths in undirected graphs
Succinct Representations of Dynamic Strings Meng He and J. Ian Munro University of Waterloo.
Dynamic Planar Convex Hull Operations in Near- Logarithmic Amortized Time TIMOTHY M. CHAN.
I/O-Algorithms Lars Arge Fall 2014 September 25, 2014.
Voronoi Diagrams in n· 2 O(√lglg n ) Time Timothy M. ChanMihai Pătraşcu STOC’07.
Minimum Spanning Trees Definition Two properties of MST’s Prim and Kruskal’s Algorithm –Proofs of correctness Boruvka’s algorithm Verifying an MST Randomized.
Data Structure and Algorithms (BCS 1223) GRAPH. Introduction of Graph A graph G consists of two things: 1.A set V of elements called nodes(or points or.
1st Meeting Industrial Geometry Computational Geometry ---- Some Basic Structures 1st IG-Meeting.
1 Directed Graphs: Victoria Road Problem. 2 Update: Edge is deleted; Edge is inserted Edge weight is changed F A Directed graph problems.
Chapter 9 Graph algorithms. Sample Graph Problems Path problems. Connectedness problems. Spanning tree problems.
Strategic Network Formation With Structural Holes By Jon Kleinberg, Siddharth Suri, Eva Tardos, Tom Wexler.
I/O-Algorithms Lars Arge Aarhus University February 16, 2006.
1 On Dynamic Shortest Paths Problems Liam Roditty Uri Zwick Tel Aviv University ESA 2004.
I/O-Algorithms Lars Arge Spring 2009 March 3, 2009.
An almost linear fully dynamic reachability algorithm.
Improved dynamic reachability algorithms for directed graphs Liam Roditty and Uri Zwick Tel Aviv University.
Graphs & Graph Algorithms 2
Chapter 9 Graph algorithms Lec 21 Dec 1, Sample Graph Problems Path problems. Connectedness problems. Spanning tree problems.
Dynamic Sets and Data Structures Over the course of an algorithm’s execution, an algorithm may maintain a dynamic set of objects The algorithm will perform.
Liam Roditty Reachability in Directed Graphs. Connectivity in undirected graphs Given two vertices decide whether they are in the same component. Reachability.
1 CSE 417: Algorithms and Computational Complexity Winter 2001 Lecture 11 Instructor: Paul Beame.
Graphs. Graph A “graph” is a collection of “nodes” that are connected to each other Graph Theory: This novel way of solving problems was invented by a.
Steiner trees Algorithms and Networks. Steiner Trees2 Today Steiner trees: what and why? NP-completeness Approximation algorithms Preprocessing.
1 An almost linear fully dynamic reachability algorithm Liam Roditty and Uri Zwick Tel Aviv University.
The Design and Analysis of Algorithms
Graphs & Graph Algorithms 2 Fawzi Emad Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
Dynamic Sets and Data Structures Over the course of an algorithm’s execution, an algorithm may maintain a dynamic set of objects The algorithm will perform.
Non-Adaptive Fault Diagnosis for All-Optical Networks via Combinatorial Group Testing on Graphs Nick Harvey, Mihai P ă traşcu, Yonggang Wen, Sergey Yekhanin.
Discrete Mathematics Lecture 9 Alexander Bukharovich New York University.
Graphs and Sets Dr. Andrew Wallace PhD BEng(hons) EurIng
Visibility Graphs and Motion Planning Kittiphan Techakittiroj for the Degree of Master of Science Department of Computer Science, Ball State University,
Minimal Spanning Trees What is a minimal spanning tree (MST) and how to find one.
V. V. Vazirani. Approximation Algorithms Chapters 3 & 22
Primal-Dual Meets Local Search: Approximating MST’s with Non-uniform Degree Bounds Author: Jochen Könemann R. Ravi From CMU CS 3150 Presentation by Dan.
Chapter 2 Graph Algorithms.
Spring 2015 Lecture 11: Minimum Spanning Trees
7.1 and 7.2: Spanning Trees. A network is a graph that is connected –The network must be a sub-graph of the original graph (its edges must come from the.
An optimal dynamic spanner for points residing in doubling metric spaces Lee-Ad Gottlieb NYU Weizmann Liam Roditty Weizmann.
Open Problem: Dynamic Planar Nearest Neighbors CSCE 620 Problem 63 from the Open Problems Project
GRAPHS. Graph Graph terminology: vertex, edge, adjacent, incident, degree, cycle, path, connected component, spanning tree Types of graphs: undirected,
Graphs Upon completion you will be able to:
Graph Theory. undirected graph node: a, b, c, d, e, f edge: (a, b), (a, c), (b, c), (b, e), (c, d), (c, f), (d, e), (d, f), (e, f) subgraph.
Graph Concepts and Algorithms Using LEDA By Caroline Moore and Carmen Frerichs (252a-at and 252a-ao) each graph in the presentation was created using gw_basic_graph_algorithms.
© M. Winter COSC/MATH 4P61 - Theory of Computation Minimum-weight Spanning Tree Weighted Graph Spanning.
Spanning Tree Definition:A tree T is a spanning tree of a graph G if T is a subgraph of G that contains all of the vertices of G. A graph may have more.
Graph Theory Def: A graph is a set of vertices and edges G={V,E} Ex. V = {a,b,c,d,e} E = {ab,bd,ad,ed,ce,cd} Note: above is a purely mathematical definition.
Data Structures & Algorithms Graphs Richard Newman based on book by R. Sedgewick and slides by S. Sahni.
Certifying Algorithms [MNS11]R.M. McConnell, K. Mehlhorn, S. Näher, P. Schweitzer. Certifying algorithms. Computer Science Review, 5(2), , 2011.
Graph Search Applications, Minimum Spanning Tree
The Design and Analysis of Algorithms
Data Structures & Algorithms Graphs
Graph Algorithm.
CIS 700: “algorithms for Big Data”
Connected Components Minimum Spanning Tree
Graphs & Graph Algorithms 2
Graphs Chapter 11 Objectives Upon completion you will be able to:
CSCI B609: “Foundations of Data Science”
Improved dynamic reachability algorithms for directed graphs
Graphs.
Algorithm design (computational geometry)
June 12, 2003 (joint work with Umut Acar, and Guy Blelloch)
Dynamic Graph Algorithms
Lecture 10 Graph Algorithms
Efficient Aggregation over Objects with Extent
For Friday Read chapter 9, sections 2-3 No homework
Minimum Spanning Trees
Presentation transcript:

Dynamic Connectivity: Connecting to Networks and Geometry Timothy ChanMihai P ă trașcu Liam Roditty Weizmann

Part I: Graph Theory

Dynamic Subgraph Connectivity Maintain undirected graph G under: insert/delete edges turn nodes ON/OFF query: are nodes u and v connected ? through ON nodes computer network add new cable, cable cuts router reboot, misconfiguration, etc

Results [Chan STOC02] t u =O(m 0.94 ), t q =Õ( m) using Fast Matrix Mult. t u =O(m 0.89 ) in the ideal case of FMM in O(n 2 ) moral Ω(m) from triangle-finding, etc conjecture: no O(m 1-ε ) without FMM [CPR FOCS08] t u =Õ(m 2/3 ), t q =Õ( m) cute, simple (?), no FMM

Dynamic Graph Problems AmortizedWorst-case dynamic connectivity O(lg n (lglg n) 3 ) O(n) dynamic MSTO(lg 2 n) O(n) dyn. reachability (directed)O(n 2 ) O(n 2 ) dynamic APSPÕ(n 2 ) Õ(n 2.75 ) edge updates node updates

Dynamic Graph Problems AmortizedWorst-case dynamic connectivity O(lg n (lglg n) 3 ) O(n) dynamic MSTO(lg 2 n) O(n) subgraph connectivity Õ(m 2/3 ) O(m) dyn. reachability (directed)O(n 2 ) O(n 2 ) dynamic APSPÕ(n 2 ) Õ(n 2.75 ) edge updates node updates

The Algorithm: Idea 1 can always do t u = degree * Õ(lg n) … be smart about large degree nodes! H = graph of nodes with degree m 1/3 * O( m 2/3 ) nodes * edges = contract components of low-degree nodes update high-degree node: Õ( m 2/3 ) query high-degree node: O(lg n) How fast? [Chan] subquadratic via FMM How fast? [Chan] subquadratic via FMM

The Algorithm: Idea 2 H = high-degree nodes + components with m 1/3 edges * O(m 2/3 ) nodes * edges = contract small components turn ON a small degree node: * add to H, rebuild after m 2/3 insertions construction time: O(m 4/3 ) O(m 2/3 ) amortized

The Algorithm: Idea 3 Turn OFF a node from a small component * recompute adjanced edges of H in (m 1/3 ) 2 time Turn OFF a node from a large component * use dynamic connectivity to find subcomponents * leave largest subcomponent in place, move other(s) O(lg m) work per edge in total (halving trick)

Part II: Computational Geometry

Dynamic Geometric Connectivity Maintain collection S of objects: update: insert/delete objects query: are objects u and v connected thru intersections?

Dynamic Geometric Connectivity Maintain collection S of objects: update: insert/delete objects query: are objects u and v connected thru intersections?

Connecting to Subgraph Connectivity [Chan STOC02] If objects allow range reporting in space S, query τ… Geometric connectivity reduces to subgraph connectivity * graph has m=S edges * update slow down by a factor of τ Example: axis parallel boxes (reduction loses polylogs)

Connecting to Subgraph Connectivity Query answers = union of objects in O(τ) nodes

Connecting to Subgraph Connectivity Query answers = union of objects in O(τ) nodes => turn those nodes ON

Results [Chan STOC02] axis-parallel boxes subgraph connectivity in 3D +, subgraph connectivity axis-parallel boxes [Afshani, Chan ESA06] axis-parallel, 2D: t u =Õ(n 10/11 ), t q =O(1) [Eppstein95] equal-radius balls MST range searching in 2D: t u =O(lg 10 n) via [Chan SODA06]

Our Result If objects allow range reporting in space Õ(n), query O(n 1-α ) geometric connectivity can be solved in O(n 1-β ) Examples: 2D line segments Õ(n 9/10 ) 3D disks Õ(n 35/36 ) [Agarwal, Matousek] anything under the sun

Open Problems Graph Theory: beat t u =Õ(m 2/3 )? …ideally O(m) what query time is possible? spanning tree? o(n), for any m? … likely impossible worst-case o(m)? … batched dynamic connectivity Geometry: real algorithms for interesting special cases

The End Questions?