# An exact root-free method for the expected queue length for a class of discrete-time queueing systems

- 26 Downloads

## Abstract

For a class of discrete-time queueing systems, we present a new exact method of computing both the expectation and the distribution of the queue length. This class of systems includes the bulk-service queue and the fixed-cycle traffic-light (FCTL) queue, which is a basic model in traffic-control research and can be seen as a non-exhaustive time-limited polling system. Our method avoids finding the roots of the characteristic equation, which enhances both the reliability and the speed of the computations compared to the classical root-finding approach. We represent the queue-length expectation in an exact closed-form expression using a contour integral. We also introduce several realistic modifications of the FCTL model. For the FCTL model for a turning flow, we prove a decomposition result. This allows us to derive a bound on the difference between the bulk-service and FCTL expected queue lengths, which turns out to be small in most of the realistic cases.

## Keywords

Bulk-service queue Fixed-cycle traffic-light model Roots Contour integrals## Mathematics Subject Classification

60K25 90B22## 1 Introduction

In the analysis of many queues, the probability-generating function (pgf) of the queue length is represented as a rational function with several unknown variables. The classical way of finding the unknowns is to use the analyticity of the pgf inside the unit disk; see [3, 6]. The analyticity implies that each zero of the denominator, i.e., each root of the corresponding characteristic equation, inside the closed unit disk is also a zero of the numerator, which yields a system of linear equations for the unknowns. In the case of a stable system and distinct zeros, it is possible to find all the required variables. The main drawback of this approach is finding the zeros, since, in general, no closed-form expression exists. Moreover, the precision of the found zeros also influences the result. To avoid these problems, some authors suggest approximations of the queue length; see, for example, [11, 16, 20]. Another approach is to use the matrix-analytic method; see [13]. However, this also requires solving a (matrix) equation.

For a certain class of discrete-time queueing systems, we present an exact root-free approach to find the expected queue length and the queue-length distribution. The key point of our method is that the unknown probabilities depend on the zeros of the denominator in a symmetric way and that, as we show, the actual values of the zeros are not important. We apply the residue theorem and find these unknown probabilities in terms of contour integrals. The mean queue length is, in fact, a function of only one such contour integral. This makes our method computationally efficient in comparison with the standard root-finding method. Moreover, our method gives a closed-form solution without implicitly defined variables such as the roots of the characteristic equation in the root-finding method or the rate matrix in the matrix-analytic approach. Thus, our solution can be used, for example, to find asymptotic results for heavy load.

The considered class of queueing systems includes, among others, the bulk-service queue, see [3], and the fixed-cycle traffic-light (FCTL) queue, see [6]. The server in the bulk-service queue serves a fixed-size batch of customers each time unit. If there are fewer customers in the queue, all of them are served. In each time unit, a random number of customers arrives, where the arrivals during different time units are independent of each other. The bulk-service queue also appears as an embedded Markov chain for the continuous-time multi-server *M* / *D* / *s* queue, see [10], or \(M^X/G^B/1\) queue with batch arrivals and batch service. The FCTL model is the basic and key model in traffic-control research and can be seen as a polling system with non-exhaustive time-limited service discipline. The service, visiting and switching times of the server are fixed and deterministic. Unlike most polling systems, the server continues to serve even if the queue empties, as it has no knowledge of the queue length (there are no detectors), cf. [2, 7]. However, if the queue empties during the green (service) time, then, during the rest of the green time, all arriving customers are served instantly, i.e., arriving vehicles proceed without delay. We can also apply our method for queueing systems, where the pgf of the analyzed random variable depends on the *minimal polynomial* of the unknown zeros, i.e., the polynomial that has the same zeros (with the same multiplicity) and has the smallest power. An example of such a system is the discrete-time *G* / *G* / 1 queue; see [18].

In this paper, we also consider a modification of the FCTL model for a lane with turning flow, where, unlike the FCTL model, the customers arriving during green time and finding an empty queue require the same service time as the queued vehicles. For this new model, we prove a decomposition result similar to [5]. Moreover, we prove that given the same arrival process and server capacity, the expected bulk-service queue is bounded from below by the expected *overflow queue* for the FCTL model and from above by the expected overflow queue for the FCTL model for turning flow, where the overflow queue is the queue just after service. These results give us a bound on the difference between these models. We propose several other extensions of the FCTL queue, which include the effects of traffic interruption, for example, due to actuated control for pedestrians or uncertain departure times.

In the numerical results, we compare our method with the root-finding and matrix-analytic approaches. We observe that the root-finding approach can be numerically quite unreliable, while the matrix-analytic approach is much slower than our method. We also apply our method to the FCTL queue and its extensions. In particular, we investigate the impact of the variability of the arrival process on the expected queue length and consider the difference between straight-going and turning flows. In addition, we study effects of traffic disruption.

The paper is structured as follows: The method in its general form is presented in Sect. 2. In Sect. 3, we apply our method to the bulk-service queue and compare it with the root-finding and matrix-analytic approaches in terms of speed and reliability. In Sect. 4, we present several realistic extensions of the FCTL model. Finally, in Sect. 5, we present the conclusions and propose future research directions.

## 2 Method

*X*(

*z*) of the following form:

*D*(

*z*),

*B*(

*z*) and

*f*(

*z*) are known functions such that \(B(1) = 1\), \(f(1) = 0\), and, for each zero \(z_l \in \{z:|z| \leqslant 1, z \ne 1\}\) of the denominator, \(f(z_l) \ne 0\); and \(X(1) = 1\). For the analysis in this section, we do not need

*X*(

*z*) to be a pgf. In what follows, we suppose that the following assumptions on the functions

*B*(

*z*),

*D*(

*z*),

*f*(

*z*) and

*X*(

*z*) hold:

