Abstract
This paper is concerned with an M/PH/K queue with customer abandonment, constant impatient time, and many servers. By combining the method developed in Choi et al. (Math Oper Res 29:309–325, 2004) and Kim and Kim (Perform Eval 83–84:1–15, 2015) and the state space reduction method introduced in Ramaswami (Stoch Models 1:393–417, 1985), the paper develops an efficient algorithm for computing performance measures for the queueing system of interest. The paper shows a number of properties associated with matrices used in the development of the algorithm, which make it possible for the algorithm, under certain conditions, to handle systems with up to one hundred servers. The paper also obtains analytical properties of performance measures that are useful in gaining insight into the queueing system of interest.
Similar content being viewed by others
References
Asmussen S, O’Cinneide CA (1998) Representations for matrix-geometric and matrix-exponential steady-state distributions with applications to many-server queues. Stoch Models 14:369–387
Baccelli F, Boyer P, Hebuterne G (1984) Single server queues with impatient customers. Adv Appl Probab 16:887–905
Barrer DY (1957a) Queuing with impatient customer and indifferent clerks. Oper Res 5:644–649
Barrer DY (1957b) Queuing with impatient customers and ordered service. Oper Res 5:650–656
Boxma OJ, Waal PR (1994) Multisever queue with impatient customers. In: The fundamental role of teletraffic in the evolution of telecommunication network (Proc. ITC14). North-Holland, Amsterdam, pp 743–756
Boots NK, Tijms H (1999) An M/M/c queue with impatient customers. TOP 7:213–220
Brandt A, Brandt M (1999a) On the M(n)/M(n)/s queues with impatient call. Perform Eval 35:1–18
Brandt A, Brandt M (1999b) On a two-queue priority system with impatience and its application to a call center. Methodol Comput Appl Probab 1:191–210
Brandt A, Brandt M (2002) Asymptotic result and a Markovian approximation for the M(n)/M(n)/s + GI system. Queueing Syst 41:73–94
Choi BD, Kim B, Chung J (2001) M/M/1 queue with impatient customers of high priority. Queueing Syst 38:49–66
Choi BD, Kim B, Zhu D (2004) MAP/M/c queue with constant impatient time. Math Oper Res 29:309–325
Dai JG, He S (2010) Customer abandonment in many-server queues. Math Oper Res 35:347–362
Dai JG, He S (2011) Queues in service systems: customer abandonment and diffusion approximation. Tutor Oper Res 2011:36–59
Dai JG, Tezcan T (2008) Optimal control of parallel server system with many servers in heavy traffic. Queueing Syst 59:95–134
Dai JG, He S, Tezcan T (2010) Many-server diffusion limits for G/Ph/n+GI queues. Ann Appl Probab 20:1854–1890
Daley DJ (1965) General customer impatience in the queue GI/G/1. J Appl Probab 2:186–209
de Kok AG, Tijms HC (1985) A queueing system with impatient customers. J Appl Probab 22:688–696
Dzial T, Breuer L, da Silva Soares A, Latouche G, Remiche M (2005) Fluid queues to solve jump processes. Perform Eval 62:132–146
Finch PD (1960) Deterministic customer impatience in the queueing system GI/M/1. Biometrika 47(1,2): 45-52
Garnett O, Mandelbaum A, Reiman M (2002) Designing a call center with impatient customers. Manuf Serv Oper Manag 4(3):208–227
Gohberg I, Lancaster P, Rodman L (1982) Matrix polynomials. Academic Press, New York
Harris TE (1956) The existence of stationary measures for certain Markov processes. In: Proceedings of 3rd Berkeley symposium, Vol II:113-124
He QM (2005) Age process, workload process, sojourn times and waiting time in a discrete time SM[K]/PH[K]/1/FCFS queue. Queueing Syst 49:363–403
He QM (2014) Fundamentals of matrix-analytic methods. Springer, New York
Jurkevic OM (1970) On the investigation of many-server queueing systems with bounded waiting time. Izv. Akad. Nauk SSSR Techniceskaja Kibernetika (Russian) 5:50–58
Jurkevic OM (1971) On many-server systems with stochastic bounds for the waiting time. Izv. Akad. Nauk SSSR Techniceskaja Kibernetika (Russian) 4:39–46
Kawanishi K, Takine T (2016) MAP/M/c and M/PH/c queues with constant impatience times. Queueing Syst 82:381–420
Kim B, Kim J (2015) A single server queue with Markov modulated service rates and impatient customers. Perform Eval 83–84:1–15
König D, Schmidt V (1990) Extended and conditional versions of the PASTA property. Adv Appl Probab 22:510–512
Latouche G (1987) A note on two matrices occurring in the solution of quasi-birth-and-death processes. Stoch Models 3:251–257
Latouche G, Ramaswami V (1999) Introduction to matrix analytic methods in stochastic modeling. ASA-SIAM Series on Statistic and Applied Probability, SIAM, Philadelphia, PA
Mandelbaum A, Zeltyn S (2013) Data-stories about (im) patient customers in tele-queues. Queueing Syst 75(2–4):115–146
Meini B (2013) On the numerical solution of a structured nonsymmetric algebraic Riccati equation. PEVA 70(9):682–690
Movaghar A (1998) On queueing with customer impatience until the beginning of service. Queueing Syst 29:337–350
Neuts MF (1981) Matrix-geometric solution in stochastic model: an algorithmic application. The Johns Hopkins University Press, Baltimore, MD
Ramaswami V (1985) Independent Markov processes in parallel. Stoch Models 1:419–432
Ramaswami V, Lucantoni DM (1985) Algorithms for the multi-server queue with phase type service. Stoch Models 1:393–417
Stanford RE (1990) On queues with impatience. Adv Appl probab 22:768–769
Van Houdt B (2012) Analysis of the adaptive MMAP[K]/PH[K]/1 queue: a multi-type queue with adaptive arrivals and general impatience. Eur J Oper Res 220:695–704
Xiong W, Jagerman D, Altiok T (2008) M/G/1 queue with deterministic reneging times. Perform Eval 65:308–316
Acknowledgements
The authors would like to thank three anonymous reviewers and the associate editor for their insightful comments and suggestions on this paper. The authors would also like to thank Dr. Stan Dimitrov for sharing computing resource with us.
Author information
Authors and Affiliations
Corresponding author
Additional information
We thank NSERC.
Appendices
Appendix A: transition blocks for the count-server-for-phase approach
In this appendix, we construct the transition blocks in (3) explicitly. First, we need to specify how states in \(\varOmega (0)\cup \varOmega (1)\cup {\ldots }\cup \varOmega (\textit{K})\) are organized. In general, we define, for k = 0, 1, ..., K, and m = 1, 2, ..., K,
Note that \(\varOmega \)(k) = \(\varOmega \)(k, m \({}_{s}\)), for k = 0, 1, 2, ..., K. We organize the states in \(\varOmega \)(k, m) lexicographically. Then we have
It is easy to see that, for m = 1, we have \(\varOmega \)(k, 1) = \(\{\) k \(\}\), and for k = 0, \(\varOmega (0, m) = \{(0, {\ldots }, 0)\}\).
We begin with \(\{\) S \({}^{+}\)(k, m \({}_{s}\)), k = 0, 1, ..., K–1\(\}\). The basic components to construct those matrices are \(\{\) \(\lambda \), \({\varvec{\beta }}\) = (\(\beta \) \({}_{1}\), ..., \(\beta _{m_{s} } \))\(\}\), since the corresponding transitions are triggered by the arrival of a customer. The vector \({\varvec{\beta }}\) has to be utilized to specify the service phase of the arriving customer. An effective way to construct those matrices is to generate them iteratively. To that end, we need to construct matrices \(\{\) S \({}^{+}\)(k, m), k = 0, 1, ..., K–1, m = 1, 2, ..., m \({}_{s}\}\) for transitions from \(\varOmega \)(k, m) to \(\varOmega \)(k+1, m). We further decompose the transitions into transitions from \(\{\varOmega \)(k, m–1)\(\times \{\)0\(\}\), \(\varOmega \)(k–1, m–1)\(\times \{\)1\(\}\), ..., \(\varOmega \)(0, m–1)\(\times \{\) k \(\} \}\) to \(\{ \varOmega \)(k+1, m–1)\(\times \{\)0\(\}\), \(\varOmega \)(k, m–1)\(\times \{\)1\(\}\), ..., \(\varOmega \)(0, m–1)\(\times \{\) k+1\(\} \}\), respectively. Specifically, for S \({}^{+}\)(k, m), the construction components are \(\{\) \(\lambda \beta \) \({}_{1}\), ..., \(\lambda \beta {}_{m}\) \(\}\), and \(S^+(k,m)\) is given by
and S \({}^{+}\)(0, m) = \(\lambda \)(\(\beta \) \({}_{1}\), ..., \(\beta {}_{m}\)), for m = 1, 2, ..., m \({}_{s}\), and S \({}^{+}\)(k, 1) = \(\lambda \beta \) \({}_{1}\), for k = 0, 1, ..., K–1.
Now, we construct \(\{\) S \({}^{-}\)(k, m), k = 1, 2, ..., K, m = 1, 2, ..., m \({}_{s} \}\), which are for transitions from \(\varOmega \)(k, m) to \(\varOmega \)(k–1, m). The corresponding transitions are triggered by a service completion. Thus, the construction is based on \(\{ t_{1}^{0} ,\; t_{2}^{0} \), ..., \(t_{m_{s} }^{0} \}\) (Note: Recall that T \({}^{0}\) = \(\left( t_{j}^{0} \right) _{m_{s} \times 1} \)), and we obtain \(S^-(k,m)\) as
and S \({}^{-}\)(1, m) = (\(t_{1}^{0} ,\; t_{2}^{0} \), ..., \(t_{m}^{0} \))\(\prime \), for m = 1, 2, ..., m \({}_{s}\), and S \({}^{-}\)(k, 1) = \(kt_{1}^{0} \), for k = 1, 2, ..., K.
Finally, we construct \(\{\) S(k, m), k = 0, 1, ..., K, m = 1, 2, ..., m \({}_{s} \}\), which are for transitions from \(\varOmega \)(k, m) to \(\varOmega \)(k, m). We decompose the transitions into three types, based on the decomposition of the states in \(\varOmega \)(k, m):
-
(i)
Type “+”: transitions from \(\varOmega \)(j, m–1)\(\times \{\) k–j \(\}\) to \(\varOmega \)(j+1, m–1)\(\times \{\) k–j–1\(\}\);
-
(ii)
Type “–”: transitions from \(\varOmega \)(j, m–1)\(\times \{\) k–j \(\}\) to \(\varOmega \)(j–1, m–1)\(\times \{\) k–j+1\(\}\); and
-
iii)
Transitions from \(\varOmega \)(j, m–1)\(\times \{\) k–j \(\}\) to \(\varOmega \)(j, m–1)\(\times \{\) k–j \(\}\).
Then the transition matrix S(k, m) from \(\varOmega \)(k, m) to \(\varOmega \)(k, m) can be written as
If m = 1, we have S(k, 1) = kt \({}_{1,1}\), for k = 0, 1, 2, ..., K. We need to construct two sets of matrices \(\{ {\hat{S}}^{+} (k,m)\), k = 1, 2, ..., K, m = 1, 2, ..., m \({}_{s}\)–1\(\}\) and \(\{ {\hat{S}}^{-} (k,m)\), k = 0, 1, ..., K–1, m = 1, 2, ..., m \({}_{s}\)–1\(\}\). Note that \(\{ {\hat{S}}^{+} (k,m)\), k = 1, 2, ..., K, m = 1, 2, ..., m \({}_{s}\)–1\(\}\) are for the transitions from phase m to phases \(\{\)1, 2, ..., m–1\(\}\), and \(\{ {\hat{S}}^{-} (k,m)\), k = 1, 2, ..., K, m = 1, 2, ..., m \({}_{s}\)–1\(\}\) are for the transitions from phases \(\{\)1, 2, ..., m–1\(\}\) to phase m. We use the construction methods for \(\{\) S \({}^{+}\)(k, m), k = 0, 1, ..., K–1, m = 1, 2, ..., m \({}_{s} \}\) and \(\{\) S \({}^{-}\)(k, m), k = 1, 2, ..., K, m = 1, 2, ..., m \({}_{s} \}\) in this construction.
-
(i)
The construction of \(\{ {\hat{S}}^{+} (k,m), \textit{k} = 1, 2, {\ldots }, \textit{K}, \textit{m} = 1, 2, {\ldots }, \textit{m}{}_{s}-1\}\) is similar to that of \(\{\textit{S}{}^{+}(\textit{k}, \textit{m}), \textit{k} = 0, 1, {\ldots }, \textit{K--}1, \textit{m} = 2, 3, {\ldots }, \textit{m}{}_{s} \}\), except that \(\{{\lambda \beta }{}_{1}, {\ldots }, {\lambda \beta {}_{m}}\}\) is replaced with \(\{\textit{t}{}_{m} {}_{+}{}_{1} {}_{,1}, \textit{t}{}_{m} {}_{+}{}_{1,2}, {\ldots }, \textit{t}{}_{m}{}_{+1} {}_{,}{{}_{m}}\}\). In addition, we have \({\hat{S}}^{+} (0,m)=(t_{m+1,1} ,\; \cdots ,\; t_{m+1,m} )\), for \(\textit{m} = 1, 2, {\ldots }, \textit{m}{}_{s}\)–1, and \({\hat{S}}^{+} (k,1)=t_{2,1} \), for k = 0, 1, ..., K–1.
-
(ii)
The construction of \(\{ {\hat{S}}^{-} (k,m)\), k = 0, 1, ..., K–1, m = 2, ..., m \({}_{s}\)–1\(\}\) is similar to that of \(\{\) S \({}^{-}\)(k, m), k = 0, 1, ..., K–1, m = 2, 3, ..., m \({}_{s} \}\), except that \(\{ t_{1}^{0} ,\; t_{2}^{0} \), ..., \(t_{m_{s} -1}^{0} \}\) is replaced with \(\{\textit{t}{}_{1,}{{}_{m}}{}_{+1}, \textit{t}{}_{2,}{{}_{m}}{}_{+1}, {\ldots }, \textit{t}{}_{m}{}_{,}{{}_{m}}{}_{+1} \}\). In addition, we have \({\hat{S}}^{-} (1,m)=(t_{1,m+1} ,\; \ldots ,\; t_{m,m+1} )'\), for m = 1, 2, ..., m \({}_{s}\)–1, and \({\hat{S}}^{-} (k,1)=kt_{1,2} \), for k = 1, 2, ..., K.
Finally, we summarize the above construction methods to outline the steps to construct \(\{\) S \({}^{+}\)(k, m \({}_{s}\)), k = 0, 1, ..., K-1\(\}\), \(\{\) S \({}^{-}\)(k, m \({}_{s}\)), k = 1, 2, ..., K \(\}\), and \(\{\) S(k, m \({}_{s}\)), k = 0, 1, 2, ..., K \(\}\).
Algorithm A.1
Construction of transition blocks for the count-server-for-phase approach
-
A.I.1
Compute \(\{\) S \({}^{+}\)(k, m \({}_{s}\)), k = 0, 1, ..., K–1\(\}\):
-
(i)
S \({}^{+}\)(k, 1) = \(\lambda \beta \) \({}_{1}\), for k = 0, 1, ..., K;
-
(ii)
Use Eq. (51) to construct \(\{\) S \({}^{+}\)(k, m), for k = 0, 1, ..., K \(\}\), for m = 2, 3, ..., m \({}_{s}\).
-
(i)
-
A.I.2
Compute \(\{\) S \({}^{-}\)(k, m \({}_{s}\)), k = 1, 2, ..., K \(\}\):
-
(i)
S \({}^{-}\)(k, 1) = \(kt_{1}^{0} \), for k = 1, 2, ..., K;
-
(ii)
Use equation (52) to construct \(\{\) S \({}^{-}\)(k, m), for k = 0, 1, ..., K \(\}\), for m = 2, 3, ..., m \({}_{s}\).
-
(i)
-
A.I.3
Compute \(\{\) S(k, m \({}_{s}\)), k = 1, 2, ..., K \(\}\):
-
If m = 1, we have S(k, 1) = kt \({}_{1,1}\), for k = 0, 1, 2, ..., K.
-
For m = 2, 3, ..., m \({}_{s}\),
-
(i)
Construct \(\{ {\hat{S}}^{+} (k,j), \textit{k} = 1, 2, {\ldots }, \textit{K}, \textit{j} = 1, 2, {\ldots }, \textit{m--}1\}\) using Eq. (51) with (\(\textit{t}{}_{m}{}_{+1} {}_{,1}, \textit{t}{}_{m} {}_{+}{}_{1,2}, {\ldots }, \textit{t}{}_{m}{}_{+1} {}_{,}{}_{m}\)) in place of \(\lambda \)(\(\beta \) \({}_{1}\), ..., \(\beta {}_{m}\)).
-
(ii)
Construct \(\{ {\hat{S}}^{-} (k,m), \textit{k} = 0, 1, {\ldots }, \textit{K--}1, \textit{m} = 2, {\ldots }, \textit{m}{}_{s}-1\}\) using Eq. (52) with (t \({}_{1} {}_{,}\) \({}_{m}\) \({}_{+1}\), t \({}_{2,}\) \({}_{m}\) \({}_{+1}, {\ldots }, \textit{t}{}_{m}{}_{,}\) \({}_{m}\) \({}_{+1}\))\(\prime \) in place of (\(t_{1}^{0} ,\; t_{2}^{0} \), ..., \(t_{m}^{0} \))\(\prime \).
-
(iii)
Construct \(\{\textit{S}(\textit{k}, \textit{m}), \textit{k} = 0, 1, {\ldots }, \textit{K}\}\).
-
(i)
end
-
Appendix B. Matrices R and G, and Vectors u\({}_{1}\) and u\({}_{2}\)
The following solution approach was introduced in Choi et al. (2004), and used in solving the M/PH/1 case in Kim and Kim (2015). The theoretical basis for this solution approach is the following theorem (Theorem 2.15 and 2.16 in Gohberg et al. 1982).
Theorem B.1
(Gohberg et al. (1982)) Consider second order matrix differential equation
where u(x) is the row vector function to be found, and B \({}_{1}\) and B \({}_{2}\) are matrices. Suppose that X \({}_{1}\) and X \({}_{2}\) are matrices that are solutions of the auxiliary equation
If X \({}_{1}\) and X \({}_{2}\) have no common eigenvalues, then the general solution of Eq. (54) is given by
where u \({}_{1}\) and u \({}_{2}\) are two constant vectors.
For our problem (15), we have
B \({}_{1}\) = –(\(\lambda \)I + Q \(\otimes \) I + M \(\otimes \) S(K, m \({}_{s}\))) and
B \({}_{2}\) = \(\lambda \)Q\(\otimes \) I + \(\lambda \)M\(\otimes \)(S(K, m \({}_{s}\))+S \({}^{-}\)(K, m \({}_{s}\))S \({}^{+}\)(K–1, m \({}_{s}\)) /\(\lambda \)).
Let X \({}_{1}\) = \(\lambda \)(I – R) and X \({}_{2} {}_{ }\)= \(\lambda \)G + Q \(\otimes \) I + M \(\otimes \) S(K, m \({}_{s}\)), where R and G are defined in Sect. 3. It can be shown that the two matrices are solutions to Eq. (55). Then one can use Eq. (56) to find a solution to Eq. (15), which satisfies all boundary conditions. For that purpose, we need that exp\(\{\) X \({}_{1}\) x \(\}\) and exp\(\{\) X \({}_{2}\) x \(\}\) provides 2m \({}_{e}\) m \({}_{s}\) \({}^{K}\) independent solutions to (15). To ensure that, we need the following results.
Proposition B.2
If \(\rho \) \(\ne \) 1, matrices \(\lambda \)(I – R) and \(\lambda \)G + Q \(\otimes \) I + M \(\otimes \) S(K, m \({}_{s}\)) have no common eigenvalues. If \(\rho \) = 1, matrices \(\lambda \)(I – R) and \(\lambda \)G + Q \(\otimes \) I + M \(\otimes \) S(K, m \({}_{s}\)) have one common eigenvalue zero with algebraic multiplicity one.
Proof
First, we consider the case with \(\rho \) < 1. Since sp(R) = 1, it is clear that the real parts of all eigenvalues of \(\lambda \)(I – R) are nonnegative. By Proposition 4.2, the maximal real part of all eigenvalues of \(\lambda \)G + Q \(\otimes \) I + M \(\otimes \) S(K, m \({}_{s}\)) is negative. Note that the eigenvalue of \(\lambda \)G + Q \(\otimes \) I + M \(\otimes \) S(K, m \({}_{s}\)) with the maximal real part has to be real. Thus, the two matrices have no common eigenvalues.
If \(\rho \) > 1, we have sp(R) = sp(G) < 1. Then all eigenvalues of \(\lambda \)(I – R) have a positive real part. On the other hand, by Proposition 4.2, all eigenvalues of \(\lambda \)G + Q \(\otimes \) I + M \(\otimes \) S(K, m \({}_{s}\)) have a nonpositive real part. Therefore, the two matrices have no common eigenvalue.
If \(\rho \) = 1, zero is an eigenvalue of both \(\lambda \)(I – R) and \(\lambda \)G + Q \(\otimes \) I + M \(\otimes \) S(K, m \({}_{s}\)). Similar to Choi et al. (2004), it can be shown that the algebraic multiplicity of the two matrices is one. This completes the proof of Proposition B.2. \(\square \)
By Proposition B.2, if \(\rho \) \(\ne \) 1, it can be shown that Eq. (56) gives 2m \({}_{e}\) m \({}_{s}\) \({}^{K}\) independent solutions to (15). Then all we need to do is to find \(\{\) u \({}_{1}\), u \({}_{2} \}\) for a solution to (10). To do so, we use the function dp \({}_{K}\) \({}_{+1}\)(x)/dx, which can be found in two ways: using Eqs. (10) and (16). Equalizing the resulted expressions at \(x=0\) and \(x=\tau -\) leads to the following linear system for \(\{\) u \({}_{1}\), u \({}_{2} \}\):
Finally, we use the law of total probability to normalize \(\{\) u \({}_{1}\), u \({}_{2} \}\), i.e., \(\sum _{k=0}^{K}{} \mathbf{p}_{k} \mathbf{e} +\int _{0}^{\tau }{} \mathbf{p}_{K+1} (x)\text{ d }x\mathbf{e} =1\). By routine calculations, we obtain
and
Using properties given in Sect. 4, the integrals in Eq. (59) can be obtained.
Proposition B.3
We have, for \(\rho \) < 1,
for \(\rho \) > 1,
and, for \(\rho \) = 1, Eqs. (60) and (63) hold.
Proof
The proof is based on Propositions 4.3 and 4.4. Details are omitted.
By Proposition B.3, the linear system with (19), (20), and (21) for \(\{\) u \({}_{1}\), u \({}_{2} \}\) is obtained for the case with \(\rho \) \(\ne \) 1.
If \(\rho \) = 1, by Proposition B.2, (56) gives 2m \({}_{e}\) m \({}_{s}\) \({}^{K}\) – 1 independent solutions to (15). We need to find one more solution to (15). By Proposition 4.2, it is easy to verify that
is another independent solution to (15). Then the solution to (15) can be expressed as
where \(u_3\) is a constant. Similar to the case with \(\rho \) \(\ne \) 1, a linear system for \(\{\) u \({}_{1}\), u \({}_{2}\), \(u_{3}\}\) can be established by using two boundary conditions (i.e., conditions at \(x=0\) and \(x=\tau -\)) and the law of total probability. Once \(\{\) u \({}_{1}\), u \({}_{2}\), \(u_3\}\) is obtained, a solution to (15) can be obtained. Details are omitted.
Rights and permissions
About this article
Cite this article
He, QM., Zhang, H. & Ye, Q. An M/PH/K queue with constant impatient time. Math Meth Oper Res 87, 139–168 (2018). https://doi.org/10.1007/s00186-017-0612-2
Received:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00186-017-0612-2