Matrix geometric method

In probability theory, the matrix geometric method is a method for the analysis of quasi-birth–death processes, continuous-time Markov chain whose transition rate matrix has a repetitive block structure. The method was developed "largely by Marcel F. Neuts and his students starting around 1975."

In probability theory, the matrix geometric method is a method for the analysis of quasi-birth–death processes, continuous-time Markov chain whose transition rate matrix has a repetitive block structure. The method was developed "largely by Marcel F. Neuts and his students starting around 1975."

The method requires a transition rate matrix with tridiagonal block structure as follows

Q =

        (
        
          
            
              
                B
                
                  00
                
              
            
            
              
                B
                
                  01
                
              
            
          
          
            
              
                B
                
                  10
                
              
            
            
              
                A
                
                  1
                
              
            
            
              
                A
                
                  2
                
              
            
          
          
            
            
              
                A
                
                  0
                
              
            
            
              
                A
                
                  1
                
              
            
            
              
                A
                
                  2
                
              
            
          
          
            
            
            
              
                A
                
                  0
                
              
            
            
              
                A
                
                  1
                
              
            
            
              
                A
                
                  2
                
              
            
          
          
            
            
            
            
              
                A
                
                  0
                
              
            
            
              
                A
                
                  1
                
              
            
            
              
                A
                
                  2
                
              
            
          
          
            
            
            
            
            
              ⋱
            
            
              ⋱
            
            
              ⋱
            
          
        
        )
      
    
  

{\displaystyle Q={\begin{pmatrix}B_{00}&B_{01}\\B_{10}&A_{1}&A_{2}\\&A_{0}&A_{1}&A_{2}\\&&A_{0}&A_{1}&A_{2}\\&&&A_{0}&A_{1}&A_{2}\\&&&&\ddots &\ddots &\ddots \end{pmatrix}}}

where each of B00, B01, B10, A0, A1 and A2 are matrices. To compute the stationary distribution π writing π Q = 0 the balance equations are considered for sub-vectors π**i

π

                0
              
            
            
              B
              
                00
              
            
            +
            
              π
              
                1
              
            
            
              B
              
                10
              
            
          
          
            
            =
            0
          
        
        
          
            
              π
              
                0
              
            
            
              B
              
                01
              
            
            +
            
              π
              
                1
              
            
            
              A
              
                1
              
            
            +
            
              π
              
                2
              
            
            
              A
              
                0
              
            
          
          
            
            =
            0
          
        
        
          
            
              π
              
                1
              
            
            
              A
              
                2
              
            
            +
            
              π
              
                2
              
            
            
              A
              
                1
              
            
            +
            
              π
              
                3
              
            
            
              A
              
                0
              
            
          
          
            
            =
            0
          
        
        
          
          
            
            ⋮
          
        
        
          
            
              π
              
                i
                −
                1
              
            
            
              A
              
                2
              
            
            +
            
              π
              
                i
              
            
            
              A
              
                1
              
            
            +
            
              π
              
                i
                +
                1
              
            
            
              A
              
                0
              
            
          
          
            
            =
            0
          
        
        
          
          
            
            ⋮
          
        
      
    
  

{\displaystyle {\begin{aligned}\pi _{0}B_{00}+\pi _{1}B_{10}&=0\\\pi _{0}B_{01}+\pi _{1}A_{1}+\pi _{2}A_{0}&=0\\\pi _{1}A_{2}+\pi _{2}A_{1}+\pi _{3}A_{0}&=0\\&\vdots \\\pi _{i-1}A_{2}+\pi _{i}A_{1}+\pi _{i+1}A_{0}&=0\\&\vdots \\\end{aligned}}}

Observe that the relationship

π

        i
      
    
    =
    
      π
      
        1
      
    
    
      R
      
        i
        −
        1
      
    
  

{\displaystyle \pi _{i}=\pi _{1}R^{i-1}}

