论文地址:

https://people.cs.umass.edu/~barto/courses/cs687/Sutton-Precup-Singh-AIJ99.pdf

例子:

这是一个寻路问题,该问题使用强化学习算法解决,准确的来说是使用“表格表示的强化学习算法中的规划算法”来进行解决的;之所以没有说是使用规划算法来说是因为这里使用了学习型算法,即强化学习算法,虽然只是使用表格记录的方式,但是依旧使用了强化学习算法的形式进行;该问题的解决中对每个方格的状态值表示为V(s),整体使用策略迭代或值迭代的强化学习的规划算法来解决。

在这个问题中,agent有四个方向可以选择走,但是每次走只有2/3的概率会正确执行,1/3的概率会随机走其他三个方向中的一个;需要注意的是,agent的每一步行走的reward都是零,也就是说这个问题建模后形成的强化学习模型是一个稀疏模型。

options算法的核心内容:

options算法在计算过程中的各个位置在表格中的状态值的变化过程示意图:(该问题就是计算所有房间的位置到到达初始位置的状态值V(state)的值大小)

其中下图方块中涂黑的面积大小表示对应的状态值V(s)的值的大小,最大时为1,完全空白为0。

下图中上一行中options的动作为单步,下一行中的options的动作为multi-steps。

multi-steps的options动作指的就是在一次状态值更新时是对划分后问题的一整个option动作覆盖的空间进行计算,下图中则是对整个房间(room)进行更新计算。

可以看到,上面的每个room有两个通道(两个空白格),这两个空白格(通道)可以分别作为一个option的target,除了target之外的其他空格都为可行区域(可以作为option的起始点),也就是所对原始任务进行划分后的每个room任务都是可以有两个option的,每个option的终点分布对应room边缘的target hallway。

给出一个room的其中一个option的状态值的示意图(该option的target为右侧边缘的空格,另一个option的target为下侧边缘的空格):

options算法的学习规则:(参数更新的具体方式)

给出一个状态的option示意图:

假设下图中红色状态为s,绿色状态为 \(s^,\)。

红色状态在下图中的option的Q值记作Q(s, o),绿色状态的Q值记作Q(\(s^,\), \(o^,\))。

红色状态关于绿色状态的一次采样后的Q值更新具体为:

使用options方法来进行动态规划计算的一些不足:

其中,最为注意的就是在使用options进行动态规划的话并不一定能保证加快计算(加快收敛);一般情况下动态规划时初始所有状态的状态V值为0,但是如果使用乐观的初始化方式(optimistic)那么就是在初始化时将所有的状态V值都初始化为一个较大的数值,比如为100,那么使用options这种multi-steps分层的方法反而会减慢值迭代的动态规划算法的收敛速度。

PS:

个人感觉,这个分层强化学习算法中的经典options算法其实和分层 \(A^*\) 算法很像,其基本思想是一致的,如果有读者不是很难理解这个options算法可以先去读“分层 \(A^*\) 算法”。

本文的options算法本质上是“表格型强化学习算法”。

分层强化学习算法options其本质就是对问题进行分层划分。

本文算法的解决方法是使用表格记录每个位置的状态值V(s)。

由于options发表的较早,20多年前发表的,因此这篇文章大篇幅谈的是动态规划算法,即如何使用options方法来提升动态规划算法的性能,然后才谈了options算法在learning算法上的一些应用。

