Approximating total flow time on parallel machines

作者:

Highlights:

摘要

We consider the problem of optimizing the total flow time of a stream of jobs that are released over time in a multiprocessor setting. This problem is NP-hard even when there are only two machines and preemption is allowed. Although the total (or average) flow time is widely accepted as a good measurement of the overall quality of service, no approximation algorithms were known for this basic scheduling problem.This paper contains two main results. We first prove that when preemption is allowed, Shortest Remaining Processing Time (SRPT) is an O(log(min{nm,P})) approximation algorithm for the total flow time, where n is the number of jobs, m is the number of machines, and P is the ratio between the maximum and the minimum processing time of a job. We also provide an Ω(log(nm+P)) lower bound on the (worst case) competitive ratio of any randomized algorithm for the on-line problem in which jobs are known at their release times. Thus, we show that up to a constant factor SRPT is an optimal on-line algorithm.Our second main result addresses the non-preemptive case. We present a general technique that allows to transform any preemptive solution into a non-preemptive solution at the expense of an O(nm) factor in the approximation ratio of the total flow time. Combining this technique with our previous result yields an O(nmlognm) approximation algorithm for this case. We also show an Ω(n13−ϵ) lower bound on the approximability of this problem (assuming P≠NP).

论文关键词:Parallel machine scheduling,Flow-time optimization,On-line algorithms,Competitive analysis,Approximation algorithms

论文评审过程:Received 1 June 2001, Revised 19 April 2006, Available online 13 December 2006.

论文官网地址:https://doi.org/10.1016/j.jcss.2006.10.018