no abandonments are allowed and instead the arrival rate is reduced on beforehand with the abandonment rate of the former system. Description of the model.
Operations Research and Management
A Discrete-Time Queueing Model with Abandonments by: Rein Nobel & Suzanne van der Ster A very important characteristic of queueing situations is the phenomenon of `abandonments’: customers waiting in line decide to leave the queue before being served. Traditionally, two types of models dominate the queueing literature, either it is assumed that all customers wait in line until they are served successfully (delay models) or the assumption is made that customers who find all servers busy upon their arrival are rejected and leave the system forever without being served (loss models). Both types of models have been studied extensively and successfully, but it is clear that these models do not grasp the full reality of queueing. For instance, in call-centers it is quite common that customers who upon arrival find all servers busy do not wait in line but leave the system temporarily and try to reenter the system some (random) time later. The queueing models which incorporate this phenomenon are called retrial models and have received much less attention in the literature due to the complicated flow of arrivals: apart from the primary arrivals, we also have to cope with the customers who try to enter the system anew after one or more unsuccessful attempts.
Introduction Nevertheless some results have been obtained, see e.g. Artalejo and Gómez-Corral (2008) and Falin and Templeton (1997) for two monographs on retrial queues and Nobel and Moreno (2008) for the analysis of a retrial model in discrete time. The situation becomes even worse when abandonments are incorporated in the model, and, not surprisingly, also this important aspect hardly shows up in the mainstream of the queueing literature. Palm (1953) has been the first author who studied a queueing model with abandonments. Recently, mainly triggered by the application area of the call-center industry, more authors have studied queueing models with abandonments (see e.g. Garnett, Mandelbaum and Reiman (2002), Mandelbaum, Massey, Reiman, Stolyar and Rider (2002) and Mandelbaum and Zeltyn (2007) and references therein). In this paper we discuss a discrete-time analogue of the so-called Erlang-A model (see e.g. Mandelbaum et al. (2007)). This continuous-time queueing model is a
Rein Nobel Rein Nobel is an assistant professor in operations research at the Free University Amsterdam. He graduated in pure mathematics and in computer science. His main research interests are probability, Markov decision theory, queueing theory and simulation.’
variant of the well-known M/M/c model [i.e. customers arrive according to a Poisson process, the individual service times are exponentially distributed, there are c servers, and the waiting space is unlimited], in which every customer in the queue will abandon the queue after an exponentially distributed `patience time’ if at that time he is still waiting. The discrete-time model studied in this paper is an extension of the standard ‘late-arrival model with delayed access’ as discussed in Bruneel and Kim (1993) in which the customers in the queue are allowed to abandon the queue. In Section 2 we give a detailed description of this model, in Section 3 we present a Markov chain analysis to study the steady-state behaviour of the model using the generating function method. The main problem in this approach turns out to be the calculation of the limiting probability that the system is empty. We will show that this problem can be solved by using `an infinite recursion’. Once this probability is known we can calculate the usual performance measures such as the mean queue length, the fraction of customers which abandons the system, the throughput, et cetera. In Section 4 we will give some numerical results. From these results we can conclude that a system in which the customers have the choice to abandon the queue shows a much better performance than an equivalent system in which no abandonments are allowed and instead the arrival rate is reduced on beforehand with the abandonment rate of the former system.
Description of the model We consider a discrete-time queueing model with c servers and an unlimited waiting space. Before we give a
18
AENORM
vol. 18 (68)
October 2010
Operations Research and Management
detailed description of the arrival pattern and the service requirements we want to stress a few points concerning the way `discrete time’ has to be interpreted. Time is only discussed in discrete terms, so-called time slots, which can be seen as very short (physical) time intervals. Due to this fact more than one event can take place in one time slot [in discrete terms, at the same epoch]. To enable a precise description of the sequence of events which trigger the evolution of the system it is necessary to fix the precedence relations between the different events (in our model, arrivals, departures and abandonments). We take as our starting point that an arrival at time k physically occurs during time slot k. A service starting at time k physically starts at the beginning of time slot k and a departure at time k physically occurs at the end of time slot k. An abandonment at time k occurs before any arrival at time k. As a consequence of this choice an arriving customer at time k sees all the servers who will complete their servers at time k busy and customers who abandon the queue at time k have arrived before time k. We call this choice the late-arrival and early-abandonment set-up. It is also essential to know that any customer who arrives at time k can start his service at the earliest at time k+1. This is called `delayed access’. Summarizing we coin our system with the acronym LAS-DA-EAb, i.e. a late-arrival system with delayed access and early abandonments. We continue with the precise description of the model. In every time slot customers arrive in batches. The batch-size arrival distribution is {ak }∞k = 0 with probability generating function (p.g.f.) A ( z ) :=
∞ k =0
P{ A = k } z = k
∞ k =0
ak z . k
This means that ak is the probability that a batch of size k arrives in a time slot. The number of arriving customers in different time slots are independent. Each customer requires a geometric service time with parameter β from one of the servers. There is a group of c servers, and an unlimited waiting space. Customers who upon arrival find all servers busy are placed in a queue which is served in FIFO order. In every time slot each customer in the queue abandons the system with a fixed probability θ, independent of the other customers in the queue.
The steady-state behaviour of the LAS-DAEAb model To study the steady-state behaviour of the queueing system described in the previous section we define Ck = the number of busy servers at time k–, Qk = the number of customers in the queue at time k–,
{(Ck,Qk) : k = 0, 1, 2, …} is an irreducible aperiodic discrete-time Markov chain (DTMC). The state space is S={(0, 0), (1, 0),…,(c-1, 0)} {(c, n) | n = 0, 1, 2,…}. Due to the abandonments this DTMC is positive recurrent, and so we can define the following limiting joint distribution, ( j , n ) = lim k → ∞ P ( C k = j ; Q k = n ),
( j, n) ∈ S .
To study this limiting distribution we introduce the probability generating function (p.g.f.), ∞
c ( z ) = (c, n) z n . n =0
So, our first objective is to find the probabilities π(0, 0), π(1, 0),…, π(c-1, 0) and the p.g.f. Пc(z). We have the following system of balance equations, k i k −i (1 − ) a j − k + i ( k , 0) k =0 i =(k − j ) i ∞ c (1) c + i (1 − ) c − i i m=0 i =c− j m m k m−k × (1 − ) a j − c + i − m + k (c, m ), + k k =( m − j + c −i ) c −1
( j , 0) =
k
+
c −1 k k (c, n ) = i (1 − ) k − i an + c − k + i (k , 0) k =0 i =0 i ∞ c c (2) + i (1 − ) c − i m =0 i =0 i
×
m
k =(m −n −i)
+
m k m− k (1 − ) an + i − m + k (c, m), k
j = 0, 1, 2,… c - 1;
n = 0, 1, 2,…
After tedious algebraic manipulations it turns out that the first type of balance equations (1) can be rewritten as k i k −i (1 − ) a j − k + i ( k , 0) k = 0 i = ( k − j )+ i c −1
( j , 0) =
k
j −c +i (3) c c (1 − ) r + i (1 − ) c − i a j − c + i − r c( r ) ( ), r! i =0 i r =0 j = 0,1,..., c − 1,
where
Here k– stands for the left boundary of the time slot k. This means that at time k– the abandonments and the arrivals at epoch k have not occurred yet, but all services starting at time k have just begun. With this interpretation
c( r ) ( z ) =
AENORM
d r c ( z) dz r
vol. 18 (68)
October 2010
19
Operations Research and Management
is the r-th derivative of the p.g.f. Пc(z). So we have found a system of c linear equations with 2c unknowns,
Then we can rewrite (7) as [k = 1, 2,...]
1 ( z ( k −1) ) = 1 − + ( k −1) z
π(0, 0), π(1, 0),…, π(c-1, 0); ( 2) ( c −1) c ( ), (1) ( ). c ( ), c ( ),..., c
+ (0, 0)
The second type of balance equations (2) can be put in the p.g.f. format c −1 k k c ( z ) = ( k , 0) i (1 − ) k − i z k − i k =0 i =0 i
[(1 − ) z ] × A( z ) c ( + (1 − ) z ) − r! r =0
(9) (k ) A z − 1 ( ) + (0, 0)∏ 1 − + ( i ) A( z ( i ) ) . z z(k ) k =0 i=0
(4)
r i − r −1
az j =0
j
j
c( r ) ( ) .
(0, 0) = a0 (0, 0) + a0 1 ( ).
Now we send n to infinity. Notice that lim = z ( n ) = 1.and n →∞ П1(1) = 1 – π(0, 0) So we get ∞ 1 ( z ) = ∏ 1 − + ( k ) A( z ( k ) )(1 − (0, 0)) z k =0 k) ∞ k −1 (10) ( i ) A( z ) − 1 . + (0, 0)∏ 1 − + ( i ) A( z ) (k ) z z k =0 i =0
(5)
From (5) we have
A( z ) − a 0 + 1 − + A( z )1 ( + (1 − ) z ) z z (6) a0 − 1 ( ). z
Substituting (5) in (6) gives 1 ( z ) = 1 − + A( z )1 ( + (1 − ) z ) z A( z ) − 1 + (0, 0) . z
This last result asks for iteration!! Introduce z(k) = 1 – (1 – θ)k (1 – z).
(7)
1 ( ) =
1 − a0 (0, 0). a0
So taking z = θ in (10) we get an expression for π(0, 0), the probability that the system is empty, or, in other words, for π(0, 0) = long-run fraction of time slots that the system is empty. We find after θ(k):= 1– (1 – θ)(k+1)]
rearranging
terms,
[introduce
k=0,1,2,....
Table 1. Load ρ = 0.99 and θ = 0.002 Delay model
β 0.1 0.3 0.5 0.7 0.9
20
AENORM
Qdelay
242.104 232.303 222.502 212.701 202.9
vol. 18 (68)
(8)
n −1 k −1
Hence we have to calculate 2c unknown quantities: (i) the c probabilities π(0, 0), π(1, 0),…, π(c-1, 0), and (ii) the values of the c derivatives of the p.g.f. Пc(z) for z = θ, c ( ), c(1) ( ), (c2) ( ),..., c( c −1) ( ). For simplicity, below we only discuss the one-server case, i.e. c = 1. For this simplified model equations (3) and (4) become
1 ( z ) = (0, 0)
z ( k −1)
.
n −1 1 ( z ) = ∏ 1 − + ( k ) A( z ( k ) )1 ( z ( n ) ) z k =0
i
i −1
A ( z ( k −1) ) − 1
So iterating equation (8) n times gives [z = z(0)]
c − k + i −1 j A( z ) − a j z j=0
c + (1 − ) c − i i=0 i z c
( k −1) )1 ( z ( k −1) ) A( z
Abandonment Qabandon
8.20193 14.3522 18.0102 20.4948 22.1971
October 2010
Adapted model
P(Abandonment)
P(Wait)
0.165696 0.096648 0.072768 0.059148 0.049825
0.965192 0.978864 0.983592 0.986289 0.988135
Qadapted
11.2556 19.5737 24.9459 29.0712 32.4573
Operations Research and Management
(
)
a0 ∏ k = 0 1 − + (k ) A ( ( k ) ) ∞
(0, 0) =
∞ A ( (i ) ) − 1 k −1 k = 0 ∏ i = 0 1 − + ( i ) A( ( i ) ) (i ) 1 − a0 − a0 ∞ (k ) (k ) − − + A A 1 ( ) ( ) ( k ) ∏ k =0
( (
) )
(Ab)
.
(11)
__
We can now find Q , the long-run average queue length, by differentiating.
1 ( z ) = 1 − + A( z )1 ( + (1 − ) z ) z A( z ) −1 . + (0, 0) z
1 [ A′(1) − (1 − (0, 0))].
This result is not surprising and has a clear-cut interpretation. Notice that
A(1) the arrival rate the throughput (1 (0, 0))
Q the abandonment rate and of course abandonment rate = arrival rate - throughput. In other `words’ Q = A′(1) − (1 − (0, 0))
Numerical results for one server In this section we will present some numerical results for the ‘one server’ case (c = 1). In all examples the arrival distribution is taken a 2-point distribution: a0 + a5 = 1. The load ρ =A´(1) /β = 5a5/β = 0.99 and 0.95, respectively. The service time parameter β is varied from 0.1 to 0.9. The abandonment probability, i.e. the long-run fraction of customers that leaves the system before being served, and the delay probability are given by, respectively, Table 2. Load ρ = 0.99 and θ = 0.005 Delay model
β 0.1 0.3 0.5 0.7 0.9
Qdelay
242.104 232.303 222.502 212.701 202.9
and
A(1)
(Wait) 1
Qabandon
A(1)
.
__
In the tables below we give the mean queue size Q for three different models • for the standard delay model without abandonments, • for the model with abandonments for various values for θ, • for the so-called adapted delay model, i.e. without abandonments, but with an arrival rate decreased with the abandonment rate of the model with abandonments, i.e.
In Table 1-2 we present the results for a load ρ = 0.99 and two different abandonment parameters θ = 0.002 and θ = 0.005. We see in both tables that for the abandonment model the fraction of customers who abandon the queue, the abandonment probability, is decreasing in the service parameter β, and that the mean queue length is increasing in β, whereas for the standard delay model the mean queue length is decreasing in β [this latter fact follows simply from the Pollaczek-Khintchine formula]. So, as usual, the conclusion is that the system performs better with a smaller variance of the service time (here a higher value for β). In Table 1-2 we also see the phenomenon that in the adapted model, i.e. a standard delay model with an arrival rate equal to the original arrival rate minus the abandonment rate found for the abandonment model, the mean queue length is larger than for the abandonment model. This result can be phrased as follows: when we give the customers the choice to abandon the system when they want, the system as a whole performs better than when customers are not admitted to the system on beforehand, ceteris paribus. Further numerical results can be found in the thesis of the second author Van der Ster (2008).
References Artalejo, J.R. and A. Gómez-Corral. Retrial Queueing Systems. Berlin: Springer Verlag, 2008. Print. Bruneel, H. and B.G. Kim. Discrete-time models for communication systems including ATM. Dordrecht: Kluwer Academic Publishers, 1993. Print.
Abandonment
4.86366 8.82692 11.24770 12.93329 14.1328
(0, 0)(1 a0 )
′ Aadapted (1) = A′(1) − Qabandon .
After rearranging terms we get Q = 1′ (1) =
Q
Adapted model
P(Abandonment)
P(Wait)
0.24564 0.148601 0.113613 0.093329 0.079309
0.949363 0.968577 0.975505 0.979521 0.982297
AENORM
Qadapted
6.8907 12.3122 15.9014 18.7123 21.0642
vol. 18 (68)
October 2010
21
Operations Research and Management
Falin, G. and J. Templeton. Retrial Queues. London: Chapman & Hall, 1997. Print. Garnett, O., A. Mandelbaum and M. Reiman. “Designing a Call Center with Impatient Customers.” Manufacturing & Service Operations Management 4 (2002):208-227. Mandelbaum, A., W. Massey, M. Reiman, A. Stolyar and B. Rider. “Queue Lengths and Waiting Times for Multiserver Queues with Abandonment and Retrials.” Telecommunication Systems 21 (2002):149-171. Mandelbaum, A. and S. Zeltyn. “Service Engineering in Action: The Palm/Erlang-A Queue, with Applications to Call Centers.” Advances in Services Innovations (2007):17-45. Nobel, R.D. and P. Moreno. “A discrete-time retrial queueing model with one server.” EJOR 189.3 (2008):1088-1103. Palm, C. “Methods of judging the annoyance caused by congestion.” Tele 4 (1953):189-208. Van der Ster, S. “Een discrete-tijd wachtrijmodel met ongeduldige klanten.” Bachelor thesis Vrije Universiteit, Amsterdam (2008). In dutch.
22
AENORM
vol. 18 (68)
October 2010