2. 离散Markov过程
考虑一个系统,这个系统在任意时间处于N个离散状态S1,S2,⋯,SN中的某个状态,如图1所示(N=5)。系统在每个时间点根据当前状态相关的概率值跳转到下一个状态。我们把状态跳转时间表示为t=1,2,⋯,并且把t时刻的的状态值表示为qt。上述系统的一个完整概率描述需要当前状态(时刻t)以及之前的所有状态。对于离散Markov链的一个特殊情况——一阶Markov过程,只需要当前状态和上一个状态就可以描述系统的概率分布,即
P[qt=Sj|qt−1=Si,qt−2=Sk,⋯]=P[qt=Sj|qt−1=Si].(1)
并且,我们只考虑(1)的右边和时间无关的系统,这样得到一组状态转移概率aij:
aij=P[qt=Sj|qt−1=Si],1≤i,j≤N,(2)
其中状态转移概率需要满足概率的一般性质,即:
aij∑j=1Naij>0=1(3a)(3b)

上述随机过程可以称为可观测Markov模型,因为过程的输出是一组状态值,每个状态值和一个物理(可观测的)事件相关。下面介绍一个只有3个状态的天气Markov模型。我们假设每天观测到的天气是以下几种情况之一:
状态1:雨雪
状态2:多云
状态3:晴天
我们假设第t天的天气由上面三个状态中的一个来表征,并且状态转移概率矩阵A是
A={aij}=⎛⎝⎜⎜⎜⎜⎜⎜0.40.20.10.30.60.10.30.20.8⎞⎠⎟⎟⎟⎟⎟⎟.
假设第一天(t=1)的天气是晴天(状态3),那么接下来7天的天气是“晴天-晴天-雨雪-雨雪-晴天-多云-晴天”的概率是多少?更正式的描述,我们定义t=1,2,⋯,8的观测序列O为O=S3,S3,S3,S1,S1,S3,S2,S3,并且在模型已知的情况下,我们希望得到O的概率。这个概率可以表示为
P(O|Model)=P[S3,S3,S3,S1,S1,S3,S2,S3|Model]=P[S3]⋅P[S3|S3]⋅P[S3|S3]⋅P[S1|S3]⋅P[S1|S1]⋅P[S3|S1]⋅P[S2|S3]⋅P[S3|S2]=π3⋅a33⋅a33⋅a31⋅a11⋅a13⋅a32⋅a23=1⋅(0.8)(0.8)(0.1)(0.4)(0.3)(0.1)(0.2)=1.536×10−4
其中
πi=P[q1=Si],1≤i≤N,(4)
表示初始状态概率。
另一个有意思的问题是:假设模型在一个已知状态,那么它保持这个状态正好d天的概率是多少?这个概率可以用以下状态序列的概率表示:
O=Si,Si,Si,⋯,Si,Sj≠Si,
模型为
P(O|Model,q1=Si)=(aii)d−1(1−aii)=pi(d).(5)
pi(d)是状态i的持续时间的概率密度函数。指数持续时间密度是Markov链中的状态持续时间的特点。根据pi(d),可以计算出以某种状态开始的条件下该状态的期望观测次数:
di¯=∑d=1∞dpi(d)=∑d=1∞d(aii)d−1(1−aii)=11−aii.(6a)(6b)
所以根据模型得到的连续晴天天数的期望值为1/(0.2)=5,多云是2.5,雨雪是1.67。