强化学习--奖励函数

1. 奖励函数的本质:向智能体传达目标

  • 强化学习的标准交互过程如下:每个时刻,智能体根据根据其 策略(policy),在当前所处 状态(state) 选择一个 动作(action)环境(environment) 对这些动作做出相应的相应的响应,转移到新状态,同时产生一个 奖励信号 (reward),这通常是一个数值,奖励的折扣累加和称为 收益/回报 (return),是智能体在动作选择过程中想要最大化的目标

    强化学习交互图

  • 在这个过程中,“奖励 & 收益” 其实是智能体目标的一种形式化、数值化的表征。可以把这种想法非正式地表述为 “收益假设”

    智能体所有的 “目标” 或 “目的” 都可以归结为:最大化智能体收到的标量奖励信号的累计和(称之为“收益”)的概率期望值 —— Richard S.Sutton

    使用收益来形式化目标是强化学习最显著的特征之一

  • 注意,收益是通过奖励信号计算的,而奖励函数是我们提供的,奖励函数起到了人与算法沟通的桥梁作用

    某种程度上,奖励函数设计可以看作 “面向强化学习的编程”,算法工程师根据特殊 “语法”,将期望的任务和目标 “翻译” 成奖励函数,由强化学习算法进行 “编译”,最后在 agent 与 environment 的交互过程中 “运行”(指导算法训练)。“编译器”(RL算法)的性能和 “编程质量”(奖励函数质量)共同决定了策略的性能

  • 需要注意的是,智能体只会学习如何最大化收益,如果想让它完成某些指定任务,就必须保证我们设计的奖励函数可以使得智能体最大化收益的同时也能实现我们的目标

2. 主线奖励和稀疏奖励问题

2.1 主线奖励

  • 主线事件:强化学习的任务目标通常可以分为两类

    1. 定性目标的达成,比如二维平面导航任务中agent到达终点、下棋获胜、游戏通关等
    2. 定量目标的极值化,比如最大化投资收益、最小化电量消耗等

    这是所有强化学习任务的 根本目标,可以把上述定性目标的达成和定量目标的改善成为 主线事件

  • 主线奖励:根据主线事件可以相应地定义 主线奖励这通常是简单的

    1. 对于定性任务,无论任务多么复杂,判断任务是否完成通常是比较简单的,可以在定性目标达成时给予 agent 一个正向奖励
    2. 对于定量任务,我们通常可以观测到目标本身或它的某种度量,可以将其本身或经过某种形式的变换后作为回报

    主线回报相对于任务目标而言往往是无偏,因此只包含主线回报的奖励函数往往是最简单也最理想(从指向性来看)的形式

2.2 稀疏奖励问题

  • 主线奖励很稀疏,如果仅使用主线奖励,往往导致稀疏奖励问题

  • 看一个简单的例子,下面是一个 grid world 平面导航任务,agent要从左上角移动到右下角,动作集为上下左右运动,到达终点时可以获取25的奖励,其他情况下没有奖励。这是一个确定性环境,且仅有终止状态有奖励。下面两张图分别是使用 value iteration 直接求出的状态价值分布和使用 model-free 方法 Q-learning 学习的效果,可以看到价值函数的学习过程以及 agent 策略逐步确定的过程

     

    Q-learning

     

    value iteration结果

  • 由于仅有一个定性任务完成奖励,在早期通过随机探索获取有效转移的概率很低;由于大部分状态下反馈信号的缺失,agent 难以发现应该向右下方向移动,也就无从通过主动增加右下移动动作来触发更多的主线事件

    1. 任务简单,状态动作空间较小时:如上例所示,agent 容易通过 -greedy 随机探索的方法探索到主线事件,从而保证有效转移至少占据一定的比例,使得 RL 算法最终能够收敛
    2. 随着任务复杂度提升、状态动作空间增大,通过随机方式探索到主线事件的概率变得很小,稀缺的反馈信号无法为 agent 指明探索方向,难以形成局部知识,而盲目探索又导致有效转移无法出现或数量极少,二者相互作用导致样本效率极低,RL算法难以收敛
  • 反馈信号稀疏,训练早期难以形成局部知识,难以给出局部指导,导致盲目探索;训练晚期只能给出片面指导,导致片面利用,样本效率低下甚至无法收敛,学习困难,这就是 稀疏奖励问题

  • 稀疏奖励会影响强化学习样本效率,关于样本效率的讨论,请参考:
    强化学习拾遗 —— 强化学习的样本效率

3. 完善奖励函数设置

  • 针对稀疏奖励问题,学界提出了很多方法,可以概括为以下三类

    1. 设法提升有效转移的出现概率和利用效率,如事后经验回放、蒙特卡洛树搜索、层级强化学习、增加辅助任务等
    2. 使用遗传算法或进化方法代替DRL方法,这两类方法可以在超长的时间跨度下收集稀疏奖励作为直接优化的依据,而不会受制于 episode 长度导致的贡献度分配困难
    3. 完善奖励函数本身的设计

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值