第134行: |
第134行: |
| <math> | | <math> |
| \begin{aligned} | | \begin{aligned} |
− | p_{s_k A_j} = \sum_{s_m \in A_j} p_{s_k s_m} = p_{A_i A_j}, k \in A_i | + | p_{s_k A_j} = \frac{1}{|A_j|} \sum_{s_m \in A_j} p_{s_k s_m} = p_{A_i A_j}, k \in A_i |
| \end{aligned} | | \end{aligned} |
| </math> | | </math> |
第176行: |
第176行: |
| #Hard Partitioning,即存在分组矩阵<math>V_{i, j} = 1\ if\ s_i \in s_j'\ and\ 0\ otherwise</math>; | | #Hard Partitioning,即存在分组矩阵<math>V_{i, j} = 1\ if\ s_i \in s_j'\ and\ 0\ otherwise</math>; |
| #<math>V</math>是一个lumpable分组。 | | #<math>V</math>是一个lumpable分组。 |
| + | |
| + | |
| + | |
| + | ==Lumpable正例和反例== |
| + | |
| + | 既然hard partition里有lumpable和non-lumpable分组,这里用一个简单的例子提供正例和反例。 |
| + | |
| + | 我们用到的是这样一个转移矩阵: |
| + | |
| + | <math> |
| + | \begin{aligned} |
| + | P = P_{s_i s_j} = \left [ |
| + | \begin{array}{ccc:c} |
| + | 0.3 & 0.3 & 0.3 & 0.1 \\ |
| + | 0.3 & 0.3 & 0.3 & 0.1 \\ |
| + | 0.3 & 0.3 & 0.3 & 0.1 \\ |
| + | \hdashline0.1 & 0.1 & 0.1 & 0.7 |
| + | \end{array} |
| + | \right ] |
| + | \end{aligned} |
| + | </math> |
| + | |
| + | ====正例==== |
| + | |
| + | 我们可以看到,123行都是一样的,所以把他们分在一组,并把状态4分在另外一组,看起来像是一个合理的正例。 |
| + | |
| + | 接下来我们来计算一下。 |
| + | |
| + | 第1组的状态1到第1组的状态2,<math>p_{s_1 A_1} = p_{A_1 A_1} = \sum_{s_m \in A_1} p_{s_1 s_m} = p_{s_1 s_1} + p_{s_1 s_2} + p_{s_1 s_3} = 0.3 \times 3 = 0.9 </math> |
| + | |
| + | 第1组的状态1到第2组的状态4,<math>p_{s_1 A_2} = p_{A_1 A_2} = \sum_{s_m \in A_2} p_{s_1 s_m} = p_{s_1 s_4} = 0.1 </math> |
| + | |
| + | 第2组的状态4到第1组的状态1,<math>p_{s_4 A_1} = p_{A_2 A_1} = \sum_{s_m \in A_1} p_{s_4 s_m} = p_{s_4 s_1} + p_{s_4 s_2} + p_{s_4 s_3} = 0.1 \times 3 = 0.3 </math> |
| + | |
| + | 第2组的状态4到第2组的状态4,<math>p_{s_4 A_2} = p_{A_2 A_2} = \sum_{s_m \in A_2} p_{s_4 s_m} = p_{s_4 s_4} = 0.7 </math> |
| + | |
| + | <math> |
| + | \begin{aligned} |
| + | P = P_{A_k A_l} = \left [ |
| + | \begin{array}{c:c} |
| + | 0.9 & 0.1 \\ |
| + | \hdashline0.3 & 0.7 |
| + | \end{array} |
| + | \right ] |
| + | \end{aligned} |
| + | </math> |
| + | |
| + | |
| + | |
| + | ====反例==== |
| + | |
| + | 现在我们来看一个反例:把状态12分为一组,状态34分为另一组, |
| + | |
| + | 同样的,我们来计算一下。这次我们需要对3和4分开计算了。 |
| + | |
| + | 第1组的状态1到第1组的状态2,<math>p_{s_1 A_1} = p_{A_1 A_1} = \sum_{s_m \in A_1} p_{s_1 s_m} = p_{s_1 s_1} + p_{s_1 s_2} = 0.3 \times 2 = 0.6 </math> |
| + | |
| + | 第1组的状态1到第2组的状态3,<math>p_{s_1 A_2} = p_{A_1 A_2} = \sum_{s_m \in A_2} p_{s_1 s_m} = p_{s_1 s_3} + p_{s_1 s_4} = 0.4 </math> |
| + | |
| + | 第2组的状态3到第1组的状态1,<math>p_{s_3 A_1} = \sum_{s_m \in A_1} p_{s_4 s_m} = p_{s_3 s_1} + p_{s_3 s_2} = 0.3 \times 2 = 0.6 </math> |
| + | |
| + | 第2组的状态4到第1组的状态1,<math>p_{s_4 A_1} = \sum_{s_m \in A_2} p_{s_4 s_m} = p_{s_4 s_1} + p_{s_4 s_2} = 0.1 \times 2 = 0.2 </math> |
| + | |
| + | 这里我们就能看到,<math>p_{s_3 A_1} \neq p_{s_4 A_1}</math>,当同一组的两个状态<math>s_3</math>和<math>s_4</math>对其他组的转移概率不一样的话,如果我们强行按照这样来分组(也没办法强行,因为我们不知道<math>p_{A_2 A_1} = p_{s_3 A_1}</math>还是<math>p_{A_2 A_1} = p_{s_4 A_1}</math>),假设<math>p_{A_2 A_1} = 0.6</math>,我们会发现这样的粗粒化结果违背了一开始的定义,即粗粒化后的'''转移概率对所有的初始微观状态<math>\pi</math>都适用'''。因为当<math>\pi = s_4</math>的时候,<math>p_{A_2 A_1} = 0.6</math>这个转移概率就是错的,即使<math>\pi \neq s_4</math>,任何初始微观状态都会在某时刻达到<math>s_4</math>并导致转移概率出错。 |
| + | |
| + | |
| + | ====一个更复杂的正例==== |
| + | |
| + | 这个三个相同状态的例子可能稍微有点简单,接下来我们来看一个稍微复杂一点的例子: |
| + | |
| + | <math> |
| + | \begin{aligned} |
| + | P = P_{s_i s_j} = \left [ |
| + | \begin{array}{cc:cc} |
| + | 0.2 & 0.4 & 0.3 & 0.1 \\ |
| + | 0.4 & 0.2 & 0.1 & 0.3 \\ |
| + | \hdashline0.2 & 0.1 & 0.2 & 0.5 \\ |
| + | 0.1 & 0.2 & 0 & 0.7 |
| + | \end{array} |
| + | \right ] |
| + | \end{aligned} |
| + | </math> |
| + | |
| + | 对于这个马尔科夫矩阵,<math>\{\{1,2\}, \{3,4\}\}</math>是一个lumpable的分组。分组后的转移矩阵为: |
| + | <math> |
| + | \begin{aligned} |
| + | P = P_{A_k A_l} = \left [ |
| + | \begin{array}{c:c} |
| + | 0.6 & 0.4 \\ |
| + | \hdashline0.3 & 0.7 |
| + | \end{array} |
| + | \right ] |
| + | \end{aligned} |
| + | </math> |
| + | |
| + | |
| | | |
| ===基于Lumpability的粗粒化方法=== | | ===基于Lumpability的粗粒化方法=== |
第181行: |
第277行: |
| [[文件:Lump fig1.png|缩略图|398x398像素|图2:Zhang<ref name=":0" /> 文章中的示意图。图中左面四个矩阵都是lumpable马尔科夫矩阵,而右面的P_2是一个噪声矩阵,(P_1)^T P_2 = 0|替代=]] | | [[文件:Lump fig1.png|缩略图|398x398像素|图2:Zhang<ref name=":0" /> 文章中的示意图。图中左面四个矩阵都是lumpable马尔科夫矩阵,而右面的P_2是一个噪声矩阵,(P_1)^T P_2 = 0|替代=]] |
| | | |
− | 由上面的lumpability公式(3)中我们能获得一个直观上的说法:当马尔科夫矩阵存在block结构,或者状态明显可被分成几类的时候,根据这样的partition,该矩阵就会lumpable,如图2中的<math>\bar{P}</math>所示,把相同的状态(行向量)分成一类的partition显然lumpable。 | + | 由上面的lumpability公式(3)和例子中我们能获得一个直观上的说法:当马尔科夫矩阵存在block结构,或者状态明显可被分成几类的时候,根据这样的partition,该矩阵就会lumpable,如图2中的<math>\bar{P}</math>所示,把相同的状态(行向量)分成一类的partition显然lumpable。 |
| | | |
| 但是,有时候有些lumpable的矩阵的状态排序被打乱了(如图一中的<math>P_1</math>),或者矩阵包含了如<math>P_2</math>的噪声(如图2中的<math>P</math>,<math>P = P_1 + P_2</math>,<math>P_1^TP_2 = 0</math>)。 | | 但是,有时候有些lumpable的矩阵的状态排序被打乱了(如图一中的<math>P_1</math>),或者矩阵包含了如<math>P_2</math>的噪声(如图2中的<math>P</math>,<math>P = P_1 + P_2</math>,<math>P_1^TP_2 = 0</math>)。 |