主要内容

dtmc

建立离散时间马尔可夫链

描述

dtmc从一个指定的状态转移矩阵建立一个离散时间有限状态时齐次马尔可夫链。

在创建一个dtmc对象,可以分析马尔可夫链的结构和演化,并以各种方式可视化马尔可夫链,通过使用对象的功能.你也可以用adtmc对象,指定Markov-switching动态回归模型的切换机制(msVAR).

要创建由阈值转换和阈值变量数据控制的切换机制,请参阅阈值切换动态回归模型阈值tsVAR

创建

描述

例子

mc= dtmc (P创建离散时间马尔可夫链对象mc由状态转移矩阵指定P

例子

mc= dtmc (P“StateNames”stateNames)可以选择将名称关联起来stateNames美国。

输入参数

全部展开

状态转移矩阵,记为anumStates——- - - - - -numStates非负数字矩阵。

P (i, j)是状态转变的理论概率吗j或者是观察到的状态转变的经验计数j.P可以完全指定(所有元素都是非负数),也可以部分指定(元素是非负数和值),或未知的(完全由值)。

dtmc将每一行标准化P没有任何求和到的值1,然后将归一化矩阵存储在属性中P

数据类型:

属性

全部展开

您可以在通过使用名称-值对参数语法创建模型对象时设置可写属性值,或者在通过使用点表示法创建模型对象之后设置可写属性值。例如,对于双状态模型mc,来标记第一和第二状态抑郁症经济衰退分别输入:

mc.StateNames = ["Depression" "Recession"];

此属性是只读的。

归一化转移矩阵,指定为numStates——- - - - - -numStates非负数字矩阵。

如果x行向量的长度是多少numStates指定时刻状态的分布tx资金1),然后x * P是时刻状态的分布吗t + 1

条目表示可估计的转移概率。的估计的函数msVAR处理已知的元素P为优化过程中的等式约束。

数据类型:

此属性是只读的。

状态数,指定为正标量。

数据类型:

状态标签,指定为字符串向量、字符向量的单元向量或长度的数字向量numStates.元素对应的行和列P

例子:“萧条”“衰退”“停滞”“繁荣”

数据类型:字符串

对象的功能

dtmc对象需要一个完全指定的转换矩阵P

全部展开

渐近 确定马尔可夫链渐近
isergodic 检验马尔可夫链的遍历性
isreducible 检查马尔可夫链的可约性
分类 分类马尔可夫链状态
懒惰的 调整马尔可夫链态惯性
子链 提取马尔可夫子链
重新分配 计算马尔可夫链再分布
模拟 模拟马尔可夫链状态游走
distplot 绘制马尔可夫链再分布图
eigplot 绘制马尔可夫链特征值
graphplot 绘制马尔可夫链有向图
simplot 绘制马尔可夫链模拟图

例子

全部折叠

考虑这个理论的,一个随机过程的右随机转移矩阵。

P 0 5 0 5 0 0 0 5 0 0 5 0 0 0 0 1 0 0 1 0

元素 P j 过程转换到状态的概率是多少j在时间t+ 1假设它处于状态在时间t,尽管t

建立以转移矩阵为特征的马尔可夫链P

P = [0.5 0.5 0 0 0;0.5 0 0.5 0;0 0 0 1;0 0 1 0];mc = dtmc (P);

mc是一个dtmc对象表示马尔可夫链。

显示马尔科夫链中的状态数。

numstates = mc.NumStates
numstates = 4

画一个马尔可夫链的有向图。

图;graphplot (mc);

图中包含一个轴对象。axis对象包含一个graphplot类型的对象。

观察状态3和状态4形成吸收类,而状态1和状态2是暂态的。

考虑这个转移矩阵中的元素 j 是观察的次数状态吗转换到状态j

P 1 6 2 3. 1 3. 5 1 1 1 0 8 9 7 6 1 2 4 1 4 1 5 1

例如, P 3. 2 7 意味着状态3转换到状态2 7次。

P = [16 2 3 13;5 11 10 8;9 7 6 12;4 14 15 1];

建立以转移矩阵为特征的马尔可夫链P

mc = dtmc (P);

显示存储在mc中的规范化转换矩阵。验证行中的元素和为1对所有行。

