Skip to main content

AutoCAT: Automated Product-Form Solution of Stochastic Models

  • Conference paper
  • First Online:
Matrix-Analytic Methods in Stochastic Models

Part of the book series: Springer Proceedings in Mathematics & Statistics ((PROMS,volume 27))

Abstract

We introduce AutoCAT, a class of algorithms to automatically generate exact and approximate product-form solutions for large Markov processes that cannot be solved by direct numerical methods. Focusing on models that can be described as cooperating Markov processes, which include queueing networks and stochastic Petri nets as special cases, it is shown that finding a global optimum for a nonconvex quadratic program is sufficient for determining a product-form solution. Such problems are notoriously hard to solve due to the inherent difficulty of searching over nonconvex sets. Using a potential theory for Markov processes, convexification techniques, and a class of linear constraints that follow from stochastic characterization of product-form solutions, we obtain a family of linear programming relaxations that can be solved efficiently. A sequence of these linear programs is solved under increasingly tighter constraints to determine the exact product-form solution of a model when one exists. This approach is then extended to obtain approximate solutions for non-product-form models. Finally, our new techniques are validated with examples and increasingly complex case studies that show the effectiveness of the method on both conventional and novel performance models.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 109.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    Note that all test cases did converge, but no rigorous convergence proof is available.

