马尔可夫链中两个过渡的概率

时间:2015-02-28 19:02:58

标签: matlab probability markov-chains

我已经掌握了马尔可夫模型的过渡矩阵,但对于如何进行一系列过渡仍然有点不清楚。考虑页面底部的马尔可夫链,S = Sunny,C =多云,R =多雨。

我在MATLAB中设置了这个转换矩阵

A = [0.1 0.2 0.7; 0.4 0.3 0.3; 0.2 0.6 0.2]

    0.1000    0.2000    0.7000
    0.4000    0.3000    0.3000
    0.2000    0.6000    0.2000

现在为了查找转换的概率,为方便起见我做了以下变量

>> S = 1
>> R = 2
>> C = 3

您可以通过从表中查找来查找单次转换的概率,例如从今天的Rainy到明天的Sunny将是

>> A(R,S)
ans = 0.4000

问题

我很难理解如何进行一系列过渡。例如,如果今天是晴天,那么从现在开始的两天是多云的几率是多少? (所以基本上是两个过渡)我在想

>> A(S,S)*A(S,C) + A(S,R)*A(R,C) + A(S,C)*A(C,C)
ans = 0.2700

基本上我发现所有可能的转换都可能最终来自Sunny的Cloudy。虽然繁琐,这是正确的方法吗?

enter image description here

1 个答案:

答案 0 :(得分:2)

您编码A(S,S)*A(S,C) + A(S,R)*A(R,C) + A(S,C)*A(C,C)(即对所有可能的中间状态求和,或Chapman-Kolmogorov equation)只是矩阵乘法:

A(S,:)*A(:,C)

通常,A2 = A^2给出所有此类双重转换的概率,An = A^nn - 阶转换的概率(例如参见here)。所以A2(S,C)是今天是阴天的两天后的概率,如果今天天气晴朗的话。