mc.P
ans =4×40.4706 0.0588 0.0882 0.3824 0.1471 0.3235 0.2941 0.2353 0.2647 0.2059 0.1765 0.3529 0.1176 0.4118 0.4412 0.0294
sum (mc.P, 2)
ans =4×11 1 1 1

画一个马尔可夫链的有向图。

图;graphplot (mc);

图中包含一个轴对象。axis对象包含一个graphplot类型的对象。

考虑美国实际国民生产总值(GNP)的两国商业周期[3]p。697。在时间t,实际国民生产总值可以处于扩张或收缩的状态。假设下面的陈述在样本期间是正确的。

  • 如果实际国民生产总值在增长t,然后是它在某一时刻继续处于膨胀状态的概率t+ 1是 p 1 1 0 9 0

  • 如果当时实际GNP在收缩t,则为它在某一时刻继续处于收缩状态的概率t+ 1是 p 2 2 0 7 5

为模型创建转换矩阵。

侯= 0.90;第22位= 0.75;P = [p11 (1 - p11)];(1 - p22) p22];

建立以转移矩阵为特征的马尔可夫链P.标记这两个状态。

mc = dtmc (P,“StateNames”, (“扩张”“收缩”])
mc = dtmc with properties: P: [2x2 double] StateNames: ["Expansion" "Contraction"] NumStates: 2

画一个马尔可夫链的有向图。用边缘颜色表示过渡的概率。

图;graphplot (mc,“ColorEdges”,真正的);

图中包含一个轴对象。axis对象包含一个graphplot类型的对象。

来帮助你探索dtmc对象的功能,mcmix仅使用指定数量的状态从一个随机转移矩阵创建一个马尔可夫链。

用随机转移矩阵创建一个五态马尔可夫链。

rng (1);%的再现性mc = mcmix (5)
mc = dtmc with properties: P: [5x5 double] StateNames: ["1" "2" "3" "4" "5"] NumStates: 5

mc是一个dtmc对象。

在复平面上画出转移矩阵的特征值。

图;eigplot (mc)

图中包含一个轴对象。axis对象包含5个类型为line, patch的对象。这些对象代表特征值,谱隙。

这个谱决定了马尔可夫链的结构性质,如周期性和混合速率。

考虑马尔可夫转换自回归(msVAR)模型包含四种经济体制:萧条、衰退、停滞和扩张。为了估计转换机制的转移概率,你必须提供一个dtmc具有未知转移矩阵项的模型msVAR框架。

建立一个带有未知转移矩阵的4区域马尔可夫链条目)。指定政体名称。

P =南(4);statenames = [“萧条”“衰退”...“停滞”“扩张”];mcUnknown = dtmc (P,“StateNames”statenames)
mcUnknown = dtmc with properties: P: [4x4 double] StateNames: ["Depression" "Recession" "Stagnation" "Expansion"] NumStates: 4
mcUnknown。P
ans =4×4南,南,南,南,南,南,南

假设经济学理论表明,美国经济从未从衰退或萧条过渡到扩张。用一个部分已知的转移矩阵来表示情况,创建一个4级马尔可夫链。

P (1,4) = 0;P(2、4)= 0;mcPartial = dtmc (P,“StateNames”statenames)
mcPartial = dtmc with properties: P: [4x4 double] StateNames: ["Depression" "Recession" "Stagnation" "Expansion"] NumStates: 4
mcPartial。P
ans =4×4南南南0南南南0南南南南

估计的函数msVAR处理已知的元素mcPartial。P为优化过程中的等式约束。

有关马尔可夫转换动态回归模型的更多细节,请参见msVAR

选择

您还可以使用mcmix

参考文献

[1]Gallager, R.G.随机过程:应用理论。英国剑桥:剑桥大学出版社,2013。

[2]Haggstrom, O。有限马尔可夫链及其算法应用。英国剑桥:剑桥大学出版社,2002年。

[3]汉密尔顿,詹姆斯D。时间序列分析.普林斯顿:普林斯顿大学出版社,1994。

[4]诺里斯,j . R。马尔可夫链。英国剑桥:剑桥大学出版社,1997。

介绍了R2017b