Grinstead-Snell-Probability · Problem 29

Markov Chains

Mathematics · engel-algorithm-fixed-vector

Problem

In his book, Wahrscheinlichkeitsrechnung und Statistik, A. Engle proposes an algorithm for finding the fixed vector for an ergodic Markov chain when the transition probabilities are rational numbers. Here is his algorithm: For each state ii, let aia_i be the least common multiple of the denominators of the non-zero entries in the iith row. Start by putting aia_i chips on state ii for all ii. Then, at each state, redistribute the aia_i chips, sending aipija_i p_{ij} to state jj. The number of chips at state ii after this redistribution need not be a multiple of aia_i. For each state ii, add just enough chips to bring the number of chips at state ii up to a multiple of aia_i. Then redistribute the chips in the same manner. This process will eventually reach a point where the number of chips at each state, after the redistribution, is the same as before redistribution. At this point, we have found a fixed vector. Here is an example: P=(12311/21/41/421/201/231/21/41/4).\mathbf{P} = \begin{pmatrix} 1 & 2 & 3 \\ 1 & 1/2 & 1/4 & 1/4 \\ 2 & 1/2 & 0 & 1/2 \\ 3 & 1/2 & 1/4 & 1/4 \end{pmatrix}. We start with a=(4,2,4)\mathbf{a} = (4, 2, 4). We find that a=(20,8,12)\mathbf{a} = (20, 8, 12) is a fixed vector. (a) Write a computer program to implement this algorithm. (b) Prove that the algorithm will stop. Hint: Let b\mathbf{b} be a vector with integer components that is a fixed vector for P\mathbf{P} and such that each coordinate of the starting vector a\mathbf{a} is less than or equal to the corresponding component of b\mathbf{b}. Show that, in the iteration, the components of the vectors are always increasing, and always less than or equal to the corresponding component of b\mathbf{b}.

Browse the problem library