arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 2003.07104cs.DS
收藏

单机加工延迟时间的快速最小化

Faster Minimization of Tardy Processing Time on a Single Machine

Karl Bringmann, Nick Fischer, Danny Hermelin, Dvir Shabtay, Philip Wellnitz

摘要:

本文研究了在单机上最小化延误工件的总加工时间的$1||\sum p_jU_j$问题。这不仅是一个基本的调度问题,而且从理论的角度来看也是一个非常重要的问题,因为它推广了子集和问题,并与0/1-背包问题密切相关。众所周知,这个问题是NP难的,但只是在弱意义上,这意味着它允许伪多项式时间算法。已知的最快的伪多项式时间算法是著名的Lawler和Moore算法,它在$O(P \cdot n)$时间内运行,其中$P$是输入中所有$n$作业的总处理时间。该算法是在60年代后期开发的,至今仍有待改进。在本文中,我们开发了两个新的算法$1||\sum p_jU_j$,每一个改进的Lawler和Moore的算法在不同的情况下。这两种算法都依赖于整数集合和整数向量之间的基本原语操作来加速它们的运行时间。第二种算法依赖于快速多项式乘法作为其主要引擎,而对于第一种算法,我们定义了一个新的“偏斜”版本的$(\max,\min)$ -卷积,这是有趣的,在其本身的权利。

英文摘要:

This paper is concerned with the $1||\sum p_jU_j$ problem, the problem of minimizing the total processing time of tardy jobs on a single machine. This is not only a fundamental scheduling problem, but also a very important problem from a theoretical point of view as it generalizes the Subset Sum problem and is closely related to the 0/1-Knapsack problem. The problem is well-known to be NP-hard, but only in a weak sense, meaning it admits pseudo-polynomial time algorithms. The fastest known pseudo-polynomial time algorithm for the problem is the famous Lawler and Moore algorithm which runs in $O(P \cdot n)$ time, where $P$ is the total processing time of all $n$ jobs in the input. This algorithm has been developed in the late 60s, and has yet to be improved to date. In this paper we develop two new algorithms for $1||\sum p_jU_j$, each improving on Lawler and Moore's algorithm in a different scenario. Both algorithms rely on basic primitive operations between sets of integers and vectors of integers for the speedup in their running times. The second algorithm relies on fast polynomial multiplication as its main engine, while for the first algorithm we define a new "skewed" version of $(\max,\min)$-convolution which is interesting in its own right.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