cover_001.png
如果想观看相关视频可以在西瓜视频(账号zidea)或者哔哩哔哩(账号zidea2015)找到我发布视频解说,注意头像和简书使用头像一致。
在 MDP 中策略估计(Policy evaluation)
目标: 评估一个给定了定策略
的马尔可夫决策过程(MDP)
输出: 计算出一个策略价值函数
解决方案: 通过贝尔曼期望方程回溯进行迭代
算法: 同步回溯
考虑所有在 t+1 时刻的状态可能,这里状态,可以通过一个 s 状态的后续装
的价值函数来更新
从而形成迭代
逐渐收敛
通过马尔可夫奖励过程
通过边缘概率将动作 去掉,从而得到一个简化马尔可夫奖励过程。
- 这里价值函数只跟状态和价值有关,也就是未来进入某一个状态会得到多少奖励
- 引入动作(Action)就是其实就是引入智能体对状态转移的控制,状态转移不再是根据上一个状态的随机转移,而是引入了动作(Action)来控制状态的转移。
005.png
006.png
策略迭代(Policy iteration)
最优策略和最优值函数
在强化学习中,假设马尔可夫决策过程是有限马尔可夫决策过程,状态和动作的集合是有限的。这样的马尔可夫决策过程也是有限马尔可夫决策过程。所以在策略中一定存在一个最优策略,可以表示为 我们是根据价值函数来评估一个策略的好坏。其实很简单,强化学习的最终目标就是尽可能地多获得回报值
时也就有
而对于最优策略,其值函数的值也必然是最大的。
- 搜索遍历
,
- 首先要清楚价值函数对每个状态评估,因为状态转移会受到采取什么样的动作所决定。我们要找到一个可以让每一个状态值最大的策略,对应于状态值最大的策略就是我们要找的最优策略。这里最优策略就用
- 所以当我们说某一个 MDP 被解就是我们找到了可以状态值最大所对应的
策略函数。
获取最优策略
- Q 函数状态和动作的函数,直接在 Q 函数获取最大化值
- 当
是
否则为 0
策略搜索
- 遍历所有可能的策略
- 所有的策略为
- 这样列举所有可能动作是非常没有效率的,这里其他方法如策略迭代(Policy Iteration)和价值迭代(Value Iteration)
- 寻找最佳策略过程
策略迭代(Policy Iteration)
- 策略评估
- 改进策略
策略评估
- 确定性
- 静态(这里静态是相对于时间而言)
- 不唯一
007.png
也就是优化现有的策略函数 ,先保证这个策略函数
然后计算当前
的价值函数,当计算出
函数,从而推断其
函数,最后直接在
改进策略
- 计算策略函数
的状态动作(state-action)价值函数
- 计算新的策略
然后根据贝尔曼等式满足
策略单调递增
- 条件是策略是确定性策略
- 我们通过下面的公式来优化策略
- 也就是整个状态已经收敛之后
贝尔曼优化等式(Bellman Optimality Equation)
这个式子成立原因: 若 为确定即每一步 a 不是随机,
只能在一个 a 上取 1 其他为 0 因此
- 对于
是确定,也就是最大
价值迭代(value iteration)
- 带有备忘录的递归
- 贝尔曼期望方程(bellman equation)递归
- 价值函数用于存储
目标
找到一个最优的策略函数
求解
迭代贝尔曼最优方程(Bell optimality)回溯
价值迭代算法
- 对于所有状态初始化 k=1 和
- 遍历每一个状态