quantum speedup for graph sparsification cut
play

Quantum Speedup for Graph Sparsification, Cut Approximation and - PowerPoint PPT Presentation

Quantum Speedup for Graph Sparsification, Cut Approximation and Laplacian Solving Simon Apers 1 Ronald de Wolf 2 1 Inria, France and CWI, the Netherlands 2 QuSoft, CWI and University of Amsterdam, the Netherlands Simons Institute, April 2020


  1. Our Contribution this work: quantum algorithm to find ǫ -spectral sparsifier H in time 1 O ( √ mn /ǫ ) � Ω( √ mn /ǫ ) lower bound matching � 2 15

  2. Our Contribution this work: quantum algorithm to find ǫ -spectral sparsifier H in time 1 O ( √ mn /ǫ ) � Ω( √ mn /ǫ ) lower bound matching � 2 applications: quantum speedup for 3 ◮ max cut, min cut, min st -cut, sparsest cut, . . . ◮ Laplacian solving, approximating resistances and random walk properties, spectral clustering, . . . 15

  3. this work: quantum algorithm to find ǫ -spectral sparsifier H in time 1 O ( √ mn /ǫ ) � Ω( √ mn /ǫ ) lower bound matching � 2 applications: quantum speedup for 3 ◮ max cut, min cut, min st -cut, sparsest cut, . . . ◮ Laplacian solving, approximating resistances and random walk properties, spectral clustering, . . . 16

  4. Classical Sparsification Algorithm 17

  5. Classical Sparsification Algorithm Sparsification by edge sampling: associate probabilities { p e } to every edge 1 keep every edge e with probability p e , rescale its weight by 1 / p e 2 17

  6. Classical Sparsification Algorithm Sparsification by edge sampling: associate probabilities { p e } to every edge 1 keep every edge e with probability p e , rescale its weight by 1 / p e 2 ensures that E ( w H e ) = w G e 17

  7. Classical Sparsification Algorithm Sparsification by edge sampling: associate probabilities { p e } to every edge 1 keep every edge e with probability p e , rescale its weight by 1 / p e 2 ensures that E ( w H e ) = w G e and hence � � � E ( L H ) = E = L G w e L e 17

  8. Classical Sparsification Algorithm Sparsification by edge sampling: associate probabilities { p e } to every edge 1 keep every edge e with probability p e , rescale its weight by 1 / p e 2 ensures that E ( w H e ) = w G e and hence � � � E ( L H ) = E = L G w e L e how to ensure concentration? 17

  9. Classical Sparsification Algorithm Sparsification by edge sampling: associate probabilities { p e } to every edge 1 keep every edge e with probability p e , rescale its weight by 1 / p e 2 ensures that E ( w H e ) = w G e and hence � � � E ( L H ) = E = L G w e L e how to ensure concentration? [Spielman-Srivastava ’08]: give high p e to edges with high effective resistance! 17

  10. Classical Sparsification Algorithm effective resistance R ( i , j ) 18

  11. Classical Sparsification Algorithm effective resistance R ( i , j ) = resistance between i , j after replacing all edges with resistors 18

  12. Classical Sparsification Algorithm effective resistance R ( i , j ) = resistance between i , j after replacing all edges with resistors (Ohm’s law) = voltage difference required between i , j when sending unit current from i to j 18

  13. Classical Sparsification Algorithm effective resistance R ( i , j ) = resistance between i , j after replacing all edges with resistors (Ohm’s law) = voltage difference required between i , j when sending unit current from i to j → small if many short and parallel paths from i to j ! 18

  14. Classical Sparsification Algorithm effective resistance R ( i , j ) red edge: R e = 1 black edges: R e ∈ O ( 1 / n ) 18

  15. ? how to identify high-resistance edges ? 19

  16. ? how to identify high-resistance edges ? [Koutis-Xu ’14]: a graph spanner must contain all high-resistance edges 19

  17. ? how to identify high-resistance edges ? [Koutis-Xu ’14]: a graph spanner must contain all high-resistance edges = subgraph F of G with � O ( n ) edges 19

  18. ? how to identify high-resistance edges ? [Koutis-Xu ’14]: a graph spanner must contain all high-resistance edges = subgraph F of G with � O ( n ) edges all distances stretched by factor ≤ log n : for all i , j d G ( i , j ) ≤ d F ( i , j ) ≤ log( n ) d G ( i , j ) 19

  19. ? how to identify high-resistance edges ? [Koutis-Xu ’14]: a graph spanner must contain all high-resistance edges = subgraph F of G with � O ( n ) edges all distances stretched by factor ≤ log n : for all i , j d G ( i , j ) ≤ d F ( i , j ) ≤ log( n ) d G ( i , j ) G F 19

  20. ? how to identify high-resistance edges ? [Koutis-Xu ’14]: a graph spanner must contain all high-resistance edges = subgraph F of G with � O ( n ) edges all distances stretched by factor ≤ log n : for all i , j d G ( i , j ) ≤ d F ( i , j ) ≤ log( n ) d G ( i , j ) G F 20

  21. [Koutis-Xu ’14]: a graph spanner must contain all high-resistance edges! proof idea for R e = 1 : 21

  22. [Koutis-Xu ’14]: a graph spanner must contain all high-resistance edges! proof idea for R e = 1 : if R e = 1 , there are no alternative paths between endpoints 21

  23. [Koutis-Xu ’14]: a graph spanner must contain all high-resistance edges! proof idea for R e = 1 : if R e = 1 , there are no alternative paths between endpoints hence, e must be present in spanner 21

  24. Classical Sparsification Algorithm Iterative sparsification: construct � O ( 1 /ǫ 2 ) spanners and keep these edges 1 keep any remaining edge with probability 1 / 2 , and double its 2 weight 22

  25. Classical Sparsification Algorithm Iterative sparsification: construct � O ( 1 /ǫ 2 ) spanners and keep these edges 1 keep any remaining edge with probability 1 / 2 , and double its 2 weight (i.e., we set p e = 1 for spanner edges and p e = 1 / 2 for other edges) 22

  26. Classical Sparsification Algorithm Iterative sparsification: construct � O ( 1 /ǫ 2 ) spanners and keep these edges 1 keep any remaining edge with probability 1 / 2 , and double its 2 weight (i.e., we set p e = 1 for spanner edges and p e = 1 / 2 for other edges) Theorem (Spielman-Srivastava ’08, Koutis-Xu ’14) W.h.p. output is ǫ -spectral sparsifier with m / 2 + � O ( n /ǫ 2 ) edges 22

  27. Classical Sparsification Algorithm Iterative sparsification: construct � O ( 1 /ǫ 2 ) spanners and keep these edges 1 keep any remaining edge with probability 1 / 2 , and double its 2 weight (i.e., we set p e = 1 for spanner edges and p e = 1 / 2 for other edges) Theorem (Spielman-Srivastava ’08, Koutis-Xu ’14) W.h.p. output is ǫ -spectral sparsifier with m / 2 + � O ( n /ǫ 2 ) edges → repeat O (log n ) times: ǫ -spectral sparsifier with � O ( n /ǫ 2 ) edges 22

  28. Quantum Sparsification Algorithm 23

  29. Quantum Sparsification Algorithm = quantum spanner algorithm + k -independent oracle + a magic trick 23

  30. Quantum Spanner Algorithm 24

  31. Quantum Spanner Algorithm Theorem (“easy”) There is a quantum spanner algorithm with query complexity O ( √ mn ) � 24

  32. Quantum Spanner Algorithm Theorem (“easy”) There is a quantum spanner algorithm with query complexity O ( √ mn ) � greedy spanner algorithm: 24

  33. Quantum Spanner Algorithm Theorem (“easy”) There is a quantum spanner algorithm with query complexity O ( √ mn ) � greedy spanner algorithm: set F = ( V , E F = ∅ ) 1 24

  34. Quantum Spanner Algorithm Theorem (“easy”) There is a quantum spanner algorithm with query complexity O ( √ mn ) � greedy spanner algorithm: set F = ( V , E F = ∅ ) 1 iterate over every edge ( i , j ) ∈ E \ E F : 2 if δ F ( i , j ) > log n , add ( i , j ) to F 24

  35. Quantum Spanner Algorithm Theorem (“easy”) There is a quantum spanner algorithm with query complexity O ( √ mn ) � greedy spanner algorithm: set F = ( V , E F = ∅ ) 1 iterate over every edge ( i , j ) ∈ E \ E F : 2 if δ F ( i , j ) > log n , add ( i , j ) to F quantum greedy spanner algorithm: 24

  36. Quantum Spanner Algorithm Theorem (“easy”) There is a quantum spanner algorithm with query complexity O ( √ mn ) � greedy spanner algorithm: set F = ( V , E F = ∅ ) 1 iterate over every edge ( i , j ) ∈ E \ E F : 2 if δ F ( i , j ) > log n , add ( i , j ) to F quantum greedy spanner algorithm: set F = ( V , E F = ∅ ) 1 24

  37. Quantum Spanner Algorithm Theorem (“easy”) There is a quantum spanner algorithm with query complexity O ( √ mn ) � greedy spanner algorithm: set F = ( V , E F = ∅ ) 1 iterate over every edge ( i , j ) ∈ E \ E F : 2 if δ F ( i , j ) > log n , add ( i , j ) to F quantum greedy spanner algorithm: set F = ( V , E F = ∅ ) 1 until no more edges are found, do: 2 Grover search for edge ( i , j ) such that δ F ( i , j ) > log n . add ( i , j ) to F 24

  38. Quantum Spanner Algorithm Theorem (“easy”) There is a quantum spanner algorithm with query complexity O ( √ mn ) � greedy spanner algorithm: set F = ( V , E F = ∅ ) 1 iterate over every edge ( i , j ) ∈ E \ E F : 2 if δ F ( i , j ) > log n , add ( i , j ) to F quantum greedy spanner algorithm: set F = ( V , E F = ∅ ) 1 until no more edges are found, do: 2 Grover search for edge ( i , j ) such that δ F ( i , j ) > log n . add ( i , j ) to F O ( √ mn ) queries → can prove: � O ( n ) edges are found using � 24

  39. Quantum Spanner Algorithm Theorem (“less easy”) There is a quantum spanner algorithm with time complexity O ( √ mn ) � 25

  40. Quantum Spanner Algorithm Theorem (“less easy”) There is a quantum spanner algorithm with time complexity O ( √ mn ) � = (roughly) [Thorup-Zwick ’01] classical construction of a spanner by growing small shortest-path trees (SPTs) 25

  41. Quantum Spanner Algorithm Theorem (“less easy”) There is a quantum spanner algorithm with time complexity O ( √ mn ) � = (roughly) [Thorup-Zwick ’01] classical construction of a spanner by growing small shortest-path trees (SPTs) + [Dürr-Heiligman-Høyer-Mhalla ’04] quantum speedup for constructing SPTs 25

  42. Quantum Sparsification Algorithm Iterative sparsification: use quantum algorithm to construct � O ( 1 /ǫ 2 ) spanners, keep 1 these edges keep any remaining edge with probability 1 / 2 , and double its 2 weight 26

  43. Quantum Sparsification Algorithm Iterative sparsification: use quantum algorithm to construct � O ( 1 /ǫ 2 ) spanners, keep 1 these edges keep any remaining edge with probability 1 / 2 , and double its 2 weight → after 1 iteration: “intermediate” graph with ≈ m / 2 edges 26

  44. Quantum Sparsification Algorithm Iterative sparsification: use quantum algorithm to construct � O ( 1 /ǫ 2 ) spanners, keep 1 these edges keep any remaining edge with probability 1 / 2 , and double its 2 weight → after 1 iteration: “intermediate” graph with ≈ m / 2 edges ? how to keep track in time o ( m ) ? 26

  45. Quantum Sparsification Algorithm Iterative sparsification: use quantum algorithm to construct � O ( 1 /ǫ 2 ) spanners, keep 1 these edges keep any remaining edge with probability 1 / 2 , and double its 2 weight → after 1 iteration: “intermediate” graph with ≈ m / 2 edges ? how to keep track in time o ( m ) ? 26

Recommend


More recommend