马尔可夫决策过程(MDP)的贝尔曼方程与值迭代算法
字数 2061 2025-11-01 09:19:03

马尔可夫决策过程(MDP)的贝尔曼方程与值迭代算法

题目描述
马尔可夫决策过程(MDP)是强化学习中对序贯决策问题建模的经典框架。其核心问题是如何通过贝尔曼方程计算最优策略,而值迭代(Value Iteration)是一种动态规划算法,用于求解MDP的最优值函数和策略。本题要求:

  1. 解释MDP的基本组成(状态、动作、转移概率、奖励函数、折扣因子)。
  2. 推导贝尔曼方程(Bellman Equation)及其最优形式。
  3. 逐步讲解值迭代算法的流程,并分析其收敛性。

1. MDP的基本组成

MDP由以下五元组定义:

  • 状态集合(S):系统可能处于的所有状态(如机器人所在位置)。
  • 动作集合(A):智能体可执行的动作(如前进、后退)。
  • 转移概率(P):在状态 \(s\) 执行动作 \(a\) 后,转移到状态 \(s'\) 的概率,记为 \(P(s' \mid s, a)\)
  • 奖励函数(R):在状态 \(s\) 执行动作 \(a\) 后获得的即时奖励,记为 \(R(s, a)\)(或 \(R(s, a, s')\))。
  • 折扣因子(γ):未来奖励的衰减系数,\(γ \in [0, 1]\),用于权衡当前与未来奖励的重要性。

目标:找到一个策略 \(π(a \mid s)\)(状态到动作的映射),最大化累积奖励的期望值(即值函数)。


2. 贝尔曼方程推导

(1)状态值函数(State-Value Function)

策略 \(π\) 下的状态值函数 \(V^π(s)\) 表示从状态 \(s\) 开始,遵循策略 \(π\) 的累积奖励期望:

\[V^π(s) = \mathbb{E}_π \left[ \sum_{t=0}^{\infty} γ^t R(s_t, a_t) \mid s_0 = s \right]. \]

将其拆分为即时奖励和未来奖励:

\[V^π(s) = \sum_{a} π(a \mid s) \left[ R(s, a) + γ \sum_{s'} P(s' \mid s, a) V^π(s') \right]. \]

此即贝尔曼方程,描述了当前状态值与后续状态值的递归关系。

(2)最优值函数与贝尔曼最优方程

最优值函数 \(V^*(s) = \max_π V^π(s)\) 满足贝尔曼最优方程

\[V^*(s) = \max_{a} \left[ R(s, a) + γ \sum_{s'} P(s' \mid s, a) V^*(s') \right]. \]

其含义:最优策略下,当前状态的值等于选择能最大化“即时奖励加未来折扣值”的动作对应的值。


3. 值迭代算法详解

值迭代通过不断更新值函数来逼近 \(V^*\),步骤如下:

步骤1:初始化

对所有状态 \(s \in S\),初始化值函数 \(V_0(s) = 0\)(或随机值)。设迭代次数 \(k=0\)

步骤2:值函数更新

对每个状态 \(s\),根据贝尔曼最优方程进行更新:

\[V_{k+1}(s) = \max_{a} \left[ R(s, a) + γ \sum_{s'} P(s' \mid s, a) V_k(s') \right]. \]

此步骤遍历所有状态和动作,计算所有可能的未来路径的期望值,并选择最优动作。

步骤3:收敛判断

计算相邻两次迭代值函数的最大差异:

\[\Delta = \max_{s \in S} |V_{k+1}(s) - V_k(s)|. \]

\(\Delta < \varepsilon\)(预设阈值,如 \(10^{-6}\)),则停止迭代;否则令 \(k = k+1\),返回步骤2。

步骤4:提取最优策略

收敛后,通过最优值函数导出确定性策略 \(π^*\)

\[π^*(s) = \arg\max_{a} \left[ R(s, a) + γ \sum_{s'} P(s' \mid s, a) V^*(s') \right]. \]


4. 收敛性分析

  • 数学保证:贝尔曼最优方程是压缩映射(Contraction Mapping),满足 \(\|V_{k+1} - V^*\|_\infty \leq γ \|V_k - V^*\|_\infty\)。因 \(γ<1\),算法必收敛到唯一解 \(V^*\)
  • 时间复杂度:每轮迭代需遍历 \(|S|\) 个状态和 \(|A|\) 个动作,每次计算 \(|S|\) 次转移,故每轮复杂度为 \(O(|S|^2 |A|)\)

关键点总结

  • 值迭代是模型已知(已知 \(P\)\(R\))下的动态规划方法。
  • 核心思想是通过迭代逐步修正值函数,直至满足贝尔曼最优方程。
  • 与策略迭代(Policy Iteration)的区别:值迭代直接优化值函数,而策略迭代交替评估策略和改进策略。
马尔可夫决策过程(MDP)的贝尔曼方程与值迭代算法 题目描述 马尔可夫决策过程(MDP)是强化学习中对序贯决策问题建模的经典框架。其核心问题是如何通过贝尔曼方程计算最优策略,而值迭代(Value Iteration)是一种动态规划算法,用于求解MDP的最优值函数和策略。本题要求: 解释MDP的基本组成(状态、动作、转移概率、奖励函数、折扣因子)。 推导贝尔曼方程(Bellman Equation)及其最优形式。 逐步讲解值迭代算法的流程,并分析其收敛性。 1. MDP的基本组成 MDP由以下五元组定义: 状态集合(S) :系统可能处于的所有状态(如机器人所在位置)。 动作集合(A) :智能体可执行的动作(如前进、后退)。 转移概率(P) :在状态 \(s\) 执行动作 \(a\) 后,转移到状态 \(s'\) 的概率,记为 \(P(s' \mid s, a)\)。 奖励函数(R) :在状态 \(s\) 执行动作 \(a\) 后获得的即时奖励,记为 \(R(s, a)\)(或 \(R(s, a, s')\))。 折扣因子(γ) :未来奖励的衰减系数,\(γ \in [ 0, 1 ]\),用于权衡当前与未来奖励的重要性。 目标 :找到一个策略 \(π(a \mid s)\)(状态到动作的映射),最大化累积奖励的期望值(即值函数)。 2. 贝尔曼方程推导 (1)状态值函数(State-Value Function) 策略 \(π\) 下的状态值函数 \(V^π(s)\) 表示从状态 \(s\) 开始,遵循策略 \(π\) 的累积奖励期望: \[ V^π(s) = \mathbb{E} π \left[ \sum {t=0}^{\infty} γ^t R(s_ t, a_ t) \mid s_ 0 = s \right ]. \] 将其拆分为即时奖励和未来奖励: \[ V^π(s) = \sum_ {a} π(a \mid s) \left[ R(s, a) + γ \sum_ {s'} P(s' \mid s, a) V^π(s') \right ]. \] 此即 贝尔曼方程 ,描述了当前状态值与后续状态值的递归关系。 (2)最优值函数与贝尔曼最优方程 最优值函数 \(V^ (s) = \max_ π V^π(s)\) 满足 贝尔曼最优方程 : \[ V^ (s) = \max_ {a} \left[ R(s, a) + γ \sum_ {s'} P(s' \mid s, a) V^* (s') \right ]. \] 其含义:最优策略下,当前状态的值等于选择能最大化“即时奖励加未来折扣值”的动作对应的值。 3. 值迭代算法详解 值迭代通过不断更新值函数来逼近 \(V^* \),步骤如下: 步骤1:初始化 对所有状态 \(s \in S\),初始化值函数 \(V_ 0(s) = 0\)(或随机值)。设迭代次数 \(k=0\)。 步骤2:值函数更新 对每个状态 \(s\),根据贝尔曼最优方程进行更新: \[ V_ {k+1}(s) = \max_ {a} \left[ R(s, a) + γ \sum_ {s'} P(s' \mid s, a) V_ k(s') \right ]. \] 此步骤遍历所有状态和动作,计算所有可能的未来路径的期望值,并选择最优动作。 步骤3:收敛判断 计算相邻两次迭代值函数的最大差异: \[ \Delta = \max_ {s \in S} |V_ {k+1}(s) - V_ k(s)|. \] 若 \(\Delta < \varepsilon\)(预设阈值,如 \(10^{-6}\)),则停止迭代;否则令 \(k = k+1\),返回步骤2。 步骤4:提取最优策略 收敛后,通过最优值函数导出确定性策略 \(π^ \): \[ π^ (s) = \arg\max_ {a} \left[ R(s, a) + γ \sum_ {s'} P(s' \mid s, a) V^* (s') \right ]. \] 4. 收敛性分析 数学保证 :贝尔曼最优方程是压缩映射(Contraction Mapping),满足 \( \|V_ {k+1} - V^ \|_ \infty \leq γ \|V_ k - V^ \|_ \infty \)。因 \(γ<1\),算法必收敛到唯一解 \(V^* \)。 时间复杂度 :每轮迭代需遍历 \(|S|\) 个状态和 \(|A|\) 个动作,每次计算 \(|S|\) 次转移,故每轮复杂度为 \(O(|S|^2 |A|)\)。 关键点总结 值迭代是 模型已知 (已知 \(P\) 和 \(R\))下的动态规划方法。 核心思想是通过迭代逐步修正值函数,直至满足贝尔曼最优方程。 与策略迭代(Policy Iteration)的区别:值迭代直接优化值函数,而策略迭代交替评估策略和改进策略。