### Assumption 1

(*Analyticity assumption*) For some \(\alpha > 0\), the functions *B*(*z*) and *D*(*z*) are analytic and the function *f*(*z*) is two times differentiable in the disk \(\text{ D }_{1+\alpha } = \{z :|z| < 1+ \alpha \}\). The function *X*(*z*) is continuous in the closed unit disk.

### Assumption 2

*Roots assumption*) The equation

*g*roots \(z_0 = 1, z_1, \dots , z_{g-1}\) in the closed unit disk \(\bar{\text{ D }}_1 = \{z :|z| \leqslant 1\}\). For any \(z \ne w\), \(z, w \in \bar{\text{ D }}_1\), the function

*B*(

*z*) satisfies

Note that from Assumption 2, the following statement is deduced immediately.

### Corollary 1

The equation \(z = B(z)\) has only one root in \(\bar{\text{ D }}_1\), namely 1.

### Remark 1

Without loss of generality, we can assume that \(D(0) \ne 0\). Otherwise, both denominator and numerator can be divided by \(z^n\) for some \(n > 0\) such that the new *D*(*z*) satisfies the condition \(D(0) \ne 0\).

### 2.1 Coefficients expressed in terms of roots

In this subsection, we discuss how \(x_k\), \(k=0,\ldots ,g-1\), depend on the roots of (2).

*X*(

*z*) in the following way:

*h*(

*y*) is a polynomial of degree \(g-1\), and \(y_k\), for \(k = 1,\ldots , g-1\), are zeros of this polynomial. Note that whenever \(z_k\) is a multiple root of the equation \(D(z) = 0\), \(y_k\) is a multiple root of the polynomial

*h*(

*y*) with the same multiplicity. Moreover, according to Assumption 2, \(y_k \ne y_l\) if \(z_k \ne z_l\). Thus,

*h*(

*y*) can be written as

*h*(

*y*), we get, for \(k = 1,\ldots , g-1\), that

### 2.2 Coefficients expressed in terms of contour integrals

### Lemma 1

