In this work, we focus on designing an efficient Local Computation Algorithm (LCA) for the set cover problem, which is a core optimization task. The state-of-the-art LCA for computing $O(\log Δ)$-approximate set cover, developed by Grunau, Mitrović, Rubinfeld, and Vakilian [SODA '20], achieves query complexity of $Δ^{O(\log Δ)} \cdot f^{O(\log Δ\cdot (\log \log Δ+ \log \log f))}$, where $Δ$ is the maximum set size, and $f$ is the maximum frequency of any element in sets. We present a new LCA that solves this problem using $f^{O(\log Δ)}$ queries. Specifically, for instances where $f = \text{poly} \log Δ$, our algorithm improves the query complexity from $Δ^{O(\log Δ)}$ to $Δ^{O(\log \log Δ)}$. Our central technical contribution in designing LCAs is to aggressively sparsify the input instance but to allow for \emph{retroactive updates}. Namely, our main LCA sometimes ``corrects'' decisions it made in the previous recursive LCA calls. It enables us to achieve stronger concentration guarantees, which in turn allows for more efficient and ``sparser'' LCA execution. We believe that this technique will be of independent interest.
翻译:本文聚焦于设计一种高效的局部计算算法,用于求解集合覆盖问题——这一核心优化任务。目前最先进的局部计算算法由Grunau、Mitrović、Rubinfeld和Vakilian [SODA '20]提出,可计算$O(\log Δ)$-近似解,其查询复杂度为$Δ^{O(\log Δ)} \cdot f^{O(\log Δ\cdot (\log \log Δ+ \log \log f))}$,其中$Δ$为集合的最大基数,$f$为任意元素在集合中出现的最大频率。我们提出一种新型局部计算算法,仅需$f^{O(\log Δ)}$次查询即可解决该问题。特别地,当$f = \text{poly} \log Δ$时,我们的算法将查询复杂度从$Δ^{O(\log Δ)}$改进至$Δ^{O(\log \log Δ)}$。在设计局部计算算法时,我们的核心技术创新在于对输入实例进行激进稀疏化,同时允许\emph{回溯更新}。具体而言,我们的主要局部计算算法有时会“纠正”先前递归局部计算调用中做出的决策。这种方法使我们能够实现更强的集中性保证,从而支持更高效、更“稀疏”的局部计算执行。我们相信该技术将具有独立的研究价值。