贝尔曼方程
• 19 min read • 3799 words
Tags: MDP Re-Le
Categories: Introduction to Artificial Intelligence
贝尔曼方程
1. 马尔可夫决策过程
与在确定的搜索问题中寻找一个通往目标状态的最优“计划”不同,解决一个马尔可夫决策过程意味着寻找一个最优策略 (Optimal Policy)。
策略 是一个从状态 到动作 的映射,即 。它定义了一个“反射式”智能体:给定一个状态 ,智能体会立即选择动作 ,而不考虑其未来的长期后果。
一个最优策略 是指,如果智能体遵循该策略,它将获得最大的期望总回报。
2. 贝尔曼方程 (The Bellman Equation)
为了求解MDP,我们需要引入贝尔曼方程,但首先要定义两个关键的价值函数。
两种核心价值函数
- 状态的最优价值 (Optimal Value of a State):一个从状态 出发、并且始终采取最优行动的智能体,在其未来生命周期中所能获得的期望总效用。
- Q-状态的最优价值 (Optimal Value of a Q-State):一个智能体从状态 开始,执行动作 ,然后从那以后始终采取最优行动所能获得的期望总效用。
可以这么理解: 是 “当前状态的前景有多好”,表示的是当前这个状态的潜力;而是 “决定执行动作后得到的结果有多好”,表示的是一个具体选择的价值。
贝尔曼方程
利用这两个新概念,贝尔曼方程被定义为:
其中, 是转移概率, 是奖励, 是折扣因子。
V值、Q值与最优策略
我们先定义Q-值的计算公式:
这个公式可以理解为:一个选择的价值等于在执行这个选择遇到的各种情况(到达的各种状态)的期望总回报,而这个回报包含两个方面:即时奖励和未来价值,也就是奖励函数和的状态最优价值。这个在后面有详细讲解
通过Q-值的定义,贝尔曼方程可以被重写为:
这个公式清晰地揭示了三者之间的关系:
- 一个状态的最优价值 ,等于在该状态下所有可能的动作中,能够带来的最优Q-值。
- 一旦我们知道了所有状态的 ,我们就可以计算出每个状态下每个动作的 。
- 对于任何状态 ,能使其Q-值最大的那个动作 ,就是最优策略 在该状态下应该执行的动作。
方程的递归结构解析
贝尔曼方程是一个动态规划方程,它通过其内在的递归结构将复杂问题分解为更小的子问题。
- 递归子问题: 核心在于 这一项。
- 它代表了从状态 执行动作 到达后继状态 ,然后从 开始一直采取最优行动所能获得的总效用。
- 它由两部分组成:即时奖励 和后继状态的未来最优价值 。
- 被折扣因子 折扣,因为从 到 经过了一个时间步。 本身封装了从 出发所有可能的复杂路径,并将其抽象为一个单一的递归值。
- 期望的计算: 完整的Q-值公式 是一个加权和。
- 它计算了所有可能的后继状态 所能带来的总效用,并用其出现的概率 进行加权。
- 这正是从Q-状态 出发所能获得的期望效用。
- 最大化选择: 最终,贝尔曼方程 指出,一个状态的价值是所有可能动作中能产生的最大期望效用。这与Minimax算法中的Maximizer节点非常相似:我们先计算每个分支(动作 a)的期望值(Chance节点),然后选择其中最大的一个。
贝尔曼方程的实际用途是作为最优性的检验条件。如果我们能找到一组价值 ,使得这组价值在所有状态 上都满足贝尔曼方程,那么我们就可以断定,这组价值就是该MDP的最优价值函数,即 。