A natural and basic problem in scheduling theory is to provide good average quality of service to a stream of jobs that arrive over time. In this paper we consider the problem of scheduling n jobs that are released over time in order t o minimize the average completion time of the set of jobs. In contrast to the problem of minimizing average completion time when ad jobs are available at time 0, ad the problems that we consider are NP-hard, and essentially nothing was known about constructing good approximations in polynonid time.We give the first constant-factor approximation algorithms for several variants of the single and parallel machine model. Many of the algorithms are based on interesting algorithmic and structural relationships between preemptive and nonpreemptive schedules and linear programming relaxations of both. Many of the algorithms generalize to the minimization of average weighted completion time as well.
IntroductionTwo important characteristics of many real-world scheduling problems are that (1) the tasks to be scheduled arrive over time and (2) the goal is to optimize some function of average performance or satisfaction. In this pa& we study several scheduling models that include both of these characteristics; in particular we study the minimization of the average (weighted) completion time of a set of jobs with release dates. In most of these models polynomial-time algorithms were known to minimize average completion time when all the jobs were available at time 0; the introduction of release dates makes these problems NP-hard and little was known about approximation algorithms.Our major contribution is to give the first constant-factor approximation algorithms for the minimization of average completion time in these models. Our performance bounds come from the combination of two different types of results. First, we prove structural theorems about the relative quality of preemptive versus nonpreemptive schedules, and give algorithms t o convert from
1I the former to the latter with only a small degradation in schedule quality. Second, we give the first constant-approximation algorithms for preemptively scheduling parallel machines with release dates. When the machines are identical, we give a combinatorial algorithm which yields a two approximation. For unrelated machines, we give a new integer programming formulation. We then solve the linear programming relaxation and give methods to round the fractional solution to valid preemptive schedules; it is possible that these methods mill be of use in other settings.Models: We are given n jobs J 1 : . . . . J, where job J; has associated processing time p j , and a release date r j y before which it can not be processed on any machine. We will also be given m machines M I y . . . , M,. We will focus both on the one machine ( m = 1) environment and two fundamental variants of parallel machine scheduling. In the identical parallel machine environment , job Jj runs in time pj on every machine [8]. In the unrelated parallel machine scheduli...