Skip to main content
Log in

Scheduling for a processor sharing system with linear slowdown

  • Original Article
  • Published:
Mathematical Methods of Operations Research Aims and scope Submit manuscript

Abstract

We consider the problem of scheduling arrivals to a congestion system with a finite number of users having identical deterministic demand sizes. The congestion is of the processor sharing type in the sense that all users in the system at any given time are served simultaneously. However, in contrast to classical processor sharing congestion models, the processing slowdown is proportional to the number of users in the system at any time. That is, the rate of service experienced by all users is linearly decreasing with the number of users. For each user there is an ideal departure time (due date). A centralized scheduling goal is then to select arrival times so as to minimize the total penalty due to deviations from ideal times weighted with sojourn times. Each deviation penalty is assumed quadratic, or more generally convex. But due to the dynamics of the system, the scheduling objective function is non-convex. Specifically, the system objective function is a non-smooth piecewise convex function. Nevertheless, we are able to leverage the structure of the problem to derive an algorithm that finds the global optimum in a (large but) finite number of steps, each involving the solution of a constrained convex program. Further, we put forward several heuristics. The first is the traversal of neighbouring constrained convex programming problems, that is guaranteed to reach a local minimum of the centralized problem. This is a form of a “local search”, where we use the problem structure in a novel manner. The second is a one-coordinate “global search”, used in coordinate pivot iteration. We then merge these two heuristics into a unified “local–global” heuristic, and numerically illustrate the effectiveness of this heuristic.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5

Similar content being viewed by others

Notes

  1. Note that in queueing theory, situations where \(v(\cdot )\) is not as in (1.1) but is rather some other function are sometimes referred to as generalized processor sharing. See for example Cohen (1979). Generalized processor sharing has also taken other meanings over the years, so sometimes there is confusion about the term.

  2. These computation times are using an AMD computer with 4 Phenom II 955 3.2 GHz processors, with our algorithms implemented in version 3.1.2 of the R software.

References

  • Arnott R, de Palma A, Lindsey R (1993) A structural model of peak-period congestion: a traffic bottleneck with elastic demand. Am Econ Rev 83(1):161–79

    Google Scholar 

  • Avram F, Bertsimas D, Ricard M (1995) Fluid models of sequencing problems in open queueing networks; an optimal control approach. Inst Math Appl 71:199

    MathSciNet  MATH  Google Scholar 

  • Baker K, Scudder GD (1990) Sequencing with earliness and tardiness penalties: a review. Oper Res 38(1):22–36

    Article  MathSciNet  MATH  Google Scholar 

  • Bertsekas DP (1999) Nonlinear programming, 2nd edn. Athena Scientific, Belmont

  • Cohen J (1979) The multiple phase service network with generalized processor sharing. Acta Inf 12(3):245–284

    Article  MathSciNet  MATH  Google Scholar 

  • Daganzo CF (2007) Urban gridlock: macroscopic modeling and mitigation approaches. Transp Res Part B Methodol 41(1):49–62

    Article  MathSciNet  Google Scholar 

  • De Loera JA, Hemmecke R, Kppe M, Weismantel R (2006) Integer polynomial optimization in fixed dimension. Math Oper Res 31(1):147–153

    Article  MathSciNet  MATH  Google Scholar 

  • Glazer A, Hassin R (1983) ?/M/1: on the equilibrium distribution of customer arrivals. Eur J Oper Res 13(2):146–150

    Article  MathSciNet  MATH  Google Scholar 

  • Harchol-Balter M (2013) Performance modeling and design of computer systems: queueing theory in action. Cambridge University Press, Cambridge

    MATH  Google Scholar 

  • Hassin R (2016) Rational queueing. CRC Press, Boca Raton

    Book  MATH  Google Scholar 

  • Henderson J (1974) Road congestion. J Urban Econ 1(3):346–365

    Article  MATH  Google Scholar 

  • Keha AB, de Farias IR, Nemhauser GL (2006) A branch-and-cut algorithm without binary variables for nonconvex piecewise linear optimization. Oper Res 54(5):847–858

    Article  MathSciNet  MATH  Google Scholar 

  • Koshy T (2009) Catalan numbers with applications. Oxford University Press, New York

  • Mahmassani H, Herman R (1984) Dynamic user equilibrium departure time and route choice on idealized traffic arterials. Transp Sci 18(4):362–384

    Article  Google Scholar 

  • Murty KG, Kabadi SN (1987) Some NP-complete problems in quadratic and nonlinear programming. Math Program 39(2):117–129

    Article  MathSciNet  MATH  Google Scholar 

  • Nazarathy Y, Weiss G (2009) Near optimal control of queueing networks over a finite time horizon. Ann Oper Res 170(1):233–249

    Article  MathSciNet  MATH  Google Scholar 

  • Pia AD, Dey SS, Molinaro M (2016) Mixed-integer quadratic programming is in NP. Math Program 162(1):225–240

  • Pinedo ML (2008) Scheduling: theory, algorithms, and systems. Springer, Berlin

    MATH  Google Scholar 

  • Potts CN, Kovalyov MY (2000) Scheduling with batching: a review. Eur J Oper Res 120(2):228–249

    Article  MathSciNet  MATH  Google Scholar 

  • Ravner L, Haviv M, Vu HL (2016) A strategic timing of arrivals to a linear slowdown processor sharing system. Eur J Oper Res 255(2):496–504

    Article  MathSciNet  MATH  Google Scholar 

  • Sen T, Gupta SK (1984) A state-of-art survey of static scheduling research involving due dates. Omega 12(1):63–76

    Article  Google Scholar 

  • Tseng P (2001) Convergence of a block coordinate descent method for nondifferentiable minimization. J Optim Theory Appl 109(3):475–494

    Article  MathSciNet  MATH  Google Scholar 

  • Vielma JP, Ahmed S, Nemhauser GL (2010) Mixed-integer models for nonseparable piecewise-linear optimization: unifying framework and extensions. Oper Res 58(2):303–315

    Article  MathSciNet  MATH  Google Scholar 

  • Weiss G (2008) A simplex based algorithm to solve separated continuous linear programs. Math Program 115:151–198

    Article  MathSciNet  MATH  Google Scholar 

