40

I've seen such words as:

A policy defines the learning agent's way of behaving at a given time. Roughly speaking, a policy is a mapping from perceived states of the environment to actions to be taken when in those states.

But still didn't fully understand. What exactly is a policy in reinforcement learning?

4

3 回答 3

70

这个定义是正确的,但如果你第一次看到它,它就不是很明显。让我这样说:策略是代理的策略

例如,想象一个机器人在房间内移动的世界,任务是到达目标点 (x, y),并在那里获得奖励。这里:

  • 房间就是环境
  • 机器人的当前位置是一个状态
  • 策略是代理为完成此任务所做的工作:

    • 愚蠢的机器人只是随意四处游荡,直到它们意外地出现在正确的地方(策略 #1)
    • 出于某种原因,其他人可能会在大部分路线上学会沿着墙壁走(策略 #2)
    • 智能机器人在“头脑”中规划路线并直奔目标(策略#3)

显然,有些政策比其他政策更好,并且有多种评估它们的方法,即状态-价值函数行动-价值函数。RL 的目标是学习最佳策略。现在定义应该更有意义(请注意,在上下文中时间被更好地理解为一种状态):

策略定义了学习代理在给定时间的行为方式。

正式地

更正式地说,我们应该首先将马尔可夫决策过程(MDP) 定义为一个元组 ( S, A, P, R, y),其中:

  • S是一组有限的状态
  • A是一组有限的动作
  • P是一个状态转移概率矩阵(每个当前状态和每个动作最终进入一个状态的概率)
  • R是一个奖励函数,给定一个状态和一个动作
  • y是折扣因子,介于 0 和 1 之间

然后,策略π是给定状态下动作的概率分布。这是代理处于特定状态时每个动作的可能性(当然,我在这里跳过了很多细节)。此定义对应于您定义的第二部分。

我强烈推荐YouTube 上的 David Silver 的 RL 课程。前两堂课特别关注 MDP 和政策。

于 2017-09-17T14:45:32.120 回答
23

简单来说,在最简单的情况下,策略π是一个将状态作为输入s并返回动作的函数a。那是:π(s) → a

通过这种方式,代理通常使用策略来决定a当它处于给定状态时应该执行什么操作s

有时,策略可以是随机的而不是确定的。在这种情况下,a策略不是返回唯一的动作,而是返回一组动作的概率分布。

一般来说,任何 RL 算法的目标都是学习实现特定目标的最优策略。

于 2017-09-17T17:58:15.923 回答
15

这是一个简洁的答案:政策是代理人的“思考”。它是当你处于某种状态时的映射,代理现在应该采取什么s行动a?您可以将策略视为一个查找表:

state----action----probability/'goodness' of taking the action
  1         1                     0.6
  1         2                     0.4
  2         1                     0.3
  2         2                     0.7

如果你处于状态 1,你会(假设一个贪婪策略)选择动作 1。如果你处于状态 2,你会选择动作 2。

于 2017-09-17T23:24:19.263 回答