强化学习笔记整合

强化学习笔记

Step-By-Step Tutorial 问题背景

假设一幢建筑里面有5个房间,房间之间通过门相连,将这五个放进啊按照0到4进行编号,且建筑外围可认为是个大房间,编号为5。
房间结构

上图的房间可以通过一个图来表示,房间作为图的节点,两个房间若有门相连,则相应节点对应一条边。

房间结构对应的图

对于这个例子,我们首先将agent置于建筑中的任意一个房间,然后从那个房间开始,让其走到建筑外,那是我们的目标房间,编号为5。为了将编号为5的房间设置为目标,我们每一扇门关联一个rewrad值,直接连接到房间的门的reward值为100,其他的reward值为0。

在这里插入图片描述

编号为5的房间有一个指向自己的箭头,其reward值为100,其他直接指向目标房间的边的reward值也为100。Qlearning的目标是达到reward值最大的state,因此,当agent到达目标房间后将永远停留在那里,这种目标也称为“吸收目标”。

我们的agent是一个通过经验进行学习的哑巴虚拟机器人,它可以从一个房间走到另一个房间。

假定现在agent位于2号房间,我们希望agent通过学习到达5号房间。

算法解释

Q-Learning算法中有两个重要术语,状态行为
我们将每一房间称为一个状态,将agent从一个房间走到另外一个房间称为一个行为。

我们可以以状态为行,行为为列,构建一个关于reward值的矩阵R,其中的-1标志空值,即房间不相连。

reward矩阵

类似的我们可以构建一个矩阵Q,表示agent已经学习到的知识。矩阵Q与R是同阶的,其行表示状态,列表示行为。
由于刚开始agent对外界环境一无所知,因此矩阵Q应初始化为零矩阵。

注:为简单起见我们,本例中我们假设状态的树木是已知的,设Q是一个6*6的零矩阵。对于状态数目未知的情况,我们可以让Q从一个元素出发,每次发现一个新的状态时就可以在Q中增加相应的行列。

Q-Learning算法的转移规则:
在这里插入图片描述

其中 s s s a a a表示当前的状态和行为, s ~ \widetilde{s} s a ~ \widetilde{a} a 表示 s s s的下一个状态及行为,学习参数 γ \gamma γ为满足 0 ≤ γ &lt; 1 0\leq \gamma &lt; 1 0γ<1的常数。

agent将通过经验进行学习,它不断从一个状态转至另外一个状态探索,直到到达目标,我们将agent的每一次探索称为一个episode,在每一个episode中,agent从任意初始状态到达目标状态。当agent达到目标状态后,一个episode即结束,接着进入另一个episode。

算法步骤
  • step1:给定参数 γ \gamma γ r e w a r d reward reward矩阵R
  • step2:令 Q : = 0 Q:=0 Q:=
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值