Scheduling jobs with limited size information on a single machine

Better Late Than Never: Online Flow Time Scheduling with Online Estimates

Data Structures and Algorithms

Summary

This paper looks at how to schedule tasks that arrive over time on one machine, aiming to reduce the total waiting time for all tasks. The well-known solution assumes we know the exact size of each task immediately, but this is often unrealistic. The authors study a situation where only rough estimates about a task’s size come at some point during processing, rather than right away. They develop an algorithm that works well even with these limited size estimates and prove it performs close to the best possible under these conditions. Their method is natural, doesn’t require knowing certain parameters in advance, and improves how we handle uncertainty in task sizes.

online schedulingflow timeSRPT (Shortest Remaining Processing Time)job size estimationmultilevel feedback algorithmcompetitive ratiodual-fittingsingle machine schedulingapproximate processing timeparameter-oblivious algorithms

Authors

Anupam Gupta, Haim Kaplan, Alexander Lindermayr, Jens Schlöter, Sorrachai Yingchareonthawornchai

Abstract

In the classical online flow-time scheduling problem on a single machine, jobs arrive over time and must be processed to minimize the total time they spend in the system: for over fifty years, we have known that SRPT is an optimal online algorithm. But this algorithm requires exactness in two different ways: (a) job sizes must be known exactly, and (b) they must be revealed as soon as the job arrives. Recent work relaxed each of these assumptions separately: there are algorithms based on knowing approximate sizes (given when the job arrives), or based on knowing (exact) sizes at some point before the remaining size gets too small. Nonetheless, prior to this work, there was no known approach to relax both assumptions simultaneously. In this work, we consider a model that demands much less: When we process a job, at some point in time between when we complete an $\varepsilon$-fraction and a $(1-\varepsilon)$-fraction of its unknown processing requirement, we are informed that the job is ``somewhere in the middle''. Finally, when the job has received its desired amount of processing, we are informed of its completion. No other information is shared about the job. We give an $O(1/\varepsilon^2)$-competitive algorithm for this model. Slightly more generally, we assume that an algorithm receives a $μ$-approximate estimate of each job's processing time at some time before we complete a $(1-\varepsilon)$-fraction of its processing. Our algorithm is $O(μ/\varepsilon)$-competitive, and we show that this is asymptotically optimal. It is a surprisingly natural variant of the multilevel feedback algorithm (MLF) and it is parameter-oblivious: it does not need to know $μ$ or $\varepsilon$ upfront. The core analytical contribution is to robustify the dual-fitting framework for this problem to handle jobs for which we have not yet received estimates.