强化学习入门论文_强化学习入门

强化学习入门论文

对机器学习这个主题非常感兴趣的大多数人都认为它与神经网络是同义词。 在目前的化身中,神经网络似乎是通用的工具。 通过选择正确的神经网络类型,相同的工具(变化很小)也许能够解决大多数问题。 但是,这并不意味着神经网络是用于给定问题的最佳(甚至是正确的)工具。

在本文中,我们将讨论一种问题,以小游戏为例,可以通过另一种称为强化学习的技术轻松解决。 我们将研究需求,实现和模型的优势。

游戏

该游戏可以用铅笔和纸玩,在解决程序问题之前获得第一手经验是一件好事。 这是一种赛车游戏,其中在使“汽车”保持在轨道上的同时尽可能快地穿越轨道。 汽车的轨道和位置在正方形网格上指定。 在游戏中的任何时候,汽车都有位置和速度。 速度包括(与物理学中速度的定义一致)的方向。 运动规则最容易以图形方式说明。

Two versions of potential moves in the game

在这两种不同情况下,汽车的当前位置由红色正方形表示,其先前位置由橙色正方形表示。 这两个正方形之间的距离定义了汽车的速度(一种情况下为(4,-1),另一种情况下为(4,0)),其坐标系的第一个维度是从左到右,第二个维度是从下到上。

通过将以下两个值的绝对值相加来测量速度: 曼哈顿距离 :| 4 | + | -1 | = 5和| 4 | + | 0 | = 4。

下一步的规则是:速度矢量的长度最多必须向上或向下改变一个,并且速度矢量的分量值每个最多只能变化一个。 结果,汽车最多可以在下一步中移动到七个位置,在图中以绿色方块表示。 如果当前速度为1,则汽车可能会停下来,但这没有用,因为目标是尽快完成路线。 可以通过禁止速度为零来避免这种情况,在这种情况下,这会减少可能的新位置的数量。

轨道是另一个限制。 汽车一定不能离开赛道,鉴于汽车的速度,某些(或全部)可能的新位置可能无效。 轨迹不必由直线和规则曲线定义,它看起来像下面的图片(甚至更复杂)。

Example of a track

对于此练习,我们必须在轨道上定义起点/终点线。 汽车在此直线上的某个位置处开始,初始速度为1(即,水平或垂直方向上为一步),并且必须从另一侧越过直线。 在示例代码中,轨迹和起始行位置被编码为无损图像文件。 起始位置在起始线上以一条线单独给出。

任何成功的比赛都会越过起跑/结束线而不会离开赛道。 最好的解决方案是需要最少步骤的解决方案。 在大多数情况下,可能有不止一种解决方案,但这取决于赛道和起跑条件。

寻找解决方案

如果我们考虑传统方法,即在一开始就从给定状态确定解决方案,那么我们很快就会遇到问题。 可能性太多了。

问题在于,要计算下一步,必须考虑所有可能的未来步骤。 某种封闭式可能无法制定。 这就留下了递归搜索,除非轨道很短,否则这是非常不实用的。 联合努力将是禁止的。

因此,对于非平凡的曲目,可能有必要解决概率结果。

可用信息

从理论上讲,可以在进行中的所有步骤中提供有关所有未来步骤的信息。 如前一节所述,这样做的成本过高。 为了做出下一步决定,我们应该将自己限制在该信息的一个子集上,最好是很小的一个子集。 显然,这不能保证我们可以立即找到最佳的解决方案,但这就是机器学习技术应运而生的地方。

Q学习

在这里,我们正在研究一种称为Q学习的机器学习技术,这是一种特殊的强化学习技术。 它允许学习一个动作值功能,这正是我们在这里想要的:在任何情况下,我们都想知道如何改变速度,而移动的质量就是价值。 决定使用Q学习本身并不能确定如何计算该值。 由数据科学家决定。

我们在这里不讨论Q学习背后的理论细节。 可以说,它可以为大量问题找到最佳函数(对于那些感兴趣的人,可以对所有的马尔可夫决策过程进行建模)。 不必具有环境模型(即,在这种情况下,不必对整个轨道进行建模)。 我们可以仅查看步骤前后汽车的紧邻区域,并确定每个步骤的代表值或奖励。

该算法需要表示当前状态:汽车的位置和速度。 我们要确定每种状态下的动作,即新的速度和新位置的结果。 如上所述,我们需要为此分配一个值,用一个数字表示。 我们得到的是所谓的Q函数:

Q-function equation

我们在一开始对该函数一无所知,我们可以为所有输入初始返回一个固定的,任意选择的值。 根据稍后在学习阶段中使用的值,初始值可能会影响学习速度。

迭代确定更好的Q值。 该迭代步骤从给定状态开始,确定动作(如何进行此操作将在下面讨论),并确定奖励。 然后,此信息用于更新Q函数:

Equation for updating the Q function

翻译成单词,这意味着,Q被用于状态s t与动作由奖励的总和乘以旧值与1-α,以及添加到其α倍的步骤R tγ倍的最大未来更新Q的值(或其估计值)。 对于最终状态,我们不必(也不必)更新Q ; 我们只是适当地设置了奖励。 分别与1-αα相乘可确保Q的值受到初始值和最终状态奖励的限制。

γ是学习算法的所谓超参数 。 在这种情况下,它是折扣因子,是在类似情况(例如金融数学)中使用的术语。 这意味着,如果将来状态下的奖励为r ,则必须折现当前状态下的价值,因为只能在一个或多个其他步骤之后才能收集奖励。 每一步折现系数0 <γ<1 。 找到正确的γ

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值