《强化学习:原理与Python实现 》 —2.1.4 奖励、回报与价值函数

举报
华章计算机 发表于 2019/11/12 20:55:02 2019/11/12
【摘要】 本节书摘来自华章计算机《强化学习:原理与Python实现》 一书中第二章,第2.1.4节,作者肖智清。

2.1.4 奖励、回报与价值函数

在第1章中已经介绍过,强化学习的核心概念是奖励,强化学习的目标是最大化长期的奖励。本节就来定义这个长期的奖励。

对于回合制任务,假设某一回合在第步达到终止状态,则从步骤()以后的回报(return)可以定义为未来奖励的和:

 image.png

注意:在上式中,是一个确定性的变量,而回合的步数是一个随机变量。因此,在的定义式中,不仅每一项是随机变量,而且含有的项数也是随机变量。

对于连续性任务,上述的定义会带来一些麻烦。由于连续性的任务没有终止时间,所以会包括时刻以后所有的奖励信息。但是,如果对未来的奖励信息简单求和,那么未来奖励信息的总和往往是无穷大。为了解决这一问题,引入了折扣(discount)这一概念,进而定义回报为:

 image.png

其中折扣因子。折扣因子决定了如何在最近的奖励和未来的奖励间进行折中:未来步后得到的1单位奖励相当于现在得到的单位奖励。若指定,智能体会只考虑眼前利益,完全无视远期利益,就相当于贪心算法的效果;若指定,智能体会认为当前的1单位奖励和未来的1单位奖励是一样重要的。对于连续性任务,一般设定。这时,如果未来每一步的奖励有界,则回报也是有界的。

注意:有些文献为连续性任务定义了平均奖励(average reward)。平均奖励的定义为,是对除以步数的期望求极限的结果。还有文献会进一步定义相对于平均奖励的回报,即让每一步的奖励都减去平均奖励后再求回报。

基于回报的定义,可以进一步定义价值函数(value function)。对于给定的策略,可以定义以下价值函数。

状态价值函数(state value function):状态价值函数表示从状态开始采用策略的预期回报。如下式所示:

 image.png

动作价值函数(action value function):动作价值函数表示在状态采取动作后,采用策略的预期回报。如下式所示:

 image.png

终止状态不是一个一般的状态,终止状态后没有动作。为了在数学上有统一的形式,一般定义,()。

例如,对于表2-1和表2-2的例子,有:

 image.png

下一节将为给定的动力和策略计算价值函数。


【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。