References

  1. Al-Khayyal, F.A., Falk, J.E.: Jointly constrained biconvex programming. Math. Oper. Res. 8(2), 273–286 (1983)

    Article  MathSciNet  MATH  Google Scholar 

  2. Argent-Katwala, A.: Automated product-forms with Meercat. In: Proceedings of SMCTOOLS, October 2006

    Google Scholar 

  3. Balbo, G., Bruell, S.C., Sereno, M.: Product form solution for generalized stochastic Petri nets. IEEE TSE 28(10), 915–932 (2002)

    Google Scholar 

  4. Balsamo, S., Onvural, R.O., De Nitto Personé, V.: Analysis of Queueing Networks with Blocking. Kluwer, Norwell, MA (2001)

    Google Scholar 

  5. Balsamo, S., Dei Rossi, G., Marin, A.: A numerical algorithm for the solution of product-form models with infinite state spaces. In Computer Performance Engineering (A. Aldini, M. Bernardo, L. Bononi, V. Cortellessa, Eds.) LNCS 6342, Springer 2010. (7th Europ. Performance Engineering Workshop EPEW 2010, Bertinoro (Fc), Italy, (2010)

    Google Scholar 

  6. Baskett, F., Chandy, K.M., Muntz, R.R., Palacios, F.G.: Open, closed, and mixed networks of queues with different classes of customers. J. ACM 22(2), 248–260 (1975)

    Article  MathSciNet  MATH  Google Scholar 

  7. Bertsimas, D., Tsitsiklis, J.: Introduction to Linear Optimization. Athena Scientific, Nashua, NH (1997)

    Google Scholar 

  8. Bolch, G., Greiner, S., de Meer, H., Trivedi, K.S.: Queueing Networks and Markov Chains. Wiley, New York (1998)

    Book  MATH  Google Scholar 

  9. Buchholz, P.: Product form approximations for communicating Markov processes. In: Proceedings of QEST, pp. 135–144. IEEE, New York (2008)

    Google Scholar 

  10. Buchholz, P.: Product form approximations for communicating Markov processes. Perform. Eval. 67(9), 797–815 (2010)

    Article  Google Scholar 

  11. Burer, S., Letchford, A.N.: On nonconvex quadratic programming with box constraints. SIAM J. Optim. 20(2), 1073–1089 (2009)

    Article  MathSciNet  MATH  Google Scholar 

  12. Cao, X.R.: The relations among potentials, perturbation analysis, and Markov decision processes. Discr. Event Dyn. Sys. 8(1), 71–87 (1998)

    Article  MATH  Google Scholar 

  13. Cao, X.R., Ma, D.J.: Performance sensitivity formulae, algorithms and estimates for closed queueing networks with exponential servers. Perform. Eval. 26, 181–199 (1996)

    Article  MATH  Google Scholar 

  14. Casale, G., Harrison, P.G.: A class of tractable models for run-time performance evaluation. In: Proceedings of ACM/SPEC ICPE (2012)

    Google Scholar 

  15. Casale, G., Harrison, P.G., Vigliotti, M.G.: Product-form approximation of queueing networks with phase-type service. ACM Perf. Eval. Rev. 39(4) (2012)

    Google Scholar 

  16. de Souza e Silva, E., Ochoa, P.M.: State space exploration in Markov models. In: Proceedings of ACM SIGMETRICS, pp. 152–166 (1992)

    Google Scholar 

  17. Dijk, N.: Queueing Networks and Product Forms: A Systems Approach. Wiley, Chichester (1993)

    Google Scholar 

  18. Fourneau, J.M., Quessette, F.: Computing the steady-state distribution of G-networks with synchronized partial flushing. In: Proceedings of ISCIS, pp. 887–896. Springer, Berlin (2006)

    Google Scholar 

  19. Fourneau, J.M., Plateau, B., Stewart, W.: Product form for stochastic automata networks. In: Proceedings of ValueTools, pp. 1–10 (2007)

    Google Scholar 

  20. Gelenbe, E.: Product-form queueing networks with negative and positive customers. J. App. Probab. 28(3), 656–663 (1991)

    Article  MathSciNet  MATH  Google Scholar 

  21. GNU GLPK 4.8. http://www.gnu.org/software/glpk/

  22. Harrison, P.G.: Turning back time in Markovian process algebra. Theor. Comput. Sci 290(3), 1947–1986 (2003)

    Article  MATH  Google Scholar 

  23. Harrison, P.G.: Reversed processes, product forms and a non-product form. Lin. Algebra Appl. 386, 359–381 (2004)

    Article  MATH  Google Scholar 

  24. Harrison, P.G., Hillston, J.: Exploiting quasi-reversible structures in Markovian process algebra models. Comp. J. 38(7), 510–520 (1995)

    Article  Google Scholar 

  25. Harrison, P.G., Lee, T.: Separable equilibrium state probabilities via time reversal in Markovian process algebra. Theor. Comput. Sci 346, 161–182 (2005)

    Article  MathSciNet  MATH  Google Scholar 

  26. Harrison, P.G., Llado, C.: A PMIF with Petri net building blocks. In: Proceedings of ICPE (2011)

    Google Scholar 

  27. Hillston, J.: A compositional approach to performance modelling. Ph.D. Thesis, University of Edinburgh (1994)

    Google Scholar 

  28. IBM ILOG CPLEX 12.0 User’s Manual, 2010

    Google Scholar 

  29. Jackson, J.R.J.: Jobshop-like queueing systems. Manage. Sci. 10(1), 131–142 (1963)

    Article  Google Scholar 

  30. Kelly, F.P.: Networks of queues with customers of different types. J. Appl. Probab. 12(3), 542–554 (1975)

    Article  MATH  Google Scholar 

  31. Kelly, F.P.: Reversibility and Stochastic Networks. Wiley, New York (1979)

    MATH  Google Scholar 

  32. Liu, Z.: Performance analysis of stochastic timed Petri nets using linear programming approach. IEEE TSE 11(24), 1014–1030 (1998)

    Google Scholar 

  33. Löfberg, J.: YALMIP: A toolbox for modeling and optimization in MATLAB. In: Proceedings of CACSD (2004)

    Google Scholar 

  34. Marin, A., Bulò, S.R.: A general algorithm to compute the steady-state solution of product-form cooperating Markov chains. In: Proceedings of MASCOTS, pp. 1–10 (2009)

    Google Scholar 

  35. Marin, A., Vigliotti, M.G.: A general result for deriving product-form solutions in Markovian models. In: Proceedings of ICPE, pp. 165–176 (2010)

    Google Scholar 

  36. McCormick, G.P.: Computability of global solutions to factorable nonconvex programs. Math. Prog. 10, 146–175 (1976)

    Article  MathSciNet  Google Scholar 

  37. Muntz, R.R.: Poisson departure processes and queueing networks. Tech. Rep. RC 4145, IBM T.J. Watson Research Center, Yorktown Heights, NY (1972)

    Google Scholar 

  38. Nelson, R.D.: The mathematics of product form queuing networks. ACM Comp. Surv. 25(3), 339–369 (1993)

    Article  Google Scholar 

  39. Nocedal, J., Wright, S.J.: Numerical Optimization. Springer, Berlin (1999)

    Book  MATH  Google Scholar 

  40. Plateau, B.: On the stochastic structure of parallelism and synchronization models for distributed algorithms. SIGMETRICS 147–154 (1985)

    Google Scholar 

  41. Saad, Y.: Iterative Methods for Sparse Linear Systems. SIAM, Philadelphia (2000)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Giuliano Casale .

Editor information

Editors and Affiliations

Appendix

Infinite Processes

Numerical optimization techniques generally require matrices of finite size. In both ENS and its relaxations, we therefore used exact or approximate aggregations to truncate the state spaces of any infinite processes. Let C + 1 be the maximum acceptable matrix order. Then we decompose the generator matrix and its equilibrium probability vector of an infinite process k as

$${\bf Q}_{k} = \left [\begin{array}{*{10}c} {\bf Q}_{k}^{C,C} & {\bf Q}_{k}^{C,\infty } \\ {\bf Q}_{k}^{\infty, C}&{\bf Q}_{k}^{\infty, \infty } \end{array} \right ],\quad {\boldsymbol \pi }_{k} = \left [\begin{array}{*{10}c} {\boldsymbol \pi }_{k}^{C},{\boldsymbol \pi }_{k}^{\infty } \end{array} \right ],$$
where Q k C 1, C 2 is a C 1 ×C 2 matrix. Similar partitionings are also applied to the transition matrix L k and to the rate matrices A a and P b , \(a \in {\mathcal{A}}_{k},b \in {\mathcal{P}}_{k}\). We define the truncation such that the total probability mass in the first C states is 1 relative to the numerical tolerance of the optimizer, i.e., π k ∞ 1 < ε tol . Notice that the latter condition can also be used to determine the ergodicity of the infinite process. Furthermore, from condition RC1 (respectively RC2) we need to account for the cases where passive (respectively active) actions associated with the first C states are only enabled in P k C, ∞ (respectively only incoming from A k ∞, C). Such problems are easily handled by adding one fictitious state to the truncated set {1, 2, …, C}. For example, for A a and P b we consider the truncated matrices
$${\bf A}_{a} = \left [\begin{array}{*{10}c} {\bf A}_{a}^{C,C} &{\bf A}_{a}^{C,\infty }{\bf 1} \\ {\bf 1}^{T}{\bf A}_{a}^{\infty, C}& 0 \end{array} \right ],\;{\bf P}_{b} = \left [\begin{array}{*{10}c} {\bf P}_{b}^{C,C} &{\bf P}_{b}^{C,\infty }{\bf 1} \\ {\bf 1}^{T}{\bf P}_{b}^{\infty, C}& 0 \end{array} \right ],$$
where 1 is now an infinite column of 1s. Note that the fictitious state is excluded from the validation of conditions RC1 and RC2; thus the value of the diagonal rate on the last row is irrelevant with respect to finding a product form.

Finally, we comment on the choice of the parameter C for a given process k. Since this determines the number of states N k for the truncated process, an optimal choice of this value can provide substantial computational savings. Let us first note that starting from a small C, it is easy to integrate additional constraints or potential vectors in the linear formulations for a value C ′ > C. Recall that we propose in the rest of the paper a sequence of linear programs in order to obtain a feasible solution x. Then, if a linear program is infeasible, this can be due either to a lack of a product form or to a truncation where C is too small. The latter case can be readily diagnosed by adding slack variables, as in QCP, to the ergodicity condition and verifying if this is sufficient to restore feasibility. In such a case, the C value is updated to the smallest value such that feasibility is restored in the main linear program.

ZPR Example Model

$$\begin{array}{rcl} {\bf A}_{a}& = \left [\begin{array}{*{10}c} 0 & 0 & 0\\ 0 & 0 &0.2170 \\ 2.9105&2.2575& 0 \end{array} \right ]\qquad {\bf P}_{a} = \left [\begin{array}{*{10}c} 0&1&0&0\\ 0 &1 &0 &0 \\ 1&0&0&0\\ 1 &0 &0 &0 \end{array} \right ]& \\ {\bf A}_{b}& = \left [\begin{array}{*{10}c} 0 & 0 & 0 & 0\\ 5.65 & 0 &0.52 &2.13 \\ 0 &7.00& 0 & 0\\ 0 & 0 & 0 & 0 \end{array} \right ]\qquad {\bf P}_{b} = \left [\begin{array}{*{10}c} 0&1&0\\ 0 &1 &0 \\ 1&0&0 \end{array} \right ]& \\ {\bf L}_{m}& = \left [\begin{array}{*{10}c} 0 & 8 & 0 & 3\\ 6.15 & 0 &8.28 &7.67 \\ 15 &9.70& 0 & 0\\ 16 & 0 & 0 & 0 \end{array} \right ]\qquad {\bf L}_{k} = \left [\begin{array}{*{10}c} 0 & 0 & 0\\ 0 & 0 &3.78 \\ 3.09&2.74& 0 \end{array} \right ]& \\ \end{array}$$

Structural Approximation Pseudocode

G-Network Case Study

We report the parameters for the G-network given in [5]. The network consists of M = 10 queues with exponentially distributed service times having rates μ1 = 4. 5 and \({\mu }_{i} = 4.0 + (0.1)i\) for i ∈ [2, 10]. The external arrival rate defines a Poisson process with rate λ = 5. 0. The routing matrix for (positive) customers has in row i and column j the probability r i, j  +  of a (positive) customer being routed to queue j, as a positive customer, upon leaving queue i. In this case study, this routing matrix is given by

$${\bf R}^{+} = [{r}_{ i,j}^{+}] = \left [\begin{array}{*{10}c} 0 &0.2&0.3&0.4& 0 & 0 & 0 & 0 & 0 & 0\\ 0.1 & 0 & 0 & 0 &0.2 & 0 & 0 &0.2 & 0 & 0 \\ 0 & 0 & 0 & 0 &0.3&0.5&0.2& 0 & 0 & 0\\ 0.3 & 0 & 0 & 0 & 0 & 0 &0.7 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0\\ 0 & 0 & 0 & 0 & 0 & 0 & 0 &0.3 & 0 &0.5 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1\\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 &0.2 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \end{array} \right ].$$
Conversely, the probability r i, j  −  of a customer leaving queue i and becoming a negative signal upon arrival at queue j is
$${\bf R}^{-} = [{r}_{ i,j}^{-}] = \left [\begin{array}{*{10}c} 0 &0&0&0&0.1& 0 & 0 & 0 & 0 & 0\\ 0 &0 &0 &0 & 0 &0.4 & 0 & 0 & 0 & 0 \\ 0 &0&0&0& 0 & 0 & 0 & 0 & 0 & 0\\ 0 &0 &0 &0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 &0&0&0& 0 & 0 & 0 & 0 & 0 & 0\\ 0 &0 &0 &0 & 0 & 0 & 0 &0.1 & 0 &0.1 \\ 0 &0&0&0& 0 & 0 & 0 & 0 & 0 & 0\\ 0 &0 &0 &0 &0.1 & 0 & 0 & 0 & 0 & 0 \\ 0.1&0&0&0& 0 & 0 & 0 & 0 & 0 & 0\\ 0 &0 &0 &0 & 0 & 0 &0.2 & 0 &0.05 & 0 \end{array} \right ].$$

Loss and BBS Models

The model is composed of M = 5 queues that cooperate on a set of A = 12 actions, one for each possible job movement from and inside the network. The routing probabilities R[k, j] from queue k to queue j are as follows:

$$R = \left [\begin{array}{*{10}c} 0.16& 0 &0.04&0.50&0.30\\ 0.08 &0.29 &0.02 &0.08 &0.52 \\ 0 & 0 &0.78& 0 & 0\\ 0.29 &0.24 & 0 &0.25 &0.22 \\ 0 &0.49& 0 &0.20& 0 \end{array} \right ].$$
Service times are exponential at all queues with rates mu k  = k, k = , 1…, 5. For a queue k, the probability of departing from the network is \({r}_{k,0} = 1 -{\sum \nolimits }_{j=1}^{5}R[k,j]\). The Poisson arrival rates from the outside world are given by the vector
$${\bf \lambda} = (0.6600,0.1500,0.0750,0.1650,0.4500).$$

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer Science+Business Media New York

About this paper

Cite this paper

Casale, G., Harrison, P.G. (2013). AutoCAT: Automated Product-Form Solution of Stochastic Models. In: Latouche, G., Ramaswami, V., Sethuraman, J., Sigman, K., Squillante, M., D. Yao, D. (eds) Matrix-Analytic Methods in Stochastic Models. Springer Proceedings in Mathematics & Statistics, vol 27. Springer, New York, NY. https://doi.org/10.1007/978-1-4614-4909-6_4

Download citation

Publish with us

Policies and ethics