Massively Parallel Dynamic Programming on Trees
MohammadHossein Bateni, Soheil Behnezhad, Mahsa Derakhshan,, MohammadTaghi Hajiaghayi, Vahab Mirrokni

TL;DR
This paper presents a framework for parallelizing dynamic programming algorithms on trees within the MPC model, enabling efficient solutions for complex graph problems in logarithmic rounds.
Contribution
It introduces classes of tree-based dynamic programming problems that can be parallelized in O(log n) rounds, with techniques applicable to various graph problems.
Findings
Parallel algorithms for tree DP problems in O(log n) rounds
Framework applicable to problems like minimum bisection and maximum independent set
Efficient MPC implementation for dynamic programming on trees
Abstract
Dynamic programming is a powerful technique that is, unfortunately, often inherently sequential. That is, there exists no unified method to parallelize algorithms that use dynamic programming. In this paper, we attempt to address this issue in the Massively Parallel Computations (MPC) model which is a popular abstraction of MapReduce-like paradigms. Our main result is an algorithmic framework to adapt a large family of dynamic programs defined over trees. We introduce two classes of graph problems that admit dynamic programming solutions on trees. We refer to them as "(polylog)-expressible" and "linear-expressible" problems. We show that both classes can be parallelized in rounds using a sublinear number of machines and a sublinear memory per machine. To achieve this result, we introduce a series of techniques that can be plugged together. To illustrate the generality of…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
