马尔可夫链(Markov Chain)和马尔可夫决策过程(Markov Decision Process, MDP)是概率理论和决策理论中的重要概念,广泛应用于统计建模、强化学习、运筹学等领域。以下是对两者的详细讲解,包括定义、数学表示、性质、应用以及它们之间的关系。
一、马尔可夫链(Markov Chain)
1. 定义
马尔可夫链是一种随机过程,用于描述一个系统在不同状态之间的转移,且具有马尔可夫性质。马尔可夫性质指的是:系统的下一个状态仅依赖于当前状态,而与之前的历史状态无关。用数学语言描述:
P(Xt+1=st+1∣Xt=st,Xt−1=st−1,…,X0=s0)=P(Xt+1=st+1∣Xt=st) P(X_{t+1} = s_{t+1} \mid X_t = s_t, X_{t-1} = s_{t-1}, \dots, X_0 = s_0) = P(X_{t+1} = s_{t+1} \mid X_t = s_t) P(Xt+1=st+1∣Xt=st,Xt−1=st−1,…,X0=s0)=P(Xt+1=st+1∣Xt=st)
其中:
Xt X_tXt
表示时间 (t) 的状态。
st s_t st
是某个具体状态。
(P) (P) (P) 表示条件概率。
简单来说,未来的状态只与现在有关,与过去无关。
2. 组成
马尔可夫链由以下要素组成:
-
状态空间:一个有限或可数的集合
S={s1,s2,… } S = \{s_1, s_2, \dots\}S={s1,s2,…}
,表示系统可能的所有状态。例如,天气模型的状态空间可能是
{晴天,阴天,雨天} \{晴天, 阴天, 雨天\}{晴天,阴天,雨天}
。
-
转移概率:从一个状态转移到另一个状态的概率,用转移矩阵 § 表示,其中
Pij=P(Xt+1=sj∣Xt=si) P_{ij} = P(X_{t+1} = s_j \mid X_t = s_i)Pij=P(Xt+1=sj∣Xt=si)
。转移矩阵的每一行之和为 1。
- 初始分布:初始时刻状态的概率分布
π0 \pi_0π0
,表示系统在
t=0 t=0t=0
时各状态的概率。
3. 数学表示
假设状态空间为
S={s1,s2,…,sn} S = \{s_1, s_2, \dots, s_n\} S={s1,s2,…,sn}
,转移矩阵 § 是一个
n×n n \times n n×n
矩阵:
P=[P11P12…P1nP21P22…P2n⋮⋮⋱⋮Pn1Pn2…Pnn] P = \begin{bmatrix}P_{11} & P_{12} & \dots & P_{1n} \\P_{21} & P_{22} & \dots & P_{2n} \\\vdots & \vdots & \ddots & \vdots \\P_{n1} & P_{n2} & \dots & P_{nn}\end{bmatrix} P=P11P21⋮Pn1P12P22⋮Pn2……⋱…P1nP2n⋮Pnn
其中
Pij≥0 P_{ij} \geq 0 Pij≥0
,且
∑jPij=1 \sum_{j} P_{ij} = 1 j∑Pij=1
。
状态在时间 (t) 的概率分布为向量
πt=[πt(s1),πt(s2),…,πt(sn)] \pi_t = [\pi_t(s_1), \pi_t(s_2), \dots, \pi_t(s_n)] πt=[πt(s1),πt(s2),…,πt(sn)]
。下一时刻的分布为:
πt+1=πt⋅P \pi_{t+1} = \pi_t \cdot P πt+1=πt⋅P
4. 性质
- 平稳分布:如果存在一个分布
π \piπ
满足
π=π⋅P \pi = \pi \cdot Pπ=π⋅P
,则
π \piπ
是马尔可夫链的平稳分布,表示系统在长期运行后状态分布趋于稳定。
-
可达性与周期性:
- 一个状态
si s_isi
到
sj s_jsj
是**可达的**,如果存在
$$ n \geq 1$$
使得
Pijn>0 P^n_{ij} > 0Pijn>0
-
马尔可夫链可能是周期性的(状态转移有固定周期)或非周期性的。
-
不可约性:如果任意两个状态之间都可达,马尔可夫链是不可约的。
-
遍历性:对于不可约、非周期的马尔可夫链,通常存在唯一的平稳分布,且初始分布不影响长期行为。
5. 示例
以天气模型为例:
- 状态空间:
{晴天,阴天,雨天} \{晴天, 阴天, 雨天\}{晴天,阴天,雨天}
。
- 转移矩阵:
P=[0.70.20.10.30.40.30.20.30.5] P = \begin{bmatrix}0.7 & 0.2 & 0.1 \\0.3 & 0.4 & 0.3 \\0.2 & 0.3 & 0.5\end{bmatrix}P=0.70.30.20.20.40.30.10.30.5
P11=0.7 P_{11} = 0.7P11=0.7
表示晴天后第二天仍为晴天的概率是 70%。
- 初始分布:
π0=[0.5,0.3,0.2] \pi_0 = [0.5, 0.3, 0.2]π0=[0.5,0.3,0.2]
(今天是晴天、阴天、雨天的概率)。
- 明天分布:
π1=π0⋅P \pi_1 = \pi_0 \cdot Pπ1=π0⋅P
。
6. 应用
- 自然语言处理:生成文本(如马尔可夫文本生成器)。
- 金融建模:股票价格的状态转移。
- 排队论:客户在队列中的状态变化。
- 生物信息学:DNA 序列分析。
二、马尔可夫决策过程(Markov Decision Process, MDP)
1. 定义
马尔可夫决策过程是马尔可夫链的扩展,增加了动作和奖励的概念,用于描述一个智能体(agent)在随机环境中通过选择动作来优化长期奖励的问题。MDP 也满足马尔可夫性质,即下一状态和奖励只依赖于当前状态和当前动作。
2. 组成
MDP 由以下要素组成:
-
状态空间 (S):系统可能的所有状态,与马尔可夫链类似。
-
动作空间 (A):智能体在每个状态下可以采取的动作集合。
-
转移概率:
P(s′∣s,a) P(s' \mid s, a)P(s′∣s,a)
,表示在状态 (s) 采取动作 (a) 后转移到状态 (s’) 的概率。
-
奖励函数:(R(s, a, s’)),表示从状态 (s) 采取动作 (a) 转移到 (s’) 时获得的奖励(有时简化为 (R(s, a)))。
-
折扣因子
γ∈[0,1] \gamma \in [0, 1]γ∈[0,1]
:用于权衡即时奖励和未来奖励的重要性。
- 策略
-
π(a∣s) \pi(a \mid s)π(a∣s)
- 定义在状态 (s) 下选择动作 (a) 的概率。
3. 数学表示
MDP 的目标是找到一个最优策略
π∗ \pi^* π∗
,使得智能体在长期运行中获得的累积期望奖励最大化。累积奖励通常定义为:
Gt=Rt+1+γRt+2+γ2Rt+3+⋯=∑k=0∞γkRt+k+1 G_t = R_{t+1} + \gamma R_{t+2} + \gamma^2 R_{t+3} + \dots = \sum_{k=0}^\infty \gamma^k R_{t+k+1} Gt=Rt+1+γRt+2+γ2Rt+3+⋯=k=0∑∞γkRt+k+1
其中:
-
Rt+1 R_{t+1}Rt+1
是时间 (t) 采取动作后的奖励。
-
γ \gammaγ
控制未来奖励的权重(
γ=0 \gamma = 0γ=0
只关心即时奖励,
γ=1 \gamma = 1γ=1
完全考虑长期奖励)。
4. 核心概念
-
值函数:
- 状态值函数
-
Vπ(s) V^\pi(s) Vπ(s)
- 在策略
π \piπ
下,从状态 (s) 开始的期望累积奖励:
Vπ(s)=Eπ[Gt∣St=s] V^\pi(s) = \mathbb{E}_\pi \left[ G_t \mid S_t = s \right]Vπ(s)=Eπ[Gt∣St=s]
-
动作值函数
-
Qπ(s,a) Q^\pi(s, a)Qπ(s,a)
- 在状态 (s) 采取动作 (a),然后按策略
π \piπ
行动的期望累积奖励:
Qπ(s,a)=Eπ[Gt∣St=s,At=a] Q^\pi(s, a) = \mathbb{E}_\pi \left[ G_t \mid S_t = s, A_t = a \right]Qπ(s,a)=Eπ[Gt∣St=s,At=a]
-
贝尔曼方程:
-
状态值函数:
Vπ(s)=∑aπ(a∣s)∑s′P(s′∣s,a)[R(s,a,s′)+γVπ(s′)] V^\pi(s) = \sum_a \pi(a \mid s) \sum_{s'} P(s' \mid s, a) \left[ R(s, a, s') + \gamma V^\pi(s') \right]Vπ(s)=a∑π(a∣s)s′∑P(s′∣s,a)[R(s,a,s′)+γVπ(s′)]
-
动作值函数:
Qπ(s,a)=∑s′P(s′∣s,a)[R(s,a,s′)+γ∑a′π(a′∣s′)Qπ(s′,a′)] Q^\pi(s, a) = \sum_{s'} P(s' \mid s, a) \left[ R(s, a, s') + \gamma \sum_{a'} \pi(a' \mid s') Q^\pi(s', a') \right]Qπ(s,a)=s′∑P(s′∣s,a)[R(s,a,s′)+γa′∑π(a′∣s′)Qπ(s′,a′)]
-
-
最优策略:存在一个策略
π∗ \pi^*π∗
,使得
Vπ∗(s)≥Vπ(s) V^{\pi^*}(s) \geq V^\pi(s)Vπ∗(s)≥Vπ(s)
对于所有状态 (s) 和任意策略
π \piπ
成立。
5. 求解方法
-
动态规划:
-
值迭代:通过迭代更新 (V(s)) 或 (Q(s, a)),直到收敛到最优值函数。
-
策略迭代:交替进行策略评估(计算
Vπ V^\piVπ
)和策略改进(选择更好的动作)。
-
-
蒙特卡洛方法:通过采样轨迹估计值函数。
-
时序差分学习:结合动态规划和蒙特卡洛方法,如 Q-learning 或 SARSA。
-
强化学习:MDP 是强化学习的基础,智能体通过与环境交互学习最优策略。
6. 示例
以机器人导航为例:
-
状态空间:机器人所在网格的位置(如 ((x, y)))。
-
动作空间:
{上,下,左,右} \{上, 下, 左, 右\}{上,下,左,右}
。
-
转移概率:机器人执行动作后到达目标位置的概率(可能因随机性未到达预期位置)。
-
奖励函数:到达目标点得 +10,撞墙得 -1,每移动一步得 -0.1。
-
折扣因子:
γ=0.9 \gamma = 0.9γ=0.9
。
- 策略:机器人根据当前网格位置选择移动方向,目标是最大化累积奖励。
7. 应用
- 强化学习:如 AlphaGo、自动驾驶、游戏 AI。
- 机器人控制:路径规划、任务调度。
- 资源管理:库存管理、网络优化。
- 金融决策:投资组合优化。
三、马尔可夫链与马尔可夫决策过程的区别与联系
1. 区别
- 动作与决策:
- 马尔可夫链:状态转移是固定的,仅由转移概率决定,无需外部决策。
- MDP:引入了动作,智能体通过选择动作影响状态转移和奖励。
- 奖励机制:
- 马尔可夫链:没有奖励的概念,关注状态转移的概率分布。
- MDP:有明确的奖励函数,目标是优化累积奖励。
- 目标:
- 马尔可夫链:分析系统的长期行为(如平稳分布)。
- MDP:寻找最优策略以最大化奖励。
2. 联系
- 基础:MDP 是马尔可夫链的扩展,两者都基于马尔可夫性质。
- 特殊情况:如果 MDP 的动作空间只有一个动作,或者策略固定,MDP 退化为马尔可夫链。
- 数学框架:马尔可夫链的转移矩阵是 MDP 转移概率的简化形式。
四、总结
- 马尔可夫链:描述状态随机转移的模型,核心是转移概率和马尔可夫性质,适合建模无决策的随机系统。
- 马尔可夫决策过程:在马尔可夫链基础上引入动作和奖励,适合建模需要决策的动态系统,是强化学习的核心框架。
- 应用场景:马尔可夫链用于分析系统行为,MDP 用于优化决策。