-
Approximate Analysis of Tandem Blocking QueueingNetworks with
Correlated Arrivals and Services
Guidance
Professor Masao FUKUSHIMAProfessor Tetsuya TAKINE
Kentaro OKAZAKI
2003 Graduate Course
in
Department of Applied Mathematics and Physics
Graduate School of Informatics
Kyoto University
KY
OTO
UNIVERSITY
FO
UN DED 1
897KYOTO JAPAN
February 2005
-
Abstract
Many real systems such as production lines are modeled as
queueing networks with finitebuffers. In such a queueing model,
blocking occurs if a customer attempts to enter the nextqueue whose
buffer is full and not available. In this case, the customer is
forced to waituntil the next queue can be entered. General queueing
networks with blocking do not havea product-form solution.
Therefore, it is very difficult to obtain the exact solution
becauseof the explosion of state space. Accordingly, many
approximation methods have beenproposed so far. Most of them are
based on the node decomposition method, where thequeueing network
is decomposed into several subsystems, and each subsystem is
analyzedseparately. Also, most of approximation methods proposed in
the past consider renewalarrivals and services in each node.
However, they can be correlated in real systems.It is known that
the correlations in arrivals and services have a great impact on
theperformance of queueing networks.
In this thesis, we develop an approximate method for tandem
queueing networks withfinite buffers and blocking, taking account
of correlations in arrivals and services. Weassume that the arrival
process is a two-state Markov Arrival Process (MAP), which
canrepresent correlation in interarrival times. In addition, we
apply MAP to the serviceprocess in each node. In our method, a
tandem queueing network with n nodes is decom-posed into n−2
subsystems, each of which consists of three nodes in tandem. We
developan efficient algorithmic procedure for analyzing each
subsystem and propose an iterativeprocedure for computing the
steady-state probabilities of the number of customers in eachnode.
Through numerical experiments, we examine the accuracy of the
approximationand confirm that our method well approximates the
performance of tandem queueingnetworks with correlated arrivals and
services.
-
Contents
1 Introduction 1
2 Mathematical model 22.1 Blocking mechanism . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . 22.2 Arrival and service
processes . . . . . . . . . . . . . . . . . . . . . . . . . . 22.3
Tandem configuration . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . 4
3 Decomposition 5
4 Analysis of subsystems 64.1 The generator of the underlying
Markov chain . . . . . . . . . . . . . . . . 64.2 Stationary
distribution . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . 74.3 The statistics of interarrival and service times in the
second node . . . . . 8
4.3.1 Service times in the second node . . . . . . . . . . . . .
. . . . . . 84.3.2 Interarrival times in the second node . . . . .
. . . . . . . . . . . . 10
4.4 Two moments and lag-1 autocorrelation approximation method .
. . . . . 11
5 Algorithm 135.1 The first node has an infinite capacity . . .
. . . . . . . . . . . . . . . . . 135.2 The first node has a finite
capacity . . . . . . . . . . . . . . . . . . . . . . 14
6 Numerical experiments 15
7 Conclusion 20
A The generator of the underlying Markov chain of a subsystem
21
-
1 Introduction
Many real systems such as production lines are modeled as
queueing networks with finitebuffers and blocking. A tandem
queueing network with blocking is shown in Figure 1.External
arrivals join the first node. Customers receive services
successively from the firstnode to the last node. In such a
queueing model, blocking occurs if a customer attemptsto enter the
next queue whose buffer is full and not available. In this case,
the customeris forced to wait until the next queue can be
entered.
Figure 1: Tandem queueing network.
To design production lines, it is important to reduce the
lead-time and in-process in-ventory. Small buffer reduces the
in-process inventory, while it increases the lead-time.Hence, to
design production lines, it is necessary to estimate these measures
in advance.However, it is very difficult to obtain the exact
solution of the queueing network becauseof the explosion of state
space. Accordingly, many approximation methods have beenproposed
[3, 5, 8]. Most of them are based on the node decomposition method,
where thequeueing network is decomposed into several subsystems,
and each subsystem is analyzedseparately. Upstream subsystems
influence downstream subsystems, while downstreamsubsystems also
influence upstream subsystems by blocking. Therefore, iterative
algo-rithms are employed.
Most of approximation methods proposed in the past consider
renewal arrivals and ser-vices in each node, and approximate them
by the method of moment matching. It is knownthat the correlations
in arrivals and services have a great impact on the performance
ofqueueing networks. Recently some works propose approximation
methods considering thecorrelation in the arrival process for
queueing networks with infinite buffers or customerloss [6, 7, 11].
They report that the correlation in the arrival process makes
considerabledifference in the average number of customers. It is
conceivable that the same is truein the case there is blocking. In
[1], Altiok and Melamed analyze the influence of thecorrelations on
performance of the queueing networks. In addition, they give
examplesof real manufacturing systems with correlated arrivals or
services. They alert users topotential deleterious implications
stemming from unfounded independence assumptions.
In this thesis, we develop an approximate method for tandem
queueing networks withfinite buffers and blocking taking account of
the correlations. The method estimates thedistributions of the
queue length of the nodes in tandem queueing networks. The methodis
based on the node decomposition. In our method, a tandem queueing
network withN nodes is decomposed into N − 2 subsystems, each of
which consists of three nodesin tandem. We focus our attention on
the autocorrelation of interarrival times in eachnodes, as well as
the mean and variance. This makes it possible to take account of
theeffect caused by the correlations in arrivals and services. In
our method, we assume thatthe arrival process is a two-state Markov
Arrival Process (MAP), which can represent
1
-
correlation in interarrival times. In addition, we apply MAP to
the service process ineach node.
The rest of this thesis is organized as follows. In section 2,
we explain the mathematicalmodel. In section 3, we describe the
decomposition of the tandem queueing network. Insection 4, we give
the method for analyzing each subsystem. We describe the
iterativealgorithms in section 5. The result of numerical
experiments is given in section 6. Finally,the conclusion is given
in section 7.
2 Mathematical model
In this section, we introduce blocking mechanisms. After that,
we present the arrival andservice processes used in this thesis.
Finally, we describe the tandem queueing networkwith blocking.
2.1 Blocking mechanism
In a queueing network with blocking, a customer who attempts to
go into the next queuewhose buffer is full has to wait. This
phenomenon is referred to as blocking. Variousblocking mechanisms
are propounded to model real systems [4]. We introduce three ofthe
most commonly used blocking mechanisms.
Blocking after service (BAS): when a customer attempts to go
into a downstreamnode, if the downstream node is full, the customer
has to wait in the former node. Whilethe customer is waiting, the
upstream node is blocked, so that other customers can notget
service. As soon as the number of customers in the downstream node
decreases, thewaiting customer moves, and the upstream node is
unblocked.
Blocking before service (BBS): before a customer receives
service in a node, the nextnode is checked. If the next node is
full, the customer can not start receiving service andthe former
node is blocked. As soon as a departure occurs in the next node,
the formernode is unblocked. BBS is divided into two classes
according to the behavior of waitingcustomers: waiting customers
can be in the server (BBS-SO (server occupied)) and not(BBS-SNO
(server not occupied)).
Repetitive service (RS): when a customer finishes the service,
if the downstream nodeis full, the customer can not proceed and it
receives service again.
In this thesis, we assume BAS. BAS is used to model production
systems etc. Thetandem queueing network with BBS-SNO can be
converted to the tandem queuing net-work with BAS. For example, we
consider the tandem queueing network with BBS-SNOincluding three
nodes whose capacities are m1, m2, and m3. The system is equivalent
tothe tandem queueing network with BAS whose capacities are m1, m2
− 1, and m3 − 1.
2.2 Arrival and service processes
In this thesis, we assume that the arrival process is Markovian
Arrival Process (MAP).MAP is an arrival process modulated by an
underlying Markov chain with a finite statespace Ω = {1, . . . , M}
[10]. We assume the underlying Markov chain is irreducible.
2
-
MAP is characterized by two M × M matrices C, and D. Diagonal
elements of Care negative, and other elements are nonnegative.
Elements of D are nonnegative. Thesojourn time in state i follows
an exponential distribution with mean (−C ii)−1. Theunderlying
Markov chain changes its state from i to j with rate Ci,j(i �= j)
and nocustomer arrives. With rate Di,j, the Markov chain changes
its state from i to j and acustomer arrives. Therefore, the
elements of C and D satisfy the following equations.
M∑j=1j �=i
Ci,j +M∑
j=1
Di,j = −C i,i, for all i ∈ Ω.
Let MAP(C, D) denote MAP with representation (C, D).We explain
about the statistical property of MAP(C , D) below. (C+D) is the
genera-
tor of the underlying Markov chain. By the assumption that the
underlying Markov chainis irreducible, the steady-state probability
vector π is the unique nonnegative solution of
π (C + D) = 0, πe = 1,
where e denotes a column vector with an appropriate dimension,
whose elements are allequal to one. Let λ denote the arrival rate
of MAP(C, D):
λ = πDe.
We define πe as the steady-state probability vector of the
underlying Markov chain im-mediately after arrivals. Thus we
have
πe =πD
πDe.
Let X be the interarrival time in steady-state of MAP(C, D). The
probability densityfunction of X is shown as
f(x) = πeexp(Cx)De.
The Laplace-Stieltjes transform is represented as
f(s) = E[e−sX ] = πe∫ ∞0
e−sxexp(Cx)dxDe = πe (sI − C)−1 De, Re(s) > 0.
Let (X1, X2, . . .) denote a sequence of interarrival times in
steady state of MAP(C, D).The first and second moments of Xl are
expressed as follows.
E[Xl] =πD
πDe(−C)−1 e = 1
πDe,
E[X2l ] = 2πD
πDe
((−C)−1
)2e =
2
πDeπ (−C)−1 e.
The state of the underlying Markov chain immediately before an
arrival correlates withthat of immediately after the arrival.
Therefore, there are correlations among interarrivaltimes. The
joint density function of (X1, X2, . . . , Xn) is given by
g(x1, x2, . . . , xn) = πeexp(Cx1)Dexp(Cx2)D . . .
exp(Cxn)De.
3
-
Hence, the lag-k autocorrelation of Xl is given by
E[XlXl+k] =πD
πDe(−C)−1
((−C)−1 D
)k(−C)−1 e. (1)
It is known that MAP can approximate any stationary point
process with arbitraryaccuracy [2]. The more states of the MAP, the
more accurately the approximation is.However, the computational
time in analysis grows with the number of states. Therefore,we
assume that MAP has two states in this thesis.
In what follows, we describe the service process employed in
this thesis. We applyMAP to the service process. Let Ωs = {1, . . .
, Ms} be the state space of the serviceprocess. The service process
is expressed by two Ms × Ms matrices Cs and Ds. Amongelements of Cs
and Ds, the same relations are applied as in C and D of MAP(C,
D).One customer receives the service at once. While there is no
customer in the server, thestate of the service process never
changes. If we observe the process only for periodsduring which
there are some customers in the server, the service process is
identical withMAP(Cs, Ds). We assume that the underlying Markov
chain is irreducible. The servicetime of the lth customer is
denoted by Yl. The sequence of service times (Y1, Y2, . . . ,
Yn)has the joint probability density function
g(y1, y2, . . . , yn) = πsexp(Csy1)Dsexp(Csy2)Ds . . .
exp(Csxn)Dse,
where πs denotes the steady-state probability vector of the
underlying Markov chainimmediately after services. This is similar
to the joint probability density function of(X1, X2, . . . , Xn).
Hence, the statistics of service times are expressed in the same
way asthose of interarrival times of MAP(Cs, Ds).
We name this process Markovian Service Process (MSP). We denote
by MSP(Cs, Ds)MSP with representation (Cs, Ds).
2.3 Tandem configuration
We consider open queueing networks consisting of N queues in
series. We number thenodes from 1 to N . The first node has a
finite or infinite capacity buffer, and othernodes have finite
capacity buffers. Let mk denote the capacity of node-k. We
assumethe blocking mechanism is BAS. The arrival process to the
first node is MAP(Ca, Da)and the service process in node-k is
MSP(Ck, Dk). The arrival rate of MAP(Ca, Da) isdenoted by λa. We
define nk(t), and pk(t) as the number of customers and the state
ofthe service process, respectively, in node-k at time t. In
addition, nk(t) = mk + 1 meansthat there are mk customers in node-k
and node-k is blocking the upstream node at timet. Then the process
{(n1(t), . . . , nN(t), p1(t), . . . , pN(t)), t ≥ 0} is the
continuous timeMarkov chain.
General tandem configurations do not have a closed-form
solution. One way of an-alyzing such queueing networks is to solve
the Markov chain and gain the stationaryprobability vector.
However, it is not practical since the number of states in the
Markovchain explosively increases with the number of nodes.
4
-
3 Decomposition
In this section, we present our approximate approach to tandem
queueing networks withblocking. The algorithm approximates the
stationary distribution of the queue length ineach node.
We assume that the first node has an infinite capacity.
Therefore, if the system isstable, all arrival customers can go
into the system, and the throughput of the queueingnetwork is equal
to λa.
21 43
21 3
subsystem-1
subsystem-2
32 4
Figure 2: Decomposition to subsystems.
First, the tandem queueing network is decomposed into N −2
subsystems as in Figure2. Each subsystem consists of three nodes.
Subsystem-1 includes node-1, node-2, andnode-3. Subsystem-2
includes node-2, node-3, and node-4, etc. Let mk,i(k = 1, 2, 3)
bethe maximum capacities of the ith node in subsystem-k, and the
capacities of these nodesare identical with those of the
corresponding nodes in the original queueing network, thatis, mk,i
= mk+i−1.
We define a two-state MAP(Ck,a, Dk,a) as the arrival process to
subsystem-k andMSP(Ck,d, Dk,d) as the service process in the third
node of subsystem-k. The serviceprocesses in the first and the
second nodes are identical with those of the correspondingnodes in
the original tandem queueing network. We define ak(t) as the state
of the arrivalprocess at time t. Let pk,i(t) be the state of
service process in the ith node of subsystem-kat time t. Also let
nk,i(t) denote the number of customers in the ith node in
subsystem-kat time t. In addition, let nk,i(t) = mk,i + 1(i = 2, 3)
represent that the ith node insubsystem-k is full and the i − 1st
node is blocked.
Our intent is that the behavior of nk,2(t) closely matches that
of nk+1(t). For thatpurpose, MAP(Ck,a, Dk,a) emulates the arrival
process to node-k in the original network,and MSP(Ck,d, Dk,d)
emulates the service process of node-k + 2 including the effect
ofblocking. These are unknown processes at first, except the
arrival process to the firstnode and service process in the last
node. Therefore, we take an iterative algorithm.
The first node of each subsystem has a finite buffer with the
exception of subsystem-1. Therefore, there are customer losses in
subsystems. However, in the actual queueing
5
-
network, all customers go through the network without being
lost. When the downstreamnode is full, if upstream server completes
the service, blocking occurs. As soon as thedownstream server
completes the service, the blocked customer enters the
downstreamnode. To simulate this behavior we assume that when the
first node is full, if the servicein the first node is finished,
new arrival occurs with the probability q. The throughput
ofsubsystem-k is a function of q. Therefore, let λk(q) denote the
throughput of subsystem-k. We choose a suitable value of q so that
λk(q) = λa. λk(q) is monotonically increasingwith q. If q = 0,
λk(q) ≤ λa because of customer losses. q = 1 means that there
arealways customers in the first node of subsystem. Hence, λk(q) ≥
λa unless the system isunstable. Therefore, if the original
queueing network is stable, λk(q) = λa, 0 ≤ q ≤ 1 hasa
solution.
Let S(t) = {nk,1(t), nk,3(t), ak(t), pk,1(t), pk,2(t), pk,3(t)}.
The state of subsystem-k attime t is expressed as (nk,2(t), S(t)).
The process {(nk,2(t), S(t)), t ≥ 0} is a continuoustime Markov
chain. Let Qk denote the infinitesimal generator of the Markov
chain. Thenwe can solve the balance equations,
πkQk = 0, πke = 0,
where πk denotes the steady-state probability vector of the
Markov chain. In the nextsection, we describe the analytical method
in details. The steady-state queue lengthdistribution of the second
node in subsystem-k approximately represents that of node-k + 1 in
the original queueing network. In addition, the arrival process and
the serviceprocess in the second node correspond to the arrival
process and the service process,respectively, in node-k + 1 in the
original network.
Once the stationary state distribution of the Markov chain is
given, we can evaluate thefirst two moments and the lag-1
autocorrelation of interarrival times and service timesin the
second node of subsystem-k. Thus we can construct MAP(Ck+1,a,
Dk+1,a) andMAP(Ck−1,d, Dk−1,d) to emulate these statistics. In the
next section, we describe how toevaluate these statistics and to
fit statistics of a MAP to those.
4 Analysis of subsystems
In this section, we obtain the stationary state probability
vector of subsystem-k. Next, weobtain the statistics of the arrival
and service processes in the second node of subsystem-k.Finally, we
describe the method for constructing the arrival and service
processes of theadjacent subsystems.
4.1 The generator of the underlying Markov chain
In subsystem-k, the underlying Markov chain can move from (i, S)
to (i + 1, S ′) for0 ≤ i ≤ mk,2 and from (i, S) to (i − 1, S ′) for
1 ≤ i ≤ mk,2 + 1. Hence, the infinitesimal
6
-
generator of subsystem-k has the (m2+2)×(m2+2) block tridiagonal
structure as follows.
Qk =
B1 B2B0 A1 A2 O
A0 A1. . .
. . .. . . A2
O A0 A1 H2H0 P 2
.
Each element of the (i, j)th block corresponds to the rate with
which the state of theMarkov chain moves from (i, S) to (j, S ′),
except the diagonal elements of Qk. Thestructure of each block is
given in Appendix.
4.2 Stationary distribution
We analyze the underlying Markov chain to obtain the
steady-state probability vector πk.For that purpose, we use the
uniformization technique. We define θk and Qku as
θk = maxi
|(Qk)ii|,
and
Qku = I +1
θQk,
respectively. Note that Qku is a nonnegative matrix. In
addition,
Qkue =(I +
1
θQk
)e = 1.
Therefore, Qku is considered as the transition matrix of a
discrete time Markov chainY (t). Since πkQk = 0,
πkQku = πk
(I +
1
θQk
)= πk.
Therefore, πk is identical with the steady-state probability
vector of the discrete timeMarkov chain Y (t). We then solve the
following balance equations to obtain πk.
πkQku = πk, πke = 1. (2)
Qku has the same structure as Qk, that is, if (Qk)i,j = 0, then
(Qku)i,j = 0. Qk is asparse matrix. There are at most nine nonzero
elements in each low. Therefore, we canutilize the sparse structure
to compute πk.
We use the Gauss-Seidel Iteration to solve (2). The method
converges for ordinaryMarkov chains. In case that the method does
not converge, we employ the power method.The power method converges
for any Markov cahins that have steady-state probabilityvector.
However, the convergence of the power method is slower than that of
the Gauss-Seidel Iteration. In the algorithm, we assume that mk,2 ≥
2.
7
-
Step 1. Initialization:
• Define π(0)k arbitrary, set n = 0.Step 2. n := n + 1.
• Solve
π(n)k,0B1u + π
(n−1)k,1 B0u = π
(n)k,0,
π(n)k,0B2u + π
(n)k,1A1u + π
(n−1)k,2 A0u = π
(n)k,1,
π(n)k,l−1A2u + π
(n)k,l A1u + π
(n−1)k,l+1 A0u = π
(n)k,l , l = 2, . . . , mk,2 − 1,
π(n)k,mk,2−1A2u + π
(n)k,mk,2
A1u + π(n−1)k,mk,2+1
H0u = π(n)k,mk,2
,
π(n)k,mk,2
H2u + π(n)k,mk,2+1
P 2u = π(n)k,mk,2+1
.
• Normalizeπ
(n)k =
π(n)k
π(n)k e
.
If ‖π(n)k − π(n)k Qku‖ ≤ �, then stop. Otherwise, goto
step2.
4.3 The statistics of interarrival and service times in the
secondnode
4.3.1 Service times in the second node
We consider the departure process from the second node under the
condition that there aresome customers in the second node.
Therefore, we construct the censored Markov chainunder the
condition n2(t) ≥ 1 so that we can obtain MSP(C2s, D2s), which
representsthe service process in the second node.
The generator of the censored Markov chain Qcens is given by
Qcens =
A1 + B0(−B1)−1B2 A2A0 A1 A2
A0. . .
. . .. . . A1 A2
A0 A1 H2H0 P 2
.
We extract the elements of Qcens corresponding to the rates for
departure from the second
8
-
node, and construct D2s. C2s is composed of other elements.
C2s =
A1 A2
A1. . .. . . A2
A1 H2P 2
, D2s =
B0(−B1)−1B2A0 O
A0. . .. . . O
A0 OH0 O
.
Let T+ denote the subset of the all states corresponding to the
positive numbers of cus-tomers in the second node, and πk+ denote
the sub-vector of πk over T+. The stationaryprobability vector
πcens of the censored process is proportional to πk+ [9], i.e.,
πcens = (πk+e)−1 πk+.
Let (V1, V2, . . .) be a sequence of service times of MSP(C2s,
D2s). The statistics of(V1, V2, . . .) are
E[Vl] =1
πcensD2se,
E[V 2l ] =2
πcensD2seπcens (−C2s)−1 e,
E[VlVl+1] =1
E[Vl]πcens(−C2s)−1D2s(−C2s)−1e.
The inversion of C2s is the most expensive operation. Since C2s
is a block upper triangularmatrix, we can calculate it efficiently
as follows.
We define x = (x1, . . . , xmk,2+1) so that
(x1, . . . , xmk,2+1) = πcens(−C2s)−1.Using the block matrices,
(x1, . . . , xmk,2+1) can be written as
x1 = π0(−A1)−1, (3)xl = (xl−1A2 + πl)(−A1)−1, l = 2, . . . ,
mk,2, (4)
xmk,2+1 = (xmk,2H2 + πmk,2+1)(−P 2)−1. (5)We described the
system of equations from (3) to (5) using the block elements of
the
generator. However, we can write the equations by the
uniformized generator.The block elements of the uniformized
generator are derived as follows. For a diagonal
block A, uniformized block Au is given by
Au = I +1
θA.
Therefore,
(−A)−1 = 1θ
(I − Au)−1 .
9
-
For a non-diagonal block B, we define Bu as
Bu =1
θB.
We define u = (u1, . . . , umk,2+1) as θ−1x. Using the
uniformized generator, we can
rewrite the system of equations from (3) to (5) as below,
u1 = πcens,0(I − A1u)−1,ul = (ul−1A2u + πcens,l)(I − A1u)−1, l =
2, . . . , mk,2,
umk,2+1 = (xmk,2H2u + πcens,mk,2+1)(I − P 2u)−1.
The inverse matrix in each equation has already been obtained in
analysis of the stationarystate distribution.
We define y = (y1, . . . , ym2+1) as
y = πcens(−C2s)−1D2s = xD2s.
Consequently,
y1 = u1B0u(I − B1u)−1B2u + u2A0u,yl = ul+1A0u, l = 2, . . . ,
mk,2 − 1,
ymk,2 = umk,2+1H0,
ymk,2+1 = O.
Now we can compute πcens(−C2s)−1D2s(−C2s)−1 in a similar way to
compute πcens(−C2s)−1replacing πcens by y.
4.3.2 Interarrival times in the second node
The statistics of interarrival times in the second node can be
obtained as the precedingsubsection. The arrival process is MAP
(C2a, D2a) described as follows.
C2a =
B1 O
B0 A1. . .
A0. . .
. . .. . .
. . . OA0 A1 O
H0 P 2
, D2a =
O B2O O A2
. . .. . .
. . .. . . O A2
O O H2O O
.
The elements of D2a correspond to the rates for service
completions in the first node.Note that the elements of H2 do not
correspond to the arrival to the second node in fact.
10
-
We denote by (W1, W2, . . .) a sequence of interarrival times of
MAP (C2a, D2a). Wethen have
E[Wl] =1
πkD2ae,
E[W 2l ] =2
πkD2aeπk (−C2a)−1 e,
E[WlWl+1] =1
E[Wl]πk(−C2a)−1D2a(−C2a)−1e.
We define v = (v0, . . . , vmk,2+1) as θ−1(−C2a)−1e. Since C2a
is a block lower triangular
matrix, we can compute v as follows.
v0 = (I − B1u)−1e,v1 = (I − A1u)−1(B0uv0 + e),vl = (I −
A1u)−1(A0uvl−1 + e), l = 2, . . . , mk,2,
vmk,2+1 = (I − P 2u)−1(H0uvmk,2 + e).
We define w as
w =
w0...
wmk,2+1
= D2a(−C2a)−1e.
Therefore, we have
w0 = B2uv1,
wl = A2uvl+1, l = 1, . . . , mk,2 − 1,wmk,2 = H2uvmk,2+1,
wmk,2+1 = 0.
Then, we can compute (−C2a)−1D2a(−C2a)−1e in a similar way to
compute (−C2a)−1ereplacing e by w.
4.4 Two moments and lag-1 autocorrelation approximation
method
It may be difficult to analyze a queueing model involving a MAP
with a large number ofphases. Therefore, such a MAP is approximated
by a MAP with two phases.
Given the first two moments e1, e2 and the lag-1 autocorrelation
l1 of interarrival timesof the MAP with a large number of phases,
we construct MAP(Cf , Df) with two phasesby an approximation method
given below. We assume that
Cf =
[ −α δα0 −β
], Df =
[α − γ γ − δα
γ β − γ],
α, β > 0, min (α, β) > γ > δα, 0 ≤ δ ≤ 1.
11
-
The steady-state probability vector of the underlying Markov
chain is πf = [0.5, 0.5]. Let(Z1, Z2, . . .) denote a sequence of
interarrival times of this MAP. The first two momentsand the lag-1
autocorrelation of (Z1, Z2, . . .) are obtained as follows.
E[Zl] =1
πfDfe=
2
(1 − δ)α + β ,
E[Z2l ] = 2πfDfπfDfe
((−Cf)−1
)2e =
2
αβ
(1 + δ)α + β
(1 − δ)α + β =(1 + δ)α + β
αβE[Zl],
E[ZlZl+1] =πfDfπfDfe
(−Cf )−1((−Cf)−1 Df
)(−Cf )−1 e
=(1 + δ) α + β
((1 − δ) α + β)αβ −γ
((α − β)2 − α2δ2
)((1 − δ) α + β)α2β2
=1
2E[Z2l ] − γE[Zl]
((α − β)2 − α2δ2
)α2β2
.
We assign values to parameters α, β, δ, and γ so that these
statistics approximate e1, e2,and l1. First, we determine values of
α, β, and δ satisfying the following equations.
2
(1 − δ)α + β = e1, (6)2
αβ
(1 + δ)α + β
(1 − δ)α + β = e2. (7)
After that, we obtain γ that minimizes
τ =(1 + δ) α + β
((1 − δ) α + β)αβ −γ
((α − β)2 − α2δ2
)((1 − δ) α + β) α2β2 − l1.
Ife2−e21
e21≥ 1, we assign zero to δ, and solve (6) and (7) for α and β.
After that, we
determine γ that minimizes τ .However, if δ = 0, then we
have
cv2 =E[Z2l ] − E[Zl]2
E[Zl]2≥ 1.
Therefore, δ must be greater than zero whene2−e21
e21< 1. In what follows, we consider the
case in which 0.5 <e2−e21
e21< 1.
We solve (6) for β, and we have
β =2
e1− (1 − δ) α. (8)
By replacing β by the right side of (8) in equation (7), this
equation becomes
2δα + 2e1
2e1
α − α2 + δα2 e1 = e2.
12
-
We solve this equation for delta. We then have
δ =α2 − 2
e1α + 2
e2
α2 − 2e1e2
α=
(α − 1
e1
)2+
(2e2− 1
e21
)α
(α − 2e1
e2
) . (9)
This equation means that ife2−e21
e21< 1, then δ > 0. We obtain the minimum value of δ
such that equations (6) and (7) are satisfied. Differentiate (9)
with respect to α, we have
dδ
dα=
2((e21 − e2)α2 + 2e1α − 2e
21
e2
)e1e2
(α2 − 2e1
e2α
)2 .
Therefore, the value of α that minimizes δ is obtained as
follows.
α =e1 +
√2
e41e2
− e21e2 − e21
=1
cv2
1
e1+
√1 − cv2
e2
. (10)
We replace α by the right side of (10) in equation (6) and (7),
and solve those equationsfor β and δ. After that, we obtain γ that
minimizes τ .
5 Algorithm
We present iterative algorithms for performance evaluation of
tandem queueing networkswith blocking. Let p
(n)k,j denote the approximate steady-state probability that the
number
of customers in node-k is equal to j in the nth iteration. Also
let ea1(k), ea2(k), and l
a1(k)
denote the first two moments and the lag-1 autocorrelation of
the sequence of interarrivaltimes, respectively, in the second node
of subsystem-k, and ed1(k), e
d2(k), and l
d1(k) denote
those of the sequence of service times, respectively, in the
second node of subsystem-k.Our approximate method is described
below.
5.1 The first node has an infinite capacity
Step 1. Initialization:
• (C1,a, D1,a) := (Ca, Da).• (Ck,s, Dk,s) := (Ck+2, Dk+2), k =
1, . . . , N − 2.• n := 1.
Step 2. For k = 1, . . . , N − 1:• Analyze subsystem-k.
13
-
• Derive ea1(k), ea2(k), and la1(k).• Find MAP(Ck+1,a, Dk+1,a)
using the fitting procedure.
Step 3. For k = N, . . . , 2:
• Analyze subsystem-k.• Derive ed1(k), ed2(k), and ld1(k).• Find
MAP(Ck−1,d, Dk−1,d) using the fitting procedure.
Step 4. Convergence test:
If
maxi,j
|p(n)i,j − p(n−1)i,j |p
(n)i,j
< �,
then stop, otherwise n := n + 1, and go to Step 2.
The stationary queue length distribution of node-k is
approximated by that of the sec-ond node in subsystem-k−1 except
node-1 and node-N . The stationary queue length dis-tributions of
node-1 and node-N are approximated by that of the first node in
subsystem-1and that of the third node in subsystem-N − 2,
respectively.
We do not have a proof of convergence. In our experiences, the
algorithm alwaysconverged within the reasonable number of
iterations unless the original queueing networkis unstable. The
criterion for determining convergence of the Gauss-Seidel Iteration
hasto be two orders magnitude less than �. Let pk,j(x) denote the
approximate steady-stateprobability that the number of customers in
node-k is equal to j when � = x. In exampleswe examined, we
have
maxi,j
|pi,j(10−5) − pi,j(10−6)|pi,j(10−5)
< 0.01.
Therefore, it seems reasonable to assume � = 10−5.
5.2 The first node has a finite capacity
We assumed that the first node of the tandem queueing network
has an infinite buffer sofar. However, we can approximate the
performance of tandem queueing networks whosefirst node has a
finite buffer in the similar way. We denote by m1 the capacity of
node-1,and other assumptions do not change. The approximate
algorithm for such a queueingnetwork is as follows.
Step 1. Initialization:
• (C1,a, D1,a) := (Ca, Da).• (Ck,s, Dk,s) := (Ck+2, Dk+2), k =
1, . . . , N − 2.• n := 1.
14
-
Step 2. Derive the throughput of the network λ(n)a :
• Analyze subsystem-1.• Derive λ(n)a .• Derive ea1(1), ea2(1),
and la1(1).• Find MAP(C2,a, D2,a) using the fitting procedure.
Step 3. For k = 2, . . . , N − 1:• Analyze subsystem-k.• Derive
ea1(k), ea2(k), and la1(k).• Find MAP(Ck+1,a, Dk+1,a) using the
fitting procedure.
Step 4. For k = N, . . . , 2:
• Analyze subsystem-k.• Derive ed1(k), ed2(k), and ld1(k).• Find
MAP(Ck−1,d, Dk−1,d) using the fitting procedure.
Step 5. Convergence test:
If
maxi,j
|p(n)i,j − p(n−1)i,j |p
(n)i,j
< �,
then stop, otherwise n := n + 1, and go to Step 2.
6 Numerical experiments
In the following experiments, we use two-state MAP as the
arrival process. The serviceprocess in each node is two-state MSP.
The average queue lengths in nodes obtained by ourmethod and
simulations are represented in the following figures. The
simulation time wasgreater than 107 times the largest mean service
time of the system. We simulated 30 times,and displayed 95%
confidence interval in the figures. Also for comparison, we plotted
theresults obtained by Algorithm-4 in [12], which does not consider
the correlations in thearrival and service processes.
Example 1We start with an example with no correlated arrivals
and services, where N = 10, and
mk = 4 for k = 2, . . . , N . The first node has an infinite
capacity. The arrival process isMAP(Ca, Da):
Ca =
[ −0.02 0.000.00 −0.13
], Da =
[0.0026 0.01730.0173 0.1126
],
15
-
and the service process of node-k is MSP(Ck, Dk):
Ck =
[ −0.15 0.000.00 −0.45
], Dk =
[0.0375 0.11250.1125 0.3375
], k = 1, . . . , N.
We denote by (X1, X2, . . .) a sequence of interarrival or
service times of the process. Thestatistics of the sequence of
interarrival times and that of service times are shown in
Table1.
Table 1: The statistics of the sequence of times.E[Xl] Var[Xl]
Cov[Xl, Xl+1]
MAP(Ca, Da) 13.33 591.5 0.000MSP(Ck, Dk) 3.333 18.52 0.000
The results for Example 1 are shown in Figure 3.
0
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
0.45
0.5
1 2 3 4 5 6 7 8 9 10
aver
age
queu
e le
ngth
node
simulationproposed method
algorithm4
Figure 3: With no correlated arrivals and services.
Figure 3 shows that both the proposed method and Algorithm-4
work well.
Example 2We now consider a situation where the arrival process
is correlated. Example 2 has
the following parameters: N = 10, and mk = 4 for k = 2, . . . ,
N . The first node has aninfinite capacity. In addition, the
service processes in each node is identical with that ofExample 1.
Example 2 differs from Example 1 in the arrival process. The
arrival processis MAP(Ca, Da):
Ca =
[ −0.02 0.000.00 −0.13
], Da =
[0.01827 0.0017330.001733 0.1283
].
16
-
The statistics of the sequence of interarrival times are shown
in Table 2.
Table 2: The statistics of the sequence of interarrival
times.E[Xl] Var[Xl] Cov[Xl, Xl+1]
MAP(Ca, Da) 13.33 591.5 186.2
Note that the mean and variance of interarrival times of Example
2 are identical withthose of Example 1, while the covariance
differs. Figure 4 shows the results obtained forExample 2.
0
0.1
0.2
0.3
0.4
0.5
0.6
1 2 3 4 5 6 7 8 9 10
aver
age
queu
e le
ngth
node
simulationproposed method
algorithm4
Figure 4: With correlated arrivals.
The data obtained by simulations in Figure 3 and Figure 4
demonstrates the effectof correlation in arrivals. The correlated
arrival process raises the average queue lengthsof nodes. The
proposed method reflects this effect, while Algorithm-4 obtains the
sameresults as Example 1. However, it should be noted that the
approximate average queuelength obtained by our method are lower
than the results of simulations. We believe thatit is because of
the correlation between arrivals and services in each node. In a
node ofthe tandem queueing network with blocking, if many arrivals
occur in a short time, theservice times tend to be long because of
the blocking. In our method, we assumed thatthe service process of
the third node in each subsystem is independent of arrivals.
Example 3Here, we examine the effect of the correlations in the
service processes of nodes. In
Example 3, there are N = 10 servers. The first node has an
infinite capacity, and thecapacity of node-k is mk = 4 for k = 2, .
. . , N . The arrival process is identical with that
17
-
of Example 1, and the service process in node-k is MSP(Ck,
Dk):
Ck =
[ −0.15 0.000.00 −0.45
], Dk =
[0.1388 0.011250.01125 0.4388
], k = 1, . . . , N.
The mean, variance and covariance of the sequence of service
times in node-k are shownin Table 3.
Table 3: The statistics of the sequence of service times.E[Xl]
Var[Xl] Cov[Xl, Xl+1]
MAP(Ck, Dk)(k = 1, . . . , N) 3.333 18.52 3.333
Note that the mean and variance of the sequence of service times
in each node are identicalwith those of Example 1.
0
0.1
0.2
0.3
0.4
0.5
0.6
1 2 3 4 5 6 7 8 9 10
aver
age
queu
e le
ngth
node
simulationproposed method
algorithm4
Figure 5: With correlations in services of all nodes.
The results of simulations in Example 1 and Example 3 show that
the correlationsin service processes have the effect on the
expected queue lengths in nodes. The resultsobtained by the
proposed method are very close to those obtained by
simulations.
Example 4There are N = 10 nodes in the network. The first node
has an infinite capacity, and
mk = 4 for k = 2, . . . , N . The moments of service times are
identical among all nodes.However, only the service process in
node-5 is correlated. The service processes are MSPsrepresented as
follows.
C5 =
[ −0.15 0.000.00 −0.45
], D5 =
[0.1388 0.011250.01125 0.4388
],
18
-
Ck =
[ −0.15 0.000.00 −0.45
], Dk =
[0.0375 0.011250.01125 0.3375
], k = 1, . . . , 4, 6, . . . , N.
The arrival process is identical with that of Example 1. The
statistics of service times areshown in Table 4. The average queue
length in each node is shown in Figure 6.
Table 4: The statistics of the sequence of service times.E[Xl]
Var[Xl] Cov[Xl, Xl+1]
MSP(C5, D5) 3.333 18.52 3.333MSP(Ck, Dk)(k = 1, . . . , 4, 6, .
. . , N) 3.333 18.52 0.000
0
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
0.45
0.5
1 2 3 4 5 6 7 8 9 10
aver
age
queu
e le
ngth
node
simulationproposed method
algorithm4
Figure 6: With a correlation in services of node-5.
Figure 6 shows that the correlation in the service process of
node-5 raises the averagequeue lengths of node-5 and its upstream
nodes. The proposed method reflects the effectof the
correlation.
Example 5We have presented examples in which the capacity of the
first node is infinite. Recall
that, we also developed the algorithm for tandem queueing
networks whose first nodehas a finite capacity. In Example 5, the
first node has a capacity of m1 = 4, and otherconditions are
identical with those of Example 2. The results for Example 5 are
shown inFigure 7.
19
-
0
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
0.45
0.5
1 2 3 4 5 6 7 8 9 10
aver
age
queu
e le
ngth
node
simulationproposed method
algorithm4
Figure 7: The first node has a finite capacity.
Figure 7 suggests that our method for tandem queueing networks
whose first node hasa finite capacity performs accurately.
7 Conclusion
We proposed an approximation method for performance evaluation
of tandem blockingqueueing networks with correlated arrivals and
services. The method is based on themethod of decomposition. The
algorithm decomposes the tandem queueing network intoseveral
subsystems and separately analyzes each subsystem. Also, we
developed an effi-cient algorithmic procedure for analyzing each
subsystem.
The results of simulation suggested that correlations in
arrivals and services had agreat impact on the performance of
tandem queueing networks with blocking. Throughnumerical
experiments, we examined the accuracy of the approximation and
confirmedthat our method well approximated the performance of
tandem queueing networks withcorrelated arrivals and services.
Acknowledgement
First of all, I wish to thank Professor Tetsuya Takine for his
invaluable guidance, sup-port and encouragement throughout my
studies. I would like to thank Professor MasaoFukushima who has
given me careful advice and guidance. I am also very grateful
tomembers of Professor Fukushima’s laboratory for their
camaraderie.
References
[1] Tayfur Altiok and Benfamin Melamed (2001) “The case for
modeling correlation inmanufacturing systems,” IIE Transactions,
33, 779–791.
20
-
[2] Søren Asmussen and Ger Koole (1993) “Marked point processes
as limits of Markovianarrival streams,” Journal of Applied
Probability, 30, 365–372.
[3] Simonetta Balsamo (2000) “Closed queueing networks with
finite capacity queues:approximate analysis,” Proceedings of the
14th European Simulation Multiconferenceon Simulation and
Modelling: Enablers for a Better Quality of Life, 593–600.
[4] Simonetta Balsamo (2003) “A review on queueing network
models with finite capacityqueues for software architectures
performance prediction,” Performance Evaluation,51, 269–288.
[5] Alexandre Brandwajn and Yung-Li Lily Jow (1988) “An
approximation method fortandem queues with blocking,” Operations
Research, 36, 73–83.
[6] Muckai K. Girish and Jian-Qian Hu (2000) “Higher order
approximation for the singleserver queue with splitting, merging
and feedback,” European Journal of OperationalResearch, 124,
447–467.
[7] Armin Heindl (2003) “Decomposition of general tandem
queueing networks withMMPP inputs and customer losses,” Performance
Evaluation, 51, 117–136.
[8] Kyung P. Jun and Harry G. Perros (1990) “An approximate
analysis of open tandemqueueing networks with blocking and general
service times,” European Journal ofOperational Research, 46,
123–135.
[9] G. Latouche and V. Ramaswami (1999) “Introduction to Matrix
Analytic Methods inStochastic Modeling,” American Statistical
Association, Alexandria, Virginia.
[10] David M. Lucantoni, Kathleen S. Meier-Hellstern, and Marcel
F. Neuts (1990) “Asingle-server queue with server vacations and a
class of non-renewal arrival processes,”Advances in Aplied
Probability, 22, 676–705.
[11] K. Mitchell and A. van de Liefvoort (2003) “Approximation
models of feed-forwardG/G/1/N queueing networks with correlated
arrivals,” Performance Evaluation, 51,137–152.
[12] Harry G. Perros (1994) “Queueing Networks With Blocking,”
Oxford UniversityPress, New York, Oxford.
A The generator of the underlying Markov chain of
a subsystem
For the analysis of subsystem-k, we describe the generator of
the underlying Markovchain. In what follows, we omit the subscript
k. Let MAP(Ca, Da) denote the arrivalprocess to the subsystem, and
MSP(C i, Di) denote the service process in the ith nodefor i = 1,
2, 3. We assume that when the first node is full, as soon as a
departure occurs
21
-
in the first node, a customer arrives at the first node with
probability q. The value of q ischosen such that the throughput of
the subsystem is equal to that of the original network.Other
parameters are as follows.
mi : The capacity of the ith node.ni : The number of customers
in the ith node.a : The state of the arrival process.pi : The state
of the service process in the ith node.
We denote by (n2, n1, n3, P ) = (n2, n1, n3, a, p1, p2, p3) the
state of the subsystem. LetΞ denote the whole state set of (n2, n1,
n3, P ), and let Φ denote the Cartesian product ofthe state sets of
the arrival and service processes. Ξ is defined as follows.
1 ≤ n1 ≤ m1, 1 ≤ n2 ≤ m2 + 1, 0 ≤ n3 ≤ m3 + 1, P ∈ Φ,1 ≤ n1 ≤
m1, n2 = 0, 0 ≤ n3 ≤ m3, P ∈ Φ,n1 = 0, 1 ≤ n2 ≤ m2, 0 ≤ n3 ≤ m3 +
1, P ∈ Φ,n1 = 0, n2 = 0, 0 ≤ n3 ≤ m3, P ∈ Φ.
Note that (n2, n1, n3, S) is the continuous time Markov chain on
Ξ. We denote by Qthe generator of the underlying Markov chain. Q is
an (m2 + 2)× (m2 + 2) block matrixthat takes a form:
Q =
B1 B2B0 A1 A2 O
A0 A1. . .
. . .. . . A2
O A0 A1 H2H0 P 2
.
We describe the structure of each block element matrix below.A2
includes the rates corresponding to the increase of the number of
customers in the
second node, that is, completions of services in the first node.
A2 is an (m1 +1)×(m1 +1)block matrix given below.
A2 =
O O
A(1)0
. . .
. . .. . .
A(1)0 O
O (1 − q)A(1)0 qA(1)0
,
with
A(1)0 = In3 ⊗ Ia ⊗ D1 ⊗ Ip2 ⊗ Ip3,
where I · denotes an identity matrix with appropriate dimension,
and ⊗ denotes a Kro-necker product [9].
22
-
A0 includes the rates corresponding to the decrease of the
number of customers in thesecond node, that is, completions of
services in the second node. A0 is an (m1+1)×(m1+1)block matrix
that is given by
A0 =
A′0 O. . .
O A′0
,
where A′0 is an (m3 + 2) × (m3 + 2) block matrix.
A′0 =
O A(3)2 O
. . .. . .. . . A
(3)2
O O
O A(3)0 O
,
where
A(3)2 = Ia ⊗ Ip1 ⊗ D2 ⊗ Ip3,
A(3)0 = Ia ⊗ Ip1 ⊗ Ip2 ⊗ D3.
A(3)0 represents unblocking of the second node, that is,
departures from the third node.A1 is an (m1 + 1) × (m1 + 1) block
matrix that takes a form:
A1 =
B(1)1 A
(1)2
A(1)1 A
(1)2 O
. . .. . .
O A(1)1 A
(1)2
P(1)1
.
A(1)2 includes the rates corresponding to arrivals to the first
node. We then have
A(1)2 = In3 ⊗ Da ⊗ Ip1 ⊗ Ip2 ⊗ Ip3.
A(1)1 is an (m3 + 2) × (m3 + 2) block matrix.
A(1)1 =
B(3)1
A(3)0 A
(3)1 O
. . .. . .
A(3)0 A
(3)1 A
(3)2
O O P(3)3
.
23
-
Each diagonal block in A(1)1 corresponds to transitions in
states of the arrival process and
service processes. We then have
A(3)1 = Ca ⊗ Ip1 ⊗ Ip2 ⊗ Ip3 + Ia ⊗ C1 ⊗ Ip2 ⊗ Ip3
+Ia ⊗ Ip1 ⊗ C2 ⊗ Id + Ia ⊗ Ip1 ⊗ Ip2 ⊗ C3,P
(3)3 = A
(3)1 − Ia ⊗ Ip1 ⊗ C2 ⊗ Ip3,
B(3)1 = A
(3)1 − Ia ⊗ Ip1 ⊗ Ip2 ⊗ C3.
If n1 = m1 + 1, then arriving customers are lost. If n1 = 0,
then the state of the serviceprocess in the first node does not
change. Therefore,
P(1)1 = A
(1)1 + A
(1)2 ,
B(1)1 = A
(1)1 − In3 ⊗ Ia ⊗ C1 ⊗ Ip2 ⊗ Ip3 .
Note that if n1 = 0, then n2 can not be m2 + 1 and that if n2 =
m2 + 1, then the firstnode is blocked. Therefore, P 2 is an m1 × m1
block matrix given by
P 2 =
A(1)1
′′A
(1)2
. . .. . .
A(1)1
′′A
(1)2
P(1)1
′′
,
where
A(1)1
′′= A
(1)1 − In3 ⊗ Ia ⊗ C1 ⊗ Ip2 ⊗ Ip3,
P(1)1
′′= P
(1)1 − In3 ⊗ Ia ⊗ C1 ⊗ Ip2 ⊗ Ip3.
If n1 = 0, then n2 can not be m2 +1. Therefore, H2 is an (m1
+1)×m1 block matrixand H0 is an m1 × (m1 + 1) block matrix:
H2 =
O · · · OA
(1)0 O
. . .
O A(1)0
, H0 =
A′0 O. . .
. . .
A′0 OO (1 − q)A′0 qA′0
.
B1 is an (m1 + 1) × (m1 + 1) block matrix given by
B1 =
B(1)1 A
(1)2
′O
A(1)1
′A
(1)2
′
. . .. . .
A(1)1
′A
(1)2
′
O P(1)1
′
.
24
-
If n2 = 0, then n3 can not be m3 + 1 and the state of the
service process in the secondnode does not change. Therefore, we
have
A(1)1
′=
B(3)1 O
A(3)0 A
(3)1
. . .. . .
O A(3)0 A
(3)1
− In3−1 ⊗ Ia ⊗ Ip1 ⊗ Ip2 ⊗ Id,
where In3−1 denotes an identity matrix with m3 + 1 dimension.
Furthermore,
B(1)1
′= A
(1)1
′ − In3−1 ⊗ Ia ⊗ C1 ⊗ Ip2 ⊗ Id,P
(1)1
′= A
(1)1
′+ In3−1 ⊗ Da ⊗ Ip1 ⊗ Ip2 ⊗ Id.
B2 and B0 are similar to A2 and A0, respectively, and described
as follows.
B2 =
O O
A(1)0
′ . . .. . .
. . .
A(1)0
′O
O (1 − q)A(1)0′
qA(1)0
′
,
where
A(1)0
′=
1 O 0. . .
...O 1 0
⊗ Ia ⊗ D1 ⊗ Ip2 ⊗ Ip3,
and
B0 =
A′′0 O. . .
O A′′0
, A′′0 =
O A(3)2 O
. . .. . .. . . A
(3)2
O
O A(3)0
.
25