Abstract
Queueing systems with random resource requirements, in which an arriving customer, in addition to a server, demands a random amount of resources from a shared resource pool, have proved useful to analyze wireless communication networks. The stationary distributions of such queuing systems are expressed in terms of truncated convolution powers of the cumulative distribution function of the resource requirements. Discretization of the cumulative distribution function and the application of the fast Fourier transform are a traditional way of calculating convolutions. We suggest finding truncated convolution powers of the cumulative distribution functions by calculating the convolution powers of the truncated cumulative distribution functions via fast Fourier transform. This radically decreases computational complexity. We introduce the concept of resource load and investigate the accuracy of the proposed method at low and high resource loads. It is shown that the proposed method makes it possible to quickly and accurately calculate truncated convolution powers required for the analysis of queuing systems with random resource requirements.
1. Introduction
When queuing theory is applied to modeling modern information technology systems, one should take into account various system’s features, such as the reliability of a radio channel in wireless communication networks. The latest models from references [1,2] are widely used for the analysis of such networks. In these models, the analytical solution is often cumbersome or difficult to solve and there is a need for approximate [3] or special [4] computational algorithms.
Resource queuing systems, in which an arriving customer, in addition to a server, demands a random amount of resources from a shared resource pool, have proved useful to analyze wireless communication networks. The steady state distributions of such systems are expressed in terms of truncated convolution powers of the cumulative distribution function (CDF) of the resource requirement. The problem of calculating convolution powers of a CDF arises in solving many problems of queuing theory. Its solution is facilitated if the Laplace–Stieltjes transform (LST) of the CDF is known. In this case, the convolution can be found using tables [5,6], or by numerically reversing the LST [7,8]. The method of numerical transform inversion can be successfully applied for the analysis of some resource queueing systems with discrete CDF of resource requirements, such as product-form loss networks [9,10,11].
In practice, the need often arises for calculating convolutions of an exotic continuous CDF with unknown LST [12,13,14]. An alternative method in such cases is the numerical calculation of convolutions by discretization of the initial distribution functions and then using the discrete Fourier transform (DFT) [15]. When computing convolutions numerically, it is convenient to choose some discretization interval and to approximate the CDF of a continuous nonnegative random variable using its values at 0, , , .... Ackroyd et al. [16,17] used two very simple approximations and , where denotes the integral part of , thus putting upper and lower bounds on CDF . In reference [17] it was shown that the n-fold convolutions of these approximations always satisfy the inequalities . A more accurate approximation, , was used in reference [18] to compute the CDF of stationary waiting time in a single server queue with general inter-arrival and service time distributions by means of the fast Fourier transform (FFT). An algorithm for computing the high-order convolution of CDFs representable as the mixture of continuous and discrete components was proposed in reference [19]. Schaller and Temnov [20] analyze an error in the quintile function of the n-fold convolution and applied FFT for the convolution of heavy-tailed distributions. A general-purpose efficient and precise algorithm based on FFT for convolution of two CDFs is considered in reference [21]. In insurance mathematics, recursive schemes to compute compound distributions have been in use for a long time [22]. A comparison of recursion schemes and algorithms based on FFT can be found in references [20,23,24]. Errors of compound distributions computations are investigated in references [25,26].
For a wide range of Markovian resource queueing systems, the stationary distribution of the total amount of occupied resources is given by a truncated compound distribution [27]. In order to obtain the stationary distribution for a resource queueing system of capacity it is necessary to compute truncated convolution powers of the resource requirement CDF. The existing computational methods [28,29] calculate some performance metrics for the resource systems but not the entire stationary distribution. In this paper we develop an algorithm for the computation of sequences of truncated convolution powers of continuous CDF and truncated compound distributions via FFT. Instead of truncation of convolution powers we calculate convolution powers of truncated CDFs, which radically decreases computational complexity. We also propose a new approximation of continuous CDF by arithmetic CDF and compare it with . In the next section we describe a class of Markovian resource queuing systems to which the results of this paper are applicable. The computation method is detailed in Section 3. Section 4 presents several numerical experiments, in which we compute series of truncated convolutions and analyze the accuracy of the proposed method. The results are discussed in Section 5.
In the remainder of the paper we adopt the following notation: denotes the set of nonnegative real numbers, denotes the n-fold convolution of CDF , denotes the convolution of sequences and , and if and otherwise.
2. Markovian Resource Queueing Systems
Consider a queuing system that can be described by a process with a finite state space , whose paths are continuous on the right and have limits on the left. Customers arrive and leave the system one by one. We use to denote the arrival times and to denote the departure times. We assume that the process describes the system so that for any of its states it is possible to determine the number of customers in the system. We denote the maximum number of customers in the system by L and split the state space into disjoint subsets ,
In a resource queuing system, an arriving customer requires a certain amount of resources. denotes the maximum amount of the resource and the resource quantities requested by -th customer. Information about resources occupied at time t is stored as the vector of the length , where is the amount of resource occupied by the customer with the number . The customer arriving at time is admitted to the system only if and the requested resource quantity can be provided, i.e., if where is the total amount of resources occupied at time .
All customers in the system are numbered. If the system accepts the customer arriving at , it will be assigned a number from the interval . The numbers assigned to the customers before , will be increased by one. If, at the service completion time , the system leaves the customer with a number , the numbers assigned to the customers before will be reduced by one. For example, in the “First In First Out” service discipline, the numbers of incoming and serviced customers are determined by and , and for the “Last In First Out” service discipline, we have and .
We assume that the process is a homogeneous Markov jump process with a state space , with . The sojourn time in each state has an exponential distribution with a parameter depending only on the state i of the system. Additionally, the vector of occupied resources can change only upon customer arrivals and departures. With , we denote the stationary probabilities of the system states in the case of unlimited resources. For the Markovian resource queueing systems considered here, probabilities yield a solution to the steady-state equations with a block tri-diagonal generator [27].
3. A Method for Computing the Stationary Distribution
Consider the stationary probabilities of the process ,
For a wide range of resource queueing systems described in Section 1, the stationary distribution of has the product form:
where is the CDF of the customer resource requirements and is the normalizing constant:
Necessary and sufficient conditions for the product-form (Equation (2)) of the stationary distribution (Equation (1)) can be found in reference [27].
It follows from Equation (2) that the stationary distribution
of the total amount of occupied resources is given by the truncated compound distribution:
where
is the stationary distribution of the number of customers in the system.
In order to find the stationary distribution (Equations (2) and (3)) of resource queueing systems, one should compute a series of convolutions , in the interval . These functions are related by the following recursion formula:
For computing we approximate by some step function with jumps of size at , , where . The convolutions are also step functions and their jumps at are related by the recursion formula:
Thus, the task of computing approximately the integrals in Equation (4) depends on computing the convolution powers of the sequence .
3.1. Computing Convolutions via the Discrete Fourier Transform
The method for computing convolutions by means of the forward and inverse discrete Fourier transforms (DFT) is well known [15]. Let and be two finite sequences. Choose a whole number and let and denote the DFTs of the sequences and over the range from 0 to :
where . Now the elements of the convolution are given by the inverse DFT:
3.2. Computing the Truncated Convolutions
The procedure described above allows computing consecutively convolutions (Equation (5)). This requires the calculation of the DFTs of the convolution ,
over the range of length which increases with .
Equation (5) can be quickened further in the following way. Note that there is no need to calculate the values of for since they are not present in Equations (4) and (5). For any given sequence of length , let denote the sequence of its first K + 1 members. Obviously, probabilities of Equation (2) will remain unchanged if we replace with their truncations in Equations (2) and (3). It follows from Equation (5) that the truncated sequences satisfy the recursion relation:
There are two options for calculating truncated convolution powers , : calculation of convolution powers using the recursion of Equation (5) with their subsequent truncation, and the calculation of the truncated convolution powers using the recursion of Equation (6). In the first case the forward and inverse DFTs deal with sequences with length , , while in the second case DFTs deal with sequences of equal size . For large L it radically decreases computational time because the total length (L − 1)M2 of sequences
, , is much smaller than the total length of sequences , . Computation time of sequences can be substantially reduced further using FFT with set equal to a power of 2 [15], for example:
3.3. Computing the Stationary Distribution
From the above it follows that one can compute the stationary distribution of a resource queueing system via FFT in the following steps:
- Choose a whole number and a discretization step size .
- Choose a step function with jumps of size at , that would approximate CDF .
- Apply FFT and compute the sequences , using formulae (6).
- Define the functions
- Obtain the stationary state probabilities , , of the system with unlimited resources.
- Use distribution , , and the approximations given by Equations (2) and (4) to compute the stationary distribution of the system with limited resources.
4. Numerical Examples
To approximate the resource requirement CDF , it is convenient to use one of the previously mentioned functions (see Figure 1):
Figure 1.
The resource requirement cumulative distribution function (CDF) (solid line) and its approximations: (a) dashed line –, dotted line –; (b) dotted line –.
We use because it approximates closer than and . We also consider a new approximation:
which, in the interval , equals the average value of obtained approximately using the trapezoidal rule [30]:
The plot of is similar to and, therefore, not shown in Figure 1.
To verify the accuracy of the proposed method, it is necessary to compare the obtained approximate values of truncated convolution powers with their exact values , The gamma distribution
is well suited for these purposes because it has a useful property facilitating computation of exact values of convolution powers:
We compare the exact values of with their approximations and obtained using the method proposed in Section 3.2. The gamma distribution was calculated via the incog procedure from reference [31], and the convolutions were found via FFT using the ffako procedure from reference [32].
Now we consider the case where the total amount of system resources and the interval is divided into subintervals. Figure 2 shows the approximation errors
as functions of for various values of the mean and the square of the coefficient of variation of the resource requirements. The time needed to compute the series of truncated convolutions of length 250 on a PC with an Intel i5-7200 2.5 GHz processor did not exceed 20 min. For s < 1, the approximation errors and were under 0.0001 and the difference between them was negligible. Therefore, only results for s > 1 are shown in Figure 2. Computational errors grew with the coefficient of variation and have maximum value mainly for small Table 1 shows the maximum computational errors for the cases depicted in Figure 2.
Figure 2.
The approximation errors (solid lines) and (dashed lines) as functions of : (a) ; (b) ; (c) ; (d) ; (e) ; (f) ; (g) ; (h) ; (i) .
Table 1.
Maximum computational errors when calculating the convolutions for .
5. Discussion
The levels of light and heavy load in resource queueing systems can vary significantly since they depend on specific for these systems performance metrics. When speaking of resource load, we refer to:
which allows estimation of the extent to which the system’s resources suffice when it contains customers. The resource load grows with . For any given resource load the corresponding maximum system capacity under which the resource load does not exceed is given by .
In the plots of Figure 2, three ranges of can be clearly distinguished: those of light, moderate, and heavy resource load. Light and high load areas are the areas at the beginning and the end of the n axis respectively, where the approximation error rapidly decreases. The light load area is the area with poorest computational accuracy, especially if the variance of the resource requirements is large (see Table 1). Apparently, this is because for the values of and in the interval approach 0 as grows large. In the range of moderate resource load, which is located between light and high load areas, the computational accuracy is mostly high, although it may decrease when approaching the heavy load area. The proposed discretization technique via function yields better or similar results as via function . All in all, FFT permits computing long series of truncated convolution powers with sufficient accuracy.
Author Contributions
Conceptualization, V.A.N. and K.E.S.; methodology, V.A.N.; validation, V.A.N.; writing—original draft preparation, Y.V.G.; writing—review and editing, Y.V.G.; examples, Y.V.G.; supervision, K.E.S.; project administration, K.E.S. All authors have read and agreed to the published version of the manuscript.
Funding
The publication has been prepared with the support of the “RUDN University Program 5-100” (recipient K.E.S., supervision and project administration). The reported study was partially funded by RFBR, project number 18-07-0576 (Y.V.G., review and editing) and project number 19-07-00933 (Y.V.G., original draft preparation).
Acknowledgments
The authors are sincerely grateful to the reviewers for their helpful comments, which have significantly improved the quality of the paper.
Conflicts of Interest
The authors declare no conflict of interest.
References
- Naumov, V.; Samouylov, K. Analysis of multi-Resource loss system with state-Dependent arrival and service rates. Probab. Eng. Inf. Sci. 2017, 31, 413–419. [Google Scholar] [CrossRef]
- Lisovskaya, E.Y.; Moiseev, A.N.; Moiseeva, S.P.; Pagano, M. Modeling of Mathematical Processing of Physics Experimental Data in the Form of a Non-Markovian Multi-Resource Queuing System. Russ. Phys. J. 2019, 61, 2188–2196. [Google Scholar] [CrossRef]
- Zeifman, A.; Satin, Y.; Korolev, V.; Shorgin, S. On truncations for weakly ergodic inhomogeneous birth and death processes. Int. J. Appl. Math. Comput. Sci. 2014, 24, 503–518. [Google Scholar] [CrossRef]
- Sztrik, J.; Gál, T. A recursive solution of a queueing model for a multi-Terminal system subject to breakdowns. Perform. Eval. 1990, 11, 1–7. [Google Scholar] [CrossRef]
- Doetsch, G. Handbuch der Laplace-Transformation; Birkhäuser: Basel, Switzerland, 1956; Volumes I-III. [Google Scholar]
- Oberhettinger, F.; Badii, L. Tables of Laplace Transforms; Springer-Verlag: Berlin, Germany, 1973. [Google Scholar]
- Abate, J.; Choudhury, G.L.; Whitt, W. An Introduction to Numerical Transform Inversion and Its Application to Probability Models. In Computational Probability. International Series in Operations Research & Management Science; Grassmann, W.K., Ed.; Springer: Boston, MA, USA, 2000; Volume 24, pp. 257–323. [Google Scholar]
- Cohen, A.M. Numerical Methods for Laplace Transform Inversion; Springer: New York, NY, USA, 2007. [Google Scholar]
- Choudhury, G.L.; Leung, K.K.; Whitt, W. An algorithm to compute blocking probabilities in multi-rate multi-class multi-resource loss models. Adv. Appl. Probab. 1995, 27, 1104–1143. [Google Scholar] [CrossRef]
- Choudhury, G.L.; Leung, K.K.; Whitt, W. Efficiently Providing Multiple Grades of Service with Protection Against Overloads in Shared Resources. Bell Labs Tech. J. 1995, 74, 50–63. [Google Scholar] [CrossRef]
- Choudhury, G.; Leung, K.; Whitt, W. An inversion algorithm to compute blocking probabilities in loss networks with state-dependent rates. IEEE/ACM Trans. Netw. 1995, 3, 585–601. [Google Scholar] [CrossRef]
- Sopin, E.; Samouylov, K.; Vikhrova, O.; Kovalchukov, R.; Moltchanov, D.; Samuylov, A. Evaluating a Case of Downlink Uplink Decoupling Using Queuing System with Random Requirements. In Internet of Things, Smart Spaces, and Next Generation Networks and Systems; Galinina, O., Balandin, S., Koucheryavy, Y., Eds.; Springer: Cham, Switzerland, 2016; pp. 440–450. [Google Scholar] [CrossRef]
- Begishev, V.; Moltchanov, D.; Sopin, E.; Samuylov, A.; Andreev, S.; Koucheryavy, Y.; Samouylov, K. Quantifying the Impact of Guard Capacity on Session Continuity in 3GPP New Radio Systems. IEEE Trans. Veh. Technol. 2019, 68, 12345–12359. [Google Scholar] [CrossRef]
- Zheng, K.; Hu, F.; Wang, W.; Xiang, W.; Dohler, M. Radio resource allocation in LTE-advanced cellular networks with M2M communications. IEEE Commun. Mag. 2012, 50, 184–192. [Google Scholar] [CrossRef]
- Nussbaumer, H.J. Fast Fourier Transform and Convolution Algorithms, 2nd ed.; Springer: Berlin, Germany, 1990. [Google Scholar]
- Ackroyd, M. Computing the Waiting Time Distribution for the G/G/1 Queue by Signal Processing Methods. IEEE Trans. Commun. 1980, 28, 52–58. [Google Scholar] [CrossRef]
- Ackroyd, M.; Kanyangarara, R. Skinner’s Method for Computing Bounds on Distributions and the Numerical Solution of Continuous-Time Queueing Problems. IEEE Trans. Commun. 1982, 30, 1746–1749. [Google Scholar] [CrossRef]
- Grubel, R. Algorithm AS 265: G/G/1 Via Fast Fourier Transform. J. R. Stat. Soc. Ser. C Appl. Stat. 1991, 40, 355. [Google Scholar] [CrossRef]
- Herald of the Bauman Moscow State Technical University. Series Natural Sciences. Her. Bauman Mosc. State Tech. Univ. Ser. Nat. Sci. 2020, 3, 106–119. [Google Scholar] [CrossRef]
- Schaller, P.; Temnov, G. Efficient and Precise Computation of Convolutions: Applying Fft To Heavy Tailed Distributions. Comput. Methods Appl. Math. 2008, 8, 187–200. [Google Scholar] [CrossRef]
- Ruckdeschel, P.; Kohl, M. General Purpose Convolution Algorithm in S 4 Classes by Means of FFT. J. Stat. Softw. 2014, 59, 1–25. [Google Scholar] [CrossRef]
- Broffitt, J.D.; Klugman, S.A.; Panjer, H.H.; Willmot, G.E. Loss Models: From Data to Decisions. J. Am. Stat. Assoc. 1999, 94, 341. [Google Scholar] [CrossRef]
- Bühlmann, H. Numerical evaluation of the compound Poisson distribution: Recursion or Fast Fourier Transform? Scand. Actuar. J. 1984, 1984, 116–126. [Google Scholar] [CrossRef]
- Embrechts, P.; Frei, M. Panjer recursion versus FFT for compound distributions. Math. Methods Oper. Res. 2008, 69, 497–508. [Google Scholar] [CrossRef]
- Grübel, R.; Hermesmeier, R. Computation of Compound Distributions I: Aliasing Errors and Exponential Tilting. ASTIN Bull. 1999, 29, 197–214. [Google Scholar] [CrossRef]
- Grübel, R.; Hermesmeier, R. Computation of Compound Distributions II: Discretization Errors and Richardson Extrapolation. ASTIN Bull. 2000, 30, 309–331. [Google Scholar] [CrossRef]
- Naumov, V.; Samouylov, K. Product-form markovian queueing systems with multiple resources. Probab. Eng. Inf. Sci. 2019, 1–9. [Google Scholar] [CrossRef]
- Samouylov, K.; Sopin, E.; Vikhrova, O.; Shorgin, S. Convolution algorithm for normalization constant evaluation in queuing system with random requirements. AIP Conf. Proc. 2017, 1863, 90004. [Google Scholar] [CrossRef]
- Vikhrova, O.G. About Probability Characteristics Evaluation in Queuing System with Limited Resources and Random Requirements. Rudn. J. Math. Inf. Sci. Phys. 2017, 25, 209–216. [Google Scholar] [CrossRef]
- Davis, P.J.; Rabinowitz, P. Methods of Numerical Integration, 2nd ed.; Academic Press: Orlando, FL, USA, 1984. [Google Scholar]
- Zhang, S. Computation of Special Functions. Am. J. Phys. 1997, 65, 355. [Google Scholar] [CrossRef]
- Engeln-Müllges, G.; Uhlig, F. Numerical Algorithms with Fortran; Springer-Verlag: Berlin, Germany, 1996. [Google Scholar]
© 2020 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).