# Markovian arrival process

In queueing theory, a discipline within the mathematical theory of probability, a Markovian arrival process (MAP or MArP) is a mathematical model for the time between job arrivals to a system. The simplest such process is a Poisson process where the time between each arrival is exponentially distributed.
The processes were first suggested by Marcel F. Neuts in 1979.

## Definition

A Markov arrival process is defined by two matrices, D$_0$ and D$_1$ where elements of D$_0$ represent hidden transitions and elements of D$_1$ observable transitions. The block matrix Q below is a transition rate matrix for a continuous-time Markov chain.
    $Q=\left[{\begin{matrix}D_{0}&D_{1}&0&0&\dots \\0&D_{0}&D_{1}&0&\dots \\0&0&D_{0}&D_{1}&\dots \\\vdots &\vdots &\ddots &\ddots &\ddots \end{matrix}}\right]\;.$
The simplest example is a Poisson process where D$_0$ = −λ and D$_1$ = λ where there is only one possible transition, it is observable, and occurs at rate λ. For Q to be a valid transition rate matrix, the following restrictions apply to the D$_i$
    ${\begin{aligned}0\leq [D_{1}]_{i,j}&<\infty \\0\leq [D_{0}]_{i,j}&<\infty \quad i\neq j\\\,[D_{0}]_{i,i}&<0\\(D_{0}+D_{1}){\boldsymbol {1}}&={\boldsymbol {0}}\end{aligned}}$

## Special cases
### Phase-type renewal process

The phase-type renewal process is a Markov arrival process with phase-type distributed sojourn between arrivals. For example, if an arrival process has an interarrival time distribution PH$({\boldsymbol {\alpha }},S)$ with an exit vector denoted ${\boldsymbol {S}}^{0}=-S{\boldsymbol {1}}$, the arrival process has generator matrix,
    $Q=\left[{\begin{matrix}S&{\boldsymbol {S}}^{0}{\boldsymbol {\alpha }}&0&0&\dots \\0&S&{\boldsymbol {S}}^{0}{\boldsymbol {\alpha }}&0&\dots \\0&0&S&{\boldsymbol {S}}^{0}{\boldsymbol {\alpha }}&\dots \\\vdots &\vdots &\ddots &\ddots &\ddots \\\end{matrix}}\right]$

## Generalizations
### Batch Markov arrival process

The batch Markovian arrival process (BMAP) is a generalisation of the Markovian arrival process by allowing more than one arrival at a time. The homogeneous case has rate matrix,
    $Q=\left[{\begin{matrix}D_{0}&D_{1}&D_{2}&D_{3}&\dots \\0&D_{0}&D_{1}&D_{2}&\dots \\0&0&D_{0}&D_{1}&\dots \\\vdots &\vdots &\ddots &\ddots &\ddots \end{matrix}}\right]\;.$
An arrival of size $k$ occurs every time a transition occurs in the sub-matrix $D_{k}$. Sub-matrices $D_{k}$ have elements of $\lambda _{i,j}$, the rate of a Poisson process, such that,
    $0\leq [D_{k}]_{i,j}<\infty \;\;\;\;1\leq k$
    $0\leq [D_{0}]_{i,j}<\infty \;\;\;\;i\neq j$
    $[D_{0}]_{i,i}<0\;$
and
    $\sum _{k=0}^{\infty }D_{k}{\boldsymbol {1}}={\boldsymbol {0}}$

### Markov-modulated Poisson process

The Markov-modulated Poisson process or MMPP where m Poisson processes are switched between by an underlying continuous-time Markov chain. If each of the m Poisson processes has rate λ$_i$ and the modulating continuous-time Markov has m × m transition rate matrix R, then the MAP representation is
    ${\begin{aligned}D_{1}&=\operatorname {diag} \{\lambda _{1},\dots ,\lambda _{m}\}\\D_{0}&=R-D_{1}.\end{aligned}}$

## Fitting

A MAP can be fitted using an expectation–maximization algorithm.

### Software

* KPC-toolbox a library of MATLAB scripts to fit a MAP to data.