Massively Parallel Dynamic Programming on Trees

09/11/2018
by   MohammadHossein Bateni, et al.
0

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 O( n) 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 our framework, we implement in O( n) rounds of MPC, the dynamic programming solution of graph problems such as minimum bisection, k-spanning tree, maximum independent set, longest path, etc., when the input graph is a tree.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
05/05/2023

Fast Dynamic Programming in Trees in the MPC Model

We present a deterministic algorithm for solving a wide range of dynamic...
research
12/11/2019

UCT-ADP Progressive Bias Algorithm for Solving Gomoku

We combine Adaptive Dynamic Programming (ADP), a reinforcement learning ...
research
11/13/2019

Nested Dataflow Algorithms for Dynamic Programming Recurrences with more than O(1) Dependency

Dynamic programming problems have wide applications in real world and ha...
research
03/15/2018

Diverse M-Best Solutions by Dynamic Programming

Many computer vision pipelines involve dynamic programming primitives su...
research
04/29/2019

Composing dynamic programming tree-decomposition-based algorithms

Given two integers ℓ and p as well as ℓ graph classes H_1,...,H_ℓ, the p...
research
05/22/2019

Dynamic Algorithms for the Massively Parallel Computation Model

The Massive Parallel Computing (MPC) model gained popularity during the ...
research
05/31/2023

Optimal Decision Trees for Separable Objectives: Pushing the Limits of Dynamic Programming

Global optimization of decision trees has shown to be promising in terms...

Please sign up or login with your details

Forgot password? Click here to reset