• Nem Talált Eredményt

i=0

i(i−1)· · ·(i−k+1)y0Ri1= k!y0Rk(IR)−(k+1)1, (151) and the generating function (GF)Y(z) =i=0ziyi1is

Y(z) =

i=0

zi y0Ri1=y0(I−zR)11. (152)

For the departure process analysis the distribution of the number of customers embedded just after the departures,xi, will be necessary. This distribution is computed by “weighting”

the elements of the stationary distribution with the transition rates leading to a departure, thus

xi = yi+1B

k=1ykB1 = 1

λyi+1B, i≥0. (153)

The normalization constant, the denominator of (153) is the mean departure intensity which equals the mean arrival intensityλwhen the queue is stable.

5.2 sojourn time analysis

In this section we introduce two modeling tools, the age process and the workload process, that play an important role in modern queueing theory. Here we use them only to derive the sojourn time distribution of the MAP/MAP/1 queue, but in the next two chapters they will be the fundamental tools of the analysis. The entire solution of the MMAP[K]/PH[K]/1 queue (including the analysis of the queue length, the sojourn time and the departure process, in Chapter6) is based on the age process analysis. Similarly, the workload process analysis will be essential to solve priority queues in Chapter7.

5.2 sojourn time analysis 73

t A(t)

Inter-arrival time Service time

Figure 25.: Evolution of the age process

5.2.1 Sojourn time analysis based on the age process

The age process tracks the age of the customer under service [41]. The age of the customer in service increases linearly between the service instants and jumps downwards when the customer leaves the server (since the next customer is younger than the current one). The length of the downward jump is equal to the inter-arrival time between the customer leaving the system and the next customer who is about to enter the server (see Figure25), unless the server becomes idle for a while.

There are various ways to deal with idle periods when using an age process: (i) negative values could be allowed for the age, the absolute value of which is the time until the server becomes busy again (ii) these idle periods could be skipped or (iii) the age is said to equal zero until the server becomes occupied again. We will make use of the latter approach and define the age process{A(t),J(t),t≥0}as follows.

A(t)represents the age of the customer in service at timet, that is,t− A(t)represents the time of arrival of the customer in service, it is equal to zero in case the server is idle. If A(t) > 0, then J(t) keeps track of (a) the current phase of the serviceMAP and (b) the phase of the arrivalMAPat timet− A(t). IfA(t) =0, thenJ(t)simply reflects the state of the arrivalMAPat timet.

The direct analysis of the age process (exhibiting a skip free to the right behavior) seems hard due to the jumps. Observe that in our model the size of the jumps is not arbitrary, it is governed by theMAPgenerating the arrivals, which can be exploited to develop an efficient analysis method. We use the approach taken in [83], which was a generalization of [28]. The basic idea is to construct a canonical Markovian fluid model (Section4.2) that is skip-free in both directions and to derive the steady state distribution of the age process from the steady state distribution of this fluid queue.

The background process of the fluid queue has two sets of phases according to the following considerations:

• The first set of phases corresponds to the evolution of the age process whenA(t) in-creases. The fluid rates in this set of phases are equal to1, since the age of the customer in the server increases according to a slope of one (see the solid line in Figure26).

• The second set of phases is used whenever a customer leaves the system. In this case the age of the customer in service has to be decreased by the inter-arrival time between the customer leaving and the one who is about to enter the server.

According to the definition of the age process, this decrease is immediate: it is a jump.

As the inter-arrival time follows a MAP, the same amount of age decrease can be

74 analysis of the map/map/1 qeue

t L(t)

Inter-arrival time Service time

Figure 26.: Canonical MFM for the age process

achieved in an alternative way as well. Let us set the fluid rate to −1 and start the evolution of theMAPwhere it has been stopped before (the dotted line in Figure26).

When theMAPgenerates an arrival, the queue level representing the age process has been decreased appropriately, so theMAPcan be frozen again and the fluid queue can go back to the first set of phases corresponding to the service periods.

To obtain the age process, the second set of phases (the dotted line in Figure 26) has to be censored out. Consequently, the age process will be analyzed using a canonicalMFM: in the first set of phases the fluid rates are+1, in the second set of phases they are −1. The corresponding phase space partitions are denoted byN+ and N, respectively, and their sizes are|N+| = |N| = N. The first (second) set of phases will be referred to as positive (negative) phases in the sequel.

The generator matrix of the fluid model is Q=

"

Q++ Q+−

Q−+ Q−−

#

=

"

S0I S1I ID1 ID0

#

. (154)

