Next Article in Journal
The Calculation of the Density and Distribution Functions of Strictly Stable Laws
Next Article in Special Issue
Analysis of the Message Propagation Speed in VANET with Disconnected RSUs
Previous Article in Journal
On the Selective Vehicle Routing Problem
Previous Article in Special Issue
On Probability Characteristics for a Class of Queueing Models with Impatient Customers
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Computing the Stationary Distribution of Queueing Systems with Random Resource Requirements via Fast Fourier Transform

by
Valeriy A. Naumov
1,
Yuliya V. Gaidamaka
2,3,* and
Konstantin E. Samouylov
2,3
1
Service Innovation Research Institute, 8 A Annankatu, 00120 Helsinki, Finland
2
Applied Informatics and Probability Department, Peoples’ Friendship University of Russia (RUDN University), Miklukho-Maklaya St. 6, Moscow 117198, Russian
3
Institute of Informatics Problems, Federal Research Center “Computer Science and Control” of the Russian Academy of Sciences, Vavilov St. 44-2, Moscow 119333, Russian
*
Author to whom correspondence should be addressed.
Mathematics 2020, 8(5), 772; https://doi.org/10.3390/math8050772
Submission received: 29 March 2020 / Revised: 7 May 2020 / Accepted: 8 May 2020 / Published: 12 May 2020

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, τ , 2 τ , 3 τ , .... Ackroyd et al. [16,17] used two very simple approximations F 1 ( x ) = G ( [ x τ ] τ ) and F 2 ( x ) = G ( [ x τ ] τ + τ ) , where [ x ] denotes the integral part of x , thus putting upper and lower bounds on CDF G ( x ) . In reference [17] it was shown that the n-fold convolutions of these approximations always satisfy the inequalities F 1 ( n ) ( x ) G ( n ) ( x ) F 2 ( n ) ( x ) . A more accurate approximation, F 3 ( x ) = G ( [ x τ ] τ + 0.5 τ ) , 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 L it is necessary to compute L 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 F 3 ( x ) . 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: R + denotes the set of nonnegative real numbers, G n ( x ) denotes the n-fold convolution of CDF G ( x ) , a b denotes the convolution of sequences a = ( a i ) and b = ( b i ) , and δ i , j = 1 if i = j and δ i , j = 0 otherwise.

2. Markovian Resource Queueing Systems

