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]的工作,我们研究了一类广泛的高维动态规划问题,其中需在给定网格节点间转移代价张量的高维网格中寻找两点间的最短路径。这涵盖了许多通过动态规划解决的经典问题,如背包问题、飞机加油问题和最小权重多边形三角剖分问题。我们发现,对于其中许多问题,该张量自然具有低张量秩或低切片秩。随后我们给出了新算法,并构建了细粒度归约网络以精确确定这些问题的复杂性。例如,我们证明当张量秩为常数或切片秩为1时,动态规划算法可达到多项式加速;但若张量秩略超常数(假设强指数时间假说成立)或切片秩至少为3(假设全源最短路径猜想成立),则此类加速不可能实现。我们发现这一结论刻画了这些问题已知的复杂性,并在某些情形下推导出新的更快算法。