David Silver 增强学习——Lecture 1 强化学习简介

David Silver 增强学习——Lecture 1 强化学习简介

其他lecture

【1】搬砖的旺财:David Silver 增强学习——笔记合集(持续更新)
【2】搬砖的旺财:David Silver 增强学习——Lecture 2 马尔可夫决策过程
【3】搬砖的旺财:David Silver 增强学习——Lecture 3 动态规划
【4】搬砖的旺财:David Silver 增强学习——Lecture 4 不基于模型的预测
【5】搬砖的旺财:David Silver 增强学习——Lecture 5 不基于模型的控制
【6】搬砖的旺财:David Silver 增强学习——Lecture 6 值函数逼近
【7】搬砖的旺财:David Silver 增强学习——Lecture 7 策略梯度算法


前言

强化学习(Reinforcement Learning,RL)灵感来源于心理学中的行为主义理论,即有机体如何在环境给予的奖励或惩罚的刺激下,逐步形成对刺激的预期,产生能获得最大利益的习惯性行为。

强化学习更贴近人类的学习过程,在很多人看来,强化学习可能是通往通用人工智能的道路 。譬如David Silver说AI=DL+RL,即人工智能=深度学习+强化学习。

  • 视频和PPT百度云链接(方便不能翻墙的童鞋😁)

pan.baidu.com/s/1sDqSPo

密码:izff

  • 带有中文字幕的链接

David Silver深度强化学习第1课 - 简介 (中文字幕)

该视频由PaperWeekly翻译小组完成翻译,感谢他们的辛苦付出。

(PS:最开始的笔记来源于2017年对强化学习的认知,会持续进行完善,如果有任何问题,请留言,也可私信,还可email 😁~)


背景

强化学习也是多学科多领域交叉的一个产物,它的本质就是解决“决策(decision making)”问题,即学会自动进行决策。其在各个领域体现不同:

  • 在计算机科学(Computer Science)领域体现为机器学习算法(Machine Learning);
  • 在工程(Engineering)领域体现在决定序列行为(the sequence of actions)来得到最好的结果;
  • 在神经科学(Neuroscience)领域体现在理解人类大脑如何做出决策,主要的研究是反馈系统(reward system);
  • 在心理学(Psychology)领域,研究动物如何做出决策、动物的行为是由什么导致的;
  • 在经济学(Economics)领域体现在博弈论的研究。

这所有的问题最终都归结为一个问题,人为什么能够做出最优决策,且人类是如何做到的。


原理

  • 强化学习作为一个序列决策(Sequential Decision Making)问题,它需要连续选择一些行为,从这些行为完成后得到最大的收益作为最好的结果。
  • 它在没有任何标签告诉算法应该怎么做的情况下,通过先尝试做出一些行为——然后得到一个结果,通过判断这个结果是对还是错来对之前的行为进行反馈。
  • 由这个反馈来调整之前的行为,通过不断的调整算法能够学习到在什么样的情况下选择什么样的行为可以得到最好的结果。

强化学习与其他机器学习的区别

  • One of the challenges that arise in reinforcement learning, and not in other kinds of learning, is the trade-off between exploration and exploitation.——摘自《Reinforcement Learning: An Introduction》第二版。

在RL领域中存在一个挑战,它需要在exploration(探索未知的领域)和exploitation(利用现有知识)之间做权衡。

  • Another key feature of reinforcement learning is that it explicitly considers the whole problem of a goal-directed agent interacting with an uncertain environment.——摘自《Reinforcement Learning: An Introduction》第二版。

RL考虑的是,以目标为导向的智能体和不确定的环境之间进行相互作用的整个问题,其他机器学习方法更多的是将大问题分解成子问题,并且不考虑它们将如何使用,所以存在很多限制。

  • 监督学习(supervised learning)的区别:
  1. There is no supervisor, only a reward signal.

