前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >强化学习读书笔记(5)|蒙特卡洛方法(Monte Carlo Methods)

强化学习读书笔记(5)|蒙特卡洛方法(Monte Carlo Methods)

作者头像
用户1621951
发布2019-08-26 17:17:37
6190
发布2019-08-26 17:17:37
举报
文章被收录于专栏:数据魔术师数据魔术师

前面两章都假设我们已知MDP的分布p(s'r|s,a)(model),但有时这一点难以做到,或者说这种Markov假设可能是不合理的,那么我们只能从真实/模拟环境中去获取这些知识。蒙特卡洛方法只需要经验知识,即:来自线上或者模拟环境交互过程的样本序列(包括状态序列、动作序列、奖励序列)。“蒙特卡洛”这个词被广泛用在利用大量随机元素作估计的地方。在这里我们用它来表示基于完全return平均值的方法。

Monte Carlo(MC)

蒙特卡洛方法是用样本分布代替总体分布,估计一些总体分布的参数。

简单来说,就是假设想知道一些真实分布的一些信息,比如期望,或函数的期望,如果我们不知道真实分布的表达式,或者知道,但是很难推导求解,就需要模拟出一批样本,再做平均,虽然有误差,可只要样本量足够大,根据大数定律还是收敛的。

蒙特卡洛方法的使用条件

· 环境是可模拟的 在实际的应用中,模拟容易实现。相对的,了解环境的完整知识反而比较困难。由于环境可模拟,我们就可以抽样。

· 只适合情节性任务(episodic tasks) 因为,需要抽样完成的结果,只适合有限步骤的情节性任务。

蒙特卡洛方法的优势与劣势

蒙特卡洛方法在强化学习中的基本思路

MC估算value function

蒙特卡洛方法在强化学习中的应用

只要满足蒙特卡洛方法的使用条件,就可以使用蒙特卡洛方法。 比如:游戏类都适合:完全信息博弈游戏,像围棋、国际象棋。非完全信息博弈游戏:21点、麻将等等。

蒙特卡洛方法实例:blackjack

blackjack游戏逻辑定义及预设policy

作为玩家,只有hit和stick两种action,其进行决策只需考虑如下三点:

玩家手头是否有A牌,且能叫为11点而不爆牌;

手头牌面值和在12-21范围,0-11则不需考虑,因为无论抽到什么牌都不可能爆牌,故一定是hit;

庄家的明牌,1,…10(J,Q,K都是10);

所以共有2*10*10=200个state,故policy表和value表就是2*10*10的。

Monte Carlo Sample with On-Policy

Monte Carlo with Exploring Starts

Monte Carlo Sample with Off-Policy

实验结果

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-08-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 数据魔术师 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档