2.3 10臂测试台

为了粗略的评估贪婪算法和ε-greedy 方法的相对有效性,我们通过一系列测试问题进行数值上的比较。这是一个2000次的随机产生的10个臂的赌博问题。对于每个赌博机问题,就像图2.1所示:

图2.1

对于动作值函数 ,来自于一个均值为0方差为1的高斯分布函数。然后,当一种学习方法应用于该问题时,选择在时间步长t处的动作 ,从均值为 方差为1的正态分布中获得实际奖励值 , 我们可以画出随着1000局经验积累后不同方法的表现,这些分布在图2.1中用灰色表示。我们称这一套测试任务为10-臂测试平台。对于任何一种学习方法,将它应用于一个强盗问题,当其经验超过1000个时间步的时候,我们都可以测量它的性能和行为。这构成了一次运行。在2000次独立的测试中,每一次测试都有不同的强盗问题,我们通过学习算法的平均表现获得策略。

图2.2比较了一种贪婪算法和2种ε-greedy 算法,如下所示:

图2.2

2种方法都采用均值采样技术实现行为值估计。上图展示了期望回报随着经验增加。刚开始的时候贪婪算法的提升效果略微好于其他方法,但是之后稳定在一个低水平。它每一步的收益仅仅是1,相比于最好的1.55。贪婪算法的长期表现很糟糕,因为他会陷入次优解。下面那张图展示了贪婪算法在大概三分之一的任务中找到了最优行为。其他三分之二任务里,在刚开始最优行为的选择上是令人失望的,最终也没能逆转。ε-greedy 算法最终表现更好因为它持续探索,提供了识别最优行为的可能。ε=0.1 的方法探索的概率大,因此通常会更早的找到最优值,但是仍有9%的概率没有找到最优动作。ε=0.01 方法改善的速度慢,但是最终表现效果比前面好。随着时间的推移,还可以逐渐减少ε ,以尽量同时获得高值和低值。

ε-greedy 算法相较于贪婪算法的优势取决于任务,例如,假设奖励差异较大,比如说10而不是1。对于有噪声的奖励值,为了找到最佳动作需要更多的探索,并且ε-greedy 方法应该是有效的,并且相对于贪婪的方法甚至更好。另一方面,如果奖励的方差为0,那么贪心方法在尝试一次后会知道每个动作的真实值。在这种情况下,贪心方法实际上可能执行得最好,因为它会很快找到最优的行动,然后永远不需要探索。但即使在确定性的情况下如果我们弱化其他一些假设,那么探索就有很大的优势。例如,假设强盗任务是非平稳的,即

行为会随着时间而改变。在这种情况下,甚至在确定性情况中也需要探索,确保其中一个非贪心行为没有改变,相比较贪心算法变得更好。正如我们将在接下来的几章中看到的,非平稳性是在强化学习中经常遇到的问题中是最常见的情况。即使基础任务是固定的和确定的,学习者也会面临一组强盗式的决策任务随着学习的进行和智能体决策策略的变化而变化。强化学习需要探索和开发之间的平衡。

练习2.2:土匪示例,考虑一个k-armed土匪问题,k = 4个动作,表示1、2、3、4。考虑将强盗算法应用于此问题ε-greedy 行为选择,样本-平均行为价值估计,和初始估计 ,对于所有a。假设行为和奖励的初始序列为 , , , , 。在这些时间步骤中,ε可能已经发生,导致选择在随机的。这是在什么时候发生的?什么时候才能做到使这一点可能发生呢?

练习2.3:在图2.2所示的比较中,从长期来看,在累积回报和选择最佳行动的概率方面哪种方法表现最好?这样会好多少?定量地表达你的答案。

