M/G/c/K PERFORMANCE MODELS J. MacGregor Smith Department of Mechanical and Industrial Engineering, University of Massachusetts Amherst, Massachusetts 01003 e-mail: jmsmith@ecs.umass.edu Abstract Multi-server performance models of queueing systems are very appropriate modelling tools for manufacturing, telecommunication, transportation and facility modelling applications. Exact computation of performance measures of multi-server queueing systems remains an intractable problem. Approximations of these performance measures are important to quickly and accurately reveal the performance of a system. This is desirable for both performance evaluation as well as optimization of these systems. Two-moment approximation formulas are presented for performance modelling of multi-server systems involving servers of, 3, 4, and 5 servers. Extensive computational results are provided to evaluate the approximation results against simulation, known tabular results, and other approximation formulas. Extensions of the two-moment methodology to larger multi-server systems are also discussed. Keywords: M/G/c/K Performance Models Introduction M/G/c/K models are difficult to construct because the memoryless property of the exponential distribution no longer obtains. Knowledge of the number of customers at time t is no longer adequate to predict the number of customers at time t + t. One needs to know how long the lead customer in the system has been in service. Approximations for the performance measures of these systems are important not only for effective estimates of the performance measures of these systems but for optimization and their extensions to networks of M/G/c/K systems. M/G/c/K models are important in practice because most systems often have multiple servers with finite buffers. Manufacturing systems, facilities, telecommunication, and transportation systems abound with examples of multiple servers and finite waiting room. In this paper we outline the problem background in, discuss the mathematical models in 3, the methodology in 4 and the experimental results in 5. 6 concludes the paper. Problem Background Exact solutions to M/G/c/K queueing systems are only possible for the special cases of single servers, exponential service, or no waiting room at all. We will explore approximations based on a two-moment approach for estimating the blocking probability in M/G/c/K systems, then extend this methodology for estimating the other performance measures of these M/G/c/K systems. Figure 1 arrays some of the approaches to our problem. Mathematical Models Assumptions The main assumptions that we will make is that we are looking at Poisson arrival processes with arrival rate λ and multiple servers c with the same cumulative distribution B(t) with mean service rate µ. There is a finite amount of waiting room at the queue K c which includes the room for the servers. Customers will try to enter the queue if they are not blocked, otherwise,
M/G/1/K Embedded Markov Chain Regenerative Analysis Busy Period Analysis Gross and Harris, [6] Cooper, [1] Tijms, [15, 17] Tijms, [15, 17] Cooper, [1] M/G/c/K Diffusion Approximation Gaver and Shedler, 1973 [3, 4] Gelenbe, 1975[5] Yao and Buzacott, 1985 [19] Kimura 1979-1985[7],[10] Whitt [18] M/G/c/K Approximation Approaches Infinite Probabilities Two-Moment Approximation Simulation Schweitzer and Konheim, 1978[13] Tijms, 1986-1994[15, 16, 17] Sakasegawa, Miyazawa, and Yamazaki 1993[1] Kimura 1996[8, 9] Tijms, 1986-1994[15, 16, 17] Kimura 1996[8, 9] Nozaki and Ross[11] Figure 1: M/G/c/K Morphological Tree they are lost from the system with the blocking probability denoted as p K. Also, we will restrict our traffic intensity ρ<1 and only examine s 1 since this is most applicable to many of the applications. We can also relax these latter two assumptions and examine ρ 1,s > 1 and utilize the same methodology described in the paper. M/M/1/K Expression The blocking probability for an M/M/1/K system with ρ<1is well-known and is shown on the left of (1): (1 ρ) ρk ln( p K 1 ρ+p p K = 1 ρ K+1 K = K ρ ) (1) ln(ρ) If we relax the integrality of K, we can express K in terms of ρ and p K and arrive at a closedform expression for the buffer size which is the largest integer as shown on the right of (1). M/G/1/K Approximations Since the two-moment approximations of Tijms and Kimura, [15, 8, 9] are the foundation of the approach, they will be described in some detail. In order to describe Tijm s and Kimura s approximations, an additional bit of notation is needed at this point in the paper. B ɛ (M) is defined as the Markovian expression for the optimal buffer size as a function of the blocking probability and the threshold blocking probability, p K (ɛ). Also, B ɛ (D) is the expression of the optimal buffer size for a Deterministic service process. Tijm s two-moment approximation [, 15, 17] relies on a weighted combination of an exact (if available) expression of the M/D/1/K blocking probability as well as the blocking probability
of the M/M/1/K formula. B T ɛ (s )=s B ɛ (M)+(1 s )B ɛ (D) () Of course, if exact expressions are available for both formulas, then Tijm s approximation is exact for the two extreme cases. Kimura, on the other hand, also has a two-moment approximation that turns out to be a little simpler and is the one built upon since it utilizes Markovian approximations as its basis. His expression is: B ɛ (s )=B ɛ (M)+NINT{1/(s 1) ρb ɛ (M)} (3) where NINT is the nearest integer. As argued in this paper, this weighted combination of the optimal buffer values of Markovian systems is a very effective strategy. The key element in his approximation is the term from equation 3 (s 1) ρ which is actually based on the graph on the left, seen in Figure. 3.5 Functional form of theta() Functional form of theta() 3 s = s = 3 s = 4 s = 0.5 1.8 s = modified approx. s = modified approx. s = 0.5 s = 0.5 1.6.5 theta(g) theta(g) 1.4 1. 1.5 1 1 0.8 0.5 0 0. 0.4 0.6 0.8 1 1. 1.4 1.6 1.8 0.6 0 0. 0.4 0.6 0.8 1 1. 1.4 1.6 1.8 Figure : Kimura s Approximation on the left and modified on the right The θ(g) on the y-axis in Figure is used by Kimura to describe how the variability of the service time cdf B(t) of the queue affects the buffer size. Thus, a square root function of ρ is a very reasonable functional approximation for this problem. After much experimentation by the author, it was realized that when s [0, 1] the formula should be more appropriately modified to the formula on the left below: { (s 1) ρ (s 1) ρ } e s e, However, when s > 1, then the formula should be the version on the right above. What these modifications do are to dampen the square root approximation of the previous formula, see Figure on the right. Two-moment Methodology The two-moment approach allows one to develop closed form expressions for the performance measures of M/G/c/K systems which then can be translated into an effective numerical tool for measuring performance. The methodology which underlies our approach is the following:
Step 1.0 Fix c, then estimate K in closed form for the M/G/c/K model as a function of the threshold blocking probability p K and s. Step.0 Given K in closed form, use a two-moment approach to estimate p K (s ). Step 3.0 Estimate L q for the system with the same two-moment methodology, then utilizing p K and L q, estimate W q and finally W, L The methodology is totally dependent on fixing c which is only reasonable and then one must treat each case separately. This is tedious, but once this is done for the desired c value, everything else follows. The methodology is flexible in that better approximations for p k can then yield better performance measures overall. Derivation of p K Recall the formula for the exact continuous buffer size for the M/M/1/K formula: K = ln( p K 1 ρ+p K ρ ) ln(ρ) Here, Kimura s expression for the approximation of the optimal buffer size can be used with the above explicit formula. It is important to note here that the space for the server is subtracted in order to estimate the true buffer space in the queue: ( ln( p K 1 ρ+p K ρ ) ) 1 +1/ ( s 1 ) ( ln( p K ln(ρ) s 1 ρ+p K ρ ) ) 1 ln(ρ) Now we factor the terms of the above expression to give the following simplified expression for the optimal buffer size in M/G/1/K formulas: ( ( ) ln ln (ρ) )(+ s s ) s K = pk 1 ρ+pk ρ ln(ρ) If s =1, then the formula yields the same expression as for the c =1formula, when we subtract the space for the server. As an added side benefit for developing the closed form expression for the optimal buffer, if we invert the last expression we can obtain the blocking probability for the M/G/1/K system as: p K = ρ + s + K+ s s s s s (ρ 1) ρ s +K+ s s +1 + s s s 1 1 (4) (5) This is the key methodology as we shall argue and the foundation of all that is to follow. M/G/c/K Performance The p K for the M/G//K system based upon the previous methodology is given as: p K =ρ + s s s s s +K s ( µ + λ) ρ s s s +K + s s s λ µ λ 1 (6) L q for the M/G//K system based upon our methodology is very complex, so we will utilize simply the numerical formula to demonstrate its effectiveness.
Experimental Results We shall evaluate our approach against simulation, known tabular results and the twomoment approximation of Nozaki-Ross given below: Wq = E[S ] E[S] K 1 j=c (λe[s])j (K c) E[S](λ(E[S])K c!c j c c!c K c [ c 1 0 (λe[s]) j j! + K 1 (λe[s]) j j=c ](c λe[s]) c!c j c (7) This is quite a complicated expression and needs to be fixed for the particular value of c to be practical. To be fair to Nozaki-Ross, our approach and Nozaki-Ross work exactly when the service is Exponential(µ). However, as we shall show, Nozaki-Ross seems to be very unstable when ρ 1 for more general squared coefficients of variation. M/G//K As can be seen in the Figures 3, for deterministic service times s =0, the two-moment approximation developed in this paper slightly overestimates the W q measure but follows closely the behavior of the simulation model, while Nozaki-Ross starts out well for low ρ, it then completely goes awry. Table 3 gives a very detailed comparison of the two-moment approximation for P k,l q,w g,l,w against the results of Seelen, et. al, for P ks,l qs and the comparison of W q against Nozaki-Ross W qn. The approximation does very well with P k,l q against Seelen et. al. and behaves very well as opposed to Nozaki-Ross. It is actually the closeness of the blocking probability expression p K vs. p Ks in the first two columns of Table 3 that is so encouraging here. Expressions and results developed for the M/G/3/K and M/G/4/K are not included here for the sake of brevity. M/G/5/K The blocking probability for the M/G/5/K system is shown below: 5 s s 5 s + K + 65 ρ s s s µ 3 ( 5 µ + λ) p K = 5 s s 5 s + K + 65 ρ s s s µ 3 λ + 10 µ 4 +96λµ 3 +36λ µ +8λ 3 µ + λ 4 (8) As one can imagine, the closed form expression for L q is very complex and not fathomable. However, when it is translated into a numerical expression, we find the following numerical results. As can be seen in the Figures 4, the two-moment approximation developed in this paper overestimates the W q measure but follows closely the behavior of the simulation model, while Nozaki-Ross starts out well, but then again completely goes awry. Table 4 gives a very detailed comparison of the two-moment approximation for P k,l q,w g,l,w against the results of Seelen, et. al, for P k,l q and the comparison of W q against Nozaki-Ross. The approximation does very well with P k,l q against Seelen et. al. and also behaves very well as opposed to Nozaki-Ross. Summary and Conclusions This paper has presented a two-moment methodology for generating the performance measures of M/G/c/K queues. The key to the methodology is the development of an approximation for the blocking probability of these general multi-server systems. Numerical experiments were presented for the approach and compared with digital simulation results as well as the
two-moment approximation of Nozaki-Ross. The proposed methodology was shown to be very robust and accurate for a number of multi-server systems. REFERENCES [1] Cooper, Robert, 1981. Introduction to Queueing Theory North-Holland. [] De Kok, A.G. and H. Tijms, 1985. A Two-moment approximation for a Buffer Design Problem Requiring a Small Rejection Probability, Performance Evaluation 5, 77-84. [3] Gaver, D. and Shedler, G.S., 1973. Processor Utilization in Multi-programming Systems via Diffusion Approximations. Operations Research.1, 569-576. [4] Gaver, D. and Shedler, G.S., 1973. Approximate Models for Processor Utilization in Multiprogrammed Computer Systems. SIAM J. of Computing./3, 183-19. [5] Gelenbe, E., 1975. On approximate Computer System Models, JACM (), 61-69. [6] Gross, D. and C. Harris, 1985. Fundamentals of Queueing Theory. Wiley. [7] Kimura, T.,1985. Refining Diffusion Approximations for GI/G/1 Queues: A Tight Discretization Method, Teletraffic Congress, 317-33. [8] Kimura, T., 1996. A Transform-Free Approximation for the Finite Capacity M/G/s Queue, Operations Research. 44(6), 984-988. [9] Kimura, T., 1996. Optimal Buffer Design of an M/G/s Queue with Finite Capacity, Commun. Statist.-Stochastic Models, 1(1), 165-180. [10] Kimura, T., 000. Equivalence Relations in the Approximations for the M/G/s/s + r Queue, Mathematical and Computer Modelling. 31 15-4. [11] Nozaki, S. and S. Ross, 1978. Approximations in Finite-Capacity Multi-server Queues with Poisson Arrivals, J. Appl.Prob, 15, 86-834. [1] Sakasegawa, H., M. Miyazawa, and G. Yamazaki, 1993. Evaluating the Overflow Probability using the Infinite Queue. Operations Research 39, 138-145. [13] Schweitzer, P. and A. Konheim, 1978. Buffer Overflow Calculations using an Infinitecapacity Model, Stochastic Proc. Appl. 6, 67-76. [14] Seelen, L.P., H. Tijms, and M.H. VanHoorn, 1985. Tables for Multi-Server Queues. North- Holland. [15] Tijms, Henk, 1986. Stochastic Modeling and Analysis. New York:Wiley. [16] Tijms, Henk, 199. Heuristics for Finite-Buffer Queues, Probability in the Engineering and Informational Sciences 6, 77-85. [17] Tijms, Henk, 1994. Stochastic Models: An Algorithmic Approach. New York:Wiley [18] Whitt, W. 004, A Diffusion Approximation fo rthe G/GI/n/m Queue. Operations Research,5 (6), 9-941. [19] Yao, D. and Buzacott, J.A., 1985. Queueing Models for a Flexible Machining Station Part 1: The Diffusion Approximation. EJOR19, 33-40.
M/D//K=3 System M/D//K=1 System 0.5 analytical nozaki-ross simulation.5 analytical nozaki-ross simulation Average Queue Waiting Time (Wq) 0-0.5-1 Average Queue Waiting Time (Wq) 1.5 1 0.5 0-1.5 0.3 0.4 0.5 0.6 0.7 0.8 0.9-0.5 0.3 0.4 0.5 0.6 0.7 0.8 0.9 K=3 0.30 0.055 0.054 0.088 0.054 0.095 0.0195 0.6135 0.695 0.40 0.0498 0.0500 0.0563 0.0500 0.059 0.035 0.8164 0.859 0.50 0.0806 0.0813 0.0910 0.0813 0.0989 0.0500 1.0103 1.0989 0.60 0.1158 0.1171 0.1305 0.1171 0.1475 0.0555 1.1915 1.3475 0.70 0.1534 0.1553 0.176 0.1553 0.039 0.0338 1.3579 1.6039 0.80 0.1918 0.1945 0.156 0.1945 0.668-0.0660 1.5087 1.8668 0.90 0.301 0.333 0.58 0.333 0.3354-0.4948 1.6441.1354 K=4 0.30 0.0066 0.0061 0.0439 0.0388 0.044 0.0334 0.6400 0.644 0.40 0.017 0.016 0.0956 0.0855 0.097 0.0693 0.8818 0.897 0.50 0.0345 0.0333 0.1687 0.156 0.1747 0.1136 1.1341 1.1747 0.60 0.0588 0.0574 0.600 0.37 0.763 0.1547 1.3894 1.4763 0.70 0.0891 0.0878 0.364 0.3345 0.3999 0.1659 1.6395 1.7999 0.80 0.139 0.130 0.4755 0.4389 0.548 0.0731 1.8773.148 0.90 0.1616 0.161 0.5885 0.545 0.7019-0.4837.0976.5019 K=5 0.30 0.0017 0.0014 0.0499 0.0439 0.0500 0.0401 0.6489 0.6500 0.40 0.0060 0.005 0.1163 0.1040 0.1170 0.0907 0.9115 0.9170 0.50 0.015 0.0137 0.01 0.1999 0.35 0.1630 1.049 1.35 0.60 0.0310 0.088 0.3617 0.3330 0.3733 0.458 1.545 1.5733 0.70 0.0543 0.0516 0.5354 0.4986 0.5661 0.3086 1.8594 1.9661 0.80 0.0846 0.080 0.7308 0.6865 0.7983 0.630.1953.3983 0.90 0.107 0.1183 0.9356 0.8844 1.0641-0.3133.5183.8641 K=7 0.30 0.0001 0.0001 0.057 0.0461 0.057 0.0439 0.656 0.657 0.40 0.0007 0.0005 0.1305 0.1157 0.1306 0.1087 0.999 0.9306 0.50 0.0030 0.003 0.681 0.416 0.689 0.184 1.651 1.689 0.60 0.0090 0.0075 0.4847 0.4451 0.4891 0.3750 1.6738 1.6891 0.70 0.016 0.0191 0.7904 0.7397 0.8079 0.5538.160.079 0.80 0.043 0.0398 1.1775 1.10 1.307 0.6548.7084.8307 0.90 0.0747 0.0711 1.6173 1.577 1.7479 0.1837 3.88 3.5479 K=1 0.30 0.0000 0.0000 0.0530 0.0463 0.0530 0.0445 0.6530 0.6530 0.40 0.0000 0.0000 0.1336 0.1177 0.1336 0.114 0.9336 0.9336 0.50 0.0001 0.0000 0.868 0.553 0.868 0.48 1.868 1.868 0.60 0.0004 0.0003 0.5656 0.5100 0.5658 0.488 1.7651 1.7658 0.70 0.005 0.0018 1.059 0.973 1.0618 0.8807.4558.4618 0.80 0.0099 0.008 1.8818 1.7740 1.9006 1.4004 3.4659 3.5006 0.90 0.097 0.068 3.0796.980 3.1738 1.568 4.86 4.9738 Figure 3: Comparison of performance measures for M/G//K, s = 1
M/D/5/K=6 System M/D/5/K=15 System 0 analytical nozaki-ross simulation 3.5 3.5 analytical nozaki-ross simulation Average Queue Waiting Time (Wq) -0.5-1 -1.5 - Average Queue Waiting Time (Wq) 1.5 1 0.5 0-0.5-1 -1.5 - -.5 -.5 0.4 0.5 0.6 0.7 0.8 0.9-3 -3.5 0.4 0.5 0.6 0.7 0.8 0.9 K=6 0.40 0.017 0.0133 0.0143 0.0133 0.0145 0.0086 1.9889.0145 0.50 0.0301 0.0314 0.0339 0.0314 0.0350 0.0174.4588.5350 0.60 0.0561 0.0583 0.063 0.0583 0.0670 0.048.8949 3.0670 0.70 0.0895 0.096 0.1007 0.096 0.1106 0.0180 3.875 3.6106 0.80 0.178 0.1318 0.1437 0.1318 0.1647-0.0398 3.633 4.1647 0.90 0.1688 0.1735 0.1895 0.1735 0.79-0.381 3.999 4.779 0.95 0.1896 0.1946 0.17 0.1946 0.6-1.004 4.0619 5.015 K=6 0.40 0.0044 0.0046 0.047 0.030 0.049 0.0176.0159.049 0.50 0.013 0.0137 0.0646 0.0600 0.0655 0.041.5315.5655 0.60 0.096 0.0307 0.1310 0.114 0.1350 0.0743 3.041 3.1350 0.70 0.0545 0.056 0.8 0.06 0.356 0.0958 3.531 3.7356 0.80 0.0870 0.0895 0.3340 0.3087 0.3658 0.0481 3.9859 4.3658 0.90 0.153 0.184 0.4561 0.411 0.515-0.3500 4.394 5.015 0.95 0.1458 0.1491 0.5187 0.4786 0.6073-1.3746 4.5763 5.3573 K=8 0.40 0.0016 0.0016 0.0303 0.08 0.0303 0.034.07.0303 0.50 0.0059 0.0059 0.0853 0.0795 0.0858 0.061.5706.5858 0.60 0.0159 0.0160 0.1857 0.1734 0.1887 0.17 3.1380 3.1887 0.70 0.0341 0.0344 0.336 0.3143 0.3481 0.1864 3.7169 3.8481 0.80 0.0614 0.061 0.598 0.4959 0.5645 0.1819 4.844 4.5645 0.90 0.0968 0.0980 0.7505 0.708 0.8309-0.387 4.8147 5.3309 0.95 0.1170 0.1183 0.8651 0.8103 0.9796-1.4587 5.0595 5.796 K=10 0.40 0.000 0.000 0.0341 0.0316 0.0341 0.083.0337.0341 0.50 0.001 0.0011 0.1047 0.0974 0.1048 0.0849.6017.6048 0.60 0.0047 0.0043 0.57 0.367 0.539 0.1935 3.386 3.539 0.70 0.0139 0.013 0.5093 0.4807 0.5164 0.3501 3.9606 4.0164 0.80 0.034 0.0314 0.8838 0.8404 0.9135 0.478 4.754 4.9135 0.90 0.064 0.0614 1.3503 1.910 1.440 0.1484 5.5695 5.940 0.95 0.0815 0.0806 1.6014 1.5340 1.7435-1.364 5.964 6.4935 K=15 0.40 0.0000 0.0000 0.0349 0.033 0.0349 0.098.0349.0349 0.50 0.0000 0.0000 0.11 0.1036 0.11 0.0971.611.61 0.60 0.000 0.000 0.967 0.748 0.968 0.559 3.960 3.968 0.70 0.0016 0.0013 0.699 0.6476 0.6940 0.5740 4.187 4.1940 0.80 0.0077 0.0066 1.4536 1.3810 1.4648 1.0716 5.49 5.4648 0.90 0.058 0.039.6784.5950.7494 1.3069 7.063 7.494 0.95 0.0418 0.0398 3.486 3.3470 3.578 0.0555 7.9799 8.38 Figure 4: Comparison of performance measures M/G/5/K, s = 1