Generalizing work of K\"unnemann, Paturi, and Schneider [ICALP 2017], we study a wide class of high-dimensional dynamic programming (DP) problems in which one must find the shortest path between two points in a high-dimensional grid given a tensor of transition costs between nodes in the grid. This captures many classical problems which are solved using DP such as the knapsack problem, the airplane refueling problem, and the minimal-weight polygon triangulation problem. We observe that for many of these problems, the tensor naturally has low tensor rank or low slice rank. We then give new algorithms and a web of fine-grained reductions to tightly determine the complexity of these problems. For instance, we show that a polynomial speedup over the DP algorithm is possible when the tensor rank is a constant or the slice rank is 1, but that such a speedup is impossible if the tensor rank is slightly super-constant (assuming SETH) or the slice rank is at least 3 (assuming the APSP conjecture). We find that this characterizes the known complexities for many of these problems, and in some cases leads to new faster algorithms.
翻译:广义化Künnemann、Paturi和Schneider [ICALP 2017]的工作,我们研究了一类广泛的高维动态规划(DP)问题,其中需要在给定节点间转移代价张量的高维网格中寻找两点间的最短路径。这涵盖了许多经典DP问题,如背包问题、飞机加油问题和最小权多边形三角剖分问题。我们观察到,对于其中许多问题,该张量自然具有低张量秩或低切片秩。随后我们提出新算法并构建细粒度归约网络,精确确定这些问题的复杂度。例如,我们证明:当张量秩为常数或切片秩为1时,可实现相对于DP算法的多项式加速;但当张量秩略超常数(基于SETH假设)或切片秩至少为3(基于APSP猜想)时,此类加速不可能实现。我们发现这表征了这些问题的已知复杂度,并在某些情况下催生了新的更快算法。