Skip to main content

A General Framework for Handling Commitment in Online Throughput Maximization

  • Conference paper
  • First Online:
Book cover Integer Programming and Combinatorial Optimization (IPCO 2019)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 11480))

Abstract

We study a fundamental online job admission problem where jobs with deadlines arrive online over time at their release dates, and the task is to determine a preemptive single-server schedule which maximizes the number of jobs that complete on time. To circumvent known impossibility results, we make a standard slackness assumption by which the feasible time window for scheduling a job is at least \(1+\varepsilon \) times its processing time, for some \(\varepsilon >0\). We quantify the impact that different provider commitment requirements have on the performance of online algorithms. Our main contribution is one universal algorithmic framework for online job admission both with and without commitments. Without commitment, our algorithm with a competitive ratio of \(\mathcal {O}(1/\varepsilon )\) is the best possible (deterministic) for this problem. For commitment models, we give the first non-trivial performance bounds. If the commitment decisions must be made before a job’s slack becomes less than a \(\delta \)-fraction of its size, we prove a competitive ratio of \(\mathcal {O}(\varepsilon /((\varepsilon -\delta )\delta ^2))\), for \(0<\delta <\varepsilon \). When a scheduler must commit upon starting a job, our bound is \(\mathcal {O}(1/\varepsilon ^2)\). Finally, we observe that for scheduling with commitment the restriction to the “unweighted” throughput model is essential; if jobs have individual weights, we rule out competitive deterministic algorithms.

N. Megow—Supported by the German Science Foundation (DFG) Grant ME 3825/1.

K. Schewior—Supported by CONICYT Grant PII 20150140 and DAAD PRIME program.

