了解折扣因素在强化学习中的作用


43

我正在自学强化学习,并试图理解折扣奖励的概念。因此,必须有奖励才能告诉系统哪些状态操作对是好的,哪些是坏的。但是我不明白的是为什么需要打折的奖励。为什么要尽快达到好状态而不是稍后就变得重要?

我确实知道这在某些特定情况下是相关的。例如,如果您正在使用强化学习在股票市场上进行交易,那么早一点赚钱而不是以后赚钱会更有利。这是因为现在有了这笔钱可以让您现在用那笔钱做事,这比以后再用那笔钱做事更可取。

但在大多数情况下,我看不出为什么打折有用。例如,假设您想让一个机器人学习如何在房间内导航以到达另一侧,如果该空间与障碍物碰撞会受到惩罚。如果没有折扣因素,那么它将学会完美地到达另一端,而不会遇到任何障碍。到达那里可能需要很长时间,但最终会到达那里。

但是,如果我们给予奖励折扣,那么即使机器人在沿途必须与物体碰撞,也会鼓励它迅速到达房间的另一侧。这显然不是理想的结果。当然,您希望机器人快速到达另一侧,但是如果这意味着它必须沿途与物体碰撞,则不要。

因此,我的直觉是,任何形式的折扣因子实际上都会导致次优解决方案。折扣因子的选择通常似乎是任意的-我看到的许多方法都只是将其设置为0.9。这对我来说似乎很幼稚,并且似乎在最佳解决方案和最快解决方案之间做出了任意取舍,而实际上,这一取舍非常重要。

请有人可以帮助我了解所有这一切吗?谢谢 :)

Answers:


36

TL; DR。

贴现率一定小于1的事实是使无限和为有限的数学技巧。这有助于证明某些算法的收敛性。

在实践中,折现因子可用于对决策者不确定在下一个决策瞬间世界(例如环境/游戏/过程)是否即将结束这一事实进行建模。

例如:

如果决策者是机器人,则折扣因子可以是机器人在下一个瞬间关闭的概率(世界在以前的术语中结束了)。这就是为什么机器人是短视的,不优化和奖励,但原因 折扣和奖励。

折扣系数小于1(详细信息)

为了更准确地回答为什么贴现率必须小于一个,我将首先介绍马尔可夫决策过程(MDP)。

强化学习技术可用于解决MDP。MDP提供了一个数学框架,用于对决策情况进行建模,在这种情况下,结果部分是随机的,部分是在决策者的控制之下。MDP通过状态空间,动作空间,状态之间的转移概率函数(取决于 决策者所采取的动作)和奖励函数来定义。SA

在其基本设置中,决策者采取行动并从环境中获得回报,而环境会改变其状态。然后,决策者感知环境状态,采取行动,获得奖励,等等。状态转换是概率性的,并且仅取决于实际状态和决策者所采取的措施。决策者获得的奖励取决于所采取的行动以及环境的原始状态和新状态。

当在状态采取动作并且决策者采取动作之后环境/系统变为状态时,将获得奖励。决策者遵循,即对于每个状态采取行动。这样,该政策就能告诉决策者在每个州应采取哪些行动。策略也可以是随机的,但现在并不重要。Rai(sj,sk)aisjskaiπ π():SAsjSaiAπ

我们的目标是找到一个策略这样π

maxπ:S(n)ailimTE{n=1TβnRxi(S(n),S(n+1))}(1),
其中是折扣因子,。ββ<1

请注意,上面的优化问题具有无限的时间范围(),目标是使的总和最大化(收益乘以)。这通常被称为MDP问题,它具有无限期的折现奖励标准TdiscountedRβn

因为所以该问题称为打折。如果不是折衷的问题则总和将不会收敛。在每个时刻平均获得正收益的所有策略总和为无穷大。这将是一个无限的地平线总和奖励标准,而不是一个好的优化标准。β<1β=1

这是一个玩具示例,向您展示我的意思:

假设只有两个可能的操作并且该回报函数等于,如果,并且 如果(奖励不依赖于的状态)。a=0,1R1a=10a=0