监督学习有标签告诉算法什么样的输入对应着什么样的输出(譬如分类、回归等问题);RL没有标签告诉它在某种情况下应该做出什么样的行为,只有一个做出一系列行为后最终反馈回来的reward signal,这个signal能判断当前选择的行为是好是坏。

2. Feedback is delayed, not instantaneous.

RL的结果反馈有延时,有时候可能需要走了很多步以后才知道之前某步的选择是好还是坏;监督学习如果做了比较坏的选择则会立刻反馈给算法。

3. Agent’s actions affect the subsequent data it receives.

RL面对的输入总是在变化,每当算法做出一个行为,它就影响了下一次决策的输入;监督学习中输入是独立分布的。

关于i.i.d.(独立同分布)假设,请参考:

搬砖的旺财:独立同分布 independent and identically distributedzhuanlan.zhihu.com图标

4. Time really matters (sequential, non i.i.d data).

强化学习具有时间相关性(作为序列决策问题,属于非独立同分布数据)。

  • 非监督学习(unsupervised learning)的区别:

Reinforcement learning is also different from what machine learning researchers call unsupervised learning, which is typically about finding structure hidden in collections of unlabeled data.——摘自《Reinforcement Learning: An Introduction》第二版

非监督学习主要是为了挖掘无标签数据之间的内部关联(譬如聚类问题),而RL是为了最大化reward。

  • 示例——监督学习、非监督学习、强化学习