C. Stein—Research partly supported by NSF Grants CCF-1714818 and CCF-1822809.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 59.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 79.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Agrawal, K., Li, J., Lu, K., Moseley, B.: Scheduling parallelizable jobs online to maximize throughput. In: Bender, M.A., Farach-Colton, M., Mosteiro, M.A. (eds.) LATIN 2018. LNCS, vol. 10807, pp. 755–776. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-77404-6_55

    Chapter  Google Scholar 

  2. Azar, Y., Kalp-Shaltiel, I., Lucier, B., Menache, I., Naor, J., Yaniv, J.: Truthful online scheduling with commitments. In: Proceedings of the ACM Symposium on Economics and Computations (EC), pp. 715–732 (2015)

    Google Scholar 

  3. Bansal, N., Chan, H.-L., Pruhs, K.: Competitive algorithms for due date scheduling. In: Arge, L., Cachin, C., Jurdziński, T., Tarlecki, A. (eds.) ICALP 2007. LNCS, vol. 4596, pp. 28–39. Springer, Heidelberg (2007). https://doi.org/10.1007/978-3-540-73420-8_5

    Chapter  Google Scholar 

  4. Baruah, S.K., Haritsa, J.R.: Scheduling for overload in real-time systems. IEEE Trans. Comput. 46(9), 1034–1039 (1997)

    Article  MathSciNet  Google Scholar 

  5. Baruah, S.K., Haritsa, J.R., Sharma, N.: On-line scheduling to maximize task completions. In: Proceedings of the IEEE Real-Time Systems Symposium (RTSS), pp. 228–236 (1994)

    Google Scholar 

  6. Baruah, S.K., et al.: On the competitiveness of on-line real-time task scheduling. Real-Time Syst. 4(2), 125–144 (1992)

    Article  Google Scholar 

  7. Canetti, R., Irani, S.: Bounding the power of preemption in randomized scheduling. SIAM J. Comput. 27(4), 993–1015 (1998)

    Article  MathSciNet  Google Scholar 

  8. Chen, L., Megow, N., Schewior, K.: An \(\cal{O}(\log m)\)-competitive algorithm for online machine minimization. In: Proceedings of the ACM-SIAM Symposium on Discrete Algorithms (SODA), pp. 155–163 (2016)

    Google Scholar 

  9. Chen, L., Megow, N., Schewior, K.: The power of migration in online machine minimization. In: Proceedings of the ACM Symposium on Parallelism in Algorithms and Architectures (SPAA), pp. 175–184 (2016)

    Google Scholar 

  10. DasGupta, B., Palis, M.A.: Online real-time preemptive scheduling of jobs with deadlines. In: Jansen, K., Khuller, S. (eds.) APPROX 2000. LNCS, vol. 1913, pp. 96–107. Springer, Heidelberg (2000). https://doi.org/10.1007/3-540-44436-X_11

    Chapter  Google Scholar 

  11. Ferguson, A.D., Bodík, P., Kandula, S., Boutin, E., Fonseca, R.: Jockey: guaranteed job latency in data parallel clusters. In: Proceedings of the European Conference on Computer Systems (EuroSys), pp. 99–112 (2012)

    Google Scholar 

  12. Garay, J.A., Naor, J., Yener, B., Zhao, P.: On-line admission control and packet scheduling with interleaving. In: Proceedings of the IEEE International Conference on Computer Communications (INFOCOM), pp. 94–103 (2002)

    Google Scholar 

  13. Georgiadis, L., Guérin, R., Parekh, A.K.: Optimal multiplexing on a single link: delay and buffer requirements. IEEE Trans. Inf. Theory 43(5), 1518–1535 (1997)

    Article  MathSciNet  Google Scholar 

  14. Goldwasser, M.H.: Patience is a virtue: the effect of slack on competitiveness for admission control. In: Proceedings of the ACM-SIAM Symposium on Discrete Algorithms (SODA), pp. 396–405 (1999)

    Google Scholar 

  15. Im, S., Moseley, B.: General profit scheduling and the power of migration on heterogeneous machines. In: Proceedings of the ACM Symposium on Parallelism in Algorithms and Architectures (SPAA), pp. 165–173 (2016)

    Google Scholar 

  16. Kalyanasundaram, B., Pruhs, K.: Maximizing job completions online. J. Algorithms 49(1), 63–85 (2003)

    Article  MathSciNet  Google Scholar 

  17. Koren, G., Shasha, D.E.: MOCA: a multiprocessor on-line competitive algorithm for real-time system scheduling. Theor. Comput. Sci. 128(1–2), 75–97 (1994)

    Article  Google Scholar 

  18. Koren, G., Shasha, D.E.: Dover: an optimal on-line scheduling algorithm for overloaded uniprocessor real-time systems. SIAM J. Comput. 24(2), 318–339 (1995)

    Article  MathSciNet  Google Scholar 

  19. Liebeherr, J., Wrege, D.E., Ferrari, D.: Exact admission control for networks with a bounded delay service. IEEE/ACM Trans. Netw. 4(6), 885–901 (1996)

    Article  Google Scholar 

  20. Lipton, R.: Online interval scheduling. In: Proceedings of the ACM-SIAM Symposium on Discrete Algorithms (SODA), pp. 302–311 (1994)

    Google Scholar 

  21. Lucier, B., Menache, I., Naor, J., Yaniv, J.: Efficient online scheduling for deadline-sensitive jobs: extended abstract. In: Proceedings of the ACM Symposium on Parallelism in Algorithms and Architectures (SPAA), pp. 305–314 (2013)

    Google Scholar 

  22. Pruhs, K., Stein, C.: How to schedule when you have to buy your energy. In: Proceedings of the International Conference on Approximation Algorithms for Combinatorial Optimization Problems (APROX), pp. 352–365 (2010)

    Chapter  Google Scholar 

  23. Schwiegelshohn, C., Schwiegelshohn, U.: The power of migration for online slack scheduling. In: Proceedings of the European Symposium of Algorithms (ESA), vol. 57, pp. 75:1–75:17 (2016)

    Google Scholar 

  24. Woeginger, G.J.: On-line scheduling of jobs with fixed start and end times. Theor. Comput. Sci. 130(1), 5–16 (1994)

    Article  MathSciNet  Google Scholar 

  25. Yaniv, J.: Job scheduling mechanisms for cloud computing. Ph.D. thesis, Technion, Israel (2017)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Franziska Eberle .

