强化学习学习笔记——马尔可夫决策过程(一)

强化学习学习笔记——马尔可夫决策过程(一)

前言

虽然不是第一次学强化学习的内容,但这确实是我第一次在网上开始写学习笔记。
写学习笔记的原因有两个:

  1. 首先是因为,自己学了好久都学不明白,现在开始下决心把这套东西学透。学习笔记有助于我整理学习的思路,相当于再自己复习一遍,看能否用自己的话把所学的东西说明白。也借用各位的评价来审视自己的理解是否有误。
  2. 希望用这种方式丰富一下自己的生活,经营一个我自己的博客。借此,希望逼迫自己坚持下来。毕竟我还是缺乏一点点毅力。

这里,我需要说明的是,我学强化学习的资料比较杂,手头目前有一本PDF版的《深入浅出强化学习》(郭宪 方勇纯编著)(以后称它为“教程”),但之前看的时候就发现有挺多笔误,字体也是挺奇怪的,比如“门”字用的是“冂”上加一短竖,读起来挺费劲。除了主要参考这一本书以外,看不懂的时候就网上找资料,弄明白为止。

在用到网上参考资料的时候,我尽量给出出处吧。毕竟我的理解和其他人的理解可能不一样。看原文能够最大可能的避免“理解”上的“偏移”。

以上是一堆废话,下面正式开始。

强化学习

机器学习分为:有/无监督学习,强化学习

  • 有/无监督学习:面向的是静态数据,没有与动态环境的交互。我的理解是,它就是用来识别/分类的。
  • 强化学习:面向的是动态数据,有与环境的交互以及实时的数据更新。用来交互/决策的。

此外,深度学习和强化学习可以结合,形成成深度强化学习。

  • 深度学习:解决了感知问题
  • 强化学习:解决了决策问题

从马尔科夫开始

为什么强化学习都从马尔科夫开始呢?
因为强化学习解决的是“序贯决策”问题,与之对应的是单阶段决策。

  • 序贯决策:按时间顺序排列起来,以得到按顺序的(动态的)各种决策结果。
  • 但阶段决策:决策者只需要做出一次决策即可。

根据教程,“一般的序贯决策问题可以利用马尔科夫决策过程的框架来表述”(说明:这里我不懂为什么,但接受就好,有空再细研究),因此我们需要从马尔科夫开始学起。

渐进地,要学马尔科夫决策过程,我们需要从以下几个点,层层递进,逐渐学起

  • 马尔科夫性
  • 马尔科夫过程
  • 马尔科夫奖励过程
  • 马尔科夫决策过程

马尔科夫性

什么是马尔科夫性?

假设有一只马尔科夫蛙在2B荷叶上,这只蛙忘性大,它永远记不住自己是从哪儿跳到目前这个荷叶上的。那么,现在它累了,想跳到别的荷叶上去。它将跳到哪个荷叶上?有可能是3A,也可能是1C,还可能是2B(忘性太大),这决定于马尔科夫蛙自己的决策策略。好了,故事结束了,下课。
马尔科夫“蛙”
上面故事中,马尔科夫蛙就是决策者(或者叫”Agent“,教程中叫”智能体“),它目前所在的2B荷叶就是当前所处的状态(State),那么它跳向的下一个荷叶(状态)只与它当前所处的荷叶有关,与之前的它从哪儿跳来的无关。这就是马尔科夫性。

  • 定义:所谓马尔科夫性是指,系统下一个状态 s t + 1 s_{t+1} st+1只于当前状态 s t s_t st有关,而与以前的状态无关。

故事继续,这只蛙不断跳啊跳,我们记录下它每次跳的荷叶编号,形成一个状态序列,这就是马尔科夫链。那么,这只青蛙的马尔科夫链可能是:
2B-3A-1C-2A-1A-3A…
2B-2C-1A-1C-3A-3C…
2B-2B-2B-2B-2B-2B…

上面可能有无穷多种马尔科夫链,但是链上每一个状态都是符合马尔科夫性的。上述蛙选择跳跃的过程就是马尔科夫过程。

马尔科夫过程

定义:马尔科夫过程是一个二元组 ( S , P ) (S,P) (S,P),并且满足以下条件:

  • S S S是有限状态的集合: S = { s 1 , s 2 , ⋯   , s n
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值