Periodic scheduling with obligatory vacations

We consider a problem of repeatedly scheduling n jobs on m parallel machines. Each job is associated with a profit that is gained each time the job is completed, and the goal is to maximize the average profit per time unit. Once the processing of a job is completed, it goes on vacation and returns to the system, ready to be processed again, only after its vacation is over. This problem has many applications: in production planning, machine maintenance, video-on-demand and database query processing, among others. We show that the problem is NP-hard already for jobs with unit processing times and unit profits, and develop approximation algorithms as well as optimal algorithms for certain subclasses of instances. We first show that a 5/3-approximation algorithm can be obtained for instances with unit processing times, using known results for windows scheduling. We then present a preemptive greedy algorithm, which yields a ratio of e/(e-1) to the optimal for general instances, with arbitrary processing times and arbitrary profits. For the special case where all jobs have the same (unit) processing times and the same (unit) profits, we present a 1.39-approximation algorithm. For this case we also show that, when the load generated by an instance is sufficiently large (in terms of n and m), any algorithm which uses no intended idle times yields an optimal schedule.

[1]  Jeffrey C. Lagarias,et al.  Pinwheel Scheduling: Achievable Densities , 2002, Algorithmica.

[2]  Rudolf Schneider,et al.  On the chairman assignment problem , 1996, Discret. Math..

[3]  Sanjoy K. Baruah,et al.  Proportionate progress: a notion of fairness in resource allocation , 1993, STOC '93.

[4]  Richard M. Karp,et al.  A characterization of the minimum cycle mean in a digraph , 1978, Discret. Math..

[5]  Rami G. Melhem,et al.  Optimal reward-based scheduling of periodic real-time tasks , 1999, Proceedings 20th IEEE Real-Time Systems Symposium (Cat. No.99CB37054).

[6]  Sanjoy K. Baruah,et al.  Pfair Scheduling of Generalized Pinwheel Task Systems , 1998, IEEE Trans. Computers.

[7]  James W. Layland,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[8]  Richard E. Ladner,et al.  A general buffer scheme for the windows scheduling problem , 2009, JEAL.

[9]  Richard E. Ladner,et al.  Windows scheduling problems for broadcast systems , 2002, SODA '02.

[10]  Jane W.-S. Liu,et al.  Scheduling Periodic Jobs That Allow Imprecise Results , 1990, IEEE Trans. Computers.

[11]  Shoshana Anily,et al.  Periodic Scheduling with Service Constraints , 2000, Oper. Res..

[12]  Mostafa H. Ammar,et al.  The Design of Teletext Broadcast Cycles , 1985, Perform. Evaluation.

[13]  Stanley B. Zdonik,et al.  Dissemination-based data delivery using broadcast disks , 1995, IEEE Wirel. Commun..

[14]  Randeep Bhatia,et al.  Minimizing service and operation costs of periodic scheduling , 2002, SODA '98.

[15]  Richard E. Ladner,et al.  Windows scheduling as a restricted version of bin packing , 2007, TALG.

[16]  Hendrik W. Lenstra,et al.  Integer Programming with a Fixed Number of Variables , 1983, Math. Oper. Res..