Editor information

Editors and Affiliations

A Appendix

A Appendix

Lemma 4

Let \(\{f, \ldots , g\}\subset J\) be jobs at maximal distance from M such that \(\sum _{j=f}^i |X_{j}| > \lambda (i+1 - f) \) holds for all \(f\le i\le g\). If g is the last such job, there is a sibling \(j^*\) of g with \(b_{g} = a_{j^*}\) and \(\sum _{j = f }^{j^*} |X_{j}| \le \lambda (j^*+ 1 - f)\).

Proof

(Sketch). Observe that \([a_{f}, b_{g}) = \bigcup _{j=f}^k R(g)\) because the leaves \(f, \ldots , g\) form a string of jobs. Thus, by showing that there is a job \(x \in X_f^g := \bigcup _{j=f}^g X_{j}\) satisfying (V), we prove the lemma with the Volume Lemma. We show that for every job \(f \le j \le g\) there is a set \(Y_j\) such that the processing volume of \(Y_j\) covers the interval \([a_{j},b_{j})\) at least \(\frac{\varepsilon }{\varepsilon -\delta }\) times. More precisely, \(Y_f,\ldots ,Y_g\) satisfy

  • $$\begin{aligned} {\textit{(i)}}\,\bigcup \nolimits _{j=f}^g Y_j \subset X_f^g,\,{\textit{(ii)}}\,|Y_j| = \lambda ,\,{\textit{(iii)}}\,Y_j \subset \{x \in X_f^g: p_x \ge \beta p_{j}\}\,\,\text {for}\,\,f\le j \le g. \end{aligned}$$

Then, ( ii ) and ( iii ) imply \(\sum _{y \in Y_j} p_y \ge \lambda \beta p_{j} = \frac{\varepsilon }{\varepsilon -\delta }(b_{j} - a_{j})\). Thus, if \(x \notin \bigcup _{j=f}^g Y_j\) and x is among those jobs in \(X_f^g\) that Opt completes last, (V) is satisfied. We first describe how to find \(Y_f,\ldots ,Y_g\) before we show that these sets satisfy ( i ) to ( iii ).

By assumption, \(|X_{f}| > \lambda \). Index the jobs in \(X_{f} = \{x_1,\ldots ,x_\lambda ,x_{\lambda +1},\ldots \}\) in increasing completion times \(C_x^*\). Define \(Y_f := \{x_1,\ldots ,x_\lambda \}\) and \(L_f := X_f \setminus Y_f \). Let \(Y_f,\ldots ,Y_j\) and \(L_j\) be defined for \(f < j+1\le g\). By assumption, \(|X_{j+1 } \cup L_j| > \lambda \) since \(|Y_i| = \lambda \) for \(f\le i \le j\). We again index the jobs in \(X_{j +1} \cup L_j = \{x_1, \ldots , x_\lambda , x_{\lambda +1}, \ldots \}\) in increasing optimal completion times. Then, \(Y_{j+1} := \{x_1,\ldots ,x_\lambda \}\) and \(L_{j+1} := \{x_{\lambda +1},\ldots \}\). Since we move jobs only horizontally to later siblings, we call this procedure Push Forward.

By definition, ( i ) and ( ii ) are satisfied. Since \(f,\ldots ,g\) are leaves, the jobs in \(Y_j \cap X_j\) are big w.r.t. j. Thus, it remains to show that the jobs in \(L_j\) are big w.r.t. the next job \(j+1\). To this end, we assume that the jobs in \(Y_f,\ldots ,Y_j\) are big w.r.t. \(f,\ldots ,j\), respectively. If we find an index \(f\le i(x) \le j\) such that x as well as the jobs in \(\bigcup _{i=i(x)}^j Y_i\) are released after \(a_{i(x)}\) and x completes after every \(y \in \bigcup _{i = i(x)}^j Y_i\), then the Volume Lemma 3 implies that \(x \in L_j\) is big w.r.t. \(j+1\). Indeed, then \( \sum _{i = i(x)}^j \sum _{\begin{array}{c} y\in X_{i}: C_y^* \le C_x^* \end{array}} p_y \ge p_x + \sum _{i = i(x)}^j \sum _{y\in Y_i} p_y \ge \frac{\varepsilon }{\varepsilon -\delta }(b_{j} - a_{i(x)}) + p_x . \) By induction, we show the existence of such an index \(i(x)\).

