本系列是依据DEEPLIZARD强化学习课程来的,属于对该课程的一些记录和翻译,有能力的话建议阅读原文,翻译成中文就没有那种味道了。课程的地址为:

DEEPLIZARD强化学习课程

B站上的视频地址

该博客的原地址

目录

  • 预期收益Expected Return
  • Episodic Vs. Continuing Tasks
  • 折扣预期收益Discounted Return

预期收益Expected Return

在上一节我们说到,MDP中agent的目标是使累计奖励(cumulative rewards)最大化,我们需要一种方法来量化累计奖励,因此提出了预期收益Expected Return的概念。

我们首先将Expected Return理解为未来reward的加和,用公式表示为
Gt=Rt+1+Rt+2+...RTG_t=R_{t+1}+R_{t+2}+...R_T Gt​=Rt+1​+Rt+2​+...RT​

T表示最后一个时间步

It is the agent's goal to maximize the expected return of rewards.

Episodic Vs. Continuing Tasks

Episodic的中文翻译为情节、事件,这里可以理解为阶段性任务。也就是说,一个大任务可以被分解为多个小任务。拿一局乒乓球比赛为例,我们的大任务就是赢得比赛,而小任务就是不断得分。agent通过不断与对手击球(环境交互)、并得分或丢掉分数(获取reward)来学习经验。这里每次得分就可以被看作一次Episodic。

而Continuing Tasks表示任务是没有终止的,即最后一个时间步T=∞T=\inftyT=∞,例如炒股,agent要一边和环境交互一边学习。

关于Episodic 和Continuing Tasks之间的对比可以参考这里

由于Continuing Tasks的终止时间步T=∞T=\inftyT=∞,这就会导致我们上面提到的Expected Return
Gt=Rt+1+Rt+2+...RTG_t=R_{t+1}+R_{t+2}+...R_T Gt​=Rt+1​+Rt+2​+...RT​

它的值将趋向∞\infty∞,这对于agent最大化累计收益是很困难的,因此我们需要设计一种方法将Expected Return变为有限值。


折扣预期收益Discounted Return

我们将agent的最终目标由最大化Expected Return修改为最大化Discounted Return。首先定义了一个折扣因子γ∈[0,1]\gamma\in[0,1]γ∈[0,1],折扣因子是对未来reward的折扣率并将决定未来奖励的现值,我们将Discounted Return定义为
Gt=Rt+1+γRt+2+γ2Rt+3+....=∑k=0∞γkRt+k+1G_t=R_{t+1}+\gamma R_{t+2}+\gamma^2 R_{t+3} + ....=\sum_{k=0}^{\infty} \gamma^k R_{t+k+1} Gt​=Rt+1​+γRt+2​+γ2Rt+3​+....=k=0∑∞​γkRt+k+1​
这种定义就导致与未来奖励相比,agent将更加注重即时奖励Rt+1R_{t+1}Rt+1​,因为未来奖励因为折扣因子γ\gammaγ的存在而大打折扣。因此,即时奖励将会对agent选择的action有更大的影响。

连续时间步之间的预期收益有以下关系
Gt=Rt+1+γRt+2+γ2Rt+3+γ3Rt+4+...=Rt+1+γ(Rt+2+γRt+3+γ2Rt+4+...)=γGt+1G_t=R_{t+1}+\gamma R_{t+2}+\gamma^2 R_{t+3} + \gamma^3 R_{t+4} + ...\\ =R_{t+1}+\gamma( R_{t+2}+\gamma R_{t+3} + \gamma^2 R_{t+4}+...)=\gamma G_{t+1} Gt​=Rt+1​+γRt+2​+γ2Rt+3​+γ3Rt+4​+...=Rt+1​+γ(Rt+2​+γRt+3​+γ2Rt+4​+...)=γGt+1​

观察上式,在t时刻的折扣预期收益也是具有无穷多项,但实际上它们的加和是有限的。举个例子,假设每次reward为非零且是常数,且已知γ<1\gamma<1γ<1,那么折扣预期收益就可以写为
Gt=∑k=0∞γk=1γ−1G_t=\sum_{k=0}^{\infty}\gamma^k=\frac{1}{\gamma -1} Gt​=k=0∑∞​γk=γ−11​

上式不明白的同学可以去看看无穷级数的概念。

