Computer Science > Data Structures and Algorithms
[Submitted on 14 Feb 2022 (v1), last revised 9 Sep 2022 (this version, v2)]
Title:Minimizing the Weighted Number of Tardy Jobs via (max,+)-Convolutions
View PDFAbstract:The $1 \mid \mid \Sigma w_j U_j$ problem asks to determine -- given $n$ jobs each with its own processing time, weight, and due date -- the minimum weighted number of tardy jobs in any single machine non-preemptive schedule for these jobs. This is a classical scheduling problem that generalizes both Knapsack, and Subset Sum. The best known pseudo-polynomial algorithm for $1 \mid \mid \Sigma w_j U_j$, due to Lawler and Moore [Management Science'69], dates back to the late 60s and has a running time of $O(d_{\max}n)$, where $n$ is the number of jobs and $d_{\max}$ is their maximal due date. A recent lower bound by Cygan \emph{et al.}~[ICALP'19] for Knapsack shows that $1 \mid \mid \Sigma w_j U_j$ cannot be solved in $\widetilde{O}((n+d_{\max})^{2-\varepsilon})$ time, for any $\varepsilon > 0$, under a plausible conjecture. This still leaves a gap between the best known lower bound and upper bound for the problem.
In this paper we design a new simple algorithm for $1 \mid \mid \Sigma w_j U_j$ that uses $(\max,+)$-convolutions as its main tool, and outperforms the Lawler and Moore algorithm under several parameter ranges. In particular, depending on the specific method of computing $(\max,+)$-convolutions, its running time can be bounded by
- $\widetilde{O}(n+d_{\#}d_{\max}^2)$.
- $\widetilde{O}(d_{\#}n +d^2_{\#}d_{\max}w_{\max})$.
- $\widetilde{O}(d_{\#}n +d_{\#}d_{\max}p_{\max})$.
- $\widetilde{O}(n^2 +d_{\max}w^2_{\max})$.
- $\widetilde{O}(n^2 + d_{\#}(d_{\max}w_{\max})^{1.5})$.
Here, $d_{\#}$ denotes the number of \emph{different} due dates in the instance, $p_{\max}$ denotes the maximum processing time of any job, and $w_{\max}$ denotes the maximum weight of any job.
Submission history
From: Hendrik Molter [view email][v1] Mon, 14 Feb 2022 16:25:32 UTC (19 KB)
[v2] Fri, 9 Sep 2022 09:59:40 UTC (34 KB)
References & Citations
Bibliographic and Citation Tools
Bibliographic Explorer (What is the Explorer?)
Connected Papers (What is Connected Papers?)
Litmaps (What is Litmaps?)
scite Smart Citations (What are Smart Citations?)
Code, Data and Media Associated with this Article
alphaXiv (What is alphaXiv?)
CatalyzeX Code Finder for Papers (What is CatalyzeX?)
DagsHub (What is DagsHub?)
Gotit.pub (What is GotitPub?)
Hugging Face (What is Huggingface?)
Papers with Code (What is Papers with Code?)
ScienceCast (What is ScienceCast?)
Demos
Recommenders and Search Tools
Influence Flower (What are Influence Flowers?)
CORE Recommender (What is CORE?)
arXivLabs: experimental projects with community collaborators
arXivLabs is a framework that allows collaborators to develop and share new arXiv features directly on our website.
Both individuals and organizations that work with arXivLabs have embraced and accepted our values of openness, community, excellence, and user data privacy. arXiv is committed to these values and only works with partners that adhere to them.
Have an idea for a project that will add value for arXiv's community? Learn more about arXivLabs.