Consider a queuing system that can be described by a process X ( t ) with a finite state space X , whose paths are continuous on the right and have limits on the left. Customers arrive and leave the system one by one. We use 0 < a 1 < a 2 < to denote the arrival times and 0 < d 1 < d 2 < to denote the departure times. We assume that the process X ( t ) describes the system so that for any of its states i X it is possible to determine the number ν ( i ) of customers in the system. We denote the maximum number of customers in the system by L and split the state space X into disjoint subsets X k = { i X | ν ( i ) = k } , k = 0 , 1 , , L .
In a resource queuing system, an arriving customer requires a certain amount of resources. V denotes the maximum amount of the resource and r n the resource quantities requested by n -th customer. Information about resources occupied at time t is stored as the vector s ( t ) = ( s 1 ( t ) , s 2 ( t ) , , s k ( t ) ) of the length k = ν ( X ( t ) ) , where s i ( t ) is the amount of resource occupied by the customer with the number i . The customer arriving at time a j is admitted to the system only if ν ( a j 0 ) < L and the requested resource quantity can be provided, i.e., if σ ( a j 0 ) + r j V , where σ ( t ) = s 1 ( t ) + s 2 ( t ) + + s k ( t ) is the total amount of resources occupied at time t .
All customers in the system are numbered. If the system accepts the customer arriving at a n , it will be assigned a number φ n from the interval 1 φ n ν ( X ( a n 0 ) ) + 1 . The numbers φ n , φ n + 1 , , k , assigned to the customers before a n , will be increased by one. If, at the service completion time d n , the system leaves the customer with a number ψ n , the numbers ψ n + 1 , ψ n + 2 , , ν ( X ( d n 0 ) ) , assigned to the customers before d n , 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 φ n = ν ( X ( a n 0 ) ) + 1 and ψ n = 1 , and for the “Last In First Out” service discipline, we have φ n = ν ( X ( a n 0 ) ) + 1 and ψ n = ν ( X ( d n 0 ) ) .
We assume that the process Y ( t ) = ( X ( t ) , s ( t ) ) is a homogeneous Markov jump process with a state space Y = { ( i , x ) | i X , x S v ( i ) } , with s k = { ( x 1 , x 2 , ... , x k ) R + k | x 1 + x 2 + ... + x k V } . The sojourn time in each state ( i , x ) has an exponential distribution with a parameter depending only on the state i of the system. Additionally, the vector of occupied resources s ( t ) can change only upon customer arrivals and departures. With p i , i X we denote the stationary probabilities of the system states in the case of unlimited resources. For the Markovian resource queueing systems considered here, probabilities p i 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 Y ( t ) ,
P i = lim t P { X ( t ) = i } ,   i X 0 ,   P i ( x ) = lim t P { X ( t ) = i , s ( t ) x } ,   i X k ,   X S k , 0 < k L .
For a wide range of resource queueing systems described in Section 1, the stationary distribution of Y ( t ) has the product form:
P i = c p i ,   i X 0 ,   P i ( x 1 , , x k ) = c p i G ( x 1 ) G ( x k ) ,   i X k ,   ( x 1 , . .. , x k ) S k ,   0 < k L .
where G ( x ) is the CDF of the customer resource requirements and c is the normalizing constant:
c = ( k = 0 L i X k p i G k ( V ) ) 1
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
Q ( x ) = lim t P { σ ( t ) x } ,   0 x V
of the total amount of occupied resources is given by the truncated compound distribution:
Q ( x ) = c k = 0 L q k G k ( x ) ,   0 x V
where
q k = i X k p i ,   0 k L
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 G n ( x ) , n = 2 , 3 , , L , in the interval   0 x V . These functions are related by the following recursion formula:
G 0 ( x ) = 1 ,   G n ( x ) = 0 x G ( n 1 ) ( x t ) d G ( t ) ,   n = 1 , 2 , , L ,   0 x V .
For computing G n ( x ) we approximate G ( x ) by some step function F ( x ) with jumps of size f k at τ k , k = 0 , 1 , 2 , , K , where τ K = V . The convolutions F n ( x ) are also step functions and their jumps f k n at τ k are related by the recursion formula:
f k 0 = δ k , 0 ,   f k n = i = 0 k f k i ( n 1 ) f i ,   n = 1 , 2 , , L , 0 k K .
Thus, the task of computing approximately the integrals in Equation (4) depends on computing the convolution powers f n = ( f k n ) of the sequence f = ( f k ) .

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 a = ( a i ,   i = 0 , 1 , , I ) , and b = ( b j ,   j = 0 , 1 , , J ) be two finite sequences. Choose a whole number M > I + J and let A = ( A m ) and B = ( B m ) denote the DFTs of the sequences a and b over the range from 0 to M 1 :
A m = r = 0 I a r e 2 π j m r / M ,   B m = r = 0 J b r e 2 π j m r / M ,   m = 0 , 1 , , M 1 ,
where j = 1 . Now the elements c k of the convolution c = a b are given by the inverse DFT:
c k = 1 M m = 0 M 1 A m B m e 2 π j m k / M ,   k = 0 , 1 , , I + J .

3.2. Computing the Truncated Convolutions

The procedure described above allows computing consecutively convolutions (Equation (5)). This requires the calculation of the DFTs Φ ( n ) = ( Φ m ( n ) ) of the convolution f n ,
Φ m ( n ) = r = 0 n K f r n e 2 π j m r / M n ,   m = 0 , 1 , , M n 1 ,
over the range of length M n > n K , which increases with n .
Equation (5) can be quickened further in the following way. Note that there is no need to calculate the values of f k n for k > K since they are not present in Equations (4) and (5). For any given sequence a = ( a 0 , a 1 , , a w ) of length w K , let T r ( a ) = ( a 0 , a 1 , , a K ) denote the sequence of its first K + 1 members. Obviously, probabilities of Equation (2) will remain unchanged if we replace f n with their truncations g ( n ) = T r ( f n ) in Equations (2) and (3). It follows from Equation (5) that the truncated sequences g ( n ) satisfy the recursion relation:
g ( 1 ) = T r ( f ) ,     g ( n ) = T r ( g ( n 1 ) g ( 1 ) ) ,     n = 2 , 3 , , L .
There are two options for calculating truncated convolution powers f n , n = 2 , 3 , , L : 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 M n > n K , n = 2 , 3 , , L , while in the second case DFTs deal with sequences of equal size M 2 . For large L it radically decreases computational time because the total length (L − 1)M2 of sequences g ( n ) , n = 2 , 3 , , L , is much smaller than the total length M 2 + M 3 + + M L of sequences f n , n = 2 , 3 , , L . Computation time of sequences g ( n ) can be substantially reduced further using FFT with M 2 set equal to a power of 2 [15], for example:
M 2 = 2 m , m = 1 + [ log 2 ( 1 + K ) ] .

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 K and a discretization step size τ = V / K .
  • Choose a step function F ( x ) with jumps of size f k at τ k , k = 0 , 1 , , K that would approximate CDF G ( x ) .
  • Apply FFT and compute the sequences g ( n ) = ( f 0 n , f 1 n , , f K n ) , n = 2 , 3 , , L . using formulae (6).
  • Define the functions
    F n ( x ) = k = 0 [ x τ ] f k n ,     0 x V ,   n = 2 , 3 , , L .
  • Obtain the stationary state probabilities p i , i X , of the system with unlimited resources.
  • Use distribution p i , i X , and the approximations G n ( x ) F n ( x )   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 G ( x ) , it is convenient to use one of the previously mentioned functions (see Figure 1):