Download references

Acknowledgements

We thank Hai Vu and Moshe Haviv for useful discussions and advice. We are grateful to two anonymous reviewers for their helpful comments. We thank The Australia-Israel Scientific Exchange Foundation (AISEF) for supporting Liron Ravner’s visit to The University of Queensland. Yoni Nazarathy’s research is supported by ARC Grants DE130100291 and DP130100156.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Yoni Nazarathy.

Appendix: Proofs

Appendix: Proofs

Proof of Lemma 2.1

Consider two arrivals \(a_{i} \le a_{j}\). During the time interval \([a_{i},a_{j}]\), user i has received some service,

$$\begin{aligned} \int _{a_{i}}^{a_{j}} v\big (q(t)\big ) dt, \end{aligned}$$

while user j has not. Then during the time interval \([a_{j}, d_{i} \wedge d_{j}]\) both users receive the same service, \(\int _{a_{j}}^{d_{i} \wedge d_{j}} v\big (q(t)\big ) dt\). Then if \(d_i > d_j\) we have that \(\int _{a_{j}}^{d_{i} \wedge d_{j}} v\big (q(t)\big ) dt = 1\), which in turn would imply that,

$$\begin{aligned} \int _{a_{i}}^{d_{i}} v\big (q(t)\big ) dt = \int _{a_{i}}^{a_{j}} v\big (q(t)\big ) dt + \int _{a_{j}}^{d_{i} \wedge d_{j}} v\big (q(t)\big ) dt +\int _{d_{i} \wedge d_{j}}^{d_{i}} v\big (q(t)\big ) dt > 1, \end{aligned}$$

a contradiction. Hence \(d_i \le d_j\). \(\square \)

Proof of Lemma 2.2

Without loss of generality assume \(a_1 \le \cdots \le a_N\) and hence by the previous lemma, \({{\mathbf {d}}}\) is ordered. Assume now that there exists a \(\tilde{{\mathbf {d}}} \ne {{\mathbf {d}}}\) and define \(i = \min \{ i{:}\,\tilde{d}_i \ne d_i \}\). Without loss of generality, assume that \(d_i < \tilde{d}_i\). Using (2.1) it holds that,

$$\begin{aligned} \int _{a_i}^{d_i} v \big (q(t)\big ) \, dt =1= \int _{a_i}^{d_i} v \big ( \tilde{q}(t) \big ) \, dt + \int _{d_i}^{\tilde{d}_i} v \big ( \tilde{q}(t) \big ) \, dt. \end{aligned}$$

Now since for all \(t \le d_i\) it holds that \(q(t) = \tilde{q}(t)\), then,