Reinforcement Learning An Introduction~The 10-armed Testbed相关推荐

  1. 《Reinforcement Learning: An Introduction》 读书笔记 - 目录

    这一系列笔记是基于Richard S. Sutton的<Reinforcement Learning: An Introduction>第二版 因为这本书在出版之前,作者就在官网上发布了几 ...

  2. Reinforcement Learning: An Introduction Second Edition - Chapter 5

    Monte Carlo Methods 这一章考虑了第一类用于估计价值函数并寻找最优策略的学习方法(first learning methods).蒙特卡洛方法s不需要完备的环境知识,它们仅仅需要经验 ...

  3. Reinforcement Learning: An Introduction Second Edition - Chapter 9

    Part II Approximate Solution Methods 拥有任意大的状态空间的问题.目标:使用有限的计算资源找到一个比较好的近似解. 除了内存,还有时间和数据.从以往经历的与当前状态 ...

  4. 深度强化学习—— 译 Deep Reinforcement Learning(part 0: 目录、简介、背景)

    深度强化学习--概述 翻译说明 综述 1 简介 2 背景 2.1 人工智能 2.2 机器学习 2.3 深度学习 2.4 强化学习 2.4.1 Problem Setup 2.4.2 值函数 2.4.3 ...

  5. REINFORCEMENT LEARNING USING QUANTUM BOLTZMANN MACHINES利用量子波兹曼机进行强化学习

    REINFORCEMENT LEARNING USING QUANTUM BOLTZMANN MACHINES 利用量子波兹曼机进行强化学习 Abstract. We investigate whet ...

  6. 强化学习(Reinforcement Learning)

    背景 当我们思考学习的本质时,我们首先想到的可能是我们通过与环境的互动来学习.无论是在学习开车还是在交谈,我们都清楚地意识到环境是如何回应我们的行为的,我们试图通过行为来影响后续发生的事情.从互动中学 ...

  7. 18 Issues in Current Deep Reinforcement Learning from ZhiHu

    深度强化学习的18个关键问题 from: https://zhuanlan.zhihu.com/p/32153603 85 人赞了该文章 深度强化学习的问题在哪里?未来怎么走?哪些方面可以突破? 这两 ...

  8. Deep Reinforcement Learning with Knowledge Transfer for Online Rides Order Dispatching

    用于在线乘车订单调度的知识转移深度强化学习 Zhaodong Wang ∗† Zhiwei (Tony) Qin ∗‡ Xiaocheng Tang ∗‡ Jieping Ye § Hongtu Zh ...

  9. 机器学习-49-RL-01-Deep Reinforcement Learning(强化学习-强化学习的基本介绍 Policy-based方法的基本介绍)

    文章目录 Deep Reinforcement Learning Reference Example: Scenario of Reinforcement Learning(强化学习的应用场景) Su ...

  10. FeUdal Networks for Hierarchical Reinforcement Learning 阅读笔记

    FeUdal Networks for Hierarchical Reinforcement Learning 标签(空格分隔): 论文笔记 增强学习算法 FeUdal Networks for Hi ...

最新文章

  1. Python(字符串,列表,元组,字典)
  2. python函数参数类型检查_Python中实现参数类型检查的简单方法
  3. vbs获取程序窗体句柄_PyQt5 GUI程序的基本框架
  4. Docker RocketMQ 集群
  5. Python 检测字符串开始值String.StartsWith 方法
  6. ios中获取一个唯一的字符串(利用UUID)
  7. 设计师交流平台!!!
  8. rtsp 报文转发_rtsp_proxy_server
  9. mysql在centos下用命令批量导入报错_Variable ‘character_set_client‘ can‘t be set to the value of ‘---linux工作笔记042
  10. String类源码阅读
  11. 教你配置赏心悦目的开发神器 Atom-郭永峰-专题视频课程
  12. 实对称矩阵的特征向量矩阵为酉矩阵
  13. Godaddy Web Hosting http 重定向至 https协议
  14. HarmonyOS实战—实现相亲APP
  15. bootstrap-table修改列名
  16. win10无法更新计算机的启动配置,电脑升级win10后一开机关机总是显示正在配置更新请不要关闭您的计算机...
  17. 怡和嘉业在创业板上市:总市值约186亿元,前三季度业绩同比翻倍
  18. C++之pow()函数
  19. Javaweb后端阶段
  20. mysql 怎么修复表_修复mysql表

热门文章

  1. 消防信号二总线有没电压_消防主机总线电压偏低 消防二总线详解
  2. 计算机考试专业知识题库,专业知识:计算机考试题库练习题
  3. 单片机C语言程序设计基础知识全解析
  4. DirectX SDK 各版本开发包下载地址合集
  5. WEBMAX函数教程
  6. 寻迹pid算法 c语言,基于STC12C5A60S2单片机及PID控制算法的气味循迹车设计
  7. 卷积码 c语言编码,基于C语言的卷积编码实现 浅谈卷积和滤波之区别
  8. en60204标准_《EN_60204_机械产品电气安全标准介绍》.pdf
  9. 如何自定义MATLAB神经网络激活函数
  10. 全国面向小学五六年级及初一的舞蹈方向的艺术学校舞蹈学校整理