显然,获得更多奖励的策略是始终执行而不执行。我将此政策称为。我会比较到另一个策略是采取行动的小概率和动作,否则。a=1a=0πππa=1α<<1a=0

在无限视野中,贴现奖励准则的等式(1)变为策略(几何级数之和),而策略 方程式(1)变为。由于 ,我们说比是更好的策略。实际上是最佳策略。11βππα1β11β>α1βπππ

在无限地平线总和奖励标准()中,方程式(1)对于任何策略都不收敛(总和为无穷大)。因此,虽然政策获得的奖励高于但根据此标准,两个政策都是平等的。这就是无限地平线总和奖励标准不起作用的原因之一。β=1ππ

如前所述,使技巧收敛于等式(1)。β<1

其他最优标准

还有其他的最佳条件不强制:β<1

在有限地平线条件下,目标是使折价奖励最大化,直到时间地平线T

maxπ:S(n)aiE{n=1TβnRxi(S(n),S(n+1))},

对于和有限。β1T

无限远景平均奖励标准中,目标为

maxπ:S(n)ailimTE{n=1T1TRxi(S(n),S(n+1))},

尾注

根据最佳标准,可以使用不同的算法来找到最佳策略。例如,有限层问题的最佳策略将取决于状态和实际时刻。大多数强化学习算法(例如SARSA或Q学习)仅针对打折奖励无限视界标准收敛到最优策略(对于动态编程算法也是如此)。对于平均奖励标准,没有算法可以收敛到最优策略,但是可以使用R学习,尽管它在理论上没有很好的融合,但仍具有良好的性能。


1
我应该阅读什么才能理解您的答案中的所有中文?
thibaut noah

@thibautnoah这是恕我直言,最好的参考强化学习:萨顿和巴托的介绍。[ people.inf.elte.hu/lorincz/Files/RL_2006/SuttonBook.pdf]
PolBM '17年

谢谢队友,可能还需要一本关于数学的书,但是我想这是一个开端;)
thibaut noah 17/08/29

6

你说得对,贴现因子(所谓的 -注意,这是不同于从TD-)就像一个“生命的紧迫性”,因此是问题的一部分 -就像它是在人类的生活:有些人好像永远地生活;有些人的生活好像明天就要死了。γλλ


2

TL; DR:折现因子与时间范围相关。较长的时间范围包含更多不相关的信息,因此具有更大的差异,而较短的时间范围仅偏向于短期收益。

折扣因子从本质上决定了强化学习代理相对于近期内的奖励在乎遥远的将来的奖励。如果,代理将完全是近视的,并且仅了解产生立即奖励的动作。如果,代理将根据其所有未来奖励的总和来评估其每个动作。γ=0γ=1

那么,为什么不总是要使尽可能高呢?好吧,大多数动作并没有长久的影响。例如,假设您在每个月的第一天决定要自己吃冰沙,并且必须决定要买蓝莓冰沙还是草莓冰沙。作为一名优秀的强化学习者,您可以根据后续奖励的多少来判断决策的质量。如果您的时间跨度很短,那么您只会考虑立即获得的回报,例如冰沙的美味程度。在较长的时间范围内(例如几个小时),您可能还会考虑诸如是否胃部不适等问题。但是,如果您的时间跨度持续了整整一个月,那么让您感到整月好坏的每件事γ将决定您是否做出正确的冰沙决定因素。您将要考虑很多不相关的信息,因此您的判断将有很大的差异,并且很难学习。

选择一个特定的值等效于选择一个时间范围。它有助于将座席的折扣奖励重写为 其中I识别和。值明确显示与折扣因子关联的时间范围;对应于,并且任何比都多的奖励γG

Gt=Rt+γRt+1+γ2Rt+2+=k=0γkRt+k=Δt=0eΔt/τRt+Δt
γ=e1/τkΔtτγ=1τ=τ未来的时间步长被指数级抑制。通常,您应该选择一个折扣因子,以便时间范围包含特定操作的所有相关奖励,但不再包含所有其他奖励。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.