200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > MATLAB 马尔可夫链

MATLAB 马尔可夫链

时间:2018-08-05 23:58:50

相关推荐

MATLAB 马尔可夫链

✅作者简介:人工智能专业本科在读,喜欢计算机与编程,写博客记录自己的学习历程。

🍎个人主页:小嗷犬的个人主页

🍊个人网站:小嗷犬的技术小站

🥭个人信条:为天地立心,为生民立命,为往圣继绝学,为万世开太平。

本文目录

马尔可夫链MATLAB 马尔可夫链预测模型

马尔可夫链

马尔可夫链是一种随机过程,它的状态转移是由当前状态决定的,与过去的状态无关。马尔可夫链的状态转移矩阵是一个方阵,它的每一行元素之和为1,这样的矩阵称为概率转移矩阵。马尔可夫链的状态转移矩阵可以用来表示状态转移的概率。

MATLAB 马尔可夫链预测模型

例1

有一个时齐的马尔可夫链,其状态转移矩阵为:

[0.50.30.20.20.60.20.40.20.4]\begin{bmatrix} 0.5 & 0.3 & 0.2\\ 0.2 & 0.6 & 0.2\\ 0.4 & 0.2 & 0.4 \end{bmatrix} ​0.50.20.4​0.30.60.2​0.20.20.4​​

当前状态为第二个状态,求经过5步后的状态概率分布。

% 状态转移矩阵P = [0.5 0.3 0.2; 0.2 0.6 0.2; 0.4 0.2 0.4];% 初始状态x0 = [0 1 0];% 经过15步后的状态概率分布x5 = x0 * P^5

输出结果为:

x5 =0.3552 0.3949 0.2499

例2

某农业地区的收成有三个状态,即“丰收”、“平收”和“欠收”,记为1、2、3。下表列出了该地区 1950-1989 年期间农业收成状态:

请根据以上数据,预测 1990-1999 年的收成状态。

40 年中有 39 次状态转移,假设马尔可夫链是时齐的,根据不同状态转移发生的频率来估计概率:

% 转移概率p11 = 3/15;p12 = 7/15;p13 = 5/15;p21 = 7/13;p22 = 2/13;p23 = 4/13;p31 = 4/11;p32 = 5/11;p33 = 2/11;% 状态转移矩阵P = [p11 p12 p13; p21 p22 p23; p31 p32 p33];

得到状态转移矩阵为:

[0.20000.46670.33330.53850.15380.30770.36360.45450.1818]\begin{bmatrix} 0.2000 & 0.4667 & 0.3333 \\ 0.5385 & 0.1538 & 0.3077 \\ 0.3636 & 0.4545 & 0.1818 \end{bmatrix} ​0.20000.53850.3636​0.46670.15380.4545​0.33330.30770.1818​​

以 1989 年的收成状态为初始状态,计算往后 10 年的收成状态概率分布:

% 初始状态x0 = [0 0 1];% 往后 10 年的收成状态概率分布x = zeros(11, 3);x(1, :) = x0;for i = 2:11x(i, :) = x(i-1, :) * P;end

输出结果为:

x =0 0 1.00000.3636 0.4545 0.18180.3836 0.3223 0.29410.3572 0.3623 0.28050.3685 0.3499 0.28150.3645 0.3538 0.28170.3658 0.3526 0.28160.3654 0.3530 0.28160.3655 0.3528 0.28160.3655 0.3529 0.28160.3655 0.3529 0.2816

可以看出,往后 5 年的收成状态概率分布不断变化、逐渐稳定,到 1998 年后,收成状态概率分布收敛,得到该地区马尔可夫链的终极状态概率分布。“丰收”和“平收”状态的概率相近,而“欠收”状态的概率较低。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。