# 转移矩阵与马尔可夫链

> IB 数学应用与解读 HL · IB Math AI HL
> 来源: https://www.owlsprep.com/zh/study/ib-math-ai-hl-u5-transition-matrices-and-markov-chains/

我们涵盖转移矩阵构造、k步状态分布计算、正则马尔可夫链识别，以及面向实际随机建模的稳态求解方法。

**先修:** [方阵乘法与幂运算](https://www.owlsprep.com/zh/study/ib-math-ai-hl-u4-matrix-operations/); [条件概率与独立概率规则](https://www.owlsprep.com/zh/study/ib-math-ai-hl-u5-independent-probability/)

## 学习目标

- 按照IB规范构造有限状态马尔可夫过程的有效n×n转移矩阵
- 使用矩阵幂运算和乘法计算k个时间步后的状态分布向量
- 识别正则马尔可夫链并推导其唯一的稳态均衡分布
- 应用马尔可夫链模型解决IB Paper 2和3中考察的实际预测问题

## 构造有效转移矩阵

IB AI HL 考试中所有转移矩阵严格遵循列随机规范：所有元素均为非负概率，且每一列的元素之和恰好等于1。列代表时间t的当前状态，行代表时间t+1的下一个状态。

**转移矩阵** — n状态马尔可夫过程对应的n×n方阵，其中元素P_{i,j}代表在一个时间步内从状态j转移到状态i的概率。

*记法:* P

**例题:** 一个两状态的出勤模型包含「出勤」和「缺勤」两个状态。如果学生本周出勤，下周出勤的概率为0.8，缺勤的概率为0.2；如果本周缺勤，下周出勤的概率为0.5，缺勤的概率为0.5。请构造符合规范的转移矩阵P。

1. 将状态按[出勤, 缺勤]的顺序同时作为列和行的排序依据
2. $$P = \begin{bmatrix} P(出勤 \to 出勤) & P(缺勤 \to 出勤) \\ P(出勤 \to 缺勤) & P(缺勤 \to 缺勤) \end{bmatrix}$$
3. 代入题目给出的概率数值
4. $$P = \begin{bmatrix} 0.8 & 0.5 \\ 0.2 & 0.5 \end{bmatrix}$$
5. 验证列和：0.8 + 0.2 = 1，0.5 + 0.5 = 1，确认构造无误

> **tip**
>
> IB AI HL 考试中绝对不要使用行随机规范，所有评分标准都要求转移矩阵的列和等于1。

**概念自测**

测试你对有效转移矩阵性质的理解

1. 以下哪个是符合IB规范的有效2×2转移矩阵？

   - [[0.6, 0.3],[0.4, 0.7]]
   - [[0.5, 0.5],[0.5, 0.5]]
   - [[1.1, 0],[0, -0.1]]

   *解析:* 所有元素均非负，且每一列的和恰好等于1。

## 计算k步后的状态分布

初始状态分布向量S_0是一个列向量，列出了时间t=0时处于每个状态的概率。经过1步后，更新的状态为S_1 = P S_0。这个递归关系可以通过矩阵幂运算扩展到k步的情况。

**推导:** 证明k步状态恒等式 S_k = P^k S_0

*起点:* S_1 = P S_0

1. 当t=2时，代入S_1可得 S_2 = P S_1 = P(P S_0) = P^2 S_0
2. 使用数学归纳法：假设对于某个整数n ≥ 1，S_n = P^n S_0 成立
3. 那么 S_{n+1} = P S_n = P(P^n S_0) = P^{n+1} S_0

*结论:* 恒等式 S_k = P^k S_0 对所有正整数k均成立

**例题:** 使用上述出勤转移矩阵P，若学生本周出勤（S_0 = [1, 0]^T），求3周后学生出勤的概率。

1. 写出初始状态向量
2. $$S_0 = \begin{bmatrix} 1 \\ 0 \end{bmatrix}$$
3. 使用图形计算器的矩阵幂功能计算P^3
4. $$P^3 = \begin{bmatrix} 0.722 & 0.695 \\ 0.278 & 0.305 \end{bmatrix}$$
5. 将P^3与S_0相乘得到S_3
6. $$S_3 = P^3 S_0 = \begin{bmatrix} 0.722 \\ 0.278 \end{bmatrix}$$
7. 3周后学生出勤的概率为0.722

## 正则马尔可夫链与稳态

所有正则马尔可夫链当k趋近于无穷大时都会收敛到唯一的稳态分布，无论初始状态向量是什么。这个均衡值代表该过程长期停留在每个状态的时间占比。

**稳态向量** — 满足 P \pi = \pi 的非负列向量，所有元素之和为1，用于归一化总概率。

*记法:* \pi

**例题:** 求出勤转移矩阵 P = [[0.8, 0.5],[0.2, 0.5]] 的稳态向量

1. 定义 \pi = [a, b]^T，满足 P \pi = \pi，且 a + b = 1
2. $$\begin{bmatrix} 0.8 & 0.5 \\ 0.2 & 0.5 \end{bmatrix} \begin{bmatrix}a \\b\end{bmatrix} = \begin{bmatrix}a \\b\end{bmatrix}$$
3. 展开第一个方程：0.8a + 0.5b = a → -0.2a + 0.5b = 0
4. 代入 b = 1 - a：-0.2a + 0.5(1 - a) = 0 → 0.5 = 0.7a
5. $$a = 5/7 ≈ 0.714, b = 2/7 ≈ 0.286$$
6. 长期来看，学生约71.4%的周数出勤，约28.6%的周数缺勤

**考试命令词**

本主题常见的IB指令术语及其要求：

- **Show that the chain is regular** — 计算P²或更高次幂，确认结果中没有零元素

- **Determine the long term proportion** — 使用归一化约束求解稳态向量 \pi

## 马尔可夫链建模规范

马尔可夫链是IB AI HL Paper 3题目的高频考点，考试会要求你调整给定模型、进行预测，并证明稳态结果在对应场景下是否符合现实。

> **mnemonic**
>
> 记住规范口诀：C = 列 = 当前状态，R = 行 = 下一个状态，避免混淆转移矩阵的元素位置。

## 常见错误

- **错误做法:** 通过对行求和来验证转移矩阵
  - 原因: 很多通用参考资料使用行随机规范，但IB AI HL严格使用列随机矩阵
  - 正确做法: 在进行任何计算前，务必确认每一列的和恰好等于1
- **错误做法:** 使用 S_k = S_0 P^k（行向量乘法）
  - 原因: 这不符合IB的列向量规范，会得到错误结果
  - 正确做法: 保持状态向量为列向量，使用公式 S_k = P^k S_0
- **错误做法:** 求解稳态时忘记元素和等于1的约束
  - 原因: 方程 P \pi = \pi 是线性相关的，没有归一化条件就无法得到唯一解
  - 正确做法: 从 P \pi = \pi 推导出的线性方程组中，替换其中一个方程为所有概率之和等于1的规则
- **错误做法:** 假设所有马尔可夫链都有唯一稳态
  - 原因: 非正则链（包含吸收态、周期循环）不会收敛到唯一均衡
  - 正确做法: 计算稳态之前先确认该链是正则的
- **错误做法:** 计算大k值的P^k时对中间结果取整
  - 原因: 微小的舍入误差会累积，最终得到完全错误的概率值
  - 正确做法: 在图形计算器中存储完整精度的矩阵数值，仅对最终结果取整

## 速查表

| 量 | 公式 | 验证规则 |
| --- | --- | --- |
| 转移矩阵 P | P_{i,j} = P(j \to i) | 所有列和为1，无负元素 |
| k步状态分布 | S_k = P^k S_0 | S_k 的所有元素之和为1 |
| 稳态 \pi | P \pi = \pi, sum(\pi) = 1 | \pi 的所有元素均非负 |
| 正则链校验 | 找到最小的k使得 P^k > 0（所有元素>0） | P^k 中没有零元素 |

## 下一步

掌握马尔可夫链是在IB AI HL Paper 3几乎每年都出现的15-20分随机建模题中拿满分的核心要求。接下来你会将这些知识扩展到吸收马尔可夫链，用于计算到达终止状态前的期望步数，以及转移矩阵在图遍历中的应用。这些技能也可以直接支撑你的内部评估，如果你选择对交通流、社交媒体用户参与度、人口迁移等现实动态系统建模的话。

---

来自 [OwlsPrep](https://www.owlsprep.com) —— A-Level / IB / AP / IGCSE 免费学习指南，依据官方考纲编写。原页面：https://www.owlsprep.com/zh/study/ib-math-ai-hl-u5-transition-matrices-and-markov-chains/
