Interval scheduling is a basic problem in the theory of algorithms and a classical task in combinatorial optimization. We develop a set of techniques for partitioning and grouping jobs based on their starting and ending times, that enable us to view an instance of interval scheduling on many jobs as a union of multiple interval scheduling instances, each containing only a few jobs. Instantiating these techniques in dynamic and local settings of computation leads to several new results. For $(1+\varepsilon)$-approximation of job scheduling of $n$ jobs on a single machine, we obtain a fully dynamic algorithm with $O(\frac{\log{n}}{\varepsilon})$ update and $O(\log{n})$ query worst-case time. Further, we design a local computation algorithm that uses only $O(\frac{\log{n}}{\varepsilon})$ queries. Our techniques are also applicable in a setting where jobs have rewards/weights. For this case we obtain a fully dynamic algorithm whose worst-case update and query time has only polynomial dependence on $1/\varepsilon$, which is an exponential improvement over the result of Henzinger et al. [SoCG, 2020]. We extend our approaches for unweighted interval scheduling on a single machine to the setting with $M$ machines, while achieving the same approximation factor and only $M$ times slower update time in the dynamic setting. In addition, we provide a general framework for reducing the task of interval scheduling on $M$ machines to that of interval scheduling on a single machine. In the unweighted case this approach incurs a multiplicative approximation factor $2 - 1/M$.
翻译:在算法理论和组合优化的经典任务中,间距调度是一个基本问题。 我们开发了一套基于开始和结束时间对工作进行分区和分组的技术, 这使得我们能将许多工作的间距列表作为多个间隔时间的组合来查看, 每个都只包含几个任务。 在动态和地方计算设置中验证这些技术会导致若干新的结果。 对于在单一机器上以美元计算工作( $1 ⁇ varepsilon) 的配置, 我们获得了一套完全动态的算法, 以美元( rafrac\log{ n ⁇ varepsilon} 为基础, 以美元( O\log{ log{ n} ) 更新和 $( O_\\ log{ { n} ) 查询最坏的时间间隔。 此外, 我们设计了一个本地计算算法, 仅使用$( or) (formorstal) commal salation comblationalation, 仅提供非案件更新和查询时间对1/\\\\\\\\\\\\\\\\\\\\\\\\ mlassal mlassal roal rolass rodeal rodeal rolation a rolation rolation rolate rolational rolational rolational) 。