马尔可夫链(Markov Chain)和马尔可夫决策过程(Markov Decision Process, MDP)
马尔可夫链(Markov Chain)和马尔可夫决策过程(Markov Decision Process, MDP)是概率理论和决策理论中的重要概念,广泛应用于统计建模、强化学习、运筹学等领域。以下是对两者的详细讲解,包括定义、数学表示、性质、应用以及它们之间的关系。
一、马尔可夫链(Markov Chain)
1. 定义
马尔可夫链是一种随机过程,用于描述一个系统在不同状态之间的转移,且具有马尔可夫性质。马尔可夫性质指的是:系统的下一个状态仅依赖于当前状态,而与之前的历史状态无关。用数学语言描述:
P ( X t + 1 = s t + 1 ∣ X t = s t , X t − 1 = s t − 1 , … , X 0 = s 0 ) = P ( X t + 1 = s t + 1 ∣ X t = s t ) 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)
其中:
X t X_t Xt
表示时间 (t) 的状态。
s t s_t st
是某个具体状态。
( P ) (P) (P) 表示条件概率。
简单来说,未来的状态只与现在有关,与过去无关。
2. 组成
马尔可夫链由以下要素组成:
-
状态空间:一个有限或可数的集合
S = { s 1 , s 2 , … } S = \{s_1, s_2, \dots\} S={s1,s2,…}
,表示系统可能的所有状态。例如,天气模型的状态空间可能是
{ 晴天 , 阴天 , 雨天 } \{晴天, 阴天, 雨天\} {晴天,阴天,雨天}
。
-
转移概率:从一个状态转移到另一个状态的概率,用转移矩阵 § 表示,其中
P i j = P ( X t + 1 = s j ∣ X t = s i ) 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=0 t=0
时各状态的概率。
3. 数学表示
假设状态空间为
S = { s 1 , s 2 , … , s n } S = \{s_1, s_2, \dots, s_n\} S={s1,s2,…,sn}
,转移矩阵 § 是一个
n × n n \times n n×n
矩阵:
P = [ P 11 P 12 … P 1 n P 21 P 22 … P 2 n ⋮ ⋮ ⋱ ⋮ P n 1 P n 2 … P n n ] 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
其中
P i j ≥ 0 P_{ij} \geq 0 Pij≥0
,且
∑ j P i j = 1 \sum_{j} P_{ij} = 1 j∑Pij=1
。
状态在时间 (t) 的概率分布为向量
π t = [ π t ( s 1 ) , π t ( s 2 ) , … , π t ( s n ) ] \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 π
是马尔可夫链的平稳分布,表示系统在长期运行后状态分布趋于稳定。
-
可达性与周期性:
- 一个状态
s i s_i si
到
s j s_j sj
是**可达的**,如果存在 $$ n \geq 1$$ 使得
P i j n > 0 P^n_{ij} > 0 Pijn>0
-
马尔可夫链可能是周期性的(状态转移有固定周期)或非周期性的。
-
不可约性:如果任意两个状态之间都可达,马尔可夫链是不可约的。
-
遍历性:对于不可约、非周期的马尔可夫链,通常存在唯一的平稳分布,且初始分布不影响长期行为。
5. 示例
以天气模型为例:
- 状态空间:
{ 晴天 , 阴天 , 雨天 } \{晴天, 阴天, 雨天\} {晴天,阴天,雨天}
。
- 转移矩阵:
P = [ 0.7 0.2 0.1 0.3 0.4 0.3 0.2 0.3 0.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
P 11 = 0.7 P_{11} = 0.7 P11=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^* π∗
,使得智能体在长期运行中获得的累积期望奖励最大化。累积奖励通常定义为:
G t = R t + 1 + γ R t + 2 + γ 2 R t + 3 + ⋯ = ∑ k = 0 ∞ γ k R t + 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
其中:
-
R t + 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 π [ G t ∣ S t = 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 π [ G t ∣ S t = s , A t = 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^\pi Vπ
)和策略改进(选择更好的动作)。
-
-
蒙特卡洛方法:通过采样轨迹估计值函数。
-
时序差分学习:结合动态规划和蒙特卡洛方法,如 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 用于优化决策。