Markov链在很多领域中被用来建立数学模型,该模型常用来描述用同一种方法进行多次实验或测量,且每次实验结果属于几个指定的可能结果之一,每次实验的结果仅仅依赖于最近的上一次实验结果。
例:实验室动物每天可以吃三种食物中的任一种。结果表明,如果第一次测试中,这个动物选择一种食物,则下一次测试中它选同样的食物的概率是50%,下一次测试它选择其他两种实物的概率都是25%。
(1)求该实验的随机矩阵。
(2)如果这个动物第一次测试选了1号食物,在第二次测试中选择2号食物的概率、第三次选择食物2和3的概率是多少?
解:
(1)随机矩阵PPP:

(2)在MATLAB中求P2=P×PP^2=P\times PP2=P×P:
P =
0.5000 0.2500 0.2500
0.2500 0.5000 0.2500
0.2500 0.2500 0.5000
>> P^2
ans =
0.3750 0.3125 0.3125
0.3125 0.3750 0.3125
0.3125 0.3125 0.3750
即P2P^2P2为:

由矩阵PPP可求出该动物第二次测试选择各种食物的概率表:v1=Pv0=[0.50000.25000.2500]v_1=Pv_0=\begin{bmatrix}0.5000\\0.2500\\0.2500\end{bmatrix}v1=Pv0=⎣⎡0.50000.25000.2500⎦⎤,所以第二次选择2号食物概率为v1第二行=0.2500v_{1第二行}=0.2500v1第二行=0.2500。
由矩阵P2P^2P2可以求出该动物第三次测试选择各种食物的概率,设第一次选了第一种食物的初始概率向量v0=[100]v_0=\begin{bmatrix}1\\0\\0\end{bmatrix}v0=⎣⎡100⎦⎤,则第三次的概率向量为:v2=P2v0=[0.37500.31250.3125]v_2=P^2v_0=\begin{bmatrix}0.3750\\0.3125\\0.3125\end{bmatrix}v2=P2v0=⎣⎡0.37500.31250.3125⎦⎤,所以第三次选择食物2和3概率分别为v2第二行=0.3125v_{2第二行}=0.3125v2第二行=0.3125和v2第三行=0.3125v_{2第三行}=0.3125v2第三行=0.3125。
概率向量,随机矩阵(Stochastic Matrix),马尔科夫链
一个具有非负元素且各元素相加为1的向量为概率向量。由概率向量作为列向量组合而成的方阵为随机矩阵(也叫马尔科夫矩阵、转移矩阵等)。
例如,上例中,矩阵PPP为随机矩阵,PPP的每一列为概率向量。
马尔科夫链是一个向量序列x0,x1,x2…x_0,x_1,x_2\dotsx0,x1,x2…与一个随机矩阵PPP的关系,满足:
x1=Px0, x2=Px1, x3=Px2, …x_1=Px_0,\space x_2=Px_1,\space x_3=Px_2,\space \dotsx1=Px0, x2=Px1, x3=Px2, …
此关系可以用一阶差分方程来描述:
xk+1=Pxk, k=0,1,2,…x_{k+1}=Px_k, \space k=0,1,2,\dotsxk+1=Pxk, k=0,1,2,…
当向量在RnR^nRn中的一个马尔科夫链描述一个系统或实验的序列时,xkx_kxk中的元素分别列出了系统在nnn个可能的状态中的概率,或者实验结果可能是nnn个可能的结果之一的概率。所以xkx_kxk也称为状态向量。
稳态向量(Steady-State Vector)
如果PPP是一个随机矩阵,如果一个状态向量qqq满足Pq=qPq=qPq=q,则此向量qqq为相对于PPP的稳态向量(也可叫平衡向量)。
每个随机矩阵都有一个稳态向量。
例:求上例的稳态向量xxx。
根据稳态向量的定义,满足Px=xPx=xPx=x,即(P−I)x=0(P-I)x=0(P−I)x=0
用上面的随机矩阵PPP构建齐次方程:(P−I)x=0(P-I)x=0(P−I)x=0
再解方程:
>> I=eye(3) //生成3阶单位矩阵I
I =
1 0 0
0 1 0
0 0 1
>> rref(P-I) //将矩阵(P-I)化简为简化阶梯阵
ans =
1 0 -1
0 1 -1
0 0 0
对齐次方程组,可以直接对系数矩阵进行消元称为标准阶梯阵,效果和对增广矩阵[P−IO][P-I\quad O][P−IO]消元是一样的,下面是对增广矩阵的消元法以解线性方程组:
>> O = [0;0;0]
O =
0
0
0
>> A = [P-I O]
A =
-0.5000 0.2500 0.2500 0
0.2500 -0.5000 0.2500 0
0.2500 0.2500 -0.5000
马尔科夫链与随机矩阵的MATLAB应用

本文围绕马尔科夫链展开,介绍了概率向量、随机矩阵、稳态向量和正则随机矩阵的概念。通过实验室动物选食物、天气状态预测等实例,阐述如何求解随机矩阵、计算不同阶段的概率以及稳态向量。同时利用MATLAB进行计算,并探讨了马尔科夫链的收敛性。
最低0.47元/天 解锁文章
2680

被折叠的 条评论
为什么被折叠?



