强化学习笔记: Model-free Approaches

Model-free approaches

这种方法不需要transition functionreward function。这种方法估计状态值函数 q ( s , a ) q(s,a) q(s,a),从中确定最优策略。主要分为两类:Monte Carlo methodstemporal difference methods

蒙特卡洛法:

要想寻找数学问题的近似解,需要借助随机采样过程中获得的经验。

当一个agent-environment迭代的模型是不可用的时候,蒙特卡洛法使策略迭代成为可能。在model-free设置中,策略评估可以通过蒙特卡洛预测评估 q π q_π qπ来实现,策略改进则与model-based中的策略迭代相同。

下图为策略迭代的实现,AKA. Monte Carlo control。蒙特卡洛预测也可以被单独使用,来寻找给定策略π的状态值 v π ( s ) v_π(s) vπ(s)

在这里插入图片描述

缺点:
对于 v π ( s ) v_π(s) vπ(s) q π ( s , a ) q_π(s,a) qπ(s,a)的估值依赖于独立随机的采样,结果只能在一个episode完成后进行计算。这意味着估值只能在一个episode结束后被更新。这影响了蒙特卡洛的效率。

时间差分法:

它和蒙特卡洛法最大的区别是进行策略评估时,更新 V ( s ) V(s) V(s) Q ( s , a ) Q(s,a) Q(s,a)估值的时间范围。时间差分法可以在episode完成前进行更新——通常在一个episode完成几个状态转变后,AKA. bootstrapping。如果我们把更新 V ( s ) V(s) V(s) Q ( s , a ) Q(s,a) Q(s,a)估值认为成agent是否更聪明的标志,这时bootstrapping能让agent更快地变得更聪明。

时间差分法在迭代中更新 V ( s ) V(s) V(s) Q ( s , a ) Q(s,a) Q(s,a)估值时,使用的更新法则包括一个误差项(以下式表示)。

这一部分只讨论三种方法:TD(0), Q-learning, SARSA
三种方法的主要区别是:

  1. 哪个值在被评估( v ( s ) v(s) v(s) q ( s , a ) q(s,a) q(s,a)
  2. 怎么计算估计的目标值
TD(0)

TD(0)是为策略评估设计的。对于给定的策略 π π π,这个方法随机选择了一些 v ( s ) v(s) v(s)的初始值,随后迭代地执行公式中给出的更新规则,直到更新后的值收敛于接近于 v π ( s ) v_π(s) vπ(s)

Q-learning

Q-learning是为寻找最优策略设计的。对于给定的强化学习问题,这个方法随机选取了 q ( s ) q(s) q(s)的初始值,随后迭代地执行更新规则,直到更新的值收敛于 q ∗ ( s ) q_*(s) q(s)的近似值,随后提取最优策略。

Q-learning有两大优势:无需模型&实现简单。然而在实践中它的计算最复杂,因为要考虑到大量的state和可能的action。所以经常文艺地称它为维数灾难curse of dimensionality。Deep Q-Network(DQN)方法是由DeepMind开发来解决这个问题的。

SARSA

SARSA和Q-learning方法很像,区别在于计算目标值的方式,这对agent的行为有很大影响。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值