SlideServe
Menu
Préférences
© SlideServe · v2026

Parallel Algorithms for Geometric Graph Problems

sofia avatar
24 diapositives · 427 Views · Jul 18, 2014

This research presents novel parallel algorithms for solving geometric graph problems such as Minimum Spanning Trees (MST) and Earth-Mover Distance (EMD) in low-dimensional spaces. Utilizing advanced frameworks like Bulk-Synchronous Parallel and a Solve-And-Sketch approach, the algorithms aim to achieve near-linear time complexity and a constant number of rounds. By leveraging techniques like space partitioning and pseudo-solutions, the study demonstrates effective strategies for managing large datasets in parallel computing environments while addressing essential constraints and open questions in the domain.

Parallel Algorithms for Geometric Graph Problems - slide 1
01 / 24Parallel Algorithms for Geometric Graph Problems
1 / 17

Télécharger la présentation

Parallel Algorithms for Geometric Graph Problems
Une image / un lien ci-dessous est fourni (tel quel) pour télécharger la présentation

Politique de téléchargement : le contenu du site vous est fourni TEL QUEL pour votre information et votre usage personnel ; il ne peut être vendu, concédé sous licence ni partagé sur d’autres sites sans l’accord de son auteur.Le contenu vous est fourni TEL QUEL, pour votre information et votre usage personnel uniquement. Téléchargez la présentation en cliquant sur ce lien. Lors du téléchargement, si vous ne parvenez pas à télécharger une présentation, l’éditeur a peut-être supprimé le fichier de son serveur.Pendant le téléchargement, si vous ne parvenez pas à obtenir une présentation, le fichier a peut-être été supprimé par l’éditeur.

F I N

Plus de contenu associé

Transcription de la présentation
  1. Parallel Algorithms forGeometric Graph Problems Alex Andoni (Microsoft Research) Joint with: AleksandarNikolov(Rutgers), Krzysztof Onak(IBM), GrigoryYaroslavtsev(ICERM/Brown)

  2. DATA

  3. DATA

  4. Parallel Computing • Systems: • MapReduce[Dean-Ghewamat 2004] • Hadoop[White 2012] • Dryad [Isardetal 2007] • A theory of (modern) parallel computing ? • Model • Algorithmic techniques

  5. Computational Model • machines • space per machine •  O(input size) • minimal replication • Input: elements • Output: • doesn’t fit on a machine: • Round: shuffle all (expensive!) • [Goodrich-Sitchinava-Zhang’11, Beame-Koutris-Suciu’13]

  6. Model Constraints • Main goal: • rounds • for • e.g., when • Local resources bounded by • in-communication per round • ideally: linear run-time/round • Model culmination of: • Bulk-Synchronous Parallel [Valiant’90] • Map Reduce Framework [Feldman-Muthukrishnan-Sidiropoulos-Stein-Svitkina’07, Karloff-Suri-Vassilvitskii’10, Goodrich-Sitchinava-Zhang’11] • Massively Parallel Computing (MPC) [Beame-Koutris-Suciu’13]

  7. What about PRAMs ? • Good news: can reuse PRAM algorithms • simulate with R=O(parallel time)[KSV’10,GSZ’11] • Bad news: often logarithmic…  • e.g., XOR • on CRCW [BH89] • vs MPC: circuit with • fan-in • arbitrary function at a “gate” • for XOR

  8. Between Log and const… • Graph s-t connectivity? • on PRAM • Big open question: rounds ? • Seems hard [BKS13] VS

  9. Our problems: Geometric Graphs • Implicit graph on points in • distance = Euclidean distance • Minimum Spanning Tree • Agglomerative hierarchical clustering [Zahn’71, Kleinberg-Tardos] • Earth-Mover Distance • etc

  10. Our problems: Geometric Graphs • Implicit graph on points in • distance = Euclidean distance • Minimum Spanning Tree • Agglomerative hierarchical clustering [Zahn’71, Kleinberg-Tardos] • Earth-Mover Distance • etc

  11. Results: MST & EMD algorithms • approx in low dimensional space (, doubling) • Constant number of rounds: • Minimum Spanning Tree (MST): • as long as • Earth-Mover Distance (EMD): • as long as for constant • Beyond parallel: new algorithms for EMD • Near-linear time • Streaming-with-sorting

  12. Framework: Solve-And-Sketch • Partition the space hierarchically in a “nice way” • In each part • Compute a pseudo-solution for the local view • Sketch the pseudo-solution using small space • Send the sketch to be used in the next level/round

  13. MST algorithm: attempt 1 • Partition the space hierarchically in a “nice way” • In each part • Compute a pseudo-solution for the local view • Sketch the pseudo-solution using small space • Send the sketch to be used in the next level/round quad trees! local MST send any point as a representative

  14. Difficulties • Quad tree can cut MST edges • forcing irrevocable decisions • Choose a wrong representative

  15. New Partition: Grid Distance • Randomly shifted grid [Arora’98, …] • Each cell has an -net • Net points are entry/exit portalsfor the cell • Claim: all distances preserved up to in expectation

  16. MST Algorithm • Partition: • Randomly-shifted grid • Pseudo-solution: • Run Kruskal for edges up to length • Sketch of a pseudo-solution: • Snap points to -net, and store their connectivity • Analysis: as if we run Kruskal (inter-cell distances )

  17. VS streaming • Fact: linear streaming => parallel • But: computes cost • e.g., for MST [Indyk’04, Frahling-Indyk-Sohler’05] • Here: actual tree

  18. Earth-Mover Distance • Theorem: • cost approximation • constant number of rounds • as long as • Corollary 1: sequential runtime • un-weighted: only recently! [Sharathkumar-Agarwal’13] • following [Vai89, AES00, VA99, AV04, Ind07, SA12] • Corollary 2: streaming algorithm in space, after a preliminary sorting pass • in regular streaming: approximation in space [ADIW09] • Open question: constant approximation in space [#7, #49]

  19. Solve-And-Sketch Framework for EMD • Partition the space hierarchically in a “nice way” • In each part • Compute a pseudo-solution for the local view • Sketch the pseudo-solution using small space • Send the sketch to be used in the next level/round cannot precompute any “partial solution” fat quad-tree (as before) & use grid distance after committing to a wrong alternation, cannot get <2 approximation!

  20. Solve-And-Sketch Framework* for EMD • Partition the space hierarchically in a “nice way” • In each part • Compute a pseudo-solution for the local view • Sketch the pseudo-solution using small space • Send the sketch to be used in the next level/round allsolutions

  21. Sketching ALL local solutions • Let size of -net (“portal” points) • Define “solution” function • input defines the flow (matching) at the portals • is the min-cost matching assuming flow at portals • Goal: sketch entire function !

  22. Sketching solution function • We do not know if is possible… • Approach ? • Show “cool properties” on • Prove: with “cool properties” => sketchable • May require even for (generic) • convex, -Lipshitzon inputs • But can for: • Sketch: store on well-chosen

  23. A perspective on EMD • EMD = bi-chromaticmatching • classically, a big Linear Programming (LP) • The framework decomposes the LP into many small ones • small ones have size • can use any generic LP solver! • recomposed hierarchically • ~dynamic programming

  24. Finale • Algorithmic tools for (modern) parallel systems • Solve-And-Sketch framework for geometric graph problems • Useful strategy to get regular algorithms! • EMD: near-linear time, streaming-with-sorting algorithm • Open questions: • EMD: more efficient sketches, actual matching, streaming • Other problems? • Which LPs are decomposable? • Lower bounds? • exact MST for as hard as sparse connectivity (likely hard) • Dynamic algorithms (data structures) ?