经典强化学习算法:分层强化学习算法—options算法2(理解篇)的更多相关文章

  1. 【转载】 “强化学习之父”萨顿:预测学习马上要火,AI将帮我们理解人类意识

    原文地址: https://yq.aliyun.com/articles/400366 本文来自AI新媒体量子位(QbitAI)     ------------------------------- ...

  2. 机器学习&深度学习基础(tensorflow版本实现的算法概述0)

    tensorflow集成和实现了各种机器学习基础的算法,可以直接调用. 代码集:https://github.com/ageron/handson-ml 监督学习 1)决策树(Decision Tre ...

  3. 强化学习之 免模型学习(model-free based learning)

    强化学习之 免模型学习(model-free based learning) ------ 蒙特卡罗强化学习 与 时序查分学习 ------ 部分节选自周志华老师的教材<机器学习> 由于现 ...

  4. 深度强化学习day01初探强化学习

    深度强化学习 基本概念 强化学习 强化学习(Reinforcement Learning)是机器学习的一个重要的分支,主要用来解决连续决策的问题.强化学习可以在复杂的.不确定的环境中学习如何实现我们设 ...

  5. 数论算法 剩余系相关 学习笔记 (基础回顾,(ex)CRT,(ex)lucas,(ex)BSGS,原根与指标入门,高次剩余,Miller_Rabin+Pollard_Rho)

    注:转载本文须标明出处. 原文链接https://www.cnblogs.com/zhouzhendong/p/Number-theory.html 数论算法 剩余系相关 学习笔记 (基础回顾,(ex ...

  6. DDos攻击,使用深度学习中 栈式自编码的算法

    转自:http://www.airghc.top/2016/11/10/Dection-DDos/ 最近研究了一篇论文,关于检测DDos攻击,使用了深度学习中 栈式自编码的算法,现在简要介绍一下内容论 ...

  7. [强化学习]Part1:强化学习初印象

    引入 智能 人工智能 强化学习初印象 强化学习的相关资料 经典书籍推荐:<Reinforcement Learning:An Introduction(强化学习导论)>(强化学习教父Ric ...

  8. 数据结构与算法C++描述学习笔记1、辗转相除——欧几里得算法

    前面学了一个星期的C++,以前阅读C++代码有些困难,现在好一些了.做了一些NOI的题目,这也是一个长期的目标中的一环.做到动态规划的相关题目时发现很多问题思考不通透,所以开始系统学习.学习的第一本是 ...

  9. 平滑处理Smooth之图像预处理算法-OpenCV应用学习笔记三

    大清早的我们就来做一个简单有趣的图像处理算法实现,作为对图像处理算法学习的开端吧.之所以有趣就在于笔者把算法处理的各个方式的处理效果拿出来做了对比,给你看到原图和各种处理后的图像你是否能够知道那幅图对 ...

  10. Coursera台大机器学习基础课程学习笔记1 -- 机器学习定义及PLA算法

    最近在跟台大的这个课程,觉得不错,想把学习笔记发出来跟大家分享下,有错误希望大家指正. 一机器学习是什么? 感觉和 Tom M. Mitchell的定义几乎一致, A computer program ...

随机推荐

  1. mmdetection使用未定义backbone训练

    首先找到你需要用到的 backbone,一般有名的backbone 都会在github有相应的代码开源和预训练权重提供 本文以mobilenetv3 + fastercnn 作为举例,在mmdetec ...

  2. 线性dp:编辑距离

    编辑距离 本题与力扣72.编辑距离题意一样,阅读完本文可以尝试leetcode72. 力扣题目链接 题目叙述 输入两个字符串a,b.输出从字符串a修改到字符串b时的编辑距离 输入 NOTV LOVER ...

  3. homeassistant自动化记录ping追踪在家联动设备

    2022年8月29日修改代码块 进入hass的配置文件,docker版从portainer中查看配置情况 文件名configuration.yaml 下述添加到最后 # ping根据ip追踪手机 de ...

  4. Mac 使用远程 Ubuntu 机器进行时间备份

    设置 SMB 服务 首先在 Ubuntu 中配置 SMB 服务.可以参考 Ubuntu 设置 SMB 服务. 创建 APFS 磁盘映像 我们在 Ubuntu 上创建出的 SMB 共享文件夹可以用来存放 ...

  5. Redis过期策略以及Redis的内存淘汰机制

    此篇介绍了Redis过期策略以及Redis的内存淘汰机制,从内存淘汰的8种策略,如何开启内存淘汰策略到如何选择合适的淘汰策略,对Redis的内存淘汰机制做了全方位的阐述 如何高效的使用内存对于redi ...

  6. c++ push_back()和emplace_back()区别

    c++ push_back()和emplace_back()区别 References C++中push_back和emplace_back的区别 push_back v.s. emplace_bac ...

  7. Let's Encrypt Free SSL – Certify The Web

    介绍 随着 Let's Encrypt 的普及. 现在为网站升级到 HTTPS 已经不需要付费了. Let's Encrypt 的 SSL 是免费的, 每 3 个月需要更新一次. 可以完全用 API ...

  8. 算法学习-Dancing Links X

    Dancing Links X 舞蹈链. 实质为用循环十字链在图上将所有"1"的位置链起来 构造较为巧妙,且极易理解,本题为 DLX 模板(精确覆盖问题) DLX 算法的题目做法一 ...

  9. 补天云全网独有技术和唯一实用工具:QT6框架QML源码保护工具应用 QML和JavaScript源码隐藏工具

    如何保护和隐藏你的QT应用中的QML源代码?补天云全网独有技术和唯一实用工具:QT6框架QML源码保护工具应用 QML和JavaScript源码隐藏工具 简介 在通常的QT QML应用程序中,QML语 ...

  10. 智能化IT运维平台建设方案,基于智和信通运维体系的高敏捷二次开发

    随着企业信息进程不断加速,运维人员需要面对越来越复杂的业务和越来越多样化的用户需求,不断扩展的应用需要越来越合理的模式.越来越智能的工具来保障运维能灵活便捷.安全稳定地开展.企业网络规模的不断扩大,从 ...