holds where R is the Neuts' rate matrix, which can be computed numerically. Using this we write

(

                        π
                        
                          0
                        
                      
                    
                    
                      
                        π
                        
                          1
                        
                      
                    
                  
                
                )
              
            
            
              
                (
                
                  
                    
                      
                        B
                        
                          00
                        
                      
                    
                    
                      
                        B
                        
                          01
                        
                      
                    
                  
                  
                    
                      
                        B
                        
                          10
                        
                      
                    
                    
                      
                        A
                        
                          1
                        
                      
                      +
                      R
                      
                        A
                        
                          0
                        
                      
                    
                  
                
                )
              
            
            =
            
              
                (
                
                  
                    
                      0
                    
                    
                      0
                    
                  
                
                )
              
            
          
        
      
    
  

{\displaystyle {\begin{aligned}{\begin{pmatrix}\pi _{0}&\pi _{1}\end{pmatrix}}{\begin{pmatrix}B_{00}&B_{01}\\B_{10}&A_{1}+RA_{0}\end{pmatrix}}={\begin{pmatrix}0&0\end{pmatrix}}\end{aligned}}}

which can be solve to find π0 and π1 and therefore iteratively all the π**i.

The matrix R can be computed using cyclic reduction or logarithmic reduction.

.mw-parser-output .hatnote{font-style:italic}.mw-parser-output div.hatnote{padding-left:1.6em;margin-bottom:0.5em}.mw-parser-output .hatnote i{font-style:normal}.mw-parser-output .hatnote+span.mw-empty-elt+.hatnote,.mw-parser-output .hatnote+link+.hatnote{margin-top:-0.5em}@media print{body.ns-0 .mw-parser-output .hatnote{display:none!important}}

The matrix analytic method is a more complicated version of the matrix geometric solution method used to analyse models with block M/G/1 matrices. Such models are harder because no relationship like π**i = π1 Ri – 1 used above holds.

  • Performance Modelling and Markov Chains (part 2) by William J. Stewart at 7th International School on Formal Methods for the Design of Computer, Communication and Software Systems: Performance Evaluation

.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}body.skin-vector-2022 .mw-parser-output .reflist-columns-2{column-width:27em}body.skin-vector-2022 .mw-parser-output .reflist-columns-3{column-width:22.5em}.mw-parser-output .references[data-mw-group=upper-alpha]{list-style-type:upper-alpha}.mw-parser-output .references[data-mw-group=upper-roman]{list-style-type:upper-roman}.mw-parser-output .references[data-mw-group=lower-alpha]{list-style-type:lower-alpha}.mw-parser-output .references[data-mw-group=lower-greek]{list-style-type:lower-greek}.mw-parser-output .references[data-mw-group=lower-roman]{list-style-type:lower-roman}.mw-parser-output div.reflist-liststyle-upper-alpha .references{list-style-type:upper-alpha}.mw-parser-output div.reflist-liststyle-upper-roman .references{list-style-type:upper-roman}.mw-parser-output div.reflist-liststyle-lower-alpha .references{list-style-type:lower-alpha}.mw-parser-output div.reflist-liststyle-lower-greek .references{list-style-type:lower-greek}.mw-parser-output div.reflist-liststyle-lower-roman .references{list-style-type:lower-roman}

.mw-parser-output .asbox{position:relative;overflow:hidden}.mw-parser-output .asbox table{background:transparent}.mw-parser-output .asbox p{margin:0}.mw-parser-output .asbox p+p{margin-top:0.25em}.mw-parser-output .asbox-body{font-style:italic}.mw-parser-output .asbox-note{font-size:smaller}.mw-parser-output .asbox .navbar{position:absolute;top:-0.75em;right:1em;display:none}.mw-parser-output :not(p):not(.asbox)+style+.asbox,.mw-parser-output :not(p):not(.asbox)+link+.asbox{margin-top:3em}