F 1 ( x ) = G ( [ x τ ] τ ) , F 2 ( x ) = G ( [ x τ ] τ + τ ) , F 3 ( x ) = G ( [ x τ ] τ + 0.5 τ ) , 0 x < V .
We use F 3 ( x ) because it approximates G ( x ) closer than F 1 ( x ) and F 2 ( x ) . We also consider a new approximation:
F 4 ( x ) = 1 4 τ ( G ( k τ ) + 2 G ( ( k + 0.5 ) τ ) + G ( ( k + 1 ) τ ) ) , k τ x < ( k + 1 ) τ , k = 0 , 1 , , K 1 ,   F 4 ( V ) = G ( V ) ,
which, in the interval k τ x < ( k + 1 ) τ , equals the average value of G ( x ) obtained approximately using the trapezoidal rule [30]:
1 τ k τ ( k + 1 ) τ G ( t ) d t 1 4 τ ( G ( k τ ) + 2 G ( ( k + 0.5 ) τ ) + G ( ( k + 1 ) τ ) ) .
The plot of F 4 ( x ) is similar to F 3 ( x ) 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 G n ( x ) , 0 x < V . The gamma distribution
Γ α , β ( x ) = 1 Γ ( α ) 0 β x e t t α 1 d t ,
is well suited for these purposes because it has a useful property facilitating computation of exact values of convolution powers:
Γ α , β n ( x ) = Γ n α , β ( x ) .
We compare the exact values of G n ( x ) = Γ α , β n ( x ) with their approximations F 3 n ( x ) and F 4 n ( x ) 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 V = 100 and the interval [ 0 , V ] is divided into K = 10 5 subintervals. Figure 2 shows the approximation errors
ε i ( n ) = max 1 k K | G n ( k τ ) F i * n ( k τ ) | ,   i = 3 , 4 ,
as functions of n for various values of the mean m = α / β and the square of the coefficient of variation s = 1 / α 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 ε 3 ( n ) and ε 4 ( n ) 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 n . Table 1 shows the maximum computational errors for the cases depicted in Figure 2.

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:
R n = m n V ,
which allows estimation of the extent to which the system’s resources suffice when it contains n customers. The resource load grows with n . For any given resource load R the corresponding maximum system capacity under which the resource load does not exceed R is given by L = R V m .
In the plots of Figure 2, three ranges of n 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 R n > 1 the values of G n ( x ) and F i n ( x )   in the interval [ 0 , V ] approach 0 as n 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 F 4 ( x ) yields better or similar results as via function F 3 ( x ) . 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

  1. 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]
  2. 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]
  3. 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] [Green Version]
  4. 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]
  5. Doetsch, G. Handbuch der Laplace-Transformation; Birkhäuser: Basel, Switzerland, 1956; Volumes I-III. [Google Scholar]
  6. Oberhettinger, F.; Badii, L. Tables of Laplace Transforms; Springer-Verlag: Berlin, Germany, 1973. [Google Scholar]
  7. 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]
  8. Cohen, A.M. Numerical Methods for Laplace Transform Inversion; Springer: New York, NY, USA, 2007. [Google Scholar]
  9. 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]
  10. 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]
  11. 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]
  12. 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]
  13. 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]
  14. 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] [Green Version]
  15. Nussbaumer, H.J. Fast Fourier Transform and Convolution Algorithms, 2nd ed.; Springer: Berlin, Germany, 1990. [Google Scholar]
  16. 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]
  17. 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]
  18. 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]
  19. 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]
  20. 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]
  21. 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] [Green Version]
  22. 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]
  23. 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]
  24. Embrechts, P.; Frei, M. Panjer recursion versus FFT for compound distributions. Math. Methods Oper. Res. 2008, 69, 497–508. [Google Scholar] [CrossRef] [Green Version]
  25. Grübel, R.; Hermesmeier, R. Computation of Compound Distributions I: Aliasing Errors and Exponential Tilting. ASTIN Bull. 1999, 29, 197–214. [Google Scholar] [CrossRef] [Green Version]
  26. Grübel, R.; Hermesmeier, R. Computation of Compound Distributions II: Discretization Errors and Richardson Extrapolation. ASTIN Bull. 2000, 30, 309–331. [Google Scholar] [CrossRef] [Green Version]
  27. Naumov, V.; Samouylov, K. Product-form markovian queueing systems with multiple resources. Probab. Eng. Inf. Sci. 2019, 1–9. [Google Scholar] [CrossRef]
  28. 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]
  29. 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]
  30. Davis, P.J.; Rabinowitz, P. Methods of Numerical Integration, 2nd ed.; Academic Press: Orlando, FL, USA, 1984. [Google Scholar]
  31. Zhang, S. Computation of Special Functions. Am. J. Phys. 1997, 65, 355. [Google Scholar] [CrossRef]
  32. Engeln-Müllges, G.; Uhlig, F. Numerical Algorithms with Fortran; Springer-Verlag: Berlin, Germany, 1996. [Google Scholar]