(PS:来自深蓝学院——强化学习理论与实践

数据:人脸图片

监督学习:同时,给定标签(人名),然后学习这些人脸是谁的脸。监督学习要求带标签的数据,这些数据是比较昂贵的,标注数据也是一门学问。

非监督学习:没有标签,但是我们可以直接观察这些人脸,来判断哪些头像是同一个人。无标签数据的数量非常庞大且容易获得。

强化学习:没有标签信号,只有奖励信号。即时的奖励:如果分错了,只告诉你错了;延迟的奖励:等全部分类完毕之后,告诉总分数如何。

  • 强化学习与赌博机问题的区别

多臂赌博机(上下文赌博机)的问题描述请参考:

搬砖的旺财:《RL——An Introduction》第二章笔记——多臂赌博机问题zhuanlan.zhihu.com图标
上图:多臂赌博机问题中,只有行动影响回报。中图:上下文赌博机问题中,状态和行动都影响回报。下图:完备强化学习问题中,行动影响状态,回报可能在时间上延迟。

赌博机(bandit)问题:单步优化问题,且没有输入状态。每一个时刻都有奖励,每次决策跟后续状态没有关系。

上下文赌博机(contextual bandit)问题:在赌博机问题上增加了状态输入,所作出的决策是跟状态相关的。

上下文赌博机问题和监督学习的区别是给标签还是给奖励。

当上下文赌博机问题拓展到多步时会变成强化学习问题。

  • 总结一下

RL并不需要出现正确的输入/输出对,也不需要精确校正次优化的行为。RL更加专注于在线规划,需要在exploration和exploitation之间找到平衡。


强化学习的案例

无人机特技表演
玩Atari游戏
管理投资策略系统
控制电力系统
广告投放策略控制
AlphaGo
无人驾驶(PS:目前我的研究方向!!!)
机器人控制

奖励 Rewards

奖励是强化学习的核心。可以没有观测,但是不能没有奖励。 奖励是强化学习区别其他机器学习的标志特征。

  • R_{t} 是一个标量反馈信号
  • 反映了智能体在时刻 t 行为的好坏
  • Agent的目的即最大化累积回报
  • RL奖励假设:所有目标都可以表示为最大化期望累计回报

(注:如果一个问题不满足奖励假设,那么就不能用强化学习去解决!)

  • 示例
无人机和无人车控制

+奖励:如果按预定轨迹运行

-奖励:碰撞或翻车

下围棋

+/-奖励:赢了/输了

Atari游戏

+/-奖励:得分增加/减少

机械臂控制

+奖励:成功抓到东西

(注:奖励并不要求一定要有正有负,只有正的奖励和负的奖励都可以!)


序列决策 Sequential Decision Making

  • 目的:挑选动作来最大化将来的累计回报;
  • 动作可能会产生长期后果;
  • 奖励会有延迟性:下围棋时只有在最后才能获得奖励;
  • 牺牲立即回报来获得更多的长期回报:抄袭虽然可以获得短暂的奖励,但是为了长期奖励(取得进步),我们要牺牲短期奖励。

智能体和环境 Agent and Environment

智能体(agent)是指强化学习需要优化的部分,是我们能够精确控制的部分。

环境(environment)是我们不能直接控制的部分。

区分智能体和环境是强化学习的第一步。

(注:环境并不是指自然环境!!!😨)

(PS:下面这个图如果你一直从事强化学习的研究,你将成百上千次看到它并且用到它😁。)

  • 如图所示,每一步,对于agent都有:
  1. 执行动作 A_{t} :例如决定围棋棋子下在哪个位置,机器人的下一步该怎么走;
  2. 接收观察 O_{t} :例如当前机器人的摄像头拍摄到的场景;
  3. 接收常量回报 R_{t} :表明了在第 t 步agent做出的决策有多好或者有多不好。

agent一开始不知道环境会对不同action做出什么样的反应,而环境会通过observation告诉agent当前的环境状态,同时环境能够根据可能的最终结果反馈给agent一个reward,例如围棋棋面就是一个environment,它可以根据当前的棋面状况估计一下黑白双方输赢的比例。

  • 对于environment都有:
  1. 接收行为 A_t ,对这个动作做出反应之后传递环境状况,比如发出 O_t(观察)和reward(常量回报 R_{t} )给agent。

历史和状态 History and State

  • 历史(history)是一连串的observation,action,reward:H_{t}=\underline{O_{1},R_{1},A_{1}},...,\underline{O_{t-1},R_{t-1},A_{t-1}},\underline{O_{t},R_{t},A_{t}}
  • 下一步将发生什么取决于历史,其中agent选择actionenvironment选择observations/rewards。
  • 状态(state)是历史的一种表达,用来预测下一步将要发生什么。
  • 本质上,状态是历史的一个函数: S_t=f\left( H_t \right)
  • 示例——状态
下棋时,棋盘现在的布局可以被认为是状态 S_t=O_t ; 玩打砖块游戏时,前几帧的观测被认为是状态 S_t=O_{t-3},O_{t-2},O_{t-1},O_{t} ; 玩CS时,可能整个历史都被认为是状态  S_t = H_t
  • 环境状态 Environment State
  1. S_t^e 是环境的内部表达,包括环境用来决定下一个观测/奖励的所有数据,通常对个体并不完全可见,也就是个体有时候并不知道环境状态的所有细节;
  2. 即使有时候环境状态对个体可以是完全可见的,这些信息也可能包含着一些无关信息。
  • 智能体状态 Agent State
  1. S_t^a 是智能体的内部表达,包括智能体可以使用的、决定未来动作的所有信息;
  2. 智能体状态是强化学习算法可以利用的信息,它可以是历史的一个函数 S_{t}^{a}=f(H_{t})
  • 环境状态和智能体状态的区别
机器人控制

环境状态:所有机械零件的参数,状态等

智能体状态:传感器所获得的数据

3D游戏

环境状态:所有的游戏参数以及对手信息

智能体状态:玩家所能看到的观测

对于智能体来说,环境状态是未知的,智能体状态是已知的。
智能体通过智能体的状态来做出相应的动作。
没有特殊说明的情况下,我们所说的状态均指智能体状态  S_t = S_t^a
  • 信息状态 Information State(马尔可夫状态 Markov State)
  1. 信息状态包括历史上所有有用的信息,又称Markov状态。

马尔可夫性 Markov Property

  • 状态 S_{t}Markov当且仅当 {\Bbb P}[S_{t+1}|S_t]={\Bbb P}[S_{t+1}|S_1,S_2,S_3,···,S_t] ,即随机过程的某事件只取决于它的上一事件,与初始状态无关。
  • 如果信息状态是可知的,那么所有历史信息都可以丢掉,仅需要 t 时刻的信息状态就可以了。
  • 环境状态 S_t^e 是markov的。
  • 历史 H_t 是markov的。
  • 示例——Rat Example
假如个体状态=序列中的后三个事件(不包括电击、获得奶酪,下同),事件序列3的结果会是什么?(答案是:电击)
假如个体状态=亮灯、响铃和拉电闸各自事件发生的次数,那么事件序列3的结果又是什么?(答案是:奶酪)
假如个体状态=完整的事件序列,那结果又是什么?(答案是:未知)
  • 完全可观测的环境 Fully Obserable Environment
  1. 智能体直接观察环境状态: (O_t)=(s{^e_t})=(s{^a_t})
  2. 智能体对环境的观测=环境状态=智能体状态(智能体状态等价于环境状态 )。
  3. 这是强化学习的主要研究问题——马尔可夫决策过程 (Markov Decision Process,MDP)。
  • 部分可观测的环境 Partially Observable Environments
  1. 智能体间接观测环境。

2. 示例
一个可拍照的机器人智能体对于其周围环境的观测并不能说明其绝对位置,它必须自己去估计自己的绝对位置,而绝对位置则是非常重要的环境状态特征之一; 一个交易员只能看到当前的交易价格; 一个扑克牌玩家只能看到自己的牌和其他已经出过的牌,而不知道整个环境(包括对手的牌)状态。
3. (O_t) \neq (s{^a_t}) 智能体状态 ≠ 环境状态
4. 部分可观测马尔可夫决策过程(Partially Observable Markov Decision Process,POMDP)。
5. 个体必须构建它自己的状态呈现形式 S_{t}^{a} ,比如:
记住完整的历史: S_{t}^{a}=H_{t} (不推荐); Beliefs of environment state:此时虽然个体不知道环境状态到底是什么样,但个体可以利用已有经验(数据),用各种个体已知状态的概率分布作为当前时刻的个体状态的呈现 S_{t}^{a}=(\mathbb{P}[S_{t}^{e}=[s^1],...,\mathbb{P} [S_{t}^{e}=[s^n]) ; Recurrent neural network:不需要知道概率,只根据当前的个体状态以及当前时刻个体的观测,送入循环神经网络(RNN)中得到一个当前个体状态的呈现 S_{t}^{a}=\sigma(S_{t-1}^{a}W_{s}+O_{t}W_{o})
动作 Action
动作是智能体主动和环境交互的媒介。动作必须对环境起到一定的控制作用(尤其是对奖励);i.e. 动作序列  A_1, A_2, A_3,... 能够影响智能体的回报值。

  • 动作要能改变未来所能获得的奖励

打砖块时上/下动作不能改变环境,无效动作,只有左/右动作才能改变环境

  • 奖励的设置要能被动作改变

比如时间的流逝是不受改变的
(注:如果上述两点不满足,那么就无法解这个强化学习问题!)
强化学习中智能体的组成
一个强化学习的智能体主要由以下一个或几个部分组成:策略(Policy)、值函数(value function)、模型(model)。

  • 策略(Policy)

策略是智能体的核心,我们最终的目的就是找到一个策略,通过策略可以描述智能体的行为。

  1. 由当前看到的observation来决定action,是从state到action的映射,直观上描述就是:当智能体在什么状态时应该做什么事。
  2. 有两种表达形式:

一种是Deterministic policy确定策略)即: a=π(s) ,在某种状态 s 下,一定会执行某个动作 a
一种是Stochastic policy随机策略)即 π(a|s)={\Bbb P}[A_t=a|S_t=s] ,它是在某种状态下执行某个动作的概率。

  • 价值函数(Value function)
  1. 它预测了当前状态下未来可能获得的reward的期望,用来评价当前状态的好坏程度V_\pi(s) = {\Bbb E}_\pi[R_{t+1}+{\gamma}R_{t+2}+{\gamma}^2R_{t+3}+...|S_t=s]
  2. 值得注意的是一个价值函数是基于某一个特定策略的,不同的策略下同一状态的价值并不相同。
  • 模型(Model)

1. 这里的模型指智能体所拥有的对环境的预测模型,主要包含两部分:
\cal P ——预测下一个状态是什么;
\cal R ——预测下一奖励是多少。
(注:\cal P\cal R 可能是不精确的。)
2. 因而有两种类型的model:
一种是预测下一个状态的转移模型(transition model),即 {\cal P}{^a_{ss^{'}}} ={\Bbb P}[S_{t+1}=s^{′}|S_t=s,A_t=a]
一种是预测下一次奖励的奖励模型(reward model),即 {\cal R}{^a_s}= {\Bbb E}[R_{t+1}|S_t=s,A_t=a]

  • 示例——以迷宫为例来看上面提到的三个函数分别什么样子

奖励:每走一步获得-1的奖励 动作:上下左右 状态:智能体的位置

  1. policy:红箭头代表policy,表示agent在相应的某个state(即位置)所采取的行动:

(注:图中的箭头描述了 \pi\left( s \right) ——确定性策略。)
2. value:-1代表离终点一步,起点是-16,左下方区域离终点越来越远。可以让agent知道下一步决策该如何走,当然是向距离终点近的位置走:

(注:图中的箭头描述了 v_ {\pi}\left( s \right) ——按照 \pi 进行的值函数。)
3. model:下图就是agent建立的对环境状态与状态之间转换的一个理解模型,是从始点走到终点的一条路径,每个位置上面-1表示每一步减去一个即时奖励:

网格的布局即代表了 {\cal P}{^a_{ss^{'}}} ——确定性环境。
数值代表了 {\cal R}{^a_s}
(注:这里省略了左下角的图例。)
强化学习个体的分类

  • 按环境分类
  1. 全观测环境下的强化学习
  2. 部分可观测环境下的强化学习
  • 按智能体的成分分类
  1. 仅基于价值函数的Value Based:在这样的个体中,有对状态的价值估计函数,但是没有直接的策略函数,策略函数由价值函数间接得到;
  2. 仅基于策略的Policy Based:这样的个体中行为直接由策略函数产生,个体并不维护一个对各状态价值的估计函数;
  3. 演员-评判家形式Actor-Critic:个体既有价值函数、也有策略函数,两者相互结合解决问题。
  • 按有无模型分类
  1. 不基于模型的个体(model-free):这类智能体并不试图了解环境如何工作,而仅聚焦于价值和/或策略函数;
  2. 基于模型的个体(model-based):智能体尝试建立一个描述环境运作过程的模型,以此来指导价值或策略函数的更新。
  • 按使用的手段分类
  1. 传统强化学习
  2. 深度强化学习

学习和规划 Learning & Planning

  • 学习:环境初始时是未知的,个体不知道环境如何工作,个体通过与环境进行交互,逐渐改善其行为策略。
  • 规划:环境如何工作对于个体是已知或近似已知的,个体并不与环境发生实际的交互,而是利用其构建的模型进行计算,在此基础上改善其行为策略。

一个常用的强化学习问题解决思路是,先学习环境如何工作,也就是了解环境工作的方式,即学习得到一个模型,然后利用这个模型进行规划。
探索和利用 Exploration and Exploitation

  • 强化学习是一种试错(trial-and-error)的学习方式:最开始的时候不清楚环境的工作方式,不清楚执行什么样的行为是对的,什么样的行为是错的。因而agent需要从不断尝试的经验中发现一个好的policy,从而在这个过程中获取更多的reward。
  • 在学习过程中,会有一个在Exploration(探索)和Exploitation(利用)之间的权衡。
  • Exploration(探索)会放弃一些已知的reward信息,而去尝试一些新的选择——即在某种状态下,算法也许已经学习到选择什么action让reward比较大,但是并不能每次都做出同样的选择,也许另外一个没有尝试过的选择会让reward更大,即Exploration希望能够探索更多关于environment的信息。
  • Exploitation(利用)指根据已知的信息最大化reward。
  • 举个例子,这两者在选择一家餐馆时——Exploitation(利用)会选择你最喜欢的餐馆,而Exploration(探索)则会尝试选择一个新的餐馆。

关于EE(Exploration and Exploitation)问题详情可参考:

搬砖的旺财:《RL——An Introduction》第二章笔记——多臂赌博机问题zhuanlan.zhihu.com图标

预测和控制 Prediction & Control
在强化学习里,我们经常需要先解决关于预测(prediction)的问题,而后在此基础上解决关于控制(Control)的问题。

  • 预测:给定一个策略,评价未来。可以看成是求解在给定策略下的价值函数(value function)的过程。How well will I (an agent) do if I (the agent) follow a specific policy?
  • 控制:找到一个好的策略来最大化未来的奖励。

举了一个例子来说明预测和控制的区别。
预测:现在给出了从A到A’的奖励以及从B到B’的奖励,在“随机选择4个方向进行移动”的策略下,如何得知每一个位置的价值。

控制:同样的条件,在所有可能的策略下最优的价值函数是什么?最优策略是什么?

参考文献:
【1】David Silver深度强化学习第1课
【2】深度增强学习David Silver(一)——介绍
【3】Sutton R , Barto A . Reinforcement Learning:An Introduction[M]. MIT Press, 1998.
【4】《强化学习》第一讲 简介
请大家批评指正,谢谢😄~





分享——如何用强化学习解决实际生活中的问题规划?

示例教室环境

示例教室环境(如上图所示)——想象一下,你回到学校,并且在教室里,老师对废纸有严格的规定,并且要求任何一张废纸都必须在教室前面传给他,他会把垃圾放入箱子(垃圾桶)中。然而,班上的一些学生对老师的规定并不在意,宁愿自己省去在教室里传递纸的麻烦。相反,这些觉得麻烦的人可能会选择从远处把废纸扔进垃圾桶。现在,这激怒了老师,而那些这样做的人受到了惩罚。
我们的目标是为每个人找到最好的指示,以便纸张到达老师那里,并被放置在箱子中,避免被扔进箱子中。
在我们的环境中,每个人都可以被认为是一种状态,他们可以对废纸做各种各样的动作。他们可能会选择把它传给近邻的同学,抓住它,或者有些人会选择把它扔进箱子中。因此,我们可以将我们的环境映射到一个更标准的网格布局上,如下图所示。

每个人(或状态)都有四个动作:上、下、左或右,每个都会根据谁做出动作而产生不同的“实际”结果。
(注:把人放入墙壁的动作,包括中间的黑色方块,表示这个人抓住了纸。)
例如,人员A的动作的结果是:
上=扔进箱子 下=抓住纸 左=将纸传给人员B 右=抓住纸

  • 概率性环境(Probabilistic Environment)

目前,部分控制环境的决策者是我们。我们会告诉每个人他们应该做出什么样的动作,这就是所谓的策略。
概率性环境是当我们指示一个状态在我们的策略下做出动作的时候,有一个关于这是否能成功遵循的可能性问题。换句话说,如果我们告诉人员A把纸传给人员B,他们可以决定不遵循我们策略中的指示动作,而是把废纸扔进箱子中。

  • 可观察转移概率(Observed Transitional Probability)

为了找到可观察转移概率,我们需要收集一些关于环境如何进行动作的样本数据。在我们收集信息之前,我们首先引入一个初始策略。为了开始这个过程,随机选择了一个看起来会带来正面结果的。

现在我们观察每个人在这个策略下所做出的动作。换句话说,我们坐在教室的后面,简单地观察这个课程,并观察了人员A下面的结果:

所观察到的人员A的结果

我们看到一张纸通过了这个人20次;6次他们一直抓着,8次他们把它传给人员B,还有6次他们将它扔进了垃圾桶。这意味着,在我们初始策略下,抓着或将其扔进垃圾桶的概率是 \frac{6}{20}=0.3 ,同样,传递给人员B的概率为 \frac{8}{20}=0.4 。我们可以观察教室其余的人来收集下面的样本数据:

所观察到的实际结果

同样,之后我们计算概率为下面的矩阵,我们可以用这个来模拟经验。该模型的精确度将在很大程度上取决于概率是否是整个环境的真实表征。换句话说,我们需要确保我们有一个足够大且足够丰富的数据样本。

观察到的转移概率函数
  • 事件,奖励,回报和折现率

所以我们有根据POMDP下样本数据估计的转移概率。在我们引入任何模型之前,下一步是引入奖励。到目前为止,我们只讨论了最后一步的结果;要么是老师把纸放到箱子里并得到一个正奖励,要么被人员A或人员M扔掉并得到一个负奖励。结束这个事件的最后一种奖励就是所谓的“终端奖励(Terminal Reward)”。但是,还有第三个结果也不太理想;这张纸不断地被传递,而且从来没有(或者比我们想要的时间长很多)到达箱子中。因此,总的来说,我们有三个最终结果:

  1. 纸被老师放到箱子里,并得到一个正的终端奖励
  2. 纸被一个学生扔到箱子里,并得到一个负的终端奖励
  3. 纸不断地在房间里传递,或者在学生身上停留的时间比我们想象的要长

为了避免纸被扔到箱子中,我们提供了一个大的负奖励,比如-1。而且因为老师在将垃圾放入垃圾桶时会很高兴,所以这会得到一个很大的正奖励,+1。为了避免它在房间里不断传递的结果,我们将所有其他动作的奖励设置为一个小的负值,比如-0.04。如果我们把它设为正值或空值,那么模型可能会让纸循环,因为获得小的正值比获得接近负值结果的风险要更好。这个数字也非常小,因为它只会收集一个终端奖励,但是它可能需要采取很多步骤才能结束这一事件,并且我们需要确保,如果纸张放到箱子里,正的结果不会被取消。请注意,奖励总是相对的,我选择了任意数字,但是如果结果不尽如人意,这些数字可能被改变。
虽然我们无意中讨论了这个示例中的一些事件,但我们还没有正式地定义它。事件就是每一张纸通过教室到达箱子中的动作,这是终端状态,结束了这该事件。
我们的RL模型的总体目标是选择最大化预期累积奖励的动作,即回报。换句话说,回报就是这一事件所获得的总奖励。计算这一点的一个简单方法是在每个事件中加上所有奖励,包括终端奖励。一个更严谨的方法是在下面的公式中应用折扣因子 \gamma ,并考虑该事件中的第一步骤要比后面的步骤更为重要: R_t= R_{t+1}+\gamma R_{t+2}+...+\gamma^{T-t-1} R_{T}
如果我们对示例进行新的考虑,使用折现回报将会使这一想象更为清晰,因为老师会奖励(或者相应地惩罚)参与这个事件的任何人,但是会根据他们与最终结果之间的距离来衡量。例如,如果纸张从A传递给B,再传递给M,即把纸扔进垃圾桶的人,那么M应该受到最大的惩罚,然后是B,因为是B把纸传递给他的,最后是A,他仍然参与最后的结果,但没有M或者B的任务重。这也强调,在一个状态下开始并且到达垃圾桶所需的时间越长(基于步骤的数量),得到的奖励或惩罚越少,但是为了采取更多的步骤也会累积更多的负的奖励。
详情请参考:全文解析:如何用强化学习解决实际生活中的问题规划?





(PS:2018年12月18日完成第二次修订~)

编辑于 2019-08-06

文章被以下专栏收录