Abstract
This chapter applies a system-point level-crossing approach (SPLC, abbreviated LC) to derive the steady-state pdf of the virtual wait and the actual wait (arrival-point wait) in single-server G/M/1, and multiple-server G/M/c queues. Sections 5.1 and 5.2 treat G/M/1 and Sect. 5.3 treats G/M/c \((c\ge 2)\). We assume arrivals occur according to a renewal process and service times are exponentially distributed.
Access provided by CONRICYT-eBooks. Download chapter PDF
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
This chapter applies a system-point level-crossing approach (SPLC, abbreviated LC) to derive the steady-state pdf of the virtual wait and the actual wait (arrival-point wait) in single-server G/M/1, and multiple-server G/M/c queues. Sections 5.1 and 5.2 treat G/M/1 and Sect. 5.3 treats G/M/c \((c\ge 2)\). We assume arrivals occur according to a renewal process and service times are exponentially distributed.
We will not derive transient distributions in this chapter. However, for G/M/c \((c\ge 2)\), we could use LC to derive the transient distribution of extended age, which is related to the virtual wait (Sect. 5.1.1), by applying techniques similar to those utilized in Sects. 3.2, 4.3, 6.2.6, 11.7. Those analyses provide background for deriving transient distributions using LC in G/M/c queues, as well as in a great variety of stochastic models. (The extended age process is defined and utilized in [19].)
5.1 G/M/1 Queue
In the G/M/1 queue in steady state, we assume arrivals occur according to a renewal process (e.g., pp. 167–175 in [99]). For the common inter-arrival time denote the cdf, complementary cdf, and pdf, respectively, by A(x), \(x>0\), \( \overline{A}(x)\) = \(1-A(x)\), \(x\ge 0\) and a(x) = dA(x) / dx wherever the derivative exists. Assume the service time of each customer is \(\underset{dis }{=}\) Exp\(_{\mu }\). We derive the steady-state pdf and cdf of the virtual wait, the steady-state pdf and cdf of the actual (arrival-point) wait just before arrival instants, the expected busy and idle periods, and related results.
5.1.1 Virtual Wait and Extended Age Processes
Let \(\{W(t)\}_{t\ge 0}\) denote the virtual wait process having state space \(\varvec{S}\) = \(\left[ 0,\infty \right) \) (e.g., similar to Fig. 3.5).
We consider the extended age process \(\{V(t)\}_{t\ge 0}\) having state space \(\varvec{S}\) = \(\left( -\infty ,\infty \right) \), defined as follows. For \(t>0\),
In (5.1) ‘age’ means ‘time spent in the system’ measured from the arrival instant. A sample path of \(\left\{ V(t)\right\} _{t\ge 0}\) is depicted in Fig. 5.1. All SP jumps start from positive levels (i.e., \(V(\cdot )>0\)) at customer departure instants, and are downward in direction. By contrast, jumps of \(\{W(t)\}_{t\ge 0}\) occur at arrival instants, and are upward in direction.
5.1.2 Duality Between Extended Age and Virtual Wait
Consider a sample path of \( \{V(t)\}_{t\ge 0}\) (Fig. 5.2). Assume \(V(t)\ge 0\). There is a one-to-one correspondence between the peaks (relative maxima) of \( \{V(t)\}_{t\ge 0}\) and the sample-path peaks of \(\left\{ W(t)\right\} _{t\ge 0}\), as well as a one-to-one correspondence between their respective troughs (relative minima or infima). Within busy periods, corresponding peaks have equal ordinates and occur in the same time order in both processes; similarly for corresponding troughs (Fig. 5.2).
Properties of Busy Period in G/M/1
The process \(\left\{ V(t)\right\} _{t\ge 0}\) has slope \(+1\) between SP downward jumps. However, \(\left\{ W(t)\right\} _{t\ge 0}\) has slope \(-1\) between SP upward jumps, within a busy period; the slope is 0 within an idle period. The length of busy periods is identical in both processes. These properties guarantee that the long-run proportion of time that the SP spends within any state-space interval, is the same in both processes (see Proposition 5.1 below).
The sojourn time of \(\left\{ V(t)\right\} _{t\ge 0}\) below level 0 is identical to an idle period in the \(\{W(t)\}_{t\ge 0}\) process (see Remark 5.2). The length of busy cycles are identical in both processes (Fig. 5.2).
The stability condition is \( \dfrac{1}{E(\text {inter-arrival time})\cdot \mu }<1\) (e.g., pp. 261–262 in [84]). Intuitively, the expected number of arrivals in a service time is \(<1\). (See Proposition 5.3 in Sect. 5.1.8 below.)
Probability Distributions
Denote the steady-state cdf of the extended age by
having pdf
wherever the derivatives exist. The probability of an empty system is
Then
Proposition 5.1
The steady-state cdf of the \(\left\{ V(t)\right\} _{t\ge 0}\) and of \(\left\{ W(t)\right\} _{t\ge 0}\) as \(t\rightarrow \infty \), are identical. That is,
Proof
There is a one-to-one correspondence between sample paths of \(\left\{ V(t)\right\} _{t\ge 0}\) and \(\left\{ W(t)\right\} _{t\ge 0}\) because of the duality properties discussed above (see Fig. 5.2). The proportion of time spent in each state-space interval is the same in corresponding sample paths for every \(\omega \in \Omega \), where \(\Omega \) is the sample space of the ‘underlying experiment’, and \(\omega \) is a possible outcome (see more details in [19]).
For \(\left\{ V(t)\right\} _{t\ge 0}\) a sojourn time below level 0 is the same as an idle period in \(\left\{ W(t)\right\} _{t\ge 0}\). Thus F(0) = \( P_{0}\) = \(\lim _{t\rightarrow \infty }P_{0}(t)\) is the same for both processes (where \(P_{0}(t)\) is the probability of a zero wait at time t).\(\blacksquare \)
The main reason for employing \(\{V(t)\}_{t\ge 0}\) to obtain the limiting pdf of \(\left\{ W(t)\right\} _{t\ge 0}\) in G/M\(_{\mu }\)/1, is that we can apply LC, since SP downward jumps occur at end-of-service instants at the Poisson rate \(\mu \). Thus, in \(\{V(t)\}_{t\ge 0}\) the PASTA principle —Poisson arrivals see time averages—applies ([145]). But PASTA does not apply in the process \(\left\{ W(t)\right\} _{t\ge 0 \text { }}\)in general, since the interarrival times are not exponentially distributed.
Remark 5.1
We emphasize that the transient probability distributions of V(t) and W(t) are not equal in general. Proposition 5.1 holds for steady-state distributions only.
Remark 5.2
We may also define an extended ‘virtual wait’ process \(\left\{ W(t)\right\} _{t\ge 0}\) with state space \(\left( -\infty , +\infty \right) \). If \(W(t)>0\), then W(t) is the usual virtual wait. If \(W(t)<0\), then \(-W(t)\) is the time since the last departure of the immediately previous busy period. For the extended virtual wait, the slope is \(-1\) between upward jumps. Sojourn times below level 0 are equal to idle periods. If arrivals are Poisson, an integral equation for the pdf of \(\left\{ W(t)\right\} _{t\ge 0} \) when \(W(t)<0\) can be obtained by applying LC. All results for the usual virtual wait can be derived using the extended virtual wait. If arrivals are Poisson at rate \(\lambda \), the expected sojourn time below level 0 is \( 1/\lambda \) = E(idle period).
5.1.3 Equation for Steady-State PDF of Age
By Proposition 5.1 the steady-state pdfs of \(\left\{ V(t)\right\} _{t\ge 0}\) and \(\left\{ W(t)\right\} _{t\ge 0}\) are the same. Thus, for G/M/1 we will obtain the steady-state pdf of \(\{W(t)\}_{t\ge 0}\) by deriving the steady-state pdf of \(\{V(t)\}_{t\ge 0}\).
Consider a sample path of \(\{V(t)\}\) (Fig. 5.1). Fix level \(x>0\) in the state space. The SP upcrossing rate of x is
The SP downcrossing rate of level x is
Formulas (5.5) and (5.6) are proved similarly as for the down- and upcrossing crossing rates in M/G/1 (e.g., Theorem 1.1 in Chap. 1).
LC Interpretation of (5.6)
The SP rate of downward jumps starting from level y \(>0\) is the rate at which service times end when customers have been in the system for a time y, namely \(\mu f(y)dy\). If \(y>x\),
Summing over all \(y>x\) gives the right-most term of (5.6).
The principle of rate balance across level x, i.e.,
gives the integral equation for f(x),
5.1.4 Alternative Form of Equation for PDF of Age
An alternative form of integral equation (5.7) is
LC Interpretation of (5.8)
The left side is the SP upcrossing rate of level x. On the right side, the first term is the rate of service completions which generate SP downward jumps that start above level x. The second term subtracts off the rate of service completions which generate SP downward jumps that start above level x and end above level x. Thus, the right side is the SP downcrossing rate of level x. Rate balance across level x gives the equation.
Alternative equation (5.8) for f(x) in G/M/1 obtained using LC, is similar to the alternative equations (3.43) and (3.44) in Sect. 3.3.1 for the M/G/1 queue, and alternative equation (6.22) for the M/G/r\( \left( \cdot \right) \) dam in Chap. 6. All these equations are reached directly using LC interpretations of SP motion in state spaces, thereby enhancing background intuition.
5.1.5 Exponential Form of PDF of \(\left\{ V(t)\right\} _{t\ge 0}\)
We demonstrate geometrically using LC, that f(x), \(x>0\), the limiting pdf of \(\left\{ V(t)\right\} _{t\ge 0}\) (therefore of \(\left\{ W(t)\right\} _{t\ge 0}\)) as \(t\rightarrow \infty \), has an exponential form over the state-space interval \((0,\infty )\), and an atom at 0. This LC derivation differs from previous derivations (e.g., pp. 261–263 in [84]; pp. 251–253 in [104]; pp. 400–401 in [143]).
Consider a sample path of \(\left\{ V(t)\right\} _{t\ge 0}\). Due to the memoryless property of the exponential service-time distribution, an SP sojourn time above an arbitrary level \(x\ge 0\) is \(\underset{ dis}{=}\) \(\mathcal {B}\) independent of x, where \(\mathcal {B}\) denotes a busy period (Figs. 5.1 and 5.2). Let \(u_{x}\) denote the inter-upcrossing time of level x (see Sect. 5.1.12 below). Combining formula (5.5), the fact that \(1-F(x)\) is the long-run proportion of time spent by \(\left\{ V(t)\right\} _{t\ge 0}\) above level x, and the elementary renewal theorem, implies \(E(u_{x})\) = 1 / f(x). The sequence of \(u_{x}\)s forms a renewal process. By the renewal reward theorem
which is equivalent to the differential equation
with solution
where F(0) = \(P_{0}\), and f(0) = \(\left( 1-P_{0}\right) /E(\mathcal {B})\).
From (5.10), f(x) has the exponential form
where
From (5.12),
Substituting from (5.11) into (5.7) and cancelling K gives an equation for \(\gamma \),
Letting z = \(y-x\) yields
Equation (5.14) for \(\gamma \) is fundamental for G/M/1; its left side is the Laplace transform of \(\overline{A}(z)\) evaluated with parameter \(\gamma \). It is also an equation for \(E(\mathcal {B})\) since \(\gamma \) = \(\frac{1}{E(\mathcal { B})}\).
Let \(A^{*}(\gamma )\) denote the LST (Laplace-Stieltjes transform) of \( A(\cdot )\). (See Sect. 3.4.4 above for definitions of LST and LT). Integrating (5.14) by parts gives
Thus \(\gamma \) is the solution of Eq. (5.14), or equivalently equation (5.15). Some forms of \(\overline{A}(\cdot )\) allow for an analytical solution for \(\gamma \). Generally, however, \(\gamma \) is computed by numerical methods (e.g., Newton’s or other successive approximation methods—see p. 18 in [1]; or using computational software such as Maple).
Value of \(P_{0}\)
Consider a sample path of \(\left\{ V(t)\right\} _{t\ge 0}\) on the state-space interval \((-\infty , 0)\), and fix level \(x\in (-\infty , 0)\). The SP upcrossing rate of level x (\(x<0\)) is equal to h(x) (proved as for the downcrossing rate in M/G/1). The SP downcrossing rate of level x is
since all downward jumps originate at end-of-service instants when the SP is in state-space set \((0,\infty )\). Rate balance across level x gives
Invoking (5.16) and (5.3) leads to
Making the transformation \(u=-x\) gives
Thus
where
and \(C_{\gamma }>0\).
We evaluate \(P_{0}\) from the normalizing condition and (5.17). Thus
These equations yield
From (5.17)
which implies \(K<\gamma \).
Due to exponentially distributed service times, instants of SP egress from level 0 above, are regenerative points of \(\left\{ V(t)\right\} _{t\ge 0}\) initiating busy cycles (see Fig. 5.1; Sect. 2.4.10 for definitions of SP egresses). Thus, steady-state properties over busy cycles recapitulate limiting properties over the time axis as \(t\rightarrow \infty \).
Expected Idle Period
Let C represent a busy cycle and \(\mathcal {I}\) an idle period. Then
By the renewal reward theorem, and from (5.20),
From (5.12) \(E(\mathcal {B})\) = \(\frac{1 }{\gamma }\). Comparing the middle and last ratios in (5.22), and using (5.18), we obtain
5.1.6 PDF of Idle Period
Consider a sample path of \(\left\{ V(t)\right\} _{t\ge 0}\) (Fig. 5.1). Let \(\mathcal {I}\) denote an idle period, and \( \mathcal {C}\) a busy cycle; then \(\mathcal {C}\) = \(\mathcal {B+I}\). Note that \( \mathcal {I}\) := excess below level \( 0 \) of the downward SP jumps ending the busy periods. Denote the cdf and pdf of \(\mathcal {I}\) by \(F_{\mathcal {I}}(z)\), and \(f_{\mathcal {I} }(z), z>0\), respectively. The downcrossing rate of level \(-z\) (\(z>0\)) can be expressed in two different ways. First, by \(\lim _{t\rightarrow \infty }\mathcal {D}_{t}(-z)/t\) = \(\left( 1-F_{\mathcal {I}}(z)\right) \cdot f(0)\) = \( P(\mathcal {I}>z|\) SP downcrosses level \(0)\times \) \(\lim _{t\rightarrow \infty }\mathcal {D}_{t}(0)/t\) (since f(0) is both the up- and downcrossing rate of level 0). Second, by \(\lim _{t\rightarrow \infty }\mathcal {D} _{t}(-z)/t\) = \(\mu \int _{y=0}^{\infty } \overline{A}(y+z)f(y)dy\), since all downward jumps start above level 0. Equating the two formulas gives
Directly using \(F_{\mathcal {I}}(z)\), z \({>}\) 0, in (5.24), we obtain
which agrees with formula (5.23) above.
Remark 5.3
As a mild check on the above results, if G/M\(_{\mu }\)/1 were an M\(_{\lambda } \)/M\(_{\mu }\)/1 queue then, in (5.11) \(E(\mathcal {B})\) = \(1/\left( \mu -\lambda \right) \), \(\gamma \) = \(\mu -\lambda \), \(C_{\gamma }\) = \(\lambda \), implying
giving f(x) = \(\lambda P_{0}e^{-(\mu -\lambda )x}\), \(x>0\) \(\varvec{ \checkmark }\). (See formula (3.112) for M/M/1.)
5.1.7 PDF of Actual Wait
For G/M/1, generally the limiting pdf of the actual wait (arrival-point wait) is not equal to the limiting pdf of the virtual wait. In particular, these pdfs are equal only when the arrival stream is Poisson (M/M/1). We can utilize results for \(\left\{ V(t)\right\} _{t\ge 0}\) in Sects. 5.1.1–5.1.5 to determine the pdf of the actual wait.
The subscript ‘\(\iota \)’ (Greek iota) is used to signify actual wait. Let the limiting cdf of actual wait be \(F_{\iota }(x)\) := P(actual wait \(\le x)\), \(x\ge 0\), with pdf \(dF_{\iota }(x)/dx\) = \(f_{\iota }(x)\), \(x>0\), and \( P_{0,\iota }\) := P(actual wait = 0). Recall that \(\gamma \) (= \(1/E( \mathcal {B})\)) is the solution of (5.14) or (5.15).
Proposition 5.2
The steady-state cdf and mixed pdf of actual wait are
where
Proof
The long-run proportion of actual waits that are \(>x\) is
where \(F\left( x\right) \), \(f\left( x\right) \) denote the limiting cdf and pdf respectively of the age process \(\left\{ V(t)\right\} _{t\ge 0}\) (same as for virtual wait).
Explanation of (5.30). In the numerator, \(\mu (1-F(x))\) is the departure rate of customers that have been in the system \({>}\) x time units (wait + service \(>x\)), since departures occur at sample-path peaks. The departures generate SP downward jumps that end at the next actual wait \({>}\) 0 if the end point is \({>}\) 0 (at a trough \({>}\) 0), or at the start of an idle period implying that the next actual wait is = 0 if the end point is \({<}\) 0 (at a trough \({<}\) 0) (Fig. 5.1). The term \(-f(x)\) subtracts off the rate at which SP jumps start above x and end below x, since f(x) is equal to the level-\(x \) downcrossing rate of level x (equal also to the upcrossing rate of x—see derivation of Eq. (5.7)). Thus the numerator is the rate at which ‘next’ actual waits before service (troughs) are \(>x\). The denominator \(\mu \left( 1-F(0)\right) \) in (5.30) is the total departure rate, which is also the long-run rate of downward jumps, and is the same as the long-run arrival rate.
From (5.10) and (5.11) we obtain (5.26) and (5.27).
Probability \(P_{0,\iota }\) and Value of \( K_{\iota }.\) Setting x = 0 in (5.30) yields, since \(P_{0,\iota }\) = \(F_{\iota }(0)\),
We ascertain \(K_{\iota }\) using the normalizing condition for \(\left\{ P_{0,\iota }, f_{\iota }(x)\right\} _{x>0}\),
yielding (5.29) and (5.28).\(\blacksquare \)
Proposition 5.2 demonstrates that the form of the pdf of actual wait \(f_{\iota }(x)\), is the same as the form of the pdf of the virtual wait f(x), \(x>0\); the term \( e^{-\gamma x}\) is common to both pdfs. The form of \(P_{0,\iota }\) is similar to the form of \(P_{0}\) (formula 5.13); however, \( K_{\iota }\) \(\ne \) K, except when the arrival stream is Poisson.
Remark 5.4
Formula ( 5.28 ) for \( P_{0,\iota }\) matches the result derived later in formula (8.23), Sect. 8.3.3 in Chap. 8, via embedded LC. The embedded LC result is indeed the value of \(P_{0,\iota }\), since it is the steady-state pdf of the actual wait \(W_{n}\) as \(n\rightarrow \infty \). This match validates the standard ‘continuous’ LC approach utilized here. In many models, it is easier to apply standard LC than embedded LC. Embedded LC is useful per se: for checking results obtained by other means; analyzing new models; combining with continuous LC to obtain new results; and so forth.
Remark 5.5
\(P_{0,\iota }\) and \(f_{\iota }(x)\) in (5.28) and (5.27) agree with formulas obtained by different techniques (e.g., pp. 250–254 in [83]; pp. 259–263 in [84]). The constant \(\gamma \) above is equal to \(\mu \left( 1-r_{0}\right) \), where \(r_{0}\) is the solution for z in the equation ‘z = \(A^{*}(\mu \left( 1-z\right) )\), \(z\in (0, 1)\)’, in those references.
5.1.8 Stability Condition for G/M/1
Stability occurs iff the solution of Eq. (5.14) for \(\gamma \) is positive and finite, i.e., iff the steady-state pdfs f(x) = \(Ke^{-\gamma x}\) (virtual wait) and \(f_{\iota }(x)\) = \(K_{\iota }e^{-\gamma x}\) (arrival-point wait) exist. These pdfs exist provided \(\gamma \) is positive and finite, in which case K and \(K_{\iota }\) are also positive and finite by (5.12) and (5.29) respectively.
Denote the expected inter-arrival time by \(1/\varvec{a}\); the expected service time is \(1/\mu \).
Proposition 5.3
The G/M/1 queue is stable if and only if \(\varvec{a}<\mu \).
Proof
The queue is stable iff 0 \({<}\) \(E(\mathcal {B})\) \({<}\) \(\infty \) iff 0 \({<}\) \(\gamma \) \({<}\) \(\infty \), since \(\mathcal {B}\) = \( 1/\gamma \). If 0 \({<}\) \(\gamma \) \({<}\) \(\infty \) then 0 \({<}\) \(e^{-\gamma y}\) \({<}\) 1 for all \(y>0\). If in addition \(\gamma \) satisfies Eq. (5.14), then
Hence \(\varvec{a}<\) \(\mu \) is a necessary condition for stability.
Conversely, if \(\varvec{a}<\) \(\mu \) then
We construct a function of \(\gamma \), \(\phi (\gamma )\) := \( \int _{y=0}^{\infty }\overline{A}(y)e^{-\gamma y}dy\), \(0<\gamma <\infty \), with \(\phi (\gamma )\) \({>}\) 0, \(\lim _{\gamma \downarrow 0}\phi (\gamma )\) = \(\frac{1}{\varvec{a}}\), \(\lim _{\gamma \rightarrow \infty }\phi (\gamma )\) = 0, \(\phi ^{\prime }(\gamma )\) = \(-\gamma \phi (\gamma )\) \({<}\) 0, \(\phi ^{\prime \prime }(\gamma )\) = \(\gamma ^{2}\phi (\gamma )\) \({>}\) 0. Thus \(\phi (\gamma )\) is continuous, convex and strictly monotone decreasing on \(\left( 0,\infty \right) \). Consequently \(\phi (\gamma )\) assumes each value in its range \(\left( 0,\frac{1}{ \varvec{a}}\right) \). For a given \(\mu \) such that \(\frac{1}{\mu }\in (0, \frac{1}{\varvec{a}})\), there is a unique value \(\gamma \in \left( 0,\infty \right) \) such that \(\phi (\gamma )\) = \(\frac{1}{\mu }\). Hence for each such \(\mu \) there exists exactly one finite root \(\gamma \) \({>}\) 0 of Eq. (5.14) such that \(\frac{1}{\mu }\) \({<}\) \(\frac{1}{ \varvec{a}}\), which implies \(\varvec{a}<\) \(\mu \) is a sufficient condition for stability.\(\blacksquare \)
In conclusion, \(\varvec{a}<\) \(\mu \) is a necessary and sufficient condition for stability.
5.1.9 Steady-State Distribution of System Time
Let \(W_{q,\iota }\), S and \(\sigma \) denote respectively the steady-state actual wait before service, the service time, and the system time of a customer; then \(\sigma \) = \(W_{q,\iota }+S\). The cdf of \(W_{q,\iota }\) is \( P(W_{q,\iota }\le x)\) = \(F_{\iota }(x)\), \(x\ge 0\), having pdf \(f_{\iota }(x)\), \(x>0\). Also \(P(W_{q,\iota }=0)\) = \(F_{\iota }(0)\) = \(P_{0,\iota }\) (see Proposition 5.2 in Sect. 5.1.8). Let \(F_{\sigma }(x)\), \(x\ge 0\), and \( f_{\sigma }(x)\) = \(\frac{d}{dx}F_{\sigma }(x)\), \(x>0\), wherever the derivative exists, denote the steady-state cdf and pdf of \(\sigma \), respectively. For the standard G/M/1 queue, S and \(W_{q,\iota }\) are independent.
From Proposition 5.2, the cdf of \( \sigma \) is the convolution
The last integral in (5.32) is equal to
Summing (5.33) and \(\frac{\gamma }{\mu }(1-e^{-\mu x})\) simplifies (5.32) to
with pdf
Remark 5.6
The expressions for \(F_{\sigma }(x)\) and \(f_{\sigma }(x)\) in (5.34) and (5.35) for G/M/1 are analogous to those for the standard M\(_{\lambda }\)/M\(_{\mu }\)/1 queue given in (3.117), with \( \gamma \) = \(\mu -\lambda \). In the term \(e^{-\gamma x}\) the coefficient of x is \(-\gamma \) = \(-1/E(\mathcal {B})\) in both G/M/1 and M/M/1 (\(\mathcal {B} \) := busy period).
5.1.10 Arrival-Point PMF of Number in System
This section derives the steady-state arrival-point pmf (probability mass function) of the number of units in the system. Specifically, let \( N_{\iota }\) denote the number in the system just before an arrival instant, and let \(P_{n,\iota }\) := \(P(N_{\iota }=n)\), \(n=0, 1,...\). From formulas (5.29) and (5.28),
Let \(d_{n}\) be the steady-state probability of n remaining in the system just after a departure instant. Then \(P_{n,\iota }\) = \(d_{n}\), n = 0, 1,... (see pp. 500–502 in [125]). Let \(A^{(n)}(y)\) be the cdf of the n-fold convolution of the interarrival time evaluated at y \({>}\) 0.
Proposition 5.4
In the standard G/M/1 queue, for \( n=1, 2 \), ...,
Proof
Let \(N_{A}(t)\) be the number of arrivals in (0, t) and let \(\mathcal {S}_{n}\) be the time of the \(n^{\text {th}}\) arrival. A basic renewal equivalence relation is (see, p. 423, Sect. 7.2 in [125]; pp. 167–168 in [99])
Thus
Also, \(d_{n}\) = P(n arrivals during a system time \(\sigma \)). By independence of the arrival stream and \(\sigma \),
Also, \(P_{n,\iota }\) = \(d_{n}\). Substituting from formula (5.35) gives (5.37).\(\blacksquare \)
Compact Expression for PMF
Proposition 5.4 leads to a compact expression for \(P_{n,\iota }\), \(n=0, 1,...\). Integration by parts gives
where \(a^{(n)}(y)\) is the pdf of the n-fold convolution of inter-arrival times. Thus (5.37) becomes
From Laplace-transform theory and (5.15)
Substituting into (5.38) yields
using (5.36). Notably, formula (5.39) is analogous to the result for \(P_{n}\) in terms of \(P_{0}\) in M/M/1, given in (3.118) in Chap. 3.
As a caveat to Proposition 5.4, the probabilities of n in the system at an arbitrary time point are not equal to \(P_{n,\iota }, n=0, 1, 2,...\) . Equality holds only if the arrival stream is Poisson (see Proposition 8.2, p. 502 in [125], and also [145]).
5.1.11 G/M/1 with Poisson Arrivals
To enhance intuition, we specialize the foregoing G/M\(_{\mu }\)/1 results to M\(_{\lambda }\)/M\(_{\mu }\)/1, where arrivals are Poisson with rate \(\lambda \).
Virtual Wait
From Eq. (5.14) for \( \gamma \), with \(\overline{A}(x)\) := \(e^{-\lambda x}\), \(x\ge 0\), the solution is then \(\gamma \) = \(\mu ~-\lambda \) = \(1/E(\mathcal {B})\), where \( \mathcal {B}\) is the busy period in M/M/1. From formula (5.18) we get \(C_{\gamma }\) = \(\lambda \). The formulas in Sect. 5.1.5 yield
which check with the steady-state virtual-wait quantities for M/M/1.
For \(x<0\), the pdf of extended age is
whence \(P_{0}\) = \(\int _{x=-\infty }^{0}h(x)dx\) = \(1-\frac{\lambda }{\mu }\), which agrees with (5.40).
Actual Wait
For the actual wait in G/M/1 with Poisson arrivals, \(\gamma \) = \(\mu -\lambda \), \(P_{0,\iota }\) = \(\gamma /\mu \) = \(1-\lambda /\mu \), and \( K_{\iota }=\gamma \left( 1-\gamma /\mu \right) \) = \(\lambda (\frac{\mu -\lambda }{\mu })\) = \(\lambda P_{0,\iota }\), giving \(f_{\iota }(x)\) = \( \lambda P_{0,\iota }e^{-\left( \mu -\lambda \right) x}\), \(x>0\). These actual-wait results agree with \(P_{0}\) and \(f(x), x>0\) for the virtual wait, as they must in M/M/1 (see (3.112)), where the Poisson arrival stream implies
in agreement with PASTA.
5.1.12 Sojourn Time Above or Below a Level
We next determine the expected value of the sojourn time above or below a state-space level (see Fig. 5.1).
Inter-upcrossing Time \(u_{x}\) of Level x
Let \(u_{x}\) denote the inter-upcrossing time of level x (time between two successive upcrossings). We consider the cases x \(\ge 0\) and x \(<0\) separately, since the SP motion above and below level 0 are of a different nature (Fig. 5.1).
Level \(x \ge 0\) For \(x\ge 0\), upcrossings of x are regenerative points, since both service times and remaining service times after upcrossing x are \(\underset{dis}{=}\) Exp\(_{\mu }\). By the elementary renewal theorem and LC,
where \(\gamma \) and K are given in (5.14) and (5.21), respectively. (To compute K, we may use \(C_{\gamma }\) given in (5.18).)
Level \(x<0\) For \(x<0\), \(-x\) is the time until the next arrival instant, at which a sample path of \(\left\{ V(t)\right\} _{t\ge 0}\) hits level 0 from below. Upcrossings of x are regenerative points, since the time \(-x\) is followed by a service time \(\underset{dis}{=}\) Exp\(_{\mu }\). By the elementary renewal theorem, LC, and (5.16),
Sojourn Time \( a_{x\text { }}\) Above Level x
Let \(a_{x}\) := sojourn time of \(\left\{ V(t)\right\} _{t\ge 0}\) above level x.
Level \(x \ge 0\) For \(x\ge 0\), \(a_{x}\) \(\underset{dis}{=}\) \(\mathcal {B}\) ( \(\mathcal {B} \) := busy period) independent of x, due to exponential service times. By (5.12)
Level \(x <0\) Since \(u_{x}\) = \(a_{x}+b_{x}\),
where \(b_{x}\) := sojourn time below level x, and \( E(b_{x})\), \(\, x<0\), is derived in Proposition 5.5 below in this section.
Sojourn Time \(b_{x}\) Below Level x
Level \(x \ge 0\) Because \(u_{x}\) = \(a_{x}+b_{x}\),
Level \(x <0\) For \(x<0\), \(b_{x}\) is given by the following proposition.
Proposition 5.5
The expected sojourn time of \(\left\{ V(t)\right\} _{t\ge 0}\) below level x is
Proof
We present two proofs, which complement each other.
Proof 1. Consider an SP downward jump that ends below level \(x<0\) (all jumps start above level 0). Let \(r_{x}\) := excess of a jump ending below x. Since a sample path of \(\left\{ V(t)\right\} _{t\ge 0}\) increases steadily at rate \(+1\) when \(V(t)<0\), \(b_{x}\) \(\underset{dis}{=}\) \(r_{x}\), and \(E(b_{x})\) = \(E(r_{x})\). Using a ‘probabilistic’ approach, condition on the event ‘a jump downcrosses level x’, yielding
Thus
Proof 2. Alternatively, denote the cdf of \(r_{x}\) by \(F_{r_{x}}(z)\), \(z>0\). Using a ‘rate’ approach, we have
where the left and right sides are two different expressions for the SP downcrossing rate of level \(x- z\). (A similar argument is used in the derivation of \(E(a_{x})\) in Variant 3 of M/G/1 with bounded virtual wait, given in formula (3.257).) Since h(x) = \(\mu \int _{y=0}^{\infty }\overline{A}(y-x)Ke^{-\gamma y}dy\), and \(b_{x}=r_{x}\),
in agreement with Proof 1.\(\blacksquare \)
Example 5.1
Assume G/M/1 is an M\(_{\lambda }\)/M\(_{\mu }\)/1 queue. From (5.45)
using the memoryless property of the interarrival tines (\(\underset{dis}{=}\) Exp\(_{\lambda }\)).
5.1.13 Events During a Sojourn \(a_{x}\) Above a Level
System Time \(\sigma \)
System time \(\sigma \) := wait + service time = \(W _{q,\iota }\) + \(S \). The \(\sigma \)s are realized at end-of-service instants (at departures from the system—i.e., sample-path peaks). The \( W _{q,\iota }\)s are realized at start of service instants—i.e., sample-path troughs. (See Figs. 5.1 and 5.2.)
Number \(N_{a_{x}}^{\sigma }\) of Realized System Times in \(a_{x}\)
Level \(x\ge 0\) Let \(N_{a_{x}}^{\sigma }\) := number of service completions (departures) during \(a_{x}\) , \(x\ge 0\) , includingthe departure that that ends \(a_{x}\) (i.e., the length of a run of system times \(>x\), or number of sample-path peaks \(>x\) in \(a_{x}\)). Let \(S_{i}\) and \(T_{i}\), i = 1, 2,..., denote the service times and immediately following inter-arrival times, respectively, counting from the instant a sample path of \(\left\{ V(t)\right\} _{t\ge 0}\) upcrosses level x (start of \(a_{x}\)). If x = 0, then \(S_{1}\) is a full service time. If x \({>}\) 0, then \(S_{1}\) is the remaining service time measured from level x, and \(S_{1}\) \(\underset{dis}{=}\) Exp\(_{\mu }\), due to the memoryless property. Then (see Fig. 5.1)
\(N_{a_{x}}^{\sigma }\) is a stopping time (e.g., pp. 678–679 in [125]) for both sequences \(\left\{ S_{i}-T_{i}\right\} _{i=1, 2....}\) and \(\left\{ S_{i}\right\} _{i=1, 2,...}\). Since \(a_{x}\) = \(\sum _{i=1}^{N_{a_{x}}^{\sigma }}S_{i}\) and \(a_{x}\underset{ dis}{=}\mathcal {B}\) for all \(x\ge 0\), by Wald’s equation (e.g., p. 47ff in [122]; p. 679 in [125])
independent of x. Substituting from (5.43) into (5.48), gives
From (5.49) \(E(N_{a_{x}}^{\sigma })>1\) since \(\mu >\gamma \) (see Remark 5.7 below). This agrees with intuition, because there must be at least one departure (sample-path peak) counted in \(a_{x}\) (the last departure in \(a_{x}\)).
Number Served in a Busy Period \(\mathcal {B}\)
Let \(N_{\mathcal {B}}^{\sigma }\) := number of system-time realizations in \(\mathcal {B}\) (:= number of sample-path peaks in \(\mathcal {B}\), i.e., number of customers served in \(\mathcal {B}\)). (This section is related to Sect. 3.4.14 in Chap. 3 for M/G/1.) Since \(\mathcal {B}\) = \( a_{0}\), \(N_{\mathcal {B}}^{\sigma }\) = \(N_{a_{0}}^{\sigma }\), and from (5.49), \(E(N_{\mathcal {B}}^{\sigma })\) = \( \mu /\gamma \). From (5.31), we obtain a notable formula for G/M/1,
which is similar to formula (3.90) for M/G/1 queues.
Number of Realized Waiting Times (Service Starts) \( N_{a_{x}}^{w}\) in \(a_{x}\)
We assume \(x\ge 0\), since service starts can occur only when \(V(t)\ge 0\). Let \(N_{a_{x}}^{w}\) denote the number of customers that start service during \(a_{x}\) , \(x\ge 0\) . Then \( N_{a_{x}}^{w}\) is the number of customers that wait \(>x\) time units (strictly greater than x) before starting service during \(a_{x}\). Figure 5.1 shows that \(N_{a_{x}}^{w}\) = \(N_{a_{x}}^{\sigma }-1\), \(x\ge 0\), since the count of service starts with waits \({>}\) x during \(a_{x}\) is one less than the count of service completions in \(a_{x}\) (including the \(a_{x}\)-ending completion). Hence
Remark 5.7
In (5.51) the inequality \(\frac{\mu }{ \gamma }-1\) \({>}\) 0 holds because of (5.14), i.e., \(\int _{y=0}^{\infty }\overline{A} (y)e^{-\gamma y}dy\) = \(\frac{1}{\mu }\); \(\overline{A}(0)\) = 1; \(\overline{ A}(y)\) = \(1-A(y)\) is non-increasing with \(\lim _{y\rightarrow \infty } \overline{A}(y)\) = 0. Thus there exists finite \(M_{\varepsilon }\) \({>}\) 0 such that \(\overline{A}(y)\) \({<}\) \(\varepsilon \ \) \({<}\) 1 (strictly) for \(y>M_{\varepsilon }\). Hence
5.1.14 Events Above Level x During a Busy Period \(\mathcal {B}\)
A busy period \(\mathcal {B}\) may contain several sojourns above level x, e.g., in Fig. 5.1 the first three busy periods contain 2, 2, and 1 sojourns above level x, respectively.
Number of SP Sojourns \(N_{a_{x}}^{\text {soj}}(\mathcal {B})\) above level x during \(\mathcal {B}\)
Let \(N_{a_{x}}^{\text {soj}}(\mathcal {B})\) := number of sojourns above level \(x\ge 0\) during \(\mathcal {B}\) (\(N_{a_{x}}^{ \text {soj}}(\mathcal {B})\) = 0, 1, 2,...). We first obtain \(E(N_{a_{x}}^{ \text {soj}}(\)B)).
Level \(x\ge 0\)
Let \(\mathcal {C}\) denote a busy cycle. Let \(\mathcal {U}_{\mathcal {C} }(x)\) denote the number of SP upcrossings of level x during \( \mathcal {C}\), all of which occur during the embedded \(\mathcal {B}\). There is a one-to-one correspondence between the starts of sojourns \(a_{x}\) and SP upcrossings of x, implying \(N_{a_{x}}^{\text {soj}}(\mathcal {B})\) = \( \mathcal {U}_{\mathcal {C}}(x)\) (see Fig. 5.1). By the renewal reward theorem,
Since \(E(\mathcal {C})\) = 1 / f(0) = 1 / K, from (5.52)
To satisfy intuition, setting x = 0 in (5.53) implies \(E\left( N_{a_{0}}^{ \text {soj}}(\mathcal {B})\right) \) = 1, which “says” that \(\mathcal {B}\) consists of exactly one sojourn \(a_{0\text { }}\)above level 0.
Number \(N_{a_{x}}^{\sigma }(\mathcal {B})\) of System Times > x in a Busy Period \(\mathcal {B}\)
Let \(N_{a_{x}}^{\sigma }(\mathcal {B})\) := number of system times > x during \(\mathcal {B}\), and \( N_{a_{x}}^{\sigma }(\mathcal {C)}\) := number of system times > x during \( \mathcal {C}\) respectively (see Fig. 5.1). \( N_{a_{x}}^{\sigma }(\mathcal {B})\) = \(N_{a_{x}}^{\sigma }(\mathcal {C)}\) since all departures in \(\mathcal {C}\) occur during, or at the end of, the embedded \(\mathcal {B}\). All departures having \(\sigma >x\) occur within sojourns \(a_{x}\) in \(\mathcal {B}\). So,
where \(N_{a_{x}, i}^{\sigma }\) is the number of system times > x in the \( i^{\text {th}}\) sojourn above x during \(\mathcal {C}\). The \( N_{a_{x}, i}^{\sigma }\)s are i.i.d. r.v.s with \(E\left( N_{a_{x}, i}^{\sigma }\right) \) = \(\mu /\gamma \), by (5.49), independent of the number of sojourns \(N_{a_{x}}^{\text {soj}}(\mathcal {C)} \) (because excess service above x \(\underset{dis}{=}\) Exp\(_{\mu }\)). Taking expected values in (5.54) and using (5.49) and (5.53), gives
Number \(N_{a_{x}}^{w}(\mathcal {B)}\) of Waiting Times > x in a Busy Period \(\mathcal {B}\)
We obtain the expected number of waiting times \(>x\) in \(\mathcal {B}\), similarly as for the derivation of (5.51) (see Remark 5.7 in Sect. 5.1.13). Thus
Setting x = 0 in (5.56) gives \(E\left( N_{a_{0}}^{w}(\mathcal {B)}\right) \) = \(\frac{\mu }{\gamma }-1\), which is also the expected number of customers in \(\mathcal {B}\) that wait \({>}\) 0 (same as (5.51) since \(a_{x}\underset{dis}{=}\mathcal {B}\)). Only the first customer in \( \mathcal {B}\) waits 0.
Proportion of Customers that Wait \(>x\)
N.B. Here we use ‘proportion’ to mean the ratio \(E\left( N_{a_{x}}^{w}(\mathcal {B)}\right) /E\left( N_{\mathcal {B}}^{\sigma }\right) \), not \(N_{a_{x}}^{w}(\mathcal {B)}/N_{\mathcal {B}}^{\sigma }\) or \(E\left( N_{a_{x}}^{w}(\mathcal {B)}/N_{\mathcal {B}}^{\sigma }\right) \).
We assume level \(x\ge 0\), since all waits in line are \(\ge 0\), and connect the ‘proportion’ of customers that wait \(>x\) in \(\mathcal {B}\) with other parameters of the model. For example, the proportion of customers that wait \(>x\) in \(\mathcal {B}\) is, using (5.31),
where \(N_{\mathcal {B}}^{\sigma }\) := number of service completions in \(\mathcal {B}\) (= number of arrivals in \(\mathcal {C}\)). When \(x=0\), (5.57) reduces to \(E\left( N_{a_{x}}^{w}( \mathcal {B)}\right) /E\left( N_{\mathcal {B}}^{\sigma }\right) \) = \( 1-P_{0,\iota }\), which is intuitive, because \(\mathcal {C}\) is a probabilistic microcosm of the evolution of the system over the entire time axis and the long-run proportion of customers that wait \({>}\) 0 is \(1-P_{0,\iota }\).
Level \(x\,<\, 0\)
Number Served in a Sojourn \(a_{x\text { }}\) Above Level x
Fix a level \(x<0\). After upcrossing x, a sample path of \(\left\{ V(t)\right\} _{t\ge 0}\) ascends steadily at rate \(+1\) to level 0. Hence the number of service completions during \(a_{x}\) is
where \(r_{0, i}\) := excess below level 0 due to an SP jump that downcrosses level 0 (see Fig. 5.3). The values of \(r_{0, i}\), \(\ i\) = 1, ..., n, are given by
The cdf of \(r_{0, i}\) and \(E(r_{0, i})\) are given above (see formula (5.46) as \(x\uparrow 0\), in Proposition 5.5, in Sect. 5.1.12). Thus
\(N_{a_{x}}^{\sigma }\) is a stopping time for \( \left\{ r_{0, i}+S_{i}-T_{i}\right\} _{i=1, 2,...}\) and for \(\left\{ r_{0, i}+S_{i}\right\} _{i=1, 2,...}\). The sojourn time above level x is \(a_{x}\) = \(\sum _{i=1}^{N_{a_{x}}}\left( r_{0, i}+S_{i}\right) \), implying
Thus
where \(E(r_{0, i})\) is given in (5.44), and \( E(r_{i})\) is given in (5.45).
5.1.15 Revisit of M/M/1
Consider the M/M/1 queue in the light of the G/M/1 results in Sects. 5.1.13–5.1.14. Let ‘G’ in G/M/1 be Poisson at rate \(\lambda \). Then \(\gamma \) = \(\mu -\lambda \). From Eq. (5.56) for G/M/1,
When \(x=0\), (5.60) reduces to \(E\left( N_{a_{0}}^{w}(\mathcal {B)}\right) \) = \(1/P_{0}-1\).
In M/M/1 (and M/G/1), \(E\left( N_{\mathcal {B}}^{\sigma }\right) \) := E(number of customers served in \(\mathcal {B})\) = \(1/P_{0}\) (formula (3.90)). The customer initiating \(\mathcal {B}\) waits 0; all others served in \(\mathcal {B }\) wait \({>}\) 0. This explains intuitively why \(E\left( N_{a_{0}}^{w}(\mathcal {B)}\right) \) = \(E\left( N_{\mathcal {B}}^{\sigma }\right) -1\).
In M/M/1 (and M/G/1) the proportion of customers that wait \({>}\) 0 in a busy period is
which agrees with the result for G/M/1 given in (5.57).
Related Results for M\(_{\lambda }\)/M\(_{\mu }\)/1
Similarly as in the analyses above for G/M/1, we obtain the following results for M\(_{\lambda }\)/M\(_{\mu }\)/1 (see Fig. 3.7). The expected number of system times completed in a sojourn \(a_{x}\) is
since \(N_{a_{x}}^{\sigma }\) \(\underset{dis}{=}\) \(N_{\mathcal {B}}^{\sigma }\) in both M/M/1 and G/M/1\(x\ge 0\). Also, \(E\left( N_{a_{{\Large x} }}^{\sigma }\right) \) \(>1\) since \(\mu >\mu -\lambda \) (i.e., for stability \(0<\lambda <\mu \)).
E(number that wait \({>}\) x during \(a_{x})\) is
E(number of sojourns above level x in \(\mathcal {B}\)) is, using (5.53),
if \(x=0\) then
\(\mathcal {B}\) consists of exactly one sojourn above level 0, and \(\mathcal { B}\) may contain a random number of sojourns above an arbitrary level x \({>}\) 0.
The number of system times (service completions—sample-path peaks) above level x in \(\mathcal {B}\) is
where \(N_{a_{x}i}^{\sigma }\) = \(N_{a_{x}}^{\sigma }\) independent of \( N_{a_{x}}^{\text {soj}}{\Large (}\mathcal {C}{\Large )}\). By (5.61) and (5.63),
E(number of waiting times \(>x\) in \(\mathcal {B}\)) is
if \(x=0\), then \(E(N_{a_{x}}^{w}(\mathcal {B}))\) = \(\frac{\lambda }{\mu -\lambda }\) = expected number that wait \(>0\) in \(\mathcal {B}\).
The ‘proportion’ of customers that wait \(>0\) in \(\mathcal {B}\) is
where \(N_{\mathcal {B}}^{\sigma }\) := number served in B. The intuitive explanation of the last formula is that the long-run proportion of customers that wait \(>0\) is \(1-P_{0}\) (\(\mathcal {C}\) is a probabilistic replica of the entire time line. All arrivals take place in the embedded \( \mathcal {B}\)).
Let \(N_{b_{x}}^{\sigma }(\mathcal {B})\) := number of \(\sigma \) s \(\le x\) in \(\mathcal {B}\) (occur in a sojourn \(b_{x}\) below level x).
Proposition 5.6
In M/M/1 the expected number of system times \(\le x\) in a busy period \(\mathcal {B}\) is
Proof
\(N_{b_{x}}^{\sigma }(\mathcal {B})\) + \(N_{a_{x}}^{\sigma }(\mathcal {B})\) = \( N_{\mathcal {B}}^{\sigma }(\mathcal {B})\). From (5.61)
Then (5.66) follows from (5.61) and (5.64).\(\blacksquare \)
Proposition 5.7
For M/M/1 the expected number of waiting times \(\le x\) in a busy period \(\mathcal {B}\) is
Proof
In \(\mathcal {B}\), the number of customers with waiting times \(\le x\) plus the number with waiting times \(>x\), is equal to the number served in \( \mathcal {B}\), namely \(N_{\mathcal {B}}^{\sigma }\). By (5.61),
Thus, (5.67) follows from (5.62) and (5.65).\(\blacksquare \)
Remark 5.8
In M\(_{\lambda }\)/M\(_{\mu }\)/1:
If \(x=0\) then \(E(N_{b_{x}}^{^{{\Large \sigma }}}(\mathcal {B}))=0\).\({\Large }\)
If \(x\rightarrow \infty \) then \(E(N_{b_{x}}^{^{{\Large \sigma }}}(\mathcal {B} ))\rightarrow \) \(\mu /\left( \mu -\lambda \right) =1/P_{0}\).\({\Large }\)
If \(x=0\) then \(E(N_{b_{x}}^{^{w}}(\mathcal {B}))=1\) (initiator of \(\mathcal {B} \) waits 0).
If \(x\rightarrow \infty \) then \(E(N_{b_{x}}^{^{w}}(B))\rightarrow \mu /\left( \mu -\lambda \right) =1/P_{0}\).
5.1.16 Boundedness of PDF of Wait f(x), \(x>0\)
In G/M/1 let S = Exp\(_{\mu }\); let the inter-arrival time have cdf A(y), \(y>0\), with \(A(0^{+})\) = 0. Assume the steady-state pdf of wait f(x), \(x>0\), exists.
The pdf of the virtual wait, f(x) = \(Ke^{-\gamma x}\), \(x>0\), is decreasing and convex on \((0,\infty )\). Thus
where K is given by (5.21), and \( C_{\gamma }\) by (5.18).
The pdf of the actual wait, \(f_{\iota }(x)\) = \(K_{\iota }e^{-\gamma x} \), \(x>0\), has similar properties. Thus
where \(K_{\iota }\) is given in (5.29).
Proposition 5.8 below derives boundedness of f(x) from “first principles” without drawing on the result f(x) = \( Ke^{-\gamma x}\), \(x>0\). We include it for ideas that may be useful to obtain bounds on the pdf of wait in variants of G/M/1 (or random variables in other models), from basic LC considerations.
Proposition 5.8
In G/M/1 with the foregoing assumptions
Proof
We present two proofs for perspective.
Proof 1. An alternative form of the LC integral equation for G/M/1 (formula (5.8)) is
Since \(A(0^{+})\) = 0, there exists \(\varepsilon >0\) such that A(z) \({<}\) 1 for \(z\in \left( 0,\varepsilon \right) \). Thus
The subtracted term in (5.69) is such that
so that (5.68) follows.
Proof 2. Consider a sample path of \(\left\{ V(t)\right\} \) (see formula (5.1) and Fig. 5.1). From formula (5.9) the hazard rate is \(f(x)/\left( 1-F(x)\right) \) = \(1/E(\mathcal {B})\). Also, \(E(\mathcal {B})\) \({>}\) \( 1/\mu \) since E(number served in \(\mathcal {B}\)) := \(E(N_{B}^{\sigma })\) = \(E(\mathcal {B})/E(S)\) = \(\mu E(\mathcal {B})>1\) (formula (5.48)). (The inequality holds since \(\mathcal {B }\) consists of at least one service time.) Thus \(1/E(\mathcal {B})\) \({<}\) \(\mu \) and
\(\blacksquare \)
Example 5.2
M \(_{\lambda }\) /M \(_{\mu }\) /1 is a special case of G/M//1 in which \(\rho \) = \(\lambda /\mu \) \({<}\) 1 for stability, with F(x) = \(1-\rho e^{-(\mu -\lambda )x}\), f(x) = \(\lambda P_{0}e^{-(\mu -\lambda )x}\), and \(E(\mathcal {B})\) = \(1/\left( \mu -\lambda \right) \). Using (5.70),
which satisfies (5.68).
5.2 G/M/1: Zero-Waits Receive Special Service
Due to ubiquitous applications of queues where zero-wait customers receive exceptional service, we now derive the pertinent limiting pdf \(\left\{ P_{0}, f(x)\right\} _{x>0}\) in G/M/1 by using the method of pages (see, e.g., Fig. 4.2 in Sect. 4.5.5). (Sect. 3.6.1 above, derives \(\left\{ P_{0}, f(x)\right\} _{x>0}\) in M/G/1 where zero-waits receive special service.)
Let \(\left\{ V(t), M(t)\right\} _{t\ge 0}\) denote the extended age process, where V(t) := system time of a customer in service at t; M(t) = 0 if a zero-wait customer (initiator of a busy period) is in service or the system is empty, at time t; M(t) = 1 if a positive-wait customer is in service at time t. Let \(S_{0}\) := service time of zero-waits and \(S_{1}\) := service time of positive-waits, where \(S_{i}\) \( \underset{dis}{=}\) Exp\(_{\mu _{i}}\), i = 0, 1. Assume the arrival stream is a renewal process with inter-arrivals having cdf \(A(\cdot )\), \( \overline{A}(\cdot )\) = \(1-A(\cdot )\), and mean \(1/\varvec{a}\). (In Sect. 5.2.2 below we assume the arrival process is Poisson with rate \(\lambda \), and get the same limiting pdf of wait as for M/M/1 in Sect. 3.6.2.) Let \( f_{i}(x)\), \(x>0\), \(i=0, 1\), denote the limiting pdf of V(t) as \( t\rightarrow \infty \) when a zero-wait and a nonzero-wait is in service, respectively. Let h(x), \(x<0\), denote the pdf of (− remaining time until the next arrival of a zero-wait customer). The domains (and ranges) of \(f_{0}\), h and \(f_{1}\) are respectively \( \left\{ (0,\infty ), 0\right\} \), \(\left\{ (-\infty , 0), 0\right\} \), and \( \left\{ (0,\infty ), 1\right\} \), in which the right-most symbols 0, 1 denote pages. Let \(P_{0}\) := P(an arrival waits 0).
5.2.1 Integral Equations for \(f_{0}(x)\), \(f_{1}(x)\) and h(x)
Figure 5.4 illustrates a sample path of \(\left\{ V(t), M(t)\right\} _{t\ge 0}\), which aids in deriving the integral equations.
\(\varvec{f}_{0}\varvec{(x)}\) Consider state set \(\left\{ (x,\infty ), 0\right\} _{x\ge 0}\). The rate in is \(\lim _{t\rightarrow \infty }\mathcal {U}_{t}(x)/t\) = \( f_{0}(x)\); the rate out is \(\mu _{0}\int _{x}^{\infty }f_{0}(y)dy\). Since the ends of services of zero-waits initiate downward jumps (\(\underset{dis}{=}\) Exp\(_{\lambda })\) ending in \(\left\{ \left( -\infty , 0\right) , 0\right\} \) or \(\left\{ \left( 0,\infty \right) , 1\right\} \), rate balance gives
Converting to a differential equation and solving, gives the solution
where \(\alpha \) is a constant to be determined.
\(\varvec{f}_{1}\varvec{(x)}\) Consider state set \(\left\{ (x,\infty ), 1\right\} _{x\ge 0}\). The balance equation is
where the left side is the entrance rate due to upcrossing level x on page 1 or leaving set \(\left\{ (x,\infty ), 0\right\} \), and the right side is the exit rate due to jumps ending below level x in \(\left\{ (0, x), 1\right\} \) or in \(\left\{ (-\infty , 0), 0\right\} \). Transposing terms and substituting from (5.72) yields
\(\varvec{h(x)}\) Consider state set \(\left\{ (-\infty , x), 0\right\} _{-\infty <x\le 0}\). The balance equation is
where the left side is the exit rate (\(\lim _{t\rightarrow \infty } \mathcal {U}_{t}(x)/t\)) and the right side is the entrance rate (the first term from \(\left\{ (0,\infty ), 0\right\} \), the second term from\( \left\{ (0,\infty ), 1\right\} \)).
Also
The normalizing condition is
We shall not solve equations (5.72)–(5.76) explicitly here for a general \(A(\cdot )\). Section 5.2.2 gives a full solution when the arrival rate is Poisson at rate \(\lambda \), which serves as an example of the method of pages for single-server queues, and a check on the model in this Section.
5.2.2 M/M/1 as Special Case of G/M/1
We now derive the pdf of wait in the corresponding M/M/1, as a special case of G/M/1 where zero-waits get exceptional service, by letting G \(\underset{ dis}{=}\) Exp\(_{\lambda }\). Assume A(y) = \(1-e^{-\lambda y}\), \(y>0\), \( \overline{A}(y)\) = \(e^{-\lambda y}\), \(y\ge 0\). Observe that the upcrossing rate of level 0 is equal to h(0) = \(f_{0}(0)\) = arrival rate of busy-period initiators (zero-waits). Therefore, \(f_{0}(0)\) = \(\lambda P_{0} = \alpha \). Substituting in Eq. (5.73) yields
or
Applying \(\left\langle D-\lambda \right\rangle \) to both sides results in the differential equation
Using the condition that \(f_{1}(0)\) = 0 (because the upcrossing rate of level 0 on page 1, is 0), the solution of the differential equation is
assuming \(\mu _{0}\ne \mu _{1}-\lambda \).
The total pdf of wait is
Equation (5.76) gives
which leads to
where \(\rho _{i}\) = \(\lambda /\mu _{i}\),\(\,\ \)the same as in Sect. 3.6.2 for M/M/1, and in the open literature.
5.3 Multiple-Server G/M/c Queue
The G/M/c queue (c = 2, 3, ...) generalizes G/M/1 of Sect. 5.1 to multiple parallel servers. The same symbols as for G/M/1 in Sect. 5.1 denote the inter-arrival time cdf \(A(\cdot )\), pdf \(a\left( \cdot \right) \), complementary cdf \( \overline{A}\left( \cdot \right) \), and mean \(1/\mathbf a \). Each customer has service time \(S\underset{dis}{=}\) Exp\(_{\mu }\), independent of any other customer’s service time.
This section uses LC to derive the steady-state pdfs of the virtual wait and actual wait (arrival-point wait) in the standard G/M/c queue. We obtain exact formulas for the pdfs in G/M/2, and check them with the pdfs in M/M/2, to mildly validate the LC approach. Also, we derive related quantities in G/M/c.
5.3.1 Extended Age Process for G/M/c
To analyze G/M/c (c \(\ge 2)\), we employ the stochastic process
The random variable V(t) is the ‘extended age’ at time t. When \(c\ge 2\), V(t) is a generalization of V(t) defined for G/M/1 in Sect. 5.1.1. (Age at time t is defined immediately after the two following remarks.)
M(t) is the ‘system configuration’. For the standard G/M/c, M(t) is defined more simply than for the generalized M/M/c queue, given in Sects. 4.4 and 4.5). Here, let M(t) := number of customers in service at time t. Thus \(M(t)\in \varvec{M}\) = \(\left\{ 0, 1, 2,..., c\right\} \). If M(t) = c then at least c customers are in the system at time t.
The state space of \(\left\{ V(t), M(t)\right\} _{t\ge 0}\) is \(\varvec{S}\) = \(\mathbb {R}\times \varvec{M}\) where \(\mathbb {R}\) := \(\left( -\infty ,+\infty \right) \). \(\left\{ V(t), M(t)\right\} _{t\ge 0}\) is a type of ‘system point process’ (see Sect. 4.5). The state is two-dimensional; V(t) is continuous, M(t) is discrete.
Remark 5.9
The definition of system configuration M(t) is flexible, i.e., it may depend on the current task. (See [45, 46] for concepts of flexibility and adaptivity.) We utilize an appropriate ‘configuration’ that expedites the analysis. We could define M(t) for G/M/c analogously as for the generalized M/M/c in Sect. 4.4. However, our simpler definition of M(t) here is sufficient to study the standard G/M/c model. If the objective were to analyze a ‘generalized’ G/M/c queue, we might utilize M(t) along the lines of Sect. 4.4. This flexibility applies well to state-dependent models with, e.g., service time depending on wait; service time depending on the types of other customers in service at start of service times; service rate selected at random from a set of possible service rates; etc.
Remark 5.10
For G/M/c, the definition of \(M(t)\in \left\{ 0, 1,..., c-1, c\right\} \) is a variant of the definition of M(t) given in Sect. 4.4 for M/M/c. For G/M/c, M(t) is the number of occupied servers “seen” at an arrival instant t. Thus M(t) includes a ‘sheet c’ which denotes “all servers are occupied” at the arrival instant \(\mathbf {t}\). On the other hand, in M/M/c, Chap. 4, sheet \(c-1\)’ corresponds to “\(c-1\) servers are occupied just before a start of service in the remaining ‘target’ unoccupied server” . In Sect. 4.4 M(t) “looks ahead” to the instant that an arrival starts service at \( t + \mathcal {S}\). In G/M/c, M(t) focuses on the arrival time t (does not look ahead). In G/M/c sheet \(c-1\) corresponds to “\(c-1\) servers are occupied at an arrival instant t” (Fig. 5.5).
Extended Age and inter start-of-service depart Time in Standard G/M/c
If M(t) = c then M(t):= “age” (time already spent in the system) of the last customer to start service at time \(\le t\), so that \(V(t)>0\) (Fig. 5.5).
Let \(\mathcal {S}\) denote the time from the instant a customer starts service until the first departure from the system thereafter, i.e., \(\mathcal {S}\) is the inter start-of-service depart time. Then \(\mathcal {S}\) = \( \min \left\{ S_{1},..., S_{c}\right\} \) where the \(S_{i}\)s are mutually independent and each \(S_{i}\underset{dis}{=}\) Exp\(_{\mu }\). One \(S_{i}\) is a full service time; \(c-1\) \(S_{i}\)s are remaining service times. Hence \( \mathcal {S}\underset{dis}{\mathcal {=}}\) Exp\(_{c\mu }\).
Relationship Between V(t) and M(t)
When \(M(t)\in \left\{ 0, 1,..., c-1\right\} \), the random variable ‘\(-V(t)\)’ denotes the remaining inter-arrival time required until the next arrival joins the system (Fig. 5.5). Thus
5.3.2 Steady-State PDF of Virtual Wait
Let \(\varvec{T}\) = \(\left\{ t\in [0,\infty )\right\} \) be the time axis. A sample path of \(\left\{ V(t), M(t)\right\} _{t\ge 0}\) is given in Fig. 5.5. The rate at which the SP moves in \(\varvec{T} \times \varvec{S}\) between downward jumps when M(t) = c, is dV(t) / dt = \(+1\), \(0<V(t)<\infty \), \(t>0\).
The steady-state pdf of V(t) as \(t\rightarrow \infty \), is the same as that of the virtual wait W(t) as \(t\rightarrow \infty \) (proved similarly as in Proposition 5.1 for G/M/1).
Denote the steady-state cdf of the virtual wait by F(x), \(x\ge 0\), having pdf f(x) = dF(x) / dx, \(x>0\), wherever the derivative exists. F(0) is the proportion of time with fewer than c customers in service, i.e., the probability that the system presents a zero wait to a potential arrival. Let \(P_{i}\) be the proportion of time that an arrival “sees” i customers in service, i = \(0,..., c-1\). The \(P_{i}\)s are zero-wait probabilities, and F(0) = \(\sum _{i=0}^{c-1}P_{i}\).
Integral Equation for PDF of Wait
Consider a sample path of \(\left\{ V(t), M(t)\right\} _{t\ge 0}\) (Fig. 5.5). \(\varvec{T}\times \varvec{S}\) is partitioned into \(c+1\) sheets (or ‘pages’), which are planar subsets of \(\varvec{T} \times \varvec{S}\). Sheets 0,...\(, c-1\) can be thought of as being one behind the other like pages in a book, below level 0 (the time axis). Only sheet c is above level 0. Sheet c is pictured as being directly above, and contiguous to, sheet \(c-1\).
Case \(M(t) = c\) When M(t) = c the SP is on sheet c, moving upward with slope \(+1\). Fix level \(x>0\). The SP upcrossing rate of level x is
(proved similarly as in Theorem 1.1 for the downcrossing rate in M/G/1; see also Sect. 2.1 in [19]). All servers are occupied just before a departure, the inter start-of-service depart time is \(\mathcal {S}\) \(\underset{dis}{=}\) Exp\(_{c\mu }\), implying the departure rate is \(c\mu \). The SP downcrossing rate of level x is
In (5.77), \(c\mu \) is the customer departure rate. Each departure generates a downward jump with size \(\underset{dis}{=}\) \(A(\cdot )\) (inter-arrival time cdf). \(\overline{A}(y-x)\) is P(jump \({>}\) \(y-x\) \({\vert }\)jump starts at level y) = P(jump downcrosses level x|jump starts at level y).
Rate balance across level x, i.e., \(\lim _{t\rightarrow \infty }E(\mathcal {U }_{t}(x))/t\) = \(\lim _{t\rightarrow \infty }E(\mathcal {D}_{t}(x))/t\), gives a basic LC integral equation for G/M/c
Equation (5.78) for G/M/c, where the downward jump rate is \(c\mu \), is a straightforward generalization of the LC integral equation for G/M/1, where the downward jump rate is \(\mu \) (formula 5.7).
Alternative Form of Integral Equation
An alternative form of (5.78) is
Explanation of (5.79) On the left side, f(x) is the upcrossing rate of level x. On the right side, \(c\mu \left( 1-F(x)\right) \) is the rate at which all downward jumps start in state-space set \(\left\{ \left( \left( x,\infty \right) , c\right) \right\} \). The subtracted term including the integral, subtracts the rate at which downward jumps start in \(\left\{ \left( \left( x,\infty \right) , c\right) \right\} \) and end in \(\left\{ \left( \left( x,\infty \right) , c\right) \right\} \); such jumps do not downcross level x. Thus the right side of (5.79) is the downcrossing rate of level x.
5.3.3 Form of PDF of Wait in G/M/c Geometrically
Let \(\mathcal {B}_{c-1, c}\) denote a \(\left[ c-1, c\right] \) busy period , the time from the instant the number of customers in service increases from \(c-1\) to c until the first instant thereafter when the number of customers in service decreases back to \(c-1\) (Fig. 5.5). During \(\mathcal {B}_{c-1, c}\) the number of customers in the system is \(\ge c \). \(\mathcal {B}_{c-1, c}\) is a sojourn time on sheet c , which starts with an SP upcrossing of level 0 (via top of sheet \(c-1\)), and ends with a downcrossing of level 0 that terminates on sheet \(c-1\). Let \(a_{x}\) denote a sojourn time above level \(x\ge 0\) starting with an upcrossing of level x (on sheet c). Then \(\mathcal {B}_{c-1, c}\)= \(a_{0}\), and \(E\left( \mathcal {B}_{c-1, c}\right) \) = \(E\left( a_{0}\right) \).
The memoryless property of \(\mathcal {S}\) (\(\underset{dis}{=}\) Exp\(_{c\mu }\)) implies the excesses \(\mathcal {S}\) above level x \(\underset{dis}{=}\) Exp\( _{c\mu }\) so that \(E(a_{x})\) = \(E(\mathcal {B}_{c-1, c})\), \(x\ge 0\), independent of x. By LC and the elementary renewal theorem, \(E(u_{x})\) = 1 / f(x), where \(u_{x}\) := inter-upcrossing time of level x. The sequence of \(u_{x}\)s forms a renewal process because each upcrossing of level x \({>}\) 0 has an excess over level x \(\underset{dis}{=}\) Exp\( _{c\mu }\), implying the probabilistic future evolution is independent of the past. By the renewal reward theorem
Similarly as for G/M/1 in Sect. 5.1.5,
a differential equation whose solution for the cdf of wait is
Taking dF(x) / dx in (5.80) gives the pdf of wait as
Hence
where
From (5.83)
Substituting f(x) from (5.82) into (5.78) gives a transcendental equation for \( \gamma \),
The Laplace-Stieltjes transform of the inter-arrival distribution evaluated at \(\gamma \), is \(A^{*}(\gamma )\) = \(\int _{y=0}^{\infty }a(y)e^{-\gamma y}dy\). Integration by parts in (5.85) gives an alternative equation for \(\gamma \),
To specify the mixed pdf of wait \(\left\{ F\left( 0\right) , f(x)\right\} _{x>0}\), it is required to solve for F(0) in (5.81) or equivalently for K in (5.82). From (5.83) we obtain
From the form of f(x), \(x>0\), as \(Ke^{-\gamma x\text {,}}\) we can also obtain (5.87) from the normalizing condition
Remark 5.11
Another way to obtain (5.87) is directly from the sample path of \(\left\{ V(t)\right\} _{t\ge 0}\) and SP motion. We include this derivation because it highlights the close relationship between probabilities of the model and SP motion. F(0) is the proportion of time that the system presents a zero wait. The expected time between successive SP upcrossings of level 0 due to arrivals that “see” \(c-1\) customers in service, is 1 / f(0) (starts of \(\mathcal {B}_{c-1, c}\)s). Since f(x) = \(Ke^{-\gamma x}\),
After the SP moves onto sheet c, it eventually leaves sheet c when a departure propels a downward jump onto sheet \(c-1\). The SP then sojourns among some or all sheets 0,...\(, c-1\). During this SP sojourn, any arrival to the system would wait zero. The sojourn below level 0 continues until the SP next upcrosses level 0 from sheet \(c-1\) onto sheet c. Thus upcrossings of level 0 from sheet \(c-1\) are regenerative points. From the theory of regenerative processes (renewal reward theorem)
Explanation of (5.88). In the numerator 1 / K = 1 / f(0) = E(time between SP upcrossings from sheet \(c-1\) onto sheet c). These upcrossings are regenerative points. The term ‘\(-E(\mathcal {B}_{c-1, c})\)’ subtracts off the expected embedded busy period \(E\left( B_{c-1, c}\right) \) = \(1/\gamma \), thus leaving E(sojourn time among sheets \(0,..., c-1)\).
Value of K
We must solve for the value of K in order to specify F(0) and f(x), \( x>0\), in terms of the model parameters. This requires a further analysis of SP motion on sheets \(0,..., c-1\).
Remark 5.12
Applying the normalizing condition
and using (5.81), does not give F(0) in terms of the model parameters, since it yields the tautology 1 = 1. Section 5.3.4 below develops integral equations for the steady-state partial pdfs of V(t) on sheets \( 0,..., c-1\), which leads to an independent expression for F(0); the normalizing condition then gives F(0). We shall not solve for F(0) explicitly in the general G/M/c queue here. However, we will solve for F(0) explicitly in G/M/2 in Sect. 5.4, to indicate the solution procedure.
5.3.4 Partial PDFs of Extended Age for Sheets 0 to \(c-1\)
Let \(g_{i}(x)\) , \(x<0\), denote the steady-state pdf of \(\left\{ V(t), M(t)=i\right\} _{t\rightarrow \infty }\), i = \( 0,..., c-1\). In Fig. 5.5 the partial pdfs \(\left\{ g_{i}(x)\right\} _{x<0}\) are the partial pdfs when M(t) = \( i\in 0\),...\(, c-1\). We derive integral equations for \(g_{i}(x)\), i = 0,..., \(c-1\), by applying rate balance to SP exits and entrances of state-space intervals \(\left\{ \left( -\infty , x\right) , i\right\} _{x<0}\) on sheets i = \(0,..., c-1\).
The probability F(0) is the proportion of time that potential arrivals wait 0 for service. Thus
where \(P_{i}\) := \(\int _{x=-\infty }^{0}g_{i}(x)dx\) is the steady-state probability of i customers in service.
Integral Equation for PDF \(g_{c-1}(x)\) : Sheet \(c-1\)
First consider interval \(\left\{ \left( -\infty , x\right) , c-1\right\} \) for fixed \(x<0\), on sheet \(c-1\).
Exit Rate The SP exit rate from \(\left\{ \left( -\infty , x\right) , c-1\right\} \) is
Explanation of (5.90) The first term is the SP (continuous) upcrossing rate of level x. The second term is the rate at which customers depart the system when \(c-1\) servers are occupied and the remaining time until the next arrival to the system is \(-y\), summed over all \(y\in \) \(\left( -\infty , x\right) \). Departures occur at rate \(\left( c-1\right) \mu \) since there are \(c-1\) customers in service; and service times are independent of the remaining time until the next arrival. Such customer departures generate SP parallel jumps from sheet \(c-1\) to sheet \(c-2\) starting and ending at the same level, because just after these departures there would be \(c-2\) units in service, and the remaining inter-arrival time would still be the same as it was just before each departure.
Entrance Rate The SP entrance rate into \(\left\{ \left( -\infty , x\right) , c-1\right\} \) is
Explanation of (5.91) The first term is the rate at which the SP jumps downward from level \(y>0\) on sheet c into interval \(\left\{ \left( -\infty , x\right) , c-1\right\} \), due to customer departures that leave \(c-1\) units in service. An inter-arrival time which is \(>y-x\) causes the SP to downcross level x on sheet \(c-1\) (probability is \(\overline{A}(y-x)\)). In the second term, \(g_{c-2}(0)\) is the SP hit rate of level 0 from below on page \(c-2\) (upcrossing rate of level 0), i.e., the arrival rate to the system when \(c-2\) servers are occupied. Such arrivals increase the number of occupied servers to \(c-1\). \(\overline{A}(-x)\) is the probability that the immediately following inter-arrival time exceeds \(-x\), thereby propelling the SP below level x and into \(\left\{ \left( -\infty , x\right) , c-1\right\} \).
Equating (5.90) and (5.91) gives the integral equation for \( g_{c-1}(x)\),
Integral Equations for PDF: Sheets \(1,..., c-2\)
Consider the state-space interval \(\left\{ \left( -\infty , x\right) , i\right\} , x<0\) on sheet i where \(i\in \left\{ 1,..., c-2\right\} \) (Fig. 5.5). Reasoning as in the derivation of (5.92) for sheet \( c-1\), we obtain integral equations
Explanation of (5.93) The left side is the SP exit rate from interval \(\left\{ \left( -\infty , x\right) , i\right\} \), composed of upcrossings of level x plus the customer departure rate when there are i in service. The right side is the SP entrance rate into \(\left\{ \left( -\infty , x\right) , i\right\} \), composed of \((i+1)\mu \int _{y=-\infty }^{x}g_{i+1}(y)dy\), the rate of parallel jumps starting in \( \left\{ \left( -\infty , x\right) , i+1\right\} \) and ending at the same level in \(\left\{ \left( -\infty , x\right) , i\right\} \ \) plus the rate of customer arrivals (upcrossings of level 0) when there are \(i-1\) customers in service followed by inter-arrivals that exceed \(-x\).
Integral Equation for PDF: Sheet 0
Consider state-space interval \(\left\{ \left( -\infty , x\right) , 0\right\} , x<0\).
Exit Rate The SP can exit \(\left\{ \left( -\infty , x\right) , 0\right\} , x<0\) only by means of a (left) continuous hit of level x from below (upcrossing of level x). The system is empty, so no customer departures can occur when M(t)= 0. Therefore the exit rate of \(\left\{ \left( -\infty , x\right) , 0\right\} \) is \(g_{0}(x)\).
Entrance Rate The SP can enter \(\left\{ \left( -\infty , x\right) , 0\right\} \) only by a parallel jump from \(\left\{ \left( -\infty , x\right) , 1\right\} \) on sheet 1. There must be one customer in service, which departs before any new arrivals to the system occur, and the remaining inter-arrival time, say y, is \(>-x\), so that \(y\in \left\{ \left( -\infty , x\right) , 0\right\} \). The rate of such parallel jumps \(\mu \int _{y=-\infty }^{x}g_{1}(y)dy\).
Rate balance of exit and entrance rates of \(\left\{ \left( -\infty , x\right) , 0\right\} \) gives an integral equation for sheet 0 \((M(t)=0)\),
Form of F(0)
The probability of a potential wait of zero is given in (5.89). Here we shall not detail a procedure to compute F(0) for the virtual wait in G/M/c for general values of c. Nevertheless, in Sect. 5.4.1 below, we provide a detailed derivation of F(0) in G/M/2.
5.3.5 Stability Condition for G/M/c
The stability condition for G/M/c follows directly from (5.82) and (5.85). The system is stable iff the steady-state pdf in (5.82) exists iff there exists a positive finite solution \(\gamma \) for Eq. (5.85). Using an analysis similar to that given in Proposition 5.3 for G/M/1, we obtain a necessary and sufficient condition for stability in G/M/c, namely \(\varvec{a}<c\mu \).
5.3.6 Form of PDF of Actual Wait \(W_{q,\iota }\)
Let \(W_{q,\iota }\) denote the actual wait in line before service (arrival-point wait), in steady state. Let \(F_{\iota }(x)\) := \(P(W_{q,\iota }\le x)\), \(x\ge 0\), and \(f_{\iota }(x)\) = \(dF_{\iota }(x)/dx)\), \(x>0\), be the pdf of \(W_{q,\iota }\).
Proposition 5.9
In the G/M/c queue, the form of the pdf of \(W_{q,\iota }\) is
where \(K_{\iota }>0\).
Proof
The proportion of arrivals that wait \(W_{q,\iota }>x\) is
In formula (5.96) F(x) and f(x) are respectively the cdf and pdf of the virtual wait; F(0) := P(virtual wait \(=\) 0); \(g_{i}(0)\), i = \(1,..., c-1\), are respectively the arrival rates to the system when i customers are in service. (See Proposition 5.2 for G/M/1 in Sect. 5.1.7).)
Explanation of (5.96). \(c\mu (1-F(x))\) is the rate of downward jumps that start at peaks \( >x\) (i.e., in \(\left\{ \left( x,\infty \right) , c\right\} \) on sheet c), and end at an ordinate equal to the next actual wait \({>}\) 0 if the end point is \({>}\) 0 (in \(\left\{ \left( 0,\infty \right) , c\right\} \), i.e., at a trough \({>}\) 0); or at a trough in \(\left\{ \left( -\infty , 0\right) , c-1\right\} \ \)implying that the next actual wait is = 0, if the end point is \({<}\) 0 (Fig. 5.5). The term \(-f(x)\) subtracts off the rate of such downward jumps that end below x. (Note that f(x) = \(\lim \mathcal {U}_{t}(x)/t\) = \(\lim \mathcal {D}_{t}(x)/t\), \(x\in \left\{ \left( 0,\infty \right) , c\right\} \).) Thus the numerator is the rate at which ‘ next’ \(W _{q,\iota }\)s (troughs on page c) are \(>x\). In the denominator, \(c\mu \left( 1-F(0)\right) \) is the rate of all downward jumps that start on sheet c; \(\sum _{i=1}^{c-2}g_{i}(0)\) is the rate of all downward jumps that start at level 0 on sheets \(1,..., c-2\). Thus, the denominator is the total rate of all downward jumps, which is precisely the total rate at which ‘next’ customers start service. Thus the right side of (5.96) is the proportion of downward jumps that start above level x \({> }\) 0 and end above level x, on sheet c. This is the same as the proportion of all customers whose actual (arrival point) wait is \(>x\).
From Eqs. (5.80) and (5.82), \(1-F(x)\) = \(\kappa e^{-\gamma x}\) where \( \kappa \) \({>}\) 0, and f(x) = \(Ke^{-\gamma x}\). Also, \(c\mu \left( 1-F(0)\right) +\sum _{i=1}^{c-2}g_{i}(0)\) is \({>}\) 0. Substituting these values into the right side of (5.96) and taking d / dx on both sides of (5.96), yields (5.95) for some constant \(K_{\iota }\) \({>}\) 0.\(\blacksquare \)
5.3.7 Probability That Actual Wait is Zero: \(F_{\iota }(0)\)
The total rate at which zero-wait customers arrive is equal to the total rate at which the SP hits level 0 from below, namely \( \sum _{i=0}^{c-1}g_{i}(0)\) (see definition of \(g_{i}(\cdot )\), \(i=0,..., c-1\) in Sect. 5.3.4). So, \(g_{i}(0)\) is the rate at which customers arrive at the system (remaining inter-arrival time = 0), when there are i customers in service, i = \(0,..., c-1\).
Let \(N_{t}\), \(N_{t}^{=0}\), \(N_{t}^{>0}\) denote respectively the total number of arrivals, the number of arrivals that wait 0, and the number of arrivals that wait \(>0\), during (0, t).
Consider a sample path of \(\left\{ V(t), M(t)\right\} _{t\ge 0}\) (Fig. 5.5). Let \(\mathcal {U}_{t}^{i}(x)\) denote the number of SP upcrossings of level x on sheet i during \(\left( 0, t\right) \), i = \( 0,..., c-1\). Then
Note that \(N_{t}^{=0}\) = \(\sum _{i=0}^{c-1}\mathcal {U}_{t}^{i}(0)\).
The proportion of arrivals that wait 0 is
In the denominator of (5.97)
upon utilizing (5.82) and (5.85).
Explanation of (5.98). \(c\mu \int _{y=0}^{\infty }A(y)f(y)dy\) is the rate at which customers depart after being in the system for a time y, and the immediately next inter-arrival time is \(<y\), summed over all \(y>0\); this is the rate at which next customers wait \({>}\) 0.
Substituting from (5.98) into (5.97) gives
In (5.92) let \(x\uparrow 0\). The SP exit rate from sheet \(c-1\) across level 0 is equal to the SP entrance rate of interval \(\left\{ (0,\infty ), c\right\} \) (sheet c). Thus
Here we do not carry out the procedure to compute \(F_{\iota }(0)\) for general values of c (Eq. (5.99)). In Sect. 5.4.2 below we derive \(F_{\iota }(0)\) explicitly for G/M/2, to indicate the computational procedure.
5.4 G/M/2: PDF of Virtual and of Actual Wait
We now derive the steady-state pdf of the virtual wait and of the actual wait for G/M/2. Consider the process \(\left\{ V(t), M(t)\right\} _{t\ge 0}\). When c = 2, \(M(t)\in \varvec{M} =\left\{ 0, 1, 2\right\} \). Graphically, there are three corresponding sheets in \(\varvec{T}\times \varvec{S}\) labeled 0, 1, 2 (see Fig. 5.6). The analyses below suggest the type of solution approach that may be used for \(c\ge 2\). (The results for c = 2 are applied in [87].)
5.4.1 PDF of Virtual Wait
In G/M/2 the pdf of the virtual wait has the same form as in the general G/M/c model,
For c = 2 the integral equations for sheets 1 and 0 are respectively
as in equations (5.92) and (5.94).
Also \(g_{1}(0)\) = K. The proportion of time that the system has less than 2 occupied servers is
as in (5.88).
Adding corresponding sides of (5.100) and (5.101) and integrating with respect to \(x\in \left( -\infty , 0\right) \), gives
where \(\frac{1}{\varvec{a}}=\int _{u=0}^{\infty }\overline{A}(u)du\) is the mean inter-arrival time.
Taking d / dx in (5.101) gives the relation
Substituting (5.104) and (5.101) into (5.100) gives a differential equation for \(g_{0}(x)\)
whose solution is
We obtain (5.106) because the constant of integration when solving (5.105) is 0, upon using \(\lim _{_{x\downarrow -\infty }}g_{0}(x)\) = 0 and \(\lim _{x\downarrow -\infty }\int _{z=-\infty }^{x}\left( \cdot \cdot \cdot \right) dz=0\).
Since \(\lim _{x\uparrow 0}e^{-\mu x}=e^{0}=1\), in (5.106) letting \(x\uparrow 0\) gives an equation for \(g_{0}(0)\) in terms of K (after making the transformation u = \(-z\)),
or
Equation (5.107) defines the constant \( H_{0}\), which is independent of K.
We now obtain an equation for K. From (5.102) and (5.100),
Solving (5.108) for K gives
where \(H_{0}\) is defined in (5.107).
Thus
upon making the transformation u = \(-x\).
The pdf of the virtual wait is \(\left\{ F(0), f(x)\right\} _{x>0}\), where f(x) = \(Ke^{-\gamma x}\), \(x>0\) and K is specified in (5.109). The probability of a zero wait F(0), is given by (5.110).
5.4.2 PDF of Actual Wait
Equation (5.95) becomes
where
From (5.99) the proportion of arrivals that wait 0 is
Taking d / dx on both sides of (5.100) gives an ordinary differential equation for \(g_{1}(x)\) with solution
where \(H_{1}\) is a constant. Necessarily \(\lim _{x\downarrow -\infty }g_{1}(x) \) = 0, and utilizing \(\lim _{x\downarrow -\infty }e^{\mu x}g_{1}(x)\) = 0 and \(\lim _{x\downarrow -\infty }\int _{z=-\infty }^{x}(\cdot \cdot \cdot )dz\) = 0, leads to \(H_{1}\) = 0.
Additionally, \(\lim _{x\uparrow 0}e^{\mu x}g_{1}(x)\) = \(g_{1}(0)\) = \(f(0)\ \)= K. Letting \(x\uparrow 0\) in (5.113) yields
where
using the transformation u = \(-z\).
Thus, with \(B_{0}\) given in (5.115)
From (5.112)
which is independent of K.
We then calculate \(K_{\iota }\) from the normalizing condition
Applying (5.116) gives
which yields
and
5.4.3 Reduction of G/M/2 PDF to M/M/2 PDF
To enhance intuition, we check that the G/M/2 pdf for the actual wait, given above, reduces to the M/M/c pdf given in (4.56), (4.57) and (4.58) when c = 2. In M/M/2 let \(P_{0}\), \( P_{1}\) be the steady-state probabilities of 0 units and 1 unit in the system, respectively. For M/M/2 the pdfs of the virtual wait and actual wait are the same, due to Poisson arrivals. We now show that for G/M/2 with Poisson arrivals (e.g., G \(\underset{dis}{=}\) Exp\(_{\lambda }\)), \(F_{\iota }(0)\) = \(P_{0}+P_{1}\).
In M\(_{\lambda }\)/M\(_{\mu }\)/2, the standard formulas for \(P_{0}\), \(P_{1}\) and f(x) are
In M/M/2, (5.119) gives
To obtain these values from G/M/2 when G \(\underset{dis}{=}\) Exp\(_{\lambda }\), we first specialize the G/M/2 formula for \(B_{0}\) in (5.115) to M/M/2, by letting \(a(z)=\lambda e^{-\lambda z}, z>0\), and set \(\gamma \) = \(2\mu -\lambda \). This substitution yields \(B_{0}\) = \(\mu /\lambda \). Combining with (5.118) gives
in agreement with (5.120).
The pdf is
since \(\gamma \) = \(2\mu -\lambda \), and from (5.119),
Hence the G/M/2 pdf \(\left\{ F_{\iota }(0);f_{\iota }(x), x>0\right\} \) in (5.121) and (5.122) when G \(\underset{dis}{=}\) Exp\( _{\lambda }\), agrees with the M\(_{\lambda }\)/M\(_{\mu }\)/2 pdf.
5.4.4 Moments of Actual Wait for G/M/2
All statistical moments (about 0) of \(W_{q,\iota }\) can be found using
where \(K_{\iota }\) is given in (5.117). In particular the mean and variance of the actual wait are
The Laplace-Stieltjes transform of the actual wait is
5.5 Discussion
5.5.1 Heavy-Tailed Inter-arrivals
For the LC analysis of G/M/c the inter-arrival times may have a heavy-tailed distribution (see [131]), e.g., a Pareto distribution with
where \({\alpha }\) is the shape parameter. All moments exist up to \( \left\lceil {\alpha }-1\right\rceil \), where \(\left\lceil u\right\rceil \) denotes the smallest integer \(\ge u\). The LC solution technique used in this chapter applies because the solution for \(\gamma \) depends only on the complementary cdf \(\overline{A}(\cdot )\), the probability of the tail of the distribution, and not on whether the distribution mean and variance exist.
Similar remarks apply to inter-arrival times which have a folded Cauchy, or inverse-log distribution, etc. Additional LC results for heavy-tailed inter-arrival times are given in [87].
5.5.2 Model Variants
The LC solution technique in this chapter is useful for analyzing state dependent models. For example, inter-arrival times and/or service rates of arrivals may depend on the number of customers in service, or on the system time of the last departure from the system. LC can be used to analyze other generalizations, e.g., bounded workload, or service rate depending on waiting time. In generalized models, we could derive integral equations for the pdf of wait in a manner similar to that for the standard G/M/c or G/M/1 queue (see, e.g., [19]).
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
Copyright information
© 2017 Springer International Publishing AG
About this chapter
Cite this chapter
Brill, P.H. (2017). G/M/1 and G/M/c Queues. In: Level Crossing Methods in Stochastic Models. International Series in Operations Research & Management Science, vol 250. Springer, Cham. https://doi.org/10.1007/978-3-319-50332-5_5
Download citation
DOI: https://doi.org/10.1007/978-3-319-50332-5_5
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-50330-1
Online ISBN: 978-3-319-50332-5
eBook Packages: Business and ManagementBusiness and Management (R0)