Improved Algorithms for Monotone Moldable Job Scheduling using Compression and Convolution

03/02/2023
by   Kilian Grage, et al.
0

In the moldable job scheduling problem one has to assign a set of n jobs to m machines, in order to minimize the time it takes to process all jobs. Each job is moldable, so it can be assigned not only to one but any number of the equal machines. We assume that the work of each job is monotone and that jobs can be placed non-contiguously. In this work we present a (3/2 + ϵ)-approximation algorithm with a worst-case runtime of O(n log^2(1/ϵ+ log (ϵ m)/ϵ) + n/ϵlog(1/ϵ) log (ϵ m)) when m≤ 16n. This is an improvement over the best known algorithm of the same quality by a factor of 1/ϵ and several logarithmic dependencies. We complement this result with an improved FPTAS with running time O(n log^2(1/ϵ+ log (ϵ m)/ϵ)) for instances with many machines m> 8n/ϵ. This yields a 3/2-approximation with runtime O(n log^2(log m)) when m>16n. We achieve these results through one new core observation: In an approximation setting one does not need to consider all m possible allotments for each job. We will show that we can reduce the number of relevant allotments for each job from m to O(1/ϵ+ log (ϵ m)/ϵ). Using this observation immediately yields the improved FPTAS. For the other result we use a reduction to the knapsack problem first introduced by Mounié, Rapine and Trystram. We use the reduced number of machines to give a new elaborate rounding scheme and define a modified version of this this knapsack instance. This in turn allows for the application of a convolution based algorithm by Axiotis and Tzamos. We further back our theoretical results through a practical implementation and compare our algorithm to the previously known best result.

READ FULL TEXT

Please sign up or login with your details

Forgot password? Click here to reset