$$\begin{aligned} \int _{d_i}^{\tilde{d}_i} v \big ( \tilde{q}(t) \big ) \, dt = 0. \end{aligned}$$

A contradiction.

Now there exists a full symmetry between \({{\mathbf {a}}}\) and \({{\mathbf {d}}}\), hence going in the opposite direction (for every \({{\mathbf {d}}}\) there exists a unique \({{\mathbf {a}}}\)) follows a similar argument to the above. \(\square \)

Proof of Lemma 2.3

We first argue that an optimal arrival must be ordered (\( a_1 \le \cdots \le a_N\)) by means of an interchange argument. Assume this is not the case, i.e. \({\mathbf {a}}\) is an optimal arrival schedule such that \(a_i>a_j\) for some \(i<j\) (such that \(d_i^*<d_j^*\)). If we switch between the arrival times of users i and j: \(\tilde{a_i}=a_j\) and \(\tilde{a_j}=a_i\), while not changing any other arrival time, then because all users have the same service demand the departure times of all other users do not change. Consequently, the departure times are also switched: \(\tilde{d_i}=d_j\) and \(\tilde{d_j}=d_i\). Therefore, the only change in the total cost function is the change in the cost incurred by i and j themselves. The change in the cost incurred by user i is given by (2.3):

$$\begin{aligned} \begin{aligned} {c_i}(\tilde{a_i},\tilde{d_i})-c_i(a_i,d_i)&=\big (\tilde{d_i}-d_i^*\big )^2+\gamma \big (\tilde{d_i}-\tilde{a_i}\big )-(d_i-d_i^*)^2-\gamma (d_i-a_i) \\&= (d_j-d_i^*)^2+\gamma (d_j-a_j)-(d_i-d_i^*)^2-\gamma (d_i-a_i), \end{aligned} \end{aligned}$$
(7.2)

and for user j:

$$\begin{aligned} \begin{aligned} {c_j}(\tilde{a}_j,\tilde{d}_j)-c_j(a_j,d_j)&=\big (\tilde{d_j}-d_j^*\big )^2+\gamma \big (\tilde{d_j}-\tilde{a}_j\big )-(d_j-d_j^*)^2-\gamma (d_j-a_j) \\&= (d_i-d_j^*)^2+\gamma (d_i-a_i)-(d_j-d_j^*)^2-\gamma (d_j-a_j). \end{aligned} \end{aligned}$$
(7.3)

Summing (7.2) and (7.3) we obtain that the total change in cost is

$$\begin{aligned} 2\big (d_i^*-d_j^*\big )\big (d_i-d_j\big ). \end{aligned}$$

From Lemma 2.1 we know that if \(a_i>a_j\) then \(d_i>d_j\), and that by definition \(d_j^*> d_i^*\), hence the change in the total cost function is negative which contradicts the assumption that the schedule is optimal. In conclusion, any unordered schedule can be improved by a simple interchange of a pair of unordered coordinates, and therefore an optimal schedule must be ordered.

The slowest service rate occurs when all N users are present in the system, and therefore the longest possible sojourn time is \(\frac{1}{\beta -\alpha (N-1)}\). The total time required to clear all users from the system is then coarsely upper bounded by \(\frac{N}{\beta -\alpha (N-1)}\). A schedule such that \(a_1<\underline{a}\) is clearly not optimal, since a trivial improvement can always be achieved by setting \(a_1=\underline{a}\) and shifting to the right the arrival times of any user that overlap due to the change in \(a_1\). We are guaranteed this is possible by the fact that all users can arrive and leave the system in the interval \([\underline{a},d_1^*]\), without any overlaps. Clearly, the deviation from ideal times can only decrease when making this change, while the sojourn times remain unchanged. The coarse upper bound \(\overline{a}\) holds for the same reasons. \(\square \)

Proof of Proposition 3.2

The proof is for Algorithm 1a. The argument for Algorithm 1b follows the same arguments. For every user i, iterating on all possible values of \(k_i\in {\mathcal {N}}\) ensures that every possible departure interval \([a_k,a_{k+1})\) is checked. In a sense, this is an exhaustive search on all solutions that satisfy the dynamics given by Proposition 3.1. Therefore, the algorithm will always converge to the unique solution.