By the same argumentation for \(j = g\), Corollary 1 implies the lemma.    \(\square \)

Lemma 2

For all \(j\in J\cup \{M\}\), \(|X_j^S| \le \lambda \tau _j\).

Proof

(Sketch). Recall that \(T_{j}\) is the subtree of the interruption tree rooted in \(j\in J\) while the forest \(T_{-j}\) is \(T_j\) without its root j. We show that for all \(j\in J\cup \{M\}\) there exists a partition \((Y_k)_{k\in T_{-j}}\) with

  • $$\begin{aligned} {\textit{(i)}}\,\bigcup \nolimits _{k\in T_{-j}} Y_k = X_j^S,\, {\textit{(ii)}}\,Y_k \subset \{ x \in X_j: p_x \ge \beta p_k \},\,{\textit{(iii)}}\,|Y_k| \le \lambda \,\,\text {for}\,\,k\in T_{-j}. \end{aligned}$$

Then, \(|X_j^S | = |\bigcup _{k\in T_{-j}} Y_k | = \sum _{k \in T_{-j}} |Y_k| \le \tau _j \lambda \) and, thus, the lemma follows.

The proof consists of an outer and an inner induction. The outer induction is on the distance \(\varphi (j)\) of a job j from machine job M, i.e., \(\varphi (M) := 0\) and \(\varphi (j) := \varphi (\pi (j)) + 1\) for \(j\in J\). Let \(\varphi _{\max } := \max \{\varphi (i): i \in J\}\). The inner induction uses the idea about pushing jobs \(x\in X_j\) to some later sibling of j in the same string of jobs (see proof of Lemma 4).

Let \(j \in J\) with \(\varphi (j) = \varphi _{\max } -1 \). By Observation 1, \(X_j^S = \bigcup _{k: \pi (k) = j} X_k\), where all \(k \in T_{-j}\) are leaves at distance \(\varphi _{\max }\) from M. To define \(Y_k\) for \(k \in T_{-j}\) satisfying ( i ) to ( iii ), we distinguish three cases:

Case 1. If \(k\in T_{-j}\) is isolated, \(|X_k| \le \lambda \) follows directly from the Volume Lemma as otherwise \(\sum _{x \in X_k} p_x \ge \lambda \beta p_k + p_x = \tfrac{\varepsilon }{\varepsilon - \delta } (b_k - a_k) + p_x\) contradicts Corollary 1, where \(x\in X_k\) is the last job that Opt completes from the set \(X_k\). Since all jobs in \(X_k\) are big w.r.t. k, we set \(Y_k := X_k\).

Case 2. For \(k\in T_{-j}\) with \(|X_k| > \lambda \), we find \(Y_f,\ldots ,Y_g\) with Lemma 4 and set \(Y_{g+1} := X_{g+1} \cup L_g\) where \(f \le k \le g\) (maximal) satisfy Lemma 2.

Case 3. Consider jobs k in a string with \(|X_k| \le \lambda \) without siblings \(f,\ldots ,g\) in the same string with \(b_g = a_k\) and \(\sum _{i=f}^{g} |X_j| > (g - f) \lambda \). This means that such jobs do not receive jobs \(x \in X_i\) for \(i\ne k\) by the Push Forward procedure in Case 2. For such \(k\in T_{-j}\) we define \(Y_k := X_k\) as in Case 1.

Then, \(X_j^S = \bigcup _{k \in T_{-j}} X_k = \bigcup _{k \in T_{-j}} Y_k\) and, thus, ( i ) to ( iii ) are satisfied.

