【强化学习】第二篇--基于模型的动态规划法

作者:王小草
笔记时间:2019年1月21日


1 价值函数的计算困难

1.1 最优值函数的递归定义

先来回忆一下最优状态值函数和最优状态-行为值函数。

  • 最优状态价值函数:考虑这个状态下,可能发生的所有后续动作,并且挑最好的动作来执行的情况下,这个状态的价值。
    image_1d1n0tp6bheom4t55di5mjii9.png-9.2kB

  • 最优状态-动作值函数:在这个状态下执行了一个特定的动作,并且该动作的后续状态总能选取最好的动作来执行,所得到的长期价值
    image_1d1n12snuujl3qqlis13he2fk2m.png-12.6kB

以上两个价值函数,对应马尔科夫过程中的两个概率转移矩阵:状态-动作转移和动作-状态转移。

状态-动作转移是指在一个状态下有多个动作,也就是策略,每个动作有一个概率,所有动作相加概率为1,这个过程对应状态价值函数,其中最优的动作带来的价值就是最优状态价值。

动作-状态概率矩阵是指在做了某个动作a之后,下一个状态是不确定的,有多重可能,会有状态s转到状态s’的概率(比如给花浇水这个动作,有0.9的可能它会到茁壮成长的状态,0.1的可能还是会到死掉的状态),这个过程对应的是状态-动作值函数。

1.2 价值函数的计算困难

用bellman方程来直接求价值函数是比较困难的。

bellman方程:
image_1d1n1um6h2ostbb1e881kdst33.png-6.7kB

忽略策略的随机性,即π=1,bellman方程可简化为:
image_1d1n229heme51t4ei136m04ip3g.png-4.3kB

对V求解:
image_1d1n22ule1h2pa1ut59odgedo3t.png-4.5kB

以上求解,复杂度为O(n^3),真实场景中,P和R规模都太大,很难直接求解.

1.3 迭代计算价值函数

直接使用bellman方程求解价值函数显得不现实了,于是需要使用其他更优的方法去求解:

  • 动态规划:已知环境P和R,对每步进行迭代(实际应用中很少使用动态规划来解决大规模强化学习问题)

  • Monte Carlo法:没有经验学习,但必须有终止任务,任务结束后对所有回报进行平均。

  • 时序差分法:没有环境模型,根据经验学习。每步进行迭代,不需要等任务完成。

image_1d1n5p7ssd251hv11fbs1k5j1koa4a.png-71.8kB

本文先对动态规划法进行价值函数的计算进行详细讲述。在第三篇,和第四篇,会分别对蒙特卡洛和时序差分法做详细介绍。

2 动态规划法

  • 思想
    把复杂的问题分阶段进行简化,迭代进行中,每次迭

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值