New Partitioning Techniques and Faster Algorithms for Approximate Interval Scheduling

Interval scheduling is a basic problem in the theory of algorithms and a classical task in combinatorial optimization. We develop a set of techniques for partitioning and grouping jobs based on their starting and ending times, that enable us to view an instance of interval scheduling on many jobs as a union of multiple interval scheduling instances, each containing only a few jobs. Instantiating these techniques in dynamic and local settings of computation leads to several new results. For (1 + ε)-approximation of job scheduling of n jobs on a single machine, we obtain a fully dynamic algorithm with O(log n/ε) update and O(log n) query worst-case time. Further, we design a local computation algorithm that uses only O(log n/ε) queries. Our techniques are also applicable in a setting where jobs have rewards/weights. For this case we obtain a fully dynamic algorithm whose worst-case update and query time has only polynomial dependence on 1/ε, which is an exponential improvement over the result of Henzinger et al. [SoCG, 2020]. We extend our approaches for unweighted interval scheduling on a single machine to the setting with M machines, while achieving the same approximation factor and only M times slower update time in the dynamic setting. In addition, we provide a general framework for reducing the task of interval scheduling on M machines to that of interval scheduling on a single machine. In the unweighted case this approach incurs a multiplicative approximation factor 2− 1/M .

[1]  Esther M. Arkin,et al.  Scheduling jobs with fixed start and end times , 1987, Discret. Appl. Math..

[2]  Ronitt Rubinfeld,et al.  Fast Local Computation Algorithms , 2011, ICS.

[3]  Manoj Kumar Mishra,et al.  A Survey of Job Scheduling and Resource Management in Grid Computing , 2010 .

[4]  Jiamou Liu,et al.  Dynamic Interval Scheduling for Multiple Machines , 2014, ISAAC.

[5]  Julien Robert,et al.  Non-clairvoyant scheduling with precedence constraints , 2008, SODA '08.

[6]  José R. Correa,et al.  Single-Machine Scheduling with Precedence Constraints , 2005, Math. Oper. Res..

[7]  Marco A. Boschetti,et al.  A Set Partitioning Approach to the Crew Scheduling Problem , 1999, Oper. Res..

[8]  Éva Tardos,et al.  Algorithm design , 2005 .

[9]  Karen Aardal,et al.  An Optimisation Algorithm for Maximum Independent Set with Applications in Map Labelling , 1999, ESA.

[10]  Thomas Rothvoss,et al.  A Lasserre-based $(1+\varepsilon)$-approximation for $Pm \mid p_j=1, \textrm{prec} \mid C_{\max}$ , 2015, ArXiv.

[11]  Andreas Wiese,et al.  Dynamic Approximate Maximum Independent Set of Intervals, Hypercubes and Hyperrectangles , 2020, SoCG.

[12]  Frits C. R. Spieksma,et al.  Interval scheduling: A survey , 2007 .

[13]  Sudipto Guha,et al.  Approximating the Throughput of Multiple Machines in Real-Time Scheduling , 2002, SIAM J. Comput..

[14]  Jiamou Liu,et al.  Dynamic algorithms for monotonic interval scheduling problem , 2014, Theor. Comput. Sci..

[15]  Jan Karel Lenstra,et al.  Complexity of Scheduling under Precedence Constraints , 1978, Oper. Res..

[16]  Giorgio C. Buttazzo,et al.  Limited Preemptive Scheduling for Real-Time Systems. A Survey , 2013, IEEE Transactions on Industrial Informatics.

[17]  Martin Skutella,et al.  Stochastic Machine Scheduling with Precedence Constraints , 2005, SIAM J. Comput..

[18]  Jean Cardinal,et al.  Dynamic Geometric Independent Set , 2020, ArXiv.

[19]  Subhash Suri,et al.  Label placement by maximum independent set in rectangles , 1998, CCCG.

[20]  Wolfgang Maass,et al.  Approximation schemes for covering and packing problems in image processing and VLSI , 1985, JACM.

[21]  Noga Alon,et al.  Space-efficient local computation algorithms , 2011, SODA.

[22]  Pinal Salot,et al.  A SURVEY OF VARIOUS SCHEDULING ALGORITHM IN CLOUD COMPUTING ENVIRONMENT , 2013 .