Given a vector of arrivals \({{\mathbf {a}}} \in {\mathbbm {R}}^N\), for every \(i\in {\mathcal {N}}\), the departure time \(d_i\) occurs in one of the above defined partitions \([a_k,a_{k+1}), \ k\in {\mathcal {N}}\). The total number of steps will include the number of “correct” computations, that is for every i and \(k_i=k\) the resulting \(d_i\) will indeed be in the interval \([a_k,a_{k+1})\). In total there will be exactly N correct computations. However, there will also be steps which will turn out to be false: for a given k the departure time \(d_i\) will not be in the interval \([a_k,a_{k+1})\). If \(k_j=k\) for some j, then for every \(i>j\): \(k_i\ge k\). Therefore, if for some i and \(k\ge i\) the computation will yield \(d_i\notin [a_k,a_{k+1})\), then this interval will not be attempted by any later arrival \(j>i\) in the following steps. As a result, every interval will yield at most one false computation. Since there are exactly N intervals this completes the proof. \(\square \)

Proof of Lemma 5.2

Since \(x>a_i\) it holds that \(i < \pi _r\), and thus using (5.2) if \(k_i<\pi _r\) then \(\theta _i=0\), and if \(k_i\ge \pi _r\) then

$$\begin{aligned} \theta _i=-\frac{\alpha \left( 1-\sum _{j=h_i}^{i-1}\theta _j\right) }{\beta -\alpha (k_i-i)}. \end{aligned}$$

Since \(N< \beta /\alpha +1\), the denominator is always positive. We next show that the numerator is non-negative by induction on \(h_{\pi _r}\le i <\pi _r\). Recall that \(h_i=\min \lbrace h:k_h\ge i\rbrace \), and so \(k_i\ge \pi _r\) is equivalent to \(i\ge h_{\pi _r}\). Thus for \(j<h_{\pi _r}\): \(\theta _j=0\) and the denominator in the case \(i=h_{\pi _r}\) equals \(\alpha (1-0)>0\). The induction step is then immediate because the sum \(\sum _{j=h_i}^{i-1}\theta _j\) is non-negative for all \(h_{\pi _r}<i <\pi _r\). \(\square \)

Proof of Lemma 5.3

Without loss of generality assume that \(\underline{a}+\frac{1}{\beta }<a_i<\overline{a}-\frac{1}{\beta }, \ \forall i\in {\mathcal {N}}\). If this were not the case we could always extend the search range by \(\frac{1}{\beta }\) in both directions. Hence, \(\theta _i=0\) at \(x=\underline{a}\) and at \(x=\overline{a}\) for any \(i\in \pi \). Furthermore, from Lemma 5.2 we have that \(\theta _i\le 0\) for \(x>a_i\). Clearly, there is some x such that \(\theta _i>0\) for the first time. So far we have established that \(\theta _i\) starts at zero, is positive at some point and negative at some back to zero, for every \(i\in \pi \). We are left with finding the number of possible sign changes prior to \(x=a_i\). For any \(x<a_i\) it follows that \(i>\pi _r\), and from (5.2) we have that:

$$\begin{aligned} \theta _i=\frac{\alpha \sum _{j=h_i}^{i-1}\theta _j}{\beta -\alpha (k_i-i)} \end{aligned}$$

Note that \(\theta _i\) can only be negative when there is at least one \(j<i\) such that \(\theta _j<0\). We use this to complete the proof by induction on the initial order \(\pi \). We start the induction at \(i=2\) because \(\pi _r=1\) in the initial permutation and \(\theta _{\pi _r}\ge 0\) for all values of x. For \(i=2\) and \(x<a_2\): \(\theta _2=\frac{\alpha \theta _{1}\mathbbm {1}\{h_2=1\}}{\beta -\alpha (k_2-2)}\ge 0\). Together with Lemma 5.2 we have established that \(\theta _2\) changes sign exactly once. Now let us assume that the claim is correct for all \(j\le i-1\). From (5.2) we see that for \(x<a_i\), \(\theta _j\) can only change sign when one of the previous \(j\in \{h_i,\ldots ,i-1\}\) changes sign. If \(\theta _{i-1}\) changed sign exactly \(i-2\) times then \(\theta _i\) can potentially change at all these times and additionally when \(x=a_i\), and therefore there are indeed at most \(i-1\) changes of sign. \(\square \)

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Ravner, L., Nazarathy, Y. Scheduling for a processor sharing system with linear slowdown. Math Meth Oper Res 86, 71–102 (2017). https://doi.org/10.1007/s00186-017-0583-3

Download citation

  • Received:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00186-017-0583-3

Keywords

Navigation