DEEPLIZARD强化学习2----预期收益Expected Return相关推荐

  1. 强化学习(Reinforcement Learning)入门知识

    强化学习(Reinforcement Learning) 概率统计知识 1. 随机变量和观测值 抛硬币是一个随机事件,其结果为**随机变量 X ** 正面为1,反面为0,若第 i 次试验中为正面,则观 ...

  2. 强化学习:(一)基本概念

    目录 一.基本术语 二.如何使用强化学习 三.标准库-OpenAI Gym 四.参考资料 一.基本术语 state:s,状态. action:a,行为,比如游戏里的向上.向右,是随机的.为什么不是确定 ...

  3. 强化学习使用gym时出现错误:ValueError: too many values to unpack (expected 4)

    目录 1.问题描述 2.问题分析 (1)env.step()的返回值问题 (2)ale-py包问题 3.问题解决 4.总结 1.问题描述 最近在学强化学习,用parl和gym实现Pong游戏的策略梯度 ...

  4. 强化学习(五) - 时序差分学习(Temporal-Difference Learning)及其实例----Sarsa算法, Q学习, 期望Sarsa算法

    强化学习(五) - 时序差分学习(Temporal-Difference Learning)及其实例 5.1 TD预测 例5.1 回家时间的估计 5.2 TD预测方法的优势 例5.2 随机移动 5.3 ...

  5. 强化学习之基础入门_强化学习基础

    强化学习之基础入门 Reinforcement learning is probably one of the most relatable scientific approaches that re ...

  6. 深度强化学习综述论文 A Brief Survey of Deep Reinforcement Learning

    A Brief Survey of Deep Reinforcement Learning 深度强化学习的简要概述 作者: Kai Arulkumaran, Marc Peter Deisenroth ...

  7. TensorFlow 强化学习:6~10

    原文:Reinforcement Learning With TensorFlow 协议:CC BY-NC-SA 4.0 译者:飞龙 本文来自[ApacheCN 深度学习 译文集],采用译后编辑(MT ...

  8. 初学者的强化学习q learning和sarsa

    Reinforcement learning is a fast-moving field. Many companies are realizing the potential of RL. Rec ...

  9. 强化学习(八) - 深度Q学习(Deep Q-learning, DQL,DQN)原理及相关实例

    深度Q学习原理及相关实例 8. 深度Q学习 8.1 经验回放 8.2 目标网络 8.3 相关算法 8.4 训练算法 8.5 深度Q学习实例 8.5.1 主程序 程序注释 8.5.2 DQN模型构建程序 ...

最新文章

  1. 我如何使用深度学习通过Fast.ai对医学图像进行分类
  2. 三类常见软件质量(Quality Attribute)属性的通俗解释
  3. javascript常用方法函数收集
  4. python序列化模块json和pickle
  5. 罚函数法求解约束问题最优解
  6. JVM1.6 GC详解
  7. Winform控件扩展
  8. springMVC 源码级别总结原理,DispatcherServlet核心方法
  9. 一个简单的静态web服务器
  10. Xilinx Zynq-7000 嵌入式系统设计与实现
  11. 修改linux服务器时间
  12. Tomcat修改源码,重新编译
  13. C实现NV12转I420
  14. [笔记]vs2015 编写汇编masm32之使用MASM32库
  15. 决战大数据(升级版):大数据的关键思考 - 电子书下载(高清版PDF格式+EPUB格式)...
  16. 【唯美·音乐】唯美舒缓钢琴曲,给你心灵最深处的宁静
  17. cf英文名字格式好看的_格式好看的cf英语名字【三篇】
  18. 元组与字典——python
  19. ListView+Fragment实现导航栏
  20. Ubuntu16.04安装搜狗拼音

热门文章

  1. WOT干货大放送:大数据架构发展趋势及探索实践分享
  2. VSTO 系列(06)-自定义任务窗格
  3. C#封闭方法和封闭类:sealed
  4. MySQL: 1366 incorrect string value
  5. Linux查看隐藏进程pid脚本
  6. 混频对两路同频同源射频信号相位差的影响
  7. window 7 笔记本电源损耗修复(简单方法)
  8. windows防火墙规则添加
  9. springboot源码(二)@SpringBootApplication注解中exclude参数使用及原理
  10. 一本建立程序员(其它从业者)世界观、价值观和人生观的书——《黑客与画家》读书笔记