We use induction to extend the claim for \(\varphi = \varphi _{\max }\) to all \(0\le \varphi \le \varphi _{\max }\). Let \(\varphi < \varphi _{\max }\) such that \((Y_k)_{k\in T_{-j}}\) satisfying ( i ) to ( iii ) exists for all \(j\in J\) with \(\varphi (j) \ge \varphi \). Fix \(j \in J\) with \(\varphi (j) = \varphi -1\). By induction and Observation 1, it holds that \(X_j^S = \bigcup _{k: \pi (k) = j} \left( X_k^B \cup \bigcup _{i \in T_{-k}} Y_i \right) \). Now, we use the partitions \((Y_i)_{i \in T_{-k}}\) for k with \(\pi (k) = j\) as starting point to find the partition \((Y_k)_{k \in T_{-j}}\). We fix k with \(\pi (k)= j\) and distinguish similar three cases as in the base case:

Case 1. If k is isolated, we show that \(|X_k| \le (\tau _k+1) \lambda \) and develop a procedure to find \((Y_i)_{i \in T_{k}}\).

By induction, \(|X_k^S| \le \tau _k \lambda \). In the full version of the paper, we prove that \(|X_k^B| \le \lambda + (\tau _k \lambda - |X_k^S|)\). To construct \((Y_i)_{i \in T_{k} }\), we assign \(\min \{\lambda , |X_k^B|\}\) jobs from \(X_k^B\) to \(Y_k\). If \(|X_k^B| > \lambda \), distribute the remaining jobs according to \(\lambda - |Y_i|\) among the descendants of k. Then, \(X_k = \bigcup _{i \in T_{k}} Y_i\). Because a job that is big w.r.t job k is also big w.r.t. all descendants of k, every (new) set \(Y_i\) satisfies ( ii ) and ( iii ). We refer to this procedure as Push Down since jobs are shifted vertically to descendants.

Case 2. If \(|X_k| > (\tau _k+1) \lambda \), k must belong to a string with similar properties as in Lemma 4, i.e., there is a maximal string of jobs \(f,\ldots ,g\) containing k such that \(\sum _{j=f}^i |X_{j}| > \lambda \sum _{j=f}^i \tau _j \) for \(f\le i\le g\) and \(b_{j} = a_{j+1}\) for \(f\le j < g\).

If the Volume Condition (V) is satisfied, there exists another sibling \(g+1\) that balances the sets \(X_f,\ldots ,X_g,X_{g+1}\) due to Corollary 1. This is shown by using Push Down within a generalization of the Push Forward procedure. As the jobs \(f,\ldots ,g\) may have descendants, we use Push Forward to construct the sets \(Z_f,\ldots ,Z_g\) and \(L_f,\ldots , L_g\) with \(|Z_k| = \lambda (\tau _k+1)\). Then, we apply Push Down to \(Z_k\) and \((Y_i)_{i\in T_{-k}}\) in order to obtain \((Y_i)_{i \in T_{k} }\) such that they will satisfy \(Z_k = \bigcup _{i\in T_{k}} Y_i\), \(Y_i \subset \{ x \in X_j: p_x \ge \beta p_i \}\), and \(|Y_i| = \lambda \) for \(i\in T_{k}\). Thus, the sets \(X_f,\ldots ,X_g\) satisfy (V) and we can apply Corollary 1.

Case 3. Any job k with \(\pi (k) = j\) that was not yet considered as part of a string must satisfy \(|X_{k} | \le (\tau _k+1) \lambda \). We use Push Down of Case 1 to get \((Y_{i})_{i \in T_k }\). Hence, we have found \((Y_k)_{k\in T_{-j}}\) with the properties ( i ) to ( iii ).    \(\square \)

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Chen, L., Eberle, F., Megow, N., Schewior, K., Stein, C. (2019). A General Framework for Handling Commitment in Online Throughput Maximization. In: Lodi, A., Nagarajan, V. (eds) Integer Programming and Combinatorial Optimization. IPCO 2019. Lecture Notes in Computer Science(), vol 11480. Springer, Cham. https://doi.org/10.1007/978-3-030-17953-3_11

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-17953-3_11

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-17952-6

  • Online ISBN: 978-3-030-17953-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics