graph geometry problems in data streams
play

Graph & Geometry Problems in Data Streams 2009 Barbados Workshop - PowerPoint PPT Presentation

Graph & Geometry Problems in Data Streams 2009 Barbados Workshop on Computational Complexity Andrew McGregor Introduction Models: Graph Streams: Stream of edges E = { e 1 , e 2 , . . . , e m } describe a graph G on n nodes. Estimate


  1. Graph & Geometry Problems in Data Streams 2009 Barbados Workshop on Computational Complexity Andrew McGregor

  2. Introduction Models: ◮ Graph Streams: Stream of edges E = { e 1 , e 2 , . . . , e m } describe a graph G on n nodes. Estimate properties of G . ◮ Geometric Streams: Stream of points X = { p 1 , p 2 , . . . , p m } from some metric space ( X , d ). Estimate properties of X .

  3. Introduction Models: ◮ Graph Streams: Stream of edges E = { e 1 , e 2 , . . . , e m } describe a graph G on n nodes. Estimate properties of G . ◮ Geometric Streams: Stream of points X = { p 1 , p 2 , . . . , p m } from some metric space ( X , d ). Estimate properties of X . Notes: ◮ ˜ O is our friend: we’ll hide dependence on polylog( m , n ) terms. ◮ Assume that p i can be stored in ˜ O (1) space and d ( p i , p j ) can be calculated if both p i and p j are stored in memory. ◮ Theory isn’t as cohesive but we get to cherry-pick results. . .

  4. Counting Triangles Matching Clustering Graph Distances

  5. Outline Counting Triangles Matching Clustering Graph Distances

  6. Triangles Problem Given a stream of edges, estimate the number of triangles T 3 up to a factor (1 + ǫ ) with probability 1 − δ given promise that T 3 > t.

  7. Triangles Problem Given a stream of edges, estimate the number of triangles T 3 up to a factor (1 + ǫ ) with probability 1 − δ given promise that T 3 > t. Warm-Up What’s an algorithm using O ( ǫ − 2 ( n 3 / t ) log δ − 1 ) space?

  8. Triangles Problem Given a stream of edges, estimate the number of triangles T 3 up to a factor (1 + ǫ ) with probability 1 − δ given promise that T 3 > t. Warm-Up What’s an algorithm using O ( ǫ − 2 ( n 3 / t ) log δ − 1 ) space? Theorem Ω( n 2 ) space required to determine if t = 0 (with δ = 1 / 3 ).

  9. Triangles Problem Given a stream of edges, estimate the number of triangles T 3 up to a factor (1 + ǫ ) with probability 1 − δ given promise that T 3 > t. Warm-Up What’s an algorithm using O ( ǫ − 2 ( n 3 / t ) log δ − 1 ) space? Theorem Ω( n 2 ) space required to determine if t = 0 (with δ = 1 / 3 ). Theorem (Sivakumar et al. 2002) O ( ǫ − 2 ( nm / t ) 2 log δ − 1 ) space is sufficient. ˜

  10. Triangles Problem Given a stream of edges, estimate the number of triangles T 3 up to a factor (1 + ǫ ) with probability 1 − δ given promise that T 3 > t. Warm-Up What’s an algorithm using O ( ǫ − 2 ( n 3 / t ) log δ − 1 ) space? Theorem Ω( n 2 ) space required to determine if t = 0 (with δ = 1 / 3 ). Theorem (Sivakumar et al. 2002) O ( ǫ − 2 ( nm / t ) 2 log δ − 1 ) space is sufficient. ˜ Theorem (Buriol et al. 2006) ˜ O ( ǫ − 2 ( nm / t ) log δ − 1 ) space is sufficient.

  11. Lower Bound Theorem Ω( n 2 ) space required to determine if T 3 � = 0 when δ = 1 / 3 .

  12. Lower Bound Theorem Ω( n 2 ) space required to determine if T 3 � = 0 when δ = 1 / 3 . ◮ Reduce from set-disjointness: Alice has n × n binary matrix A , Bob has n × n binary matrix B . Is A ij = B ij = 1 for some ( i , j )? Needs Ω( n 2 ) bits of communication [Razborov 1992].

  13. Lower Bound Theorem Ω( n 2 ) space required to determine if T 3 � = 0 when δ = 1 / 3 . ◮ Reduce from set-disjointness: Alice has n × n binary matrix A , Bob has n × n binary matrix B . Is A ij = B ij = 1 for some ( i , j )? Needs Ω( n 2 ) bits of communication [Razborov 1992]. ◮ Consider graph G = ( V , E ) with V = { v 1 , . . . , v n , u 1 , . . . , u n , w 1 , . . . , w n } and E = { ( v i , u i ) : i ∈ [ n ] }

  14. Lower Bound Theorem Ω( n 2 ) space required to determine if T 3 � = 0 when δ = 1 / 3 . ◮ Reduce from set-disjointness: Alice has n × n binary matrix A , Bob has n × n binary matrix B . Is A ij = B ij = 1 for some ( i , j )? Needs Ω( n 2 ) bits of communication [Razborov 1992]. ◮ Consider graph G = ( V , E ) with V = { v 1 , . . . , v n , u 1 , . . . , u n , w 1 , . . . , w n } and E = { ( v i , u i ) : i ∈ [ n ] } ◮ Alice runs algorithm on G and edges { ( u i , w j ) : A ij = 1 } .

  15. Lower Bound Theorem Ω( n 2 ) space required to determine if T 3 � = 0 when δ = 1 / 3 . ◮ Reduce from set-disjointness: Alice has n × n binary matrix A , Bob has n × n binary matrix B . Is A ij = B ij = 1 for some ( i , j )? Needs Ω( n 2 ) bits of communication [Razborov 1992]. ◮ Consider graph G = ( V , E ) with V = { v 1 , . . . , v n , u 1 , . . . , u n , w 1 , . . . , w n } and E = { ( v i , u i ) : i ∈ [ n ] } ◮ Alice runs algorithm on G and edges { ( u i , w j ) : A ij = 1 } . ◮ Bob continues running algorithm on edges { ( v i , w j ) : B ij = 1 } .

  16. Lower Bound Theorem Ω( n 2 ) space required to determine if T 3 � = 0 when δ = 1 / 3 . ◮ Reduce from set-disjointness: Alice has n × n binary matrix A , Bob has n × n binary matrix B . Is A ij = B ij = 1 for some ( i , j )? Needs Ω( n 2 ) bits of communication [Razborov 1992]. ◮ Consider graph G = ( V , E ) with V = { v 1 , . . . , v n , u 1 , . . . , u n , w 1 , . . . , w n } and E = { ( v i , u i ) : i ∈ [ n ] } ◮ Alice runs algorithm on G and edges { ( u i , w j ) : A ij = 1 } . ◮ Bob continues running algorithm on edges { ( v i , w j ) : B ij = 1 } . ◮ T 3 > 0 iff A ij = B ij = 1 for some ( i , j ).

  17. First Algorithm Theorem (Sivakumar et al. 2002) O ( ǫ − 2 ( nm / T 3 ) 2 log δ − 1 ) space is sufficient. ˜

  18. First Algorithm Theorem (Sivakumar et al. 2002) O ( ǫ − 2 ( nm / T 3 ) 2 log δ − 1 ) space is sufficient. ˜ ◮ Given stream of edges induce stream of node-triples: edge ( u , v ) gives rise to { u , v , w } for w ∈ V \ { u , v }

  19. First Algorithm Theorem (Sivakumar et al. 2002) O ( ǫ − 2 ( nm / T 3 ) 2 log δ − 1 ) space is sufficient. ˜ ◮ Given stream of edges induce stream of node-triples: edge ( u , v ) gives rise to { u , v , w } for w ∈ V \ { u , v } ◮ Consider F k = � (freq. of { u,v,w } ) k and note  F 0   1 1 1   T 1   = F 1 1 2 3 T 2      F 2 1 4 9 T 3 where T i is the set of node-triples having exactly i edges in the induced subgraph.

  20. First Algorithm Theorem (Sivakumar et al. 2002) O ( ǫ − 2 ( nm / T 3 ) 2 log δ − 1 ) space is sufficient. ˜ ◮ Given stream of edges induce stream of node-triples: edge ( u , v ) gives rise to { u , v , w } for w ∈ V \ { u , v } ◮ Consider F k = � (freq. of { u,v,w } ) k and note  F 0   1 1 1   T 1   = F 1 1 2 3 T 2      F 2 1 4 9 T 3 where T i is the set of node-triples having exactly i edges in the induced subgraph. ◮ T 3 = F 0 − 3 F 1 / 2 + F 2 / 2 so good approx. for F 0 , F 1 , F 2 suffice.

  21. Second Algorithm Theorem (Buriol et al. 2006) ˜ O ( ǫ − 2 ( nm / T 3 ) log δ − 1 ) space is sufficient.

  22. Second Algorithm Theorem (Buriol et al. 2006) ˜ O ( ǫ − 2 ( nm / T 3 ) log δ − 1 ) space is sufficient. ◮ Pick an edge e i = ( u , v ) uniformly at random from the stream.

  23. Second Algorithm Theorem (Buriol et al. 2006) ˜ O ( ǫ − 2 ( nm / T 3 ) log δ − 1 ) space is sufficient. ◮ Pick an edge e i = ( u , v ) uniformly at random from the stream. ◮ Pick w uniformly at random from V \ { u , v }

  24. Second Algorithm Theorem (Buriol et al. 2006) ˜ O ( ǫ − 2 ( nm / T 3 ) log δ − 1 ) space is sufficient. ◮ Pick an edge e i = ( u , v ) uniformly at random from the stream. ◮ Pick w uniformly at random from V \ { u , v } ◮ If e j = ( u , w ), e k = ( v , w ) for j , k > i exist return 1; else 0.

  25. Second Algorithm Theorem (Buriol et al. 2006) ˜ O ( ǫ − 2 ( nm / T 3 ) log δ − 1 ) space is sufficient. ◮ Pick an edge e i = ( u , v ) uniformly at random from the stream. ◮ Pick w uniformly at random from V \ { u , v } ◮ If e j = ( u , w ), e k = ( v , w ) for j , k > i exist return 1; else 0. Lemma T 3 Expected outcome of algorithm is 3 m ( n − 2) .

  26. Second Algorithm Theorem (Buriol et al. 2006) ˜ O ( ǫ − 2 ( nm / T 3 ) log δ − 1 ) space is sufficient. ◮ Pick an edge e i = ( u , v ) uniformly at random from the stream. ◮ Pick w uniformly at random from V \ { u , v } ◮ If e j = ( u , w ), e k = ( v , w ) for j , k > i exist return 1; else 0. Lemma T 3 Expected outcome of algorithm is 3 m ( n − 2) . ◮ Repeat O ( ǫ − 2 ( mn / t ) log δ − 1 ) times in parallel and scale average up by 3 m ( n − 2).

  27. Outline Counting Triangles Matching Clustering Graph Distances

  28. Maximum Weight Matching Problem Stream of weighted edges ( e , w e ) : Find M ⊂ E that maximizes � e ∈ M w e such that no two edges in M share an endpoint.

  29. Maximum Weight Matching Problem Stream of weighted edges ( e , w e ) : Find M ⊂ E that maximizes � e ∈ M w e such that no two edges in M share an endpoint. Warm-Up An easy 2 approx. for unweighted case in ˜ O ( n ) space?

  30. Maximum Weight Matching Problem Stream of weighted edges ( e , w e ) : Find M ⊂ E that maximizes � e ∈ M w e such that no two edges in M share an endpoint. Warm-Up An easy 2 approx. for unweighted case in ˜ O ( n ) space? Theorem √ 2 = 5 . 83 . . . approx. in ˜ 3 + 2 O ( n ) space.

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend