强化学习的数学基础学习笔记

马尔可夫决策过程(MDP)

马尔可夫决策过程(Markov Decision Process, MDP)和贝尔曼方程(Bellman Equation)是强化学习和动态规划中的两个核心概念,它们之间有着密切的关系。贝尔曼方程是解决MDP的关键工具。让我们详细探讨一下两者之间的关系。

马尔可夫决策过程(MDP)

MDP 是一种数学模型,用于描述决策问题。一个MDP由以下元素组成:

  1. 状态空间 ​S:所有可能状态的集合。
  2. 动作空间 ​A:所有可能动作的集合。
  3. 状态转移概率 ​P(s' \mid s, a):在状态 ​s 下采取动作 ​a 后转移到状态 ​s' 的概率。
  4. 奖励函数 ​R(s, a):在状态 ​s 下采取动作 ​a 所获得的即时奖励。
  5. 折扣因子 ​\gamma:介于0和1之间,用于权衡当前奖励和未来奖励的重要性。

在MDP中,我们通常引入价值函数来表示某个状态或状态-动作对的“好坏”。

  • 状态价值函数 ​V(s):表示在状态 ​s 开始并遵循策略 ​\pi 所能获得的期望累积奖励。
  • 状态-动作价值函数 ​Q(s, a):表示在状态 ​s 下采取动作 ​a 并随后遵循策略 ​\pi 所能获得的期望累积奖励。
关系:状态价值函数和状态-动作价值函数
V_{\pi}(s) = \sum_{a \in A} \pi(a \mid s) Q_{\pi}(s,a)

MDP 的目标是找到一个策略 ​\pi,使得在长期内获得的累积奖励最大化。

我们最终要求的东西是最优策略​\pi( s) ,对于每个状态s,给出了最优动作a。

怎么求这个最优策略呢?

如果我们能求出Q(s, a),pi(s) = i belongs to A argmax(Q(s, ai))即可

那现在的问题就转化为了如何求Q(s, a)了

贝尔曼方程

贝尔曼方程是一种递归定义,用于描述价值函数。贝尔曼方程为我们提供了一种方法来分解MDP中的最优值问题。通过贝尔曼方程,可以将复杂的决策问题分解为更小的子问题。

点击展开状态价值函数相关的贝尔曼方程,这里不做展开

贝尔曼方程(状态价值函数)

对于任意策略 ​\pi,状态价值函数 ​V^\pi(s) 满足以下贝尔曼方程:

V^\pi(s) = \mathbb{E}_\pi \left[ R(s, a) + \gamma V^\pi(s') \right]

展开期望值,考虑状态转移概率 ​P 和策略 ​\pi

V^\pi(s) = \sum_{a \in A} \pi(a \mid s) \sum_{s' \in S} P(s' \mid s, a) \left[ R(s, a) + \gamma V^\pi(s') \right]

贝尔曼最优方程(状态价值函数)

对于最优策略 ​\pi^*,状态价值函数 ​V^*(s) 满足以下贝尔曼最优方程:

V^*(s) = \max_a \sum_{s' \in S} P(s' \mid s, a) \left[ R(s, a) + \gamma V^*(s') \right]

贝尔曼方程(状态-动作价值函数)

状态-动作价值函数 ​Q^\pi(s, a) 满足以下贝尔曼方程:

Q^\pi(s, a) = \mathbb{E} \left[ R(s, a) + \gamma Q^\pi(s', a') \right]

展开期望值,考虑状态转移概率 ​P

Q^\pi(s, a) = \sum_{s' \in S} P(s' \mid s, a) \left[ R(s, a) + \gamma \sum_{a' \in A} \pi(a' \mid s') Q^\pi(s', a') \right]

贝尔曼最优方程(状态-动作价值函数)

对于最优策略 ​\pi^*,状态-动作价值函数 ​Q^*(s, a) 满足以下贝尔曼最优方程:

Q^*(s, a) = \sum_{s' \in S} P(s' \mid s, a) \left[ R(s, a) + \gamma \max_{a'} Q^*(s', a') \right]
Q贝尔曼最优方程是如何推导的?
A: pi(a'| s')在最优之后,变成了一个”指示函数“,即只有在特定动作下会取1