In the positive phases (belonging to the intervals between jumps of the age process) the evo-lution of the background process is determined by the evoevo-lution of the serviceMAP, and the arrivalMAPis frozen. After service completion there is a transition to the negative phases where the serviceMAPgets frozen, and the arrivalMAPis resumed to decrease the age as much as younger the next customer is. When the arrival occurs, the background process goes back to the positive states and the service of the next customer starts.

The steady statepdfof the fluid model,π(x) = pQ−+eKxh I Ψi

, is given by Theorem 17in Section4.2.2. The steady state distribution of the age process is obtained by censoring the results of the fluid queue on the positive phases. Let us denote the steady state joint density of the age process and the phase of the background process byai(x)defined as

ai(x) = lim

t

d

dxP(A(t)< x,J(t) =i), (155)

forx≥0andi=1, . . . ,N, and the corresponding vector bya(x) ={ai(x), i=1, . . . ,N}. Vectora(x)of the age process is obtained from the stationary solution of the fluid model as follows:

a(x) = π+(x) R

y=0π+(y)1dy = p(ID1)eKx

p(ID1)(−K)11 =a(0)eTx, x ≥0, (156)

5.2 sojourn time analysis 75

t V(t)

Inter-arrival time

Service time

Figure 27.: The workload process of the MAP/MAP/1 queue

where in the last step we switched to the traditional representation of the age process. (The relation between the parameters of the MFM and the ones of the age process is T = K, a(0) = p(ID1)

p(ID1)(−K)11).

Finally, the sojourn time of customers is equal to their age when they leave the system (this is the time instant right before the age process jumps downwards). Hence, the distribution of the sojourn timeT is given by

FT(t) =P(T <t) = Rt

0 a(x)(S1I)1dx R

0 a(x)(S1I)1dx =1− a(0)eTt(−T)1(S1I)1 a(0)(−T)1(S1I)1 , (157) while theLSTof the sojourn time fT(s) =E(e−Ts)andkth momentE(Tk)are

fT(s) = a(0)(sI−T)1(S1I)1

a(0)(−T)1(S1I)1 , (158)

E(Tk) = k!a(0)(−T)k1(S1I)1

a(0)(−T)1(S1I)1 . (159)

5.2.2 Sojourn time analysis based on the workload process

Besides the age process, an other useful tool to analyze the sojourn time of various queues is the workload process.

The workload process{V(t),t ≥ 0}is the amount of work in the system at timet, thus the time needed to process all the customers in the queue if the arrival process was frozen.

V(t)decreases by a slope of one between the arrival epochs (the server processes the work-load), and jumps upwards at arrival epochs according to the service time requirement of the customer arrived (see Figure27). Thus,V(t)is skip-free to the left. (As opposed to the age process, which is skip-free to the right).

As before, to characterize the sojourn time the two dimensional process{V(t),J(t),t ≥ 0}has to be studied. Here,V(t)is the workload of the queue at timetandJ(t)is the phase process keeping track of the phase of the arrivalMAPat timetand the phase of the service MAPright after the arrival of the last customer beforet.

As the workload process has jumps, it is not straight forward to analyze its stationary behavior. However, the fact that the upward jumps are related to the service times and that the service times are determined by aMAP, it is possible to transform the skip-free to the left process to aMFMwhich is skip-free to both directions. The main idea is the same as in Section 5.2.1. At an arrival instant the amount of workload increment, which is given by a jump in

76 analysis of the map/map/1 qeue

t L(t)

Inter-arrival time

Service time

Figure 28.: The canonical MFM for the workload process

the original workload process, is accumulated in a time-continuous way in the transformed process.

For this transformation the state space is duplicated. In the first set of states (service peri-ods) the workload decreases by a slope of one. When theMAPgenerates a customer arrival, the background Markov chain moves to the second set of states, which is responsible to in-crease the workload by the amount given by the service time requirement of the new customer.

After increasing the workload the background process returns to the first set of states.

The transformed process is depicted by Figure28. The generator of the associated canonical fluid model is

Q=

"

Q++ Q+−

Q−+ Q−−

#

=

"

S0I S1I ID1 ID0

#

, (160)

which is exactly the same as the generator of the transformed age process (154).

In the transformed workload process the sojourn time of the customers is given byV(t)at N+→ Ntransitions. These are the points where a new customer arrives and the workload has been incremented by its service time requirement. The time necessary to leave the system, hence the sojourn time of the customer, is given byV(t)at these points.

These particular points on the transformed workload process are the same as the ones on the transformed age process, hence the sojourn time distribution is the same as (157), we just arrived to it using a different modeling approach.