马尔可夫链(Markov Chain)

马尔可夫链(Markov Chain)

简单地说,马尔可夫链描述了一系列的状态,如图所示。图中描述了天气每天是如何变化的,从晴天到晴天,从晴天到雨天,从雨天到晴天。
在这里插入图片描述
天气过程的转换图
转换图。一张图表描述了天气的变化。它由节点和边组成:
节点是可能的状态,S或R,即晴天或雨天;
边缘.边缘是状态转换:S到S,S到R,R到S,R到R.每条边都有一个概率,即过渡的概率。因此,天气保持晴朗(S)的概率为0.8,转变为下雨(R)的概率为0.2。
这就是马尔可夫链的转移图。状态序列可能如下所示:SSRS。两天是晴天,接下来是雨天,然后是晴天。这些转变的概率为 0.8 · 0.2 · 0.7= 0.112。
**马尔可夫性质。**马尔可夫链的定义属性是状态转换的概率仅取决于当前状态。对于天气,马尔可夫性质表示明天的天气仅取决于今天的天气。
固定分布。要了解有关马尔可夫链的更多信息,您可以运行它很长时间。然后你就会发现晴天或雨天发生的总体概率。这些概率是链的平稳分布——马尔可夫链稳定的状态概率,并且随着时间的推移保持不变。从数学上讲,您可以通过求解以下方程获得平稳分布:
在这里插入图片描述
这里,P(S)是晴天的概率,P(R)是雨天的概率。参考图2.2,请注意以下事项:
等式的右侧。 2.1 计算最终处于状态 S 的概率。如果您已经处于状态 S 并停留在那里,那么您最终会处于 S 状态:0.8 · P(S)。如果您处于状态 R,但转换到 S:0.7·P(R),您也会最终处于 S。状态概率 P(S) 也出现在左侧。您寻求在转换后不会改变的状态概率。
同样,方程。 2.2 表示状态概率 P(R)也必须保持不受转换的影响。
最后,方程。 2.3 表明您始终处于 S 或 R 状态。因此,概率之和为 1。
求解方程,可得:
在这里插入图片描述
也就是说,当链条进行一段时间后,任意一天出现晴朗天气的概率变为0.78。下雨天气的概率变为0.22。

import numpy as np
matrix = np.matrix([[0.8, 0.2],
                    [0.7, 0.3]], dtype=float)
vector1 = np.matrix([[0.1, 0.9]], dtype=float)

for i in range(100):
    vector1 = vector1 * matrix
    print('Courrent round: {}'.format(i+1))
    print(vector1)

前几轮输出结果如下所示
在这里插入图片描述
第10轮之后趋于稳定如下所示
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值