Figure 1. The resource requirement cumulative distribution function (CDF) G ( x ) (solid line) and its approximations: (a) dashed line – F 1 ( x ) , dotted line – F 2 ( x ) ; (b) dotted line – F 3 ( x ) .
Figure 1. The resource requirement cumulative distribution function (CDF) G ( x ) (solid line) and its approximations: (a) dashed line – F 1 ( x ) , dotted line – F 2 ( x ) ; (b) dotted line – F 3 ( x ) .
Mathematics 08 00772 g001
Figure 2. The approximation errors ε 3 ( n ) (solid lines) and ε 4 ( n ) (dashed lines) as functions of n : (a) m = 0.5 ,   s = 1.5 ; (b) m = 0.5 ,   s = 2.0 ; (c) m = 0.5 ,   s = 3.0 ; (d) m = 1.0 ,   s = 1.5 ; (e) m = 1.0 ,   s = 2.0 ; (f) m = 1.0 ,   s = 3.0 ; (g) m = 2.0 ,   s = 1.5 ; (h) m = 2.0 ,   s = 2.0 ; (i) m = 2.0 ,   s = 3.0 .
Figure 2. The approximation errors ε 3 ( n ) (solid lines) and ε 4 ( n ) (dashed lines) as functions of n : (a) m = 0.5 ,   s = 1.5 ; (b) m = 0.5 ,   s = 2.0 ; (c) m = 0.5 ,   s = 3.0 ; (d) m = 1.0 ,   s = 1.5 ; (e) m = 1.0 ,   s = 2.0 ; (f) m = 1.0 ,   s = 3.0 ; (g) m = 2.0 ,   s = 1.5 ; (h) m = 2.0 ,   s = 2.0 ; (i) m = 2.0 ,   s = 3.0 .
Mathematics 08 00772 g002
Table 1. Maximum computational errors when calculating the convolutions for s = 3 .
Table 1. Maximum computational errors when calculating the convolutions for s = 3 .
mn = 2n = 3n = 4n = 5
ε 3 ( n ) 0.50.0060270.0004680.0001960.000154
10.0037970.0002340.0000970.000076
20.0023920.0001170.0000480.000037
ε 4 ( n ) 0.50.0040030.0002750.0001650.000126
10.0025220.0001420.0000840.000065
20.0015890.0000730.0000430.000033

Share and Cite

MDPI and ACS Style

Naumov, V.A.; Gaidamaka, Y.V.; Samouylov, K.E. Computing the Stationary Distribution of Queueing Systems with Random Resource Requirements via Fast Fourier Transform. Mathematics 2020, 8, 772. https://doi.org/10.3390/math8050772

AMA Style

Naumov VA, Gaidamaka YV, Samouylov KE. Computing the Stationary Distribution of Queueing Systems with Random Resource Requirements via Fast Fourier Transform. Mathematics. 2020; 8(5):772. https://doi.org/10.3390/math8050772

Chicago/Turabian Style

Naumov, Valeriy A., Yuliya V. Gaidamaka, and Konstantin E. Samouylov. 2020. "Computing the Stationary Distribution of Queueing Systems with Random Resource Requirements via Fast Fourier Transform" Mathematics 8, no. 5: 772. https://doi.org/10.3390/math8050772

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop