强化学习原理入门-1绪论

1 绪论

1.1 这是一本什么书

强化学习算法?

AlphaGo大胜世界围棋冠军李世石和柯洁事件,核心算法就用到了强化学习算法

1.2 强化学习解决什么问题

案例1 非线性系统二级倒立摆

案例2 AlphaGo与柯洁的第二局棋

案例3 机器人学习站立

......

智能决策问题==强化学习要解决的问题,更准确的是序贯决策问题(即需要连续不断地做出决策,才能实现最终目标的问题)

1.3 强化学习如何解决问题

强化学习解决序贯决策问题监督学习解决智能感知问题

1. 监督学习

最典型的例子是数字手写体识别,当给出手写数字时,监督学习需要判别该数字是多少。也就是说,监督学习需要感知到当前的输入到底长什么样子,当智能体感知到输入长什么样子时,智能体就可以对它进行分类了。智能感知其实就是在学习输入长得像什么(特征),以及与该长相一一对应得是什么(标签)。所以,智能感知必不可少的前提是需要大量长相差异化的输入以及输入相关的标签。因此,监督学习解决问题的方法就是输入大量带有标签的数据,让智能体从中学到输入的抽象特征并分类。

2.强化学习

强化学习要解决的是序贯决策问题,它不关心输入长什么样子,只关心当前输入下应该采取什么动作才能实现最终的目标。(当前采用什么动作与最终的目标有关。)

这就需要智能体不断地与环境进行交互。智能体通过动作与环境进行交互时,环境会返给智能体一个当前的回报,智能体则根据当前的回报评估所采取的动作,有利于实现目标的动作被保留,不利于实现目标的动作被衰减。

3.强化学习和监督学习的异同

同:两者都需要大量的数据进行训练

异:但两者所需要的数据类型不同。监督学习需要的是多样化的标签数据,强化学习需要的是带有回报的交互数据

4.强化学习算法获取数据

有自己的获取数据、利用数据的独特方法。

5.强化学习算法的发展历史

两个关键的时间点

(1)1998年,Richard S. Sutton出版了他的强化学习导论第一版

(2)2013年,DeepMind提出来了DQN(Deep Q Network),将深度网络与强化学习算法结合形成强化深度学习。2013年之后,随着深度学习的火热,深度强化学习也越来越引起大家的注意。特别的,2016和2017年,谷歌的AlphaGo连续两年击败世界围棋冠军。

1.4 强化学习算法分类

强化学习算法种类繁多,一般按以下几个标准来分类

(1)根据是否依赖模型:基于模型的强化学习算法、无模型的强化学习算法。

共同点是通过环境交互获得数据,不同点是利用数据的方式不同。基于模型的强化学习算法利用与环境交互得到的数据学习系统或者环境模型,再基于模型进行序贯决策。无模型的强化学习算法则是直接利用环境交互获得的数据改善自身的行为。

两种方法各有优劣。基于模型的比无模型的算法效率更高,因为智能体在探索环境时可以利用模型信息。但是,有些无法建立模型的只能选后者。无模型的不需要建模,因此相较于有模型的,更具有通用性。

(2)根据策略的更新和学习方法:基于值函数的强化学习算法、基于直接策略搜索的强化学习算法、AC算法。

基于值函数的强化学习算法:指学习值函数,最终的策略根据根据值函数贪婪得到。也就是说,任意状态下,值函数最大的动作为当前最优策略。

基于直接策略搜索的强化学习算法:一般是将策略参数化,学习实现目标的最优参数。

AC算法:联合使用前两种方法。

(3)根据环境返回的回报函数是否已知:正向强化学习和逆向强化学习。

在强化学习中,回报函数是人为指定的,回报函数指定的强化学习算法是正向强化学习。很多时候,回报无法人为指定,如无人机的特效表演,这时可以通过机器学习的方法由函数自己学出来回报。

机器学习常被分为:监督学习、非监督学习和强化学习。

1.5 强化学习仿真环境构建

学习算法的共同点是从数据中学习,因此数据是学习算法最基本的组成元素。监督学习的数据独立于算法本身。而强化学习的数据是智能体与环境的交互数据。

仿真环境必备的两个要素是物理引擎和图像引擎。

1.物理引擎

用来计算仿真环境中物体是如何运动的,其背后的原理是物理定律,如刚体动力学、流体力学、柔性体动力学等。

常用的开源的物理引擎有ODE(open Dynamisc Engine)、Bullet 、Physx等。

2.图像引擎

用来显示仿真环境中的物体,包括绘图、渲染等。

常用的图像引擎大都基于OpenGL(Open Graphics Library)

学习中,使用的仿真环境是openAI 的gym.

https://github.com/openai/gym

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/38693.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据库被后台爆破如何解决?

在数字化时代,数据库安全成为企业与组织不容忽视的关键环节。其中,“后台爆破”攻击,即通过自动化工具尝试大量的用户名和密码组合,以非法获取数据库访问权限,是常见的安全威胁之一。本文将详细介绍如何识别、防御并解…

websocket使用,spring boot + vite + vue3

websocket使用,spring boot vite vue3 Websocket是什么WebSocket 服务端构建websocket 服务实现处理器pom文件 客户端仓库地址 Websocket是什么 WebSocket 是一种网络传输协议,可在单个 TCP 连接上进行全双工通信,位于 OSI 模型的应用层。…

沙箱在“一机两用”新规下的价值体现

在数字化时代,随着企业信息化建设的深入,数据安全问题愈发凸显其重要性。一机两用新规的出台,旨在通过技术创新和管理手段,实现终端设备的安全可控,确保敏感数据的安全存储与传输。SDC沙箱技术作为一种创新的安全防护手…

springcloud-config服务器,同样的配置在linux环境下不生效

原本在windows下能争取的获取远程配置但是部署到linux上死活都没有内容,然后开始了远程调试,这里顺带讲解下获取配置文件如果使用的是Git源,config service是如何响应接口并返回配置信息的。先说问题,我的服务名原本是abc-abc-abc…

图像基础知识入门【图像概念不同图像格式】

图像基础知识入门【图像概念&不同图像格式】 最近有在处理图像转换,因此稍微补足了一下图像相关知识,特在此记录。下面汇总是我根据自己理解和网上查阅资料而来。如有错误,欢迎大家指正。 1 基础概念 像素/分辨率 像素(Pixel)&#xff…

高德定位获取详细位置失败的处理方法

在使用高德地图定位功能获取位置信息有时候会获取详细位置失败,但是经纬度是有的,这种情况下怎么处理呢,可以使用逆地理编码通过返回的经纬度来再次获取位置信息,如果再次失败那么获取详细位置信息就失败了。 具体工具类如下: package com.demo.map.utils;import androi…

如何实现电子签名签章功能?

随着技术的发展,传统的纸质合同签署方式逐渐暴露出效率低下、存储不便和安全性不足等问题。为了解决这些问题,电子签署服务为用户提供了一个安全、高效、环保的合同管理解决方案。 电子合同管理与签署平台的核心功能 1、用户管理:平台提供用…

怎么永久禁止win10系统自动更新?一键屏蔽系统自动更新

现在 Windows 10 系统是很多办公用户的主力操作系统,可是 Windows 系统会自动更新,这会严重影响系统稳定性。因为微软虽然以提供更新为服务,但并不是每次更新它都是安全的。 接下来和我一起看看如何使用联想开发的小工具一键屏蔽系统自动更新…

MQTT协议详述

MQTT 概述 消息队列遥测传输(英语:Message Queuing Telemetry Transport,缩写:MQTT),是基于发布(Publish)/订阅(Subscribe)范式的消息协议,位于…

为什么80%的码农都做不了架构师?

文章目录 一、技术广度和深度的要求1.1 技术广度1.2 技术深度 二、全局视角和系统思维2.1 全局视角2.2 系统思维 三、沟通能力和团队合作3.1 沟通能力3.2 团队合作 四、业务理解和需求分析4.1 业务理解4.2 需求分析 五、持续学习和创新能力5.1 持续学习5.2 创新能力 六、总结 &…

【UML用户指南】-25-对高级行为建模-时间和空间

目录 1、概念 2、时间 3、位置 4、常用建模技术 4.1、对定时约束建模 4.2、对对象的分布建模 分布式系统是这样一个系统,它的构件可以物理地分布在各个结点上。 为了表达对实时系统和分布式系统建模的需要,UML 提供了定时标记、时间表达式、定时约…

抛弃 Neofetch?众多优秀替代方案等你体验!

目录 抛弃 Neofetch?众多优秀替代方案等你体验Neofetch 的替代品FastfetchscreenFetchmacchina 抛弃 Neofetch?众多优秀替代方案等你体验 NeoFetch 是用 Bash 3.2 编写的命令行系统信息工具,该项目的主要开发人员已将 GitHub 存储库存档&…

【PythonWeb开发】Flask连接数据库以及执行数据迁移

一、连接数据库 在Flask中可以使用 Flask-SQLAlchemy 扩展来连接数据库。如果你选择不同的数据库或 ORM,初始化和配置的方式可能会有所不同。下面给出三种常见数据库的连接示例: (1)连接MySQL数据库 使用Flask-SQLAlchemy即可实现…

民生银行收大额罚单:信用卡中心一同被罚,管理层如何施救?

民生银行的2024年,再添变故。 近日,国家金融监管总局宁波分局公布了数则行政处罚信息公开表。内容显示,民生银行(SH:600016、HK:01988)宁波分行、民生银行信用卡中心宁波分中心因多项违法违规事实,共计被处…

企业何时部署冗余链路预防网络故障

部署冗余链路保障企业网络的稳定性和可用性,是确保业务连续性的关键。然而,部署冗余链路(备线)确实会带来额外的成本。因此,企业必须在冗余链路的成本和潜在的业务中断损失之间做出权衡。 部署冗余链路的必要性 1. 当…

rust嵌入式,从svd到代码

在不使用embassy库的情况下, 这个嵌入式教学 讲的比较好. 大概思路就是 安装必要工具 probe-rs-tools , svd2rust下载svd 对于stm32 在这里: 官方svd根据工具生成自己的库自己再拉个库用上面的库. 问题是什么,坑太多,反正我跟着走了一遍,没通. 其实,2024年这套不用看了,图简…

JVM原理(八):JVM虚拟机工具之基础故障工具

这里主要介绍监视虚拟机运行状态和进行故障处理的工具 1. jsp:虚拟机进程状况工具 jsp命令格式: jsp [options] [hostid] jps远程查询虚拟机进程状态 2. jstat:虚拟机统计信息监视工具 jstat命令格式: jstat [option vmid [interval [s|ms] [count]…

antd vue a-select 下拉框模糊查询失效解决方法

我原以为这是一个简单的配置,写上就好了,没想到竟然无法搜索,原因是antd下拉框模糊搜索(show-search)是默认按照value字段来查询的,但是一般我们的都是需要按照label这个属性来查询的。简单点按照我下面标红…

LP-SCADA系统在智能制造中的作用是什么?

在企业思考如何提升产线自动化时,往往考虑到的都是从硬件设备下手,但其实作为“大脑”存在的软件系统更是必不可少,尤其是当产线中的自动化设备越来越多,产生的数据也越来越多,大量数据需要人工进行整理时,…