*F*(

*z*) that is analytic in a neighborhood of \(z_k\), where \(k = 0,\ldots ,g-1\). Then, the residue of the function \(\frac{D'(z)}{D(z)} F(z)\) at \(z_k\) is equal to

### Theorem 1

### Proof

Note that the only singularities of the function \(\frac{D'(z)}{D(z)} \left( \frac{B(z)}{z}\right) ^{k}\) in \({\text{ D }}_{1+\varepsilon }\) are \(0, z_0 = 1, z_1, \ldots , z_{g-1}\); see Fig. 1. Thus, by the residue theorem and Lemma 1, the difference of the integrals on the right-hand side of (7) is equal to \(\sum _{l=0}^{g-1} y_l^k + r_0 - r_0 = y_0^k + \eta _k = \eta _k + 1\), where \(r_0\) is the residue of the function \(\frac{D'(z)}{D(z)} \left( \frac{B(z)}{z}\right) ^{k}\) at 0. \(\square \)

### Remark 2

Strictly speaking, we also need \(\varepsilon < \alpha \); see Assumption 1. However, in many applications, \(\alpha \) is very big or infinite, and, therefore, we omit this requirement hereafter. In Appendix B, we elaborate on how to choose \(\varepsilon \) and \(\delta \).

The following lemma provides a way of finding \(\sigma _k\), \(k = 1,\ldots ,g-1\), using \(\eta _k\), \(k = 1,\ldots ,g-1\). We omit the proof of this lemma since it requires only careful computation of the monomials’ coefficients on the right side of Eq. (8).

### Lemma 2

Thus, we can use formulas (4), (5) and (7), together with Lemma 2, to find the coefficients \(x_k\), \(k = 0,\ldots , g-1\).

### 2.3 Expectation expressed in terms of roots

### 2.4 Expectation expressed in terms of contour integrals

### Remark 3

When *X*(*z*) is a pgf of the queue length, it is also possible to find the variance of the queue length, i.e., \(X''(1) + X'(1) - (X'(1))^2\), in the same way, but since it is a lengthy expression, we omit it here. The application of contour integrals goes further. Under certain conditions, the function *X*(*z*) can be written as an exponent of a contour integral, yielding a Pollaczek integral; see [4], where authors use our factorization result (3).

Note that the expectation \(X'(1)\) represents the average queue length and is a real number. Thus, for \(B'(1) \in \mathbb {R}\), only the real part of the integral (12) should be computed.

### 2.5 Algorithms

In this subsection, we summarize our contour-integral algorithms to compute \(X'(1)\) and the coefficients \(x_k\) using the results of Sects. 2.1, 2.2, 2.3 and 2.4. For computational questions such as how to choose the parameters \(\varepsilon \) and \(\delta \) or how to compute a complex integral, we refer to Appendix B.

### Algorithm 1

- 1.
Find \(\varepsilon > 0\) such that there are only

*g*roots of Eq. (2) in the disk \(\bar{\text{ D }}_{1+\varepsilon }\), using one of two ways described in Sect. B.3. - 2.Compute (the real part of) the integralwhere \(z(\varphi ) = (1+\varepsilon )\mathrm{e}^{i\varphi }\).$$\begin{aligned} I = \int _{-\pi }^{\pi } z(\varphi )\frac{D'(z(\varphi ))}{D(z(\varphi ))} \frac{z(\varphi )}{z(\varphi ) - B(z(\varphi ))} \mathrm{d}\varphi , \end{aligned}$$
- 3.Compute \(X'(1)\) by$$\begin{aligned} X'(1) = \frac{(B'(1)-1)}{2\pi } I + \frac{ B''(1)}{2(1-B'(1))} +g + \frac{f''(1)}{2f'(1)}. \end{aligned}$$(14)

### Remark 4

*F*(

*z*) represents the integration function.

### Algorithm 2

- 1.
Find \(\varepsilon > 0\) such that there are only

*g*roots of Eq. (2) in the disk \(\bar{\text{ D }}_{1+\varepsilon }\), using one of two ways described in Sect. B.3. - 2.
Find \(\delta >0\) such that there are no roots of Eq. (2) in the disk \(\bar{\text{ D }}_{\delta }\), using one of two ways described in Sect. B.2.

- 3.Compute \(\eta _k\), usingwhere, for convenience, \(z = z(\varphi ) = (1+\varepsilon )\mathrm{e}^{i\varphi }\), \(w = w(\varphi ) = \delta \mathrm{e}^{i\varphi }\).$$\begin{aligned} \eta _k = -1 + \frac{1}{2\pi } \int _{-\pi }^{\pi } z\frac{D'(z)}{D(z)} \left( \frac{B(z)}{z}\right) ^k - w\frac{D'(w)}{D(w)} \left( \frac{B(w)}{w}\right) ^k \mathrm{d}\varphi , \end{aligned}$$
- 4.
Compute \(\sigma _k\) by (8) using \(\eta _k\).

- 5.

In Appendix B.1, we consider a simplified algorithm for the case when *B*(*z*) has no roots inside \(\bar{\text{ D }}_1\), which is equivalent to \(B(-1) > 0\) if *B*(*z*) is a pgf. Fortunately, in many applications, the function *B*(*z*) has this property. Therefore, it is often better to use the simplified algorithm as described in Appendix B.1.

### 2.6 Method application in queueing theory

In this subsection, we give some remarks concerning the application of our method. First, we study a special subclass of functions *X*(*z*) of the form (1) for which it is easy to check Assumption 2. This subclass generalizes the form of the queue-length pgf for the bulk-service and FCTL-type queues considered in Sects. 3 and 4. Then, we describe the application to queueing systems that do not have a pgf of the form (1).

*A*(

*z*),

*B*(

*z*) are pgfs. Consider the following assumption.

### Assumption 3

(*Stability assumption*) The functions *A*(*z*) and *B*(*z*) are pgfs and satisfy \(A'(1) < g\) and \(B'(1) < 1\).

The following two lemmas show that Assumptions 1 and 3 imply Assumption 2. Therefore, if the denominator of *X*(*z*) has the form (16), and Assumptions 1 and 3 hold, we can apply our method.

### Lemma 3

Consider a pgf *A*(*z*) that is analytic in the disk \(\text{ D }_{1 + \rho }\) for some \(\rho > 0\). Suppose that \(A'(1) < g\). Then, the equation \(z^g - A(z) = 0\) has exactly *g* roots \(z_0 = 1, z_1, \dots , z_{g-1}\) in \(\bar{\text{ D }}_1\).

### Lemma 4

*B*(

*z*) that is analytic in the disk \(\text{ D }_{1 + \rho }\) for some \(\rho > 0\). Suppose that \(B'(1) < 1\). If \(z \ne w\) and \(z,w \in \bar{\text{ D }}_1\), then

For the proof of Lemma 3, we refer to [1]. The proof of Lemma 4 is given in Appendix A.

### Remark 5

In our examples, the second part, \(B'(1) < 1\), of the stability assumption will follow from the first part, \(A'(1) < g\). However, for the general case, we have to assume that \(B'(1) < 1\) to prove the second part of Assumption 2; see the proof of Lemma 4.

*G*/

*G*/ 1 queue; see [18]. For the

*G*/

*G*/ 1 queue, the generating function of the limiting waiting-time distribution depends either on \(\tilde{h}(z)\) or on \(1 / (z^g \tilde{h}(1/z))\), depending on whether the pgf of the inter-arrival or service time is a rational function, i.e., is equal to \(A_1(z) / A_2(z)\), where \(A_1(z)\) and \(A_2(z)\) are polynomials of (at most) power

*g*. Similar results hold for the queue-length pgf in the case of a bulk-service queue with a random bulk size. The reason for this is that these two systems are governed by the same equation:

*n*, and \(A_n\) and \(B_n\) are the numbers of arrivals and departures at time

*n*, respectively. For the

*G*/

*G*/ 1 queue, \(X_n\) and \(A_n\) are the waiting time and the service time of the \(n{\text {th}}\) customer, respectively, and \(B_n\) is the inter-arrival time between the \(n{\text {th}}\) and \((n+1){\text {st}}\) customers.

## 3 Method comparison

In this section, we consider a discrete-time bulk-service queue. For this example, we compare our contour-integral approach in terms of speed and reliability with the root-finding and matrix-analytic methods. In Sect. 3.1, we describe the model. Then, we apply the considered methods in Sects. 3.2, 3.3 and 3.4. Finally, we present the numerical results in Sect. 3.5 and discuss the differences between the approaches in Sect. 3.6.

### 3.1 Discrete bulk-service queue

Consider a discrete-time queue with bulk service. This means that in each time unit the server serves *g* customers in the queue, and during this time \(A_b\) new customers arrive with a pgf \(A_b(z)\). The server serves only those customers that are present in the queue at the beginning of the time unit. If there are fewer than *g* customers in the queue, all of them are served.

*k*customers in the queue at the beginning of a time unit. Then (see, for example, [3]), we obtain

### 3.2 Our method

*l*customers in the queue, is zero for \(l = 0,\ldots , n-1\), where

*n*is the least possible number of customers that arrive in one time slot. Thus, we suppose that \(A_b(0) \ne 0\). Hence, \(z_k \ne 0\) for every \(k = 1, \ldots , g-1\) and

*I*is given by

### 3.3 Root-finding approach

### 3.4 Matrix-analytic approach

*M*/

*G*/ 1-type queue; see [13]. Consider the Markov chain of the queue length at service completion, i.e., before the arrivals. Then, the transition matrix is a block matrix

*k*arrivals, with \(a_k = 0\) for \(k < 0\). Using the notation for

*M*/

*G*/ 1-type queues, instead of the queue length

*l*we consider a two-dimensional process (

*n*,

*m*), where the level state

*n*is equal to the integer part of the quotient

*l*/

*g*, i.e., \(\lfloor l / g \rfloor \), and the background state

*m*is the remainder of such a division, i.e., \(l - \lfloor l / g \rfloor g\).

*G*defined as the minimal nonnegative solution of the following equation:

*n*are computed recursively using Ramaswami’s formula, see [8]:

*N*can be chosen so that the contribution of the vector \({\varvec{\pi }}_N\) is small, i.e.,

*M*/

*G*/ 1-type queues. For the bulk-service queue, we can use a simplified version of this approach. The average queue length is computed using \({\varvec{\pi }}_0\) and \({\varvec{\pi }}_*=\sum _{i=1}^{\infty }{\varvec{\pi }}_i\), which can be found from the following system of linear equations:

### 3.5 Numerical results

*python*methods for computing integrals, finding polynomial roots and solving linear systems of equations.

Comparison of speed and reliability for the expected queue length

Methods | Root-finding using (21) | Root-finding using (23) | Matrix-analytic using (24) | Matrix-analytic using (25) | Our approach |
---|---|---|---|---|---|

Speed (ms. per run) | 7.15 | 3.37 | 17.73 | 17.69 | 0.99 |

Absolute difference | |||||

\(>0.0001\) | 937 | 95 | 4222 | 0 | 0 |

\(>0.5\) | 305 | 0 | 1018 | 0 | 0 |

Total failures | 1179 | 389 | 0 | 0 | 0 |

Wrong number of roots | 329 | 329 | N.A. | N.A. | N.A. |

Re\(({\mathbb {E} L}) < -\,0.0001\) | 241 | 60 | 0 | 0 | 0 |

Re\(({\mathbb {E} L}) < -\,0.5\) | 112 | 0 | 0 | 0 | 0 |

\(|\mathrm{Im}(\mathbb {E} L)| > 0.0001\) | 788 | 0 | 0 | 0 | 0 |

\(|\mathrm{Im}({\mathbb {E} L})| > 0.5\) | 258 | 0 | 0 | 0 | 0 |

For the root-finding technique, the use of the linear system (21) leads to poor reliability. In almost \(12\%\) of the cases, the approach failed to give a realistic result, where in \(3\%\) of the cases, the number of roots in the unit circle was wrong, and there was no result at all. The root-finding algorithm together with (23) is two times faster and fails in only \(4\%\) of the cases. Note that the failures occur more often for large batch sizes; see Fig. 2. For a batch size of 30, the root-finding method with (21) fails in more than half of the cases. Our approach has no fails for all values of batch sizes and produces realistic results.

*G*, which we find by recursively applying

*g*; see Fig. 3.

### 3.6 Discussion

The main contribution of the paper is our *explicit* method of finding the queue-length distribution. Both the root-finding approach and the matrix-analytic approach require the computation of *implicitly* defined variables, i.e., the roots \(z_1, \ldots , z_{g-1}\) or matrix *G*. For the root-finding approach, this step is error-prone, resulting in poor reliability of the method, while for the matrix-analytic approach, the main issue is the speed. Note that explicit closed-form results are much easier to manipulate to show a number of structural results such as convexity and sensitivity to input parameters or asymptotic behavior.

In Sect. 3.5, we used a simple example of a bulk-service queue with binomial arrivals. For such arrivals, the pgf \(A_b(z)\) is a polynomial, and \(A_n = 0\) for \(n \geqslant c / g + 1\). Thus, we use standard *python* methods to find the roots of the polynomials and do not need to truncate the arrival distribution to find the matrix *G*, which might result in an underestimation of the queue length. For our approach, the required pgf \(A_b(z)\) is usually easy to compute even if it is not a polynomial; see Sect. 4.5 below. Therefore, we do not have to choose a truncation bound as in the existing methods.

We note that, for certain arrival distributions, there are formulas to compute the roots; see, for example, [10]. These formulas contain infinite summations, which should be truncated for numerical results. As we saw in Sect. 3.5, a poor precision of the roots may lead to unrealistic results, which can also happen in the case of a badly chosen truncation bound. For the case of the bulk-service queue, root-free results were obtained in [9]. The average queue length is represented as a (double) infinite summation, which also leads to a truncation problem.

Our results are applicable to a quite general class of queueing systems. This includes several *M* / *G* / 1-type queues, such as bulk-service queues and FCTL-type queues described in Sect. 4, but also discrete *G* / *G* / 1 queues, see Sect. 2.6, for which the matrix-analytic approach is not applicable.

## 4 FCTL-type queues

- 1.
the lane serves a turning flow, so vehicles slow down before departing;

- 2.
pedestrian and/or bicycle traffic lights have an actuated control;

- 3.
just after the intersection there is a bridge or a railway and a part of the green time may be lost;

- 4.
another lane at the intersection does not have a fixed length of the green time due to an actuated control;

- 5.
times between departures differ due to driver distraction and/or vehicle condition and length.

### 4.1 FCTL model

Consider an isolated intersection with fixed-cycle traffic-light control, i.e., the green and red times of each lane are fixed. This system is modeled using a fixed-cycle traffic-light (FCTL) model, which is a basic model in traffic theory and has been extensively studied; see, for example, [6, 17].

Due to the fact that the green and red times are fixed, the queues at different lanes are independent and can be considered separately. Thus, we focus on one approaching lane and consider the queue length for this lane. The analysis for the other lanes is the same. Suppose that each delayed vehicle needs the same time \(\tau \) to depart from the lane. Thus, if there is a long queue at the beginning of the green time, we see a departure every \(\tau \) seconds. In what follows, we suppose that time is split in time intervals, each of \(\tau \) seconds. The effective green time consists of \(g\in \mathbb {N}\) time intervals and the effective red time of \(r \in \mathbb {N}\) time intervals. Thus, not more than *g* delayed vehicles can depart during the green time. We suppose that each cycle starts with *g* green time intervals and then switches to *r* red time intervals, where by green and red time intervals we mean time intervals during green and red time, respectively. Together, this gives \(c = g+r\) time intervals in a cycle.

Let \(Y_{n,m}\) be the number of arrivals during the \(n{\text {th}}\) time interval of the \(m{\text {th}}\) cycle with pgf \(Y_{n,m}(z)\). We make the following two assumptions:

### Assumption 4

(*Independent arrivals assumption*) The numbers of arrivals \(Y_{n,m}\), for \(m = 1,2,\ldots \), \(n = 0,\ldots ,c-1\), are identically distributed and independent of each other.

Thus, we can denote \(Y_{n,m}\) simply as *Y* and \(Y_{n,m}(z)\) as *Y*(*z*). This assumption is realistic for an intersection that lies far enough from other signal-controlled intersections; for example, if the intersection is isolated. However, if the distance between intersections is short, then the vehicles arrive in platoons and this assumption does not hold. Following [17], we add the so-called FCTL assumption:

### Assumption 5

(*FCTL assumption*) If a vehicle arrives during the green time and finds an empty queue, then it proceeds without delay.

Assumption 5 means that if the queue is cleared before the end of the green time, the vehicles that arrive during the remaining green time will immediately depart. Therefore, the queue length will be 0 until the end of the green time. This assumption is quite realistic for a straight-going flow since vehicles that find no queue will proceed without stopping and, thus, are able to depart at the free-flow speed. However, for turning flows, this assumption is not realistic, especially for right turn (or left turn in the case of left-hand traffic), because the turning vehicles need to slow down. Thus, in the next subsection, we also consider the FCTL model with the one-vehicle assumption (see Assumption 6 below) instead of the FCTL assumption.

*n*th time interval during an arbitrary cycle. The pgf exists in the case of a stable system, i.e., when the possible number of departures is greater than the expected number of arrivals:

*Y*vehicles arrive. In terms of pgfs, this means multiplying by

*Y*(

*z*) /

*z*. However, if the queue is empty, it remains empty throughout the time interval. Thus, \(q_{n}\) should not be multiplied by any additional function. During the red time,

*Y*vehicles arrive each time interval and none depart. Therefore, we only multiply by

*Y*(

*z*) in the final two equations of (26).

*the overflow queue*, defined as the queue length at the beginning of the red time:

*Y*(

*z*) is an analytic function in the disk \(\text{ D }_{1+\alpha }\) for some \(\alpha >0\). Then, Assumption 1 holds. Since we consider only stable systems, we assume that \(A'(1) = cY'(1) < g\), which means that \(B'(1) = Y'(1)< 1\), and, therefore, Assumption 3 holds.

### Theorem 2

### 4.2 FCTL model for the turning flow

For some cases, it may turn out that the FCTL assumption does not hold. For example, in the case of a right turn at an intersection (or a left turn in the case of left-hand traffic), vehicles that find the queue empty need to decelerate almost to the speed of a delayed vehicle. Thus, rather than the FCTL assumption, it is logical to make the following assumption:

### Assumption 6

(*One-vehicle assumption*) If a number of vehicles arrives during the green time interval and finds the queue empty, then only one of the vehicles proceeds without delay, and the others form a queue.

*Y*(

*z*) is analytic in some disk \(\text{ D }_{1+\alpha }\).

*g*and

*c*with \(X_{\text {dif}}(1) = 1\) and \(X_{\text {dif}}'(1) = \frac{Y''(1)}{2(1-Y'(1))}\).

Consider the case \(g = c = 1\). In the case of the FCTL assumption, the queue is always empty once it becomes empty since there is no red time during which vehicles can form a queue. Therefore, in the case of stability, i.e., \(Y'(1) < 1\), we get \(X_{0,\textsc {fctl}}(z) = 1\). Thus, we get \(X_{0,\text {1v}} = X_{\text {dif}}(z)\), i.e., \(X_{\text {dif}}(z)\) is the pgf of the queue with \(g=c=1\) and arrivals *Y*(*z*). Hence, we get the following decomposition result (compare with the decomposition results in polling systems, [5]):

### Theorem 3

For arbitrary \(g \leqslant c\), in the case of a stable system, the queue with the one-vehicle assumption can be considered as a sum of two independent queues: the FCTL queue with the same *g*, *c* and the one-vehicle queue with \(g=c=1\).

Note that \(X_{\text {dif}}(z)\) can be also viewed as a pgf of the queue length of a bottleneck, for example, when part of the road has low speed limit and all the vehicles decelerate before this place.

We can as well change the model to allow more than one vehicle, but not all, to pass the junction if the queue is empty. Then, the changes will be only in the function *f*(*z*), and we can easily use our method if Assumptions 1 and 3 hold. For the same reason, there would be a similar decomposition result. The expected queue length in this new case will be less than the expected queue length in the case of the one-vehicle assumption but more than the expected queue length in the case of the FCTL assumption.

### Remark 6

*g*(or fewer) vehicles and then waits one cycle for new arrivals.

From (36), the difference between the two FCTL models, described by Theorem 3, gives an upper bound on the difference between the FCTL and bulk-service models. In Sect. 4.5.2, we show that most of the time this difference is small.

### 4.3 Random green and red times

Suppose we know that with probability \(\theta _{r,g}\) the red time consists of *r* time intervals and the green time after this red time consists of *g* time intervals, \(r,g \in \mathbb {N} \cup \{0\}\), \(r+g \ne 0\). Thus, cycles start with a red time, followed by a green time. The lengths of the red time and the green time are independent of the lengths of red and green times before this cycle. We assume that the length of the green time is at most *N*, i.e., \(\sum _{k=0}^{\infty }\sum _{l=N+1}^{\infty } \theta _{k,l} = 0\). For simplicity, we consider the smallest such *N*, so \(\sum _{k=0}^{\infty }\theta _{k,N} > 0\). As before, in each time interval, *Y* vehicles arrive with pgf *Y*(*z*). We also use the FCTL assumption. One can easily alter the formulas in the case of the one-vehicle assumption.

*X*(

*z*) be the pgf of the overflow queue and \(X_{k}^{r,g}(z)\) be the (conditional) pgf of the queue length at the beginning of the \(k{\text {th}}\) green time unit given that there are

*r*red time units and

*g*green time units in this cycle. Note that when the choices of

*r*and

*g*are known, the pgf of the queue length changes as in (26). Thus,

*r*red and

*g*green time intervals. Hence, with probability \(\theta _{r,g},\) the pgf of the queue length at the beginning of the next red time will be

*X*(

*z*) gives us

*A*(

*z*) and

*Y*(

*z*) are analytic in some disk \(\text{ D }_{1+\alpha }\), \(A'(1) < N\) and \(Y'(1)<1\).

*A*(

*z*) and

*Y*(

*z*) is analytic in \(\text{ D }_a\), the function

*A*(

*z*) is also analytic in \(\text{ D }_a\) and \(A'(z) = \Omega _1(z)Y'(z) + \Omega _2(z)\). For applications,

*A*(

*z*) is always a finite sum, so it is analytic if

*Y*(

*z*) is analytic. Note that

*G*and

*R*are random variables that denote the length of the green and red times during a cycle. Thus, if \(A'(1) < N\), we get \(\mathbb {E}(G+R) Y'(1) < \mathbb {E}G\). It immediately follows that \(Y'(1)<1\). We see once again that the stability assumption holds in the case of a stable system.

Now, we give three examples of possible applications of this model.

#### 4.3.1 Interruption by pedestrians and/or cyclists

Let us focus on one lane and, for simplicity, on one source causing interruptions. Suppose that with probability *p* there is an arrival of a cyclist during a cycle. Suppose that we need \(t_c\) green time intervals for switching on and off the cyclists’ green time. The green time for pedestrians and cyclists can be provided using the green time *g* of this lane or can be added as extra time to the cycle time \(c = g+r\). In the first case, we have \(\theta _{r,g} = 1-p\), \(\theta _{r+t_c, g- t_c} = p\), and in the second case, we have \(\theta _{r,g} = 1-p\), \(\theta _{r+t_c, g} = p\).

#### 4.3.2 Interruption by trains and boats

This case is more-or-less the same as the previous one. The only difference is in the length of interruption. We assume that interruption happens during a cycle with probability *p*. We also assume that if it happens, then all green time is effectively red. Therefore, \(\theta _{r,g} = 1-p\), \(\theta _{c, 0} = p\).

#### 4.3.3 Vehicle-actuated control on another lane

Suppose that another lane has a vehicle-actuated control, and, thus, the length of its green time is not deterministic. In this case, to find an approximation for the queue length on the considered lane, we assume that the lengths of red times during different cycles are independent of each other. Then, if we know the distribution of the green time for the other lane, we get a distribution of the red time for the considered lane. Let \(\theta _{r,g} = p_r\), where \(p_r\) is the probability of the red time length *r*, and *g* is fixed. In the case of a fixed cycle, we take \(\theta _{r,c-r} = p_r\).

### Remark 7

The analysis of the actuated-controlled lane is complicated due to the fact that the arrival and service processes are connected. We leave this problem for future research.

### 4.4 Uncertain departure time

*p*. In this way, we compensate for the uncertainty in the departures. The distribution of the queue length in this model will be the same as the distribution in our new model. So, we consider the case that the number of the arrivals during the green time interval has pgf \(Y(z) (pz+(1-p))\). However, during the red time, we have still

*Y*(

*z*) arrivals. Hence, the pgf of the overflow queue is given by the following formula:

*Y*(

*z*) is analytic in some \(\text{ D }_{1+\alpha }\), and the system is stable, i.e., \(cY'(1) + gp < g\).

### 4.5 Numerical results

In this subsection, we present the numerical results for FCTL-type models. First, we consider the impact of the variability of the arrival process for the FCTL queue. Then, we discuss the difference between the FCTL assumption and the one-vehicle assumption. Finally, we study the impact of the traffic interruptions caused by cyclists and uncertain departure times. Further numerical results can be found in the technical report [14].

#### 4.5.1 Variability of the arrival process

The considered types of the arrival process

Type of arrivals | Pgf | Variance |
---|---|---|

Bernoulli | \(\lambda z + (1-\lambda )\) | \(\lambda - \lambda ^2\) |

Binomial | \(\left( \frac{\lambda }{n}z + 1-\frac{\lambda }{n}\right) ^n\) | \(\lambda - \frac{\lambda ^2}{n}\) |

Poisson | \(\mathrm{e}^{\lambda (z-1)}\) | \(\lambda \) |

Negative binomial | \(\left( \frac{n}{n + \lambda - \lambda z}\right) ^{n}\) | \(\lambda + \frac{\lambda ^2}{n}\) |

Note that Bernoulli arrivals have the least possible variance for a fixed \(\lambda \). Indeed, the variance of an arbitrary arrival process with rate \(\lambda \) is equal to \(Y''(1) + Y'(1) - (Y'(1))^2 \geqslant \lambda - \lambda ^2\). In what follows, the parameter *n* of both the binomial and the negative binomial distribution is set to be equal to 2.

The differences (in seconds) in the expected delay for different types of arrival process, \(c=60\) and load \(\rho = 0.9833\)

Difference | \(g=5\) | \(g=15\) | \(g=30\) | \(g = 40\) |
---|---|---|---|---|

\(\mathbb {E}\text{ D }_{\mathrm{negbin}} - \mathbb {E}\text{ D }_{\mathrm{pois}}\) | 29.1472 | 28.6778 | 28.1833 | 27.7916 |

\(\mathbb {E}\text{ D }_{\mathrm{pois}} - \mathbb {E}\text{ D }_{\mathrm{binom}}\) | 29.1369 | 28.6156 | 28.0097 | 27.5466 |

\(\mathbb {E}\text{ D }_{\mathrm{binom}} - \mathbb {E}\text{ D }_{\mathrm{bern}}\) | 29.1258 | 28.5392 | 27.7332 | 27.0498 |

Our first observation is that the higher the variability of the arrival process, the longer the expected delay. However, for each green time *g*, the difference is significant only for a load higher than 0.8. As we can see, for high load, the relative difference between expected delays for various types of arrivals is increasing as the green time increases. However, the absolute difference is decreasing. For load \(\rho = 0.9833\) (the highest load in the figures) and \(g = 5, 15, 30, 40\), the absolute differences are given in Table 3. In the table, we use \(\mathbb {E}\text{ D }_{\mathrm{bern}}\), \(\mathbb {E}\text{ D }_{\mathrm{binom}}\), \(\mathbb {E}\text{ D }_{\mathrm{pois}}\), \(\mathbb {E}\text{ D }_{\mathrm{negbin}}\) to express the expected delay in the cases of Bernoulli, binomial, Poisson and negative binomial arrivals, respectively.

Next, we consider the probabilities \(q_k\) of a queue being empty for \(k = 0, \ldots , g-1\). In Fig. 5, for \(g = 10\), \(c = 20\) and \(\lambda = 0.2, 0.45,\) these probabilities are plotted as functions of *k*. For fixed *g*, *c* and \(\lambda \), the sum of the probabilities is the same for various types of arrival, but the distributions of this sum are different. As we see, for all arrival rates, at the beginning of the green time the probability of a queue being empty is lower for the arrival processes that have lower variability, whereas at the end of green time the situation is reversed. The graphs look very different depending on the arrival rates. For low arrival rates, the graphs are concave and the difference between graphs for different arrival types is small. For high arrival rates, the graphs are convex and the relative difference between arrival types is larger.

### Remark 8

The speed and reliability of our method, which we showed in Sect. 3.5, allows us to consider the green time allocation problem for an isolated traffic-light intersection. This is the problem of choosing the green time length (value of *g*) for different lanes under constraints on the total green time; see [14].

#### 4.5.2 Comparing the FCTL and one-vehicle assumptions

Note that if at an intersection there are at least two conflicting “main” phases, then both of them use less than half of the cycle time. Thus, in the case of a stable system, the arrival rate is lower than 0.5. If we consider, for example, Poisson arrivals, the expected extra delay is \(\frac{1}{\lambda } \cdot \frac{\lambda ^2}{2(1-\lambda )} \leqslant \frac{1}{2(1-\lambda )} \leqslant 1\) time interval, i.e., not more than 2 s. Therefore, for most of the cases the extra delay will be very short. Similarly, in these cases, the extra queue length is less than one vehicle.

As we have shown, the absolute difference between FCTL and one-vehicle models is quite small. However, it is interesting to consider the relative difference. For the same settings as in Fig. 4, we plot the relative difference in the expected delay in Fig. 7.

#### 4.5.3 Disruption of the traffic

*p*be the probability of cyclists arrival during the cycle. In Fig. 8, we plot the overflow queue as a function of the rate for different

*p*and

*g*and fixed \(c=60\). In each graph we plot only up to load \(\rho = 0.975\). The arrival process is assumed to be Poisson. As we see, the first way to deal with cyclists is highly disadvantageous for the lane. It significantly decreases the capacity of the lane and increases the overflow queue. The effect is stronger for a shorter green time. The conclusion is that it is better, if possible, to increase the cycle time.

#### 4.5.4 Uncertain departure times

Consider the FCTL model with uncertain departure times that was presented in Sect. 4.4. In Fig. 9, we plot the expected overflow queue as a function of the arrival rate for different probabilities of departure. We suppose that, on average, a vehicle departs in 2 s. The length of the time interval is set to be equal to \(\tau = 2 p\) seconds, where *p* is the probability of departure. The arrival process is assumed to be Poisson. We fixed the cycle time (in seconds) and consider two different green times. Depending on \(p = 1,\, 5/6,\, 5/7\), there are on average five departures in 5, 6 or 7 time intervals.

The uncertainty in departure times does not influence the capacity of the system but only increases the overflow queue and, consequently, the delay. The overflow queue is a bit longer for a green time of 10 s (about 2 vehicles for the highest considered load 0.9833). The effect of the uncertainty becomes noticeable for loads over 0.8. Note that the average overflow queue is almost 0 for loads up to 0.7–0.8 (depending on the green time), which means that most of the vehicles are served during one cycle time after the arrival.

## 5 Conclusions

We have presented a new method to calculate the expectation and distribution of the queue length for several discrete-time queueing systems. The solution is given in terms of contour integrals without any implicitly defined variables. We successfully applied this method to the bulk-service queue and several traffic-light models, providing insights in traffic behavior. For the FCTL model with the one-vehicle assumption, we proved a decomposition result, which allowed us to give a bound on the difference between the FCTL and bulk-service queue-length expectations, which turns out to be small for many relevant applications.

We have shown that our method outperforms the classic root-finding and matrix-analytic methods in terms of speed and reliability. Using our method, the queue-length expectation can be found more than 7 and 17 times faster compared to the root-finding and matrix-analytic methods, respectively. Moreover, we found that the root-finding approach can fail to give a realistic result. This happens more often for the case of many roots, where up to \(10\%\) of the considered cases result in no answer and \(40\%\) in the negative or nonreal (complex) expected queue length. The speed of the matrix-analytic approach depends on the size of the block matrices, which coincides with the number of roots, and can be up to 54 times slower than our approach. Future work will be on extending our integral method to a wider range of systems.

## Notes

### Acknowledgements

We would like to thank the anonymous reviewers and the associate editor for their valuable remarks and suggestions.

## References

- 1.Adan, I.J.B.F., van Leeuwaarden, J.S.H., Winands, E.M.M.: On the application of Rouché’s theorem in queueing theory. Oper. Res. Lett.
**34**(3), 355–360 (2006)CrossRefGoogle Scholar - 2.Al Hanbali, A., de Haan, R., Boucherie, R.J., van Ommeren, J.K.: Time-limited polling systems with batch arrivals and phase-type service times. Ann. Oper. Res.
**198**(1), 57–82 (2012)CrossRefGoogle Scholar - 3.Bailey, N.T.: On queueing processes with bulk service. J. R. Stat. Soc. Ser. B (Methodological)
**16**, 80–87 (1954)Google Scholar - 4.Boon, M.A.A., Janssen, A.J.E.M., van Leeuwaarden, J.S.H., Timmerman, R.W.: Pollaczek contour integrals for the fixed-cycle traffic-light queue. Queueing Syst.
**91**(1–2), 89–111 (2019)CrossRefGoogle Scholar - 5.Boxma, O.J., Groenendijk, W.P.: Pseudo-conservation laws in cyclic-service systems. J. Appl. Probab.
**24**(04), 949–964 (1987). https://doi.org/10.1017/S002190020011681X CrossRefGoogle Scholar - 6.Darroch, J.N.: On the traffic-light queue. Ann. Math. Stat.
**35**(1), 380–388 (1964). https://doi.org/10.1214/aoms/1177703761 CrossRefGoogle Scholar - 7.Frigui, I., Alfa, A.S.: Analysis of a time-limited polling system. Comput. Commun.
**21**(6), 558–571 (1998)CrossRefGoogle Scholar - 8.He, Q.M.: Fundamentals of Matrix-Analytic Methods, vol. 365. Springer, Berlin (2014)CrossRefGoogle Scholar
- 9.Janssen, A.J.E.M., van Leeuwaarden, J.S.H.: Analytic computation schemes for the discrete-time bulk service queue. Queueing Syst.
**50**(2–3), 141–163 (2005)CrossRefGoogle Scholar - 10.Janssen, A.J.E.M., van Leeuwaarden, J.S.H.: Back to the roots of the M/D/s queue and the works of Erlang. Crommelin and Pollaczek. Stat. Neerl.
**62**(3), 299–313 (2008)CrossRefGoogle Scholar - 11.McNeil, D.R.: A solution to the fixed-cycle traffic light problem for compound Poisson arrivals. J. Appl. Probab.
**5**(3), 624–635 (1968). https://doi.org/10.1017/S0021900200114457 CrossRefGoogle Scholar - 12.Miller, A.J.: Settings for fixed-cycle traffic signals. OR
**14**(4), 373–386 (1963). https://doi.org/10.2307/3006800 CrossRefGoogle Scholar - 13.Neuts, M.F.: Matrix-analytic methods in queuing theory. Eur. J. Oper. Res.
**15**(1), 2–12 (1984)CrossRefGoogle Scholar - 14.Oblakova, A., Al Hanbali, A., Boucherie, R.J., Ommeren, J.C.W., Zijm, W.H.M.: Exact expected delay and distribution for the fixed-cycle traffic-light model and similar systems in explicit form. Memorandum Faculty of Mathematical Sciences University of Twente (2056) (2016)Google Scholar
- 15.Riska, A., Smirni, E.: Exact aggregate solutions for M/G/1-type Markov processes. In: Calzarossa, M.C., Tucci, S. (eds.) ACM SIGMETRICS Performance Evaluation Review, vol. 30, pp. 86–96. ACM, New York (2002)Google Scholar
- 16.van den Broek, M.S., van Leeuwaarden, J.S.H., Adan, I.J.B.F., Boxma, O.J.: Bounds and approximations for the fixed-cycle traffic-light queue. Transp. Sci.
**40**(4), 484–496 (2006). https://doi.org/10.1287/trsc.1050.0146 CrossRefGoogle Scholar - 17.van Leeuwaarden, J.S.H.: Delay analysis for the fixed-cycle traffic-light queue. Transp. Sci.
**40**(2), 189–199 (2006). https://doi.org/10.1287/trsc.1050.0125 CrossRefGoogle Scholar - 18.van Ommeren, J.C.W.: The discrete-time single-server queue. Queueing Syst.
**8**(1), 279–294 (1991)CrossRefGoogle Scholar - 19.Vinberg, E.B.: A Course in Algebra, vol. 56. American Mathematical Society, Providence (2003). https://doi.org/10.1090/gsm/056 Google Scholar
- 20.Webster, F.V.: Traffic signal settings. Technical Report (1958)Google Scholar

## Copyright information

**Open Access**This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.