David silver 强化学习公开课笔记(三):Planning by Dynamic Programming

1 引言

动态规划一开始我不是很理解,先看PPT上的解释:

即是一个方法,把一个复杂的问题分解成子问题,通过综合子问题的解来解决问题。我看了一个文章,说的不错,也感觉理解的差不多了,链接:https://www.sohu.com/a/153858619_466939

动态规划问题满足两个性质:

(1)最优子结构(Optimal substructure)

(2)重叠子问题(Overlapping subproblems)

而 MDP 满足上述两个性质,贝尔曼方程进行递归分解,值函数存储并重利用子问题的解。

有两类问题,分别是预测和控制

(1)预测:输入 MDP+\pi 或 MRP,输出值函数。

(2)控制:输入 MDP,输出最优值函数和最优策略。

2 Policy Evaluation(策略评估)

2.1 Iterative Policy Evaluation

用来评估一个给定策略 \pi ,使用贝尔曼期望方程迭代更新值函数v,公式如下:

 3 Policy Iteration(策略迭代)

第2章讲的策略评估,但实际用的时候,策略是不可能固定的,也是在更新的,所以评估完就需要改善了。最简单的办法就是用贪心算法,即那个状态的值函数大,就100%执行对应的动作,进入这个状态。:

策略的 evaluation 和 improvement 是相互交替着进行的,如下图所示:

 最终会趋近于最优的策略和值函数。

3.1 Policy Improvement

不仅可以用状态值函数,也可以用动作值函数来更新策略:

 当更新停止后,状态值函数、动作值函数和策略函数均为最优。

3.2 Modified Policy Iteration

在3的基础上,加上停止条件,如值函数改变小于某个值,或者设定迭代次数。

4 Value Iteration(值迭代)

直接上公式:

我的理解其实就是进行值迭代的时候就和按照 greddy 的方法得到策略后进行策略迭代是一样的,只是策略迭代的时候策略和值都在迭代,使用的是贝尔曼期望方程,而值迭代的时候策略不迭代,始终是同样的策略,但是值迭代的时候是按照最优策略去更新的,使用的是贝尔曼最优方程。

5 Extensions to Dynamic Programming

5.1 同步 DP 算法

这里有一个总结,见下表:

 5.2 异步 DP 算法

 在同步更新中,需要对值函数进拷贝2次,对于所有的s。迭代的时候由如下两步组成。

5.2.1 In-Place Dynamic Programming

迭代时只有一步,只存储一份值函数,在一次迭代的过程中,值函数也是一直在更新。

5.2.2 Prioritised Sweeping

使用贝尔曼误差衡量值函数与最优的差距,每次找到贝尔曼误差最大的状态,然后更新这个状态,再计算收到影响的状态的贝尔曼误差。贝尔曼误差的定义如下:

5.2.3 Real-Time Dynamic Programming

只更新 agent 当前所处的状态,公式如下:

5.3 Full-Width and Sample Backups

5.3.1 Full-Width Backups

DP 使用 full-width backups,需要考虑所有的状态和动作,也需要知道 MDP 的 reward function 和 状态转移概率。适用于中等规模的问题(数百万状态)。

5.3.2 Sample Backups

在很多场景我们不知道状态转移概率和 reward function,可以采用抽样的方法,每次对同样的状态进行多次动作,得到多次的 reward 和 下一个状态,利用这些采样来对当前的状态进行更新。

优点:

(1)model-free:不需要实现了解 MDP。

(2)通过采样来避免了维度灾难。

(3)更新的代价是固定的,与状态的总数量无关。

 

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值