MarkovProcessProperties
✖
MarkovProcessProperties
gives a summary of properties for the finite state Markov process mproc.
Details



- MarkovProcessProperties can be used for finite state Markov processes such as DiscreteMarkovProcess and ContinuousMarkovProcess.
- MarkovProcessProperties[mproc,"Properties"] gives a list of available properties.
- MarkovProcessProperties[mproc,"property","Description"] gives a description of the property as a string.
- Basic properties include:
-
"InitialProbabilities" initial state probability vector "TransitionMatrix" conditional transition probabilities m "TransitionRateMatrix" conditional transition rates q "TransitionRateVector" state transition rates μ "HoldingTimeMean" mean holding time for a state "HoldingTimeVariance" variance of holding time for a state "SummaryTable" summary of properties - For a continuous-time Markov process "TransitionMatrix" gives the transition matrix of the embedded discrete-time Markov process.
- The holding time is the time spent in each state before transitioning to a different state. This takes into account self-loops which may cause the process to transition to the same state several times.
- Structural properties include:
-
"CommunicatingClasses" sets of states accessible from each other "RecurrentClasses" communicating classes that cannot be left "TransientClasses" communicating classes that can be left "AbsorbingClasses" recurrent classes with a single element "PeriodicClasses" communicating classes with finite period greater than 1 "Periods" period for each of the periodic classes "Irreducible" whether the process has a single recurrent class "Aperiodic" whether all classes are aperiodic "Primitive" whether the process is irreducible and aperiodic - The states of a finite Markov process can be grouped into communicating classes where from each state in a class there is a path to every other state in the class.
- A communicating class can be transient when there is a path from the class to another class or recurrent when there is not. A special type of recurrent class, called absorbing, consist of a single element.
- A state is periodic is if there is a non-zero probability that you return to the state after two or more steps. All the states in a class have the same period.
- Transient properties before the process enters a recurrent class:
-
"TransientVisitMean" mean number of visits to each transient state "TransientVisitVariance" variance of number of visits to each transient state "TransientTotalVisitMean" mean total number of transient states visited - A Markov process will eventually enter a recurrent class. The transient properties characterize how many times each transient state is visited or how many different transient states are visited.
- Limiting properties include:
-
"ReachabilityProbability" probability of ever reaching a state "LimitTransitionMatrix" Cesaro limit of the transition matrix "Reversible" whether the process is reversible - If a property is not available, this is indicated by Missing["reason"].
Examples
open allclose allBasic Examples (2)Summary of the most common use cases

https://wolfram.com/xid/0bswb51q1xtjmobnx2-p278q0

https://wolfram.com/xid/0bswb51q1xtjmobnx2-h7yh56


https://wolfram.com/xid/0bswb51q1xtjmobnx2-e8urqp

Find the values of a specific property:

https://wolfram.com/xid/0bswb51q1xtjmobnx2-bn728p

https://wolfram.com/xid/0bswb51q1xtjmobnx2-jx883o


https://wolfram.com/xid/0bswb51q1xtjmobnx2-f9emjw

Scope (5)Survey of the scope of standard use cases
Find the communicating classes, highlighted in the graph through different colors:

https://wolfram.com/xid/0bswb51q1xtjmobnx2-c3vhvk

https://wolfram.com/xid/0bswb51q1xtjmobnx2-baaxz


https://wolfram.com/xid/0bswb51q1xtjmobnx2-bz1as


https://wolfram.com/xid/0bswb51q1xtjmobnx2-bn7ei7

The process is not irreducible:

https://wolfram.com/xid/0bswb51q1xtjmobnx2-gdv4tu


https://wolfram.com/xid/0bswb51q1xtjmobnx2-fwrw3h

Find the recurrent classes, represented by square and circular vertices in the graph:

https://wolfram.com/xid/0bswb51q1xtjmobnx2-cd6c6


https://wolfram.com/xid/0bswb51q1xtjmobnx2-cavj19

Find the transient classes, represented by diamond vertices in the graph:

https://wolfram.com/xid/0bswb51q1xtjmobnx2-g9ogjy


https://wolfram.com/xid/0bswb51q1xtjmobnx2-hlna0d

Find the absorbing classes, represented by square vertices in the graph:

https://wolfram.com/xid/0bswb51q1xtjmobnx2-xpupe


https://wolfram.com/xid/0bswb51q1xtjmobnx2-ohwda9

Define a Markov process with self-loops:

https://wolfram.com/xid/0bswb51q1xtjmobnx2-fnkucy

https://wolfram.com/xid/0bswb51q1xtjmobnx2-bkuq9

The self-loops make the class aperiodic:

https://wolfram.com/xid/0bswb51q1xtjmobnx2-gy6et

Markov process with no self-loops:

https://wolfram.com/xid/0bswb51q1xtjmobnx2-onwdh

https://wolfram.com/xid/0bswb51q1xtjmobnx2-b4g9kx

Here both classes are periodic:

https://wolfram.com/xid/0bswb51q1xtjmobnx2-h6ftb2

Summary table of properties for a continuous-time Markov process:

https://wolfram.com/xid/0bswb51q1xtjmobnx2-d4pogi

https://wolfram.com/xid/0bswb51q1xtjmobnx2-ji9n76


https://wolfram.com/xid/0bswb51q1xtjmobnx2-lhfdep

Obtain the value for a specific property for a continuous Markov chain:

https://wolfram.com/xid/0bswb51q1xtjmobnx2-gyhnsh

https://wolfram.com/xid/0bswb51q1xtjmobnx2-qx2ol


https://wolfram.com/xid/0bswb51q1xtjmobnx2-rqo7g


https://wolfram.com/xid/0bswb51q1xtjmobnx2-z92o2

Find the conditional mean number of total transitions starting in state 1 and ending in state 4:

https://wolfram.com/xid/0bswb51q1xtjmobnx2-d51imh

https://wolfram.com/xid/0bswb51q1xtjmobnx2-hyzqb5


https://wolfram.com/xid/0bswb51q1xtjmobnx2-7xk7nw

Compare with the results from simulation:

https://wolfram.com/xid/0bswb51q1xtjmobnx2-bcoaf5

https://wolfram.com/xid/0bswb51q1xtjmobnx2-mgh6

Find the conditional mean number of transitions from state 2 to state 3:

https://wolfram.com/xid/0bswb51q1xtjmobnx2-kpurr5

https://wolfram.com/xid/0bswb51q1xtjmobnx2-bp7m2p


https://wolfram.com/xid/0bswb51q1xtjmobnx2-rffwot

Compare with the results from simulation:

https://wolfram.com/xid/0bswb51q1xtjmobnx2-fgz1vl

https://wolfram.com/xid/0bswb51q1xtjmobnx2-996qf

Applications (2)Sample problems that can be solved with this function
A gambler starts with $3 and bets $1 at each step. He wins $1 with a probability of 0.4:

https://wolfram.com/xid/0bswb51q1xtjmobnx2-jm8rd

https://wolfram.com/xid/0bswb51q1xtjmobnx2-fjsu75
Find the expected number of times the gambler has units:

https://wolfram.com/xid/0bswb51q1xtjmobnx2-9bba0

Verify the answer using simulation:

https://wolfram.com/xid/0bswb51q1xtjmobnx2-f6pwuy

https://wolfram.com/xid/0bswb51q1xtjmobnx2-poxolm

Find the expected time until the gambler wins $7 or goes broke:

https://wolfram.com/xid/0bswb51q1xtjmobnx2-csbpiu

Total states visited before the gambler wins $7 or goes broke:

https://wolfram.com/xid/0bswb51q1xtjmobnx2-sanmh

Verify the answer using simulation:

https://wolfram.com/xid/0bswb51q1xtjmobnx2-izvqc

https://wolfram.com/xid/0bswb51q1xtjmobnx2-ph4m7

In a game of tennis between two players, suppose the probability of the server winning a point is . There are 17 possible states:

https://wolfram.com/xid/0bswb51q1xtjmobnx2-6d74m
Visualize the random walk graph for :

https://wolfram.com/xid/0bswb51q1xtjmobnx2-comxn4

https://wolfram.com/xid/0bswb51q1xtjmobnx2-kca95k

Find the probability of the server winning the game if :

https://wolfram.com/xid/0bswb51q1xtjmobnx2-l2lmu


https://wolfram.com/xid/0bswb51q1xtjmobnx2-cxrmd

Find the mean time to absorption, that is, the number of points played:

https://wolfram.com/xid/0bswb51q1xtjmobnx2-ieac1q


https://wolfram.com/xid/0bswb51q1xtjmobnx2-j5rzf2

Find the mean number of states visited:

https://wolfram.com/xid/0bswb51q1xtjmobnx2-ba6ssz

Find the average number of times the score will be tied at deuce:

https://wolfram.com/xid/0bswb51q1xtjmobnx2-cwls51

Verify the answer using simulation:

https://wolfram.com/xid/0bswb51q1xtjmobnx2-4ceph

Properties & Relations (1)Properties of the function, and connections to other functions
The transition matrix of this Markov process is not irreducible:

https://wolfram.com/xid/0bswb51q1xtjmobnx2-dkwrbt

https://wolfram.com/xid/0bswb51q1xtjmobnx2-i68fuk

Hence the stationary distribution depends on the initial state probabilities:

https://wolfram.com/xid/0bswb51q1xtjmobnx2-czxaeb


https://wolfram.com/xid/0bswb51q1xtjmobnx2-k2xypd

Possible Issues (1)Common pitfalls and unexpected behavior
Wolfram Research (2012), MarkovProcessProperties, Wolfram Language function, https://reference.wolfram.com/language/ref/MarkovProcessProperties.html.
Text
Wolfram Research (2012), MarkovProcessProperties, Wolfram Language function, https://reference.wolfram.com/language/ref/MarkovProcessProperties.html.
Wolfram Research (2012), MarkovProcessProperties, Wolfram Language function, https://reference.wolfram.com/language/ref/MarkovProcessProperties.html.
CMS
Wolfram Language. 2012. "MarkovProcessProperties." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/MarkovProcessProperties.html.
Wolfram Language. 2012. "MarkovProcessProperties." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/MarkovProcessProperties.html.
APA
Wolfram Language. (2012). MarkovProcessProperties. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/MarkovProcessProperties.html
Wolfram Language. (2012). MarkovProcessProperties. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/MarkovProcessProperties.html
BibTeX
@misc{reference.wolfram_2025_markovprocessproperties, author="Wolfram Research", title="{MarkovProcessProperties}", year="2012", howpublished="\url{https://reference.wolfram.com/language/ref/MarkovProcessProperties.html}", note=[Accessed: 29-March-2025
]}
BibLaTeX
@online{reference.wolfram_2025_markovprocessproperties, organization={Wolfram Research}, title={MarkovProcessProperties}, year={2012}, url={https://reference.wolfram.com/language/ref/MarkovProcessProperties.html}, note=[Accessed: 29-March-2025
]}