强化学习笔记总结(结合论文)

news2025/6/2 6:19:55

本篇博客参考来自大佬的开源书籍,结合自己的思考,写了这一篇总结,帮助大家学习了解强化学习的基础知识

文章目录

  • 强化学习
    • 特点
      • 定义
    • 强化学习应用实例
    • 强化学习和监督式学习、非监督式学习分类
      • 强化学习和监督式学习的区别:
      • 强化学习和非监督式学习的区别:
    • 强化学习主要有哪些算法?
    • 深度迁移强化学习算法
    • 分层深度强化学习算法
    • 深度记忆强化学习算法
    • 多智能体深度强化学习算法
    • 强化学习开源框架(结合开源社区)
    • 深度强化学习算法小结
    • 小结

强化学习

特点

许多机器学习算法中的学习器,学的都是直接去做某事的方法。而强化学习(RL)不同,它是通过尝试来学习在特定情况下选择哪种行动能获得最大回报。
强化学习有以下三个关键特点:
它基本是以闭环形式进行的。也就是说,学习过程是一个循环,当前的行动会影响后续的状态,而后续的状态又会影响下一步的行动和回报,相互关联、环环相扣。
强化学习不会直接告诉你该选择哪种行动。它不像有些方法直接给出明确的行动指令,而是让学习器自己在尝试过程中去摸索不同行动带来的后果。
一系列的行动和奖励信号会对之后较长一段时间产生影响。当前的行动不仅会影响当下的回报,还会改变之后所处的状态,进而影响后续一系列的回报情况,这种影响具有持续性和长期性。

定义

强化学习是机器学习领域中非常重要的一种方法,它结合了多个学科和领域的知识。其核心在于解决决策问题,也就是如何做出一系列自动决策。
强化学习主要有四个基本要素:智能体(agent)、环境状态(如所处位置、周围物体等)、行动(如移动、转弯等)、以及奖励。强化学习的目标很简单,就是要获得最多的累计奖励。
为了便于理解,这里有几个形象的例子:
想象一个小孩子在学习走路。在会走之前,他需要先站起来,然后保持平衡。接下来,他还得决定先迈出左腿还是右腿,每迈出一步后,又要为下一步做准备。在这个过程中,孩子就是智能体,他试图通过行走(采取行动)来操纵环境(行走的表面)。他每走一步,就从一个状态转变到另一个状态。当他成功走几步时,会得到奖励,比如吃巧克力。如果他没有成功走路,就没有奖励。
再比如,在自动驾驶汽车中,智能体就是汽车本身。汽车与周围环境(如道路、其他车辆等)相互作用,通过执行各种动作(如左转、右转、刹车等)来改变环境状态。
又比如说,在电子游戏中,智能体可以是你控制的游戏角色,比如马里奥。马里奥在游戏中的环境会不断变化(如出现小怪物或障碍物),他需要通过跳跃等动作来躲避这些障碍。每次他做出动作,都会影响环境,并获得相应的反馈。
强化学习的反馈有两种形式:正反馈(做得好,得到奖励)和负反馈(做得不好,受到惩罚)。智能体会根据这些反馈不断调整自己的决策,就像孩子在成长过程中逐渐学会分辨是非一样,通过不断学习和调整,智能体的决策会越来越好。

如果是自动驾驶,agent就是车;如果你玩游戏它就是你当前控制的游戏角色,如马里奥,马里奥往前走时环境就一直在发生变化,有小怪物或者障碍物出现,它需要通过跳跃来进行躲避,就是要做action(如向前走和跳起的动作);无人驾驶的action就是车左转、右转或刹车等等,它无时无刻都在与环境产生交互,action会反馈给环境,进而改变环境,如果自动驾驶的车行驶目标是100米,它向前开了10米,那环境就发生了变化,所以每次产生action都会导致环境改变,环境的改变会反馈给自身(agent),就是这样的一个循环;反馈又两种方式:
1、做的好(reward)即正反馈。
2、做得不好(punishment惩罚)即负反馈。Agent可能做得好,也可能做的不好,环境始终都会给它反馈,agent会尽量去做对自身有利的决策,通过反反复复这样的一个循环,agent会越来越做的好,就像孩子在成长过程中会逐渐明辨是非,这就是强化学习。

强化学习应用实例

(1)制造业:以日本的发那科公司(Fanuc)为例,其工厂里的机器人在拿起物体时,会将整个操作过程以视频形式记录下来。如果成功拿起物体,机器人就会记住这一系列的操作动作;如果失败了,它也会记住哪里出了问题。通过不断积累这些“经验”,下次机器人就能更快、更准确地完成拿起物体的动作。

(2)库存管理:库存管理常常面临诸多难题,像库存量庞大、需求波动大且难以预测,同时还存在补货速度跟不上等情况。这些问题使得库存管理变得相当棘手。不过,利用强化学习算法,可以有效缩短库存周转时间,提高仓库的空间利用率。

(3)动态定价:强化学习中的 Q-learning 算法能够很好地应用于动态定价问题。例如,电商平台可以根据市场供需变化、竞争对手价格波动以及消费者购买行为等多种因素,实时调整商品价格,以实现利润最大化。

(4)客户配送:制造商在向客户运输货物时,既要满足客户的各种需求,又要降低整个配送车队的运营成本。借助多智能体系统和 Q-learning,可以优化配送路线和车辆调度,从而减少运输时间,同时还能减少所需车辆的数量,提高配送效率,降低成本。

强化学习和监督式学习、非监督式学习分类

在机器学习领域,我们比较熟悉的是监督式学习和非监督学习。除此之外,还有第三大类——强化学习。
总的来说,当前的机器学习算法主要分为三种类型:有监督的学习(Supervised Learning)、无监督的学习(Unsupervised Learning)以及强化学习(Reinforcement Learning)。

强化学习和监督式学习的区别:

监督学习就像你学习时有个导师在身边指导,告诉你什么是对的、什么是错的。但在一些实际问题里,比如下棋(像国际象棋、围棋),由于存在成千上万种可能的组合,导师不可能知道所有情况的结果。这时候,强化学习就派上用场了。
强化学习在没有现成答案(标签)的情况下,先尝试做些事情,然后根据结果的好坏来调整之前的行为,不断重复这个过程,算法就能学会在不同情况下选择合适的行为以获得最佳结果。
这就好比你有一只未训练的小狗,它把屋子弄乱时,你减少它的美味食物(惩罚);它表现好时,你就增加美味食物(奖励)。久而久之,小狗就会明白,弄乱客厅不是好行为。
两种学习方式都会建立起输入和输出之间的联系,但方式不同。监督学习是通过大量已知的输入 - 输出对来学习两者之间的关系,告诉算法特定输入对应的输出是什么。而强化学习则是通过反馈(奖励函数)来判断行为的好坏,学会在何种情境下采取何种行动能获得最大奖励。
此外,强化学习的反馈可能有延迟,有时需要经过多个步骤后才能知道之前某个选择的好坏。而监督学习中,如果算法做出了不好的选择,会立刻得到反馈。
强化学习面对的输入是不断变化的,因为算法的每一个行为都会影响下一次决策的输入环境。相比之下,监督学习的输入通常是独立同分布的,即彼此之间相对独立,且遵循相同的概率分布。
在强化学习中,智能体(agent)需要在探索(exploration)和利用(exploitation)之间找到平衡。探索是指尝试各种新行为,寻找可能比之前更好的选择;利用则是重复过去经验中最有效的行为。一般来说,监督学习算法不考虑这种平衡,更多地是倾向于利用已知的有效模式。

强化学习和非监督式学习的区别:

非监督式不是学习输入到输出的映射,而是模式。例如在向用户推荐新闻文章的任务中,非监督式会找到用户先前已经阅读过类似的文章并向他们推荐其一,而强化学习将通过向用户先推荐少量的新闻,并不断获得来自用户的反馈,最后构建用户可能会喜欢的文章的“知识图”。

对非监督学习来说,它通过对没有概念标记的训练例进行学习,以发现训练例中隐藏的结构性知识。这里的训练例的概念标记是不知道的,因此训练样本的歧义性最高。对强化学习来说,它通过对没有概念标记、但与一个延迟奖赏或效用(可视为延迟的概念标记)相关联的训练例进行学习,以获得某种从状态到行动的映射。这里本来没有概念标记的概
念,但延迟奖赏可被视为一种延迟概念标记,因此其训练样本的歧义性介于监督学习和非监督学习之间。

需要注意的是,监督学习和非监督学习从一开始就是相对的,而强化学习在提出时并没有从训练样本歧义性的角度考虑其与监督学习和非监督学习的区别,因此,一些早期的研究中把强化学习视为一种特殊的非监督学习。事实上,对强化学习的定位到目前仍然是有争议的,有的学者甚至认为它是与“从例子中学习”同一级别的概念。

从训练样本歧义性角度进行的分类体系,在近几年可望有一些扩展,例如多示例学习(multi-instancelearning)等从训练样本歧义性方面来看很特殊的新的学习框架有可能会进入该体系。但到目前为止,没有任何新的框架得到了公认的地位。另外,半监督学习(semi-supervisedlearning)也有一定希望,它的障碍是半监督学习中的歧义性并不是与生俱来的,而是人为的,即用户期望用未标记的样本来辅助对已标记样本的学习。这与监督学习、非监督学习、强化学习等天生的歧义性完全不同。半监督学习中人为的歧义性在解决工程问题上是需要的、有用的(对大量样本进行标记的代价可能是极为昂贵的),但可能不太会导致方法学或对学习问题视点的大的改变。

强化学习和前二者的本质区别:没有前两者具有的明确数据概念,它不知道结果,只有目标。数据概念就是大量的数据,有监督学习、无监督学习需要大量数据去训练优化你建立的模型,就像猫狗识别,用n多张猫狗图片去训练模型,经过训练优化后,你用一张崭新的猫狗图片让模型作出判断,这个模型就知道是猫还是狗。

强化学习主要有哪些算法?

** 强化学习(Reinforcement Learning, RL)**的神奇之处在于,它不需要别人告诉它该怎么做(也就是不需要监督信号)。它就像一个勇敢的小探险家,在一个未知的环境中自己去摸索,一边探索新路径,一边利用已有的经验,找到获得最大奖励的方法。
目前,强化学习的主流算法主要有以下几种:

蒙特卡罗强化学习(Monte Carlo, MC):
特点:蒙特卡罗方法通过完整的回合结束后的经验来进行学习,它需要等到整个回合结束才能更新策略,利用完整的回报序列来估计期望回报,就像你打完一整局游戏后才会知道自己哪里做得对、哪里错了。
优势:它简单直观,易于理解和实现,而且基于完整的回合数据进行更新,能更准确地评估策略的长期效果。
适用场景:适用于回合制、需要完整的策略评估才能优化的任务,比如下棋等棋类游戏。

时间差分(Temporal Difference, TD)学习
特点:时间差分学习结合了蒙特卡罗方法的采样和动态规划的迭代思想,不需要等回合结束,而是通过逐步更新的方式来估计期望回报,这样的更新方式在策略优化过程中能更快地做出调整。
优势:在策略学习过程中可以及时更新和调整策略,不需要等待回合结束,具有更强的实时性,能够更快速地对环境变化做出反应。
适用场景:适用于实时性要求较高的任务,比如机器人控制、实时决策等。

策略梯度(Policy Gradient, PG)方法:
特点:策略梯度方法通过直接优化策略参数,使得策略能够尽可能地选择高回报的行为。它直接在策略空间中进行更新,以提升策略的性能,就像直接改进操作指南一样。
优势:可以处理高维连续动作空间,能自然地处理具有连续动作的问题,相比基于价值的方法,在某些情况下具有更好的性能,尤其是在动作空间复杂且连续的情况下。
适用场景:适用于动作空间连续的任务,比如机器人运动控制、自动驾驶汽车等。

深度强化学习算法:
深度强化学习是强化学习和深度学习的结合体,它利用深度神经网络来处理复杂的输入(如图像、高维状态等)

深度 Q 网络(Deep Q-Network, DQN):
特点:DQN 使用深度神经网络来近似 Q 值函数,它通过将高维输入(如图像)映射到 Q 值来指导策略选择,使得智能体能够处理复杂的视觉输入并做出决策。
优势:能够处理高维、复杂的状态空间,如图像输入,将强化学习与深度学习结合,为处理复杂视觉任务提供了强大的工具。
适用场景:适用于游戏、机器人视觉控制等需要处理视觉输入的任务。

策略梯度网络(Policy Gradient Network, PGN):
特点:PGN 也是基于深度神经网络的策略梯度方法,通过网络直接输出策略的参数,对策略进行优化,以提高智能体在环境中的表现。
优势:可以处理复杂的策略优化问题,尤其在策略空间复杂或动作空间连续的情况下,具有很好的适用性。
适用场景:适用于机器人控制、自动驾驶等需要复杂决策的场景。

演员 - 批判家网络(Actor-Critic Network, ACN):
特点:ACN 由两个部分组成:演员(actor)负责选择动作,而批判家(critic)则评估演员选择的动作的好坏。通过两者的相互作用和协同学习来优化策略,实现了策略选择和策略评估的结合。
优势:结合了策略梯度和价值函数估计的优点,既能有效地更新策略,又能对策略进行准确的评估,提高了学习效率。
适用场景:适用于实时决策、策略优化等任务,如机器人控制、游戏等。
除了上述算法之外,还有深度迁移强化学习、分层深度强化学习、深度记忆强化学习以及多智能体强化学习等算法:

深度迁移强化学习(Deep Transfer Reinforcement Learning, DTRL)
特点:DTRL 试图将已有的知识从一个或多个源任务中迁移过来,以加速目标任务的学习,通过迁移学习的方法,利用已有的数据或经验来提高学习效率,减少新的数据需求。
优势:可以有效利用已有的知识资源,减少从零开始学习的困难和数据需求,对于数据稀缺或新任务学习困难的情况具有重要意义。
适用场景:适用于新任务与已有任务存在相似之处的情况,如机器人在不同环境中的任务迁移、游戏中的策略迁移等。

分层深度强化学习(Hierarchical Deep Reinforcement Learning, H-DRL)
特点:H-DRL 将任务分解为多个层次,每个层次负责不同粒度的决策,高层次的决策模块负责制定宏观的策略,而低层次的模块则负责具体的动作执行,通过分层的方式提高学习效率和策略的可扩展性。
优势:能够处理复杂的任务结构,将复杂任务分解为多个子任务,便于管理,同时提高了策略的通用性和可迁移性。
适用场景:适用于具有复杂任务结构的场景,如机器人多阶段操作任务、复杂的决策流程等。
深度记忆强化学习(Deep Memory Reinforcement Learning, DMRL)
特点:DMRL 强调智能体对过去的记忆和经验的利用,通过存储和回忆过去的经验来指导当前的决策,增强智能体的记忆能力和决策的深度。
优势:可以更好地处理序列决策问题,考虑到历史状态和动作对当前决策的影响,提高决策的准确性和合理性。
适用场景:适用于需要考虑历史信息的任务,如对话系统、时间序列预测等。

多智能体强化学习(Multi-Agent Reinforcement Learning, MARL)
特点:MARL 涉及多个智能体在同一个环境中互动和学习,智能体之间可以相互合作、竞争或协作,通过多智能体的相互作用来提高整体系统的性能。
优势:可以模拟复杂的多智能体系统中的交互行为,提高系统的适应性和鲁棒性,实现更复杂的社会智能。
适用场景:适用于需要多个智能体协同工作的场景,如多机器人协作、智能交通系统等。

深度迁移强化学习算法

传统深度强化学习算法有个局限,就是一次只能搞定一种游戏任务,没办法在一次训练里完成多种任务。不过,迁移学习和强化学习结合后,这个情况就有望改善啦。以下是几种有代表性的深度迁移强化学习算法:

基于行为模仿的算法:
Parisotto 等人提出了一种基于行为模拟的算法。这个算法的要点在于,利用监督信号来指导,让一个策略网络学会各自的策略,并且能把学到的知识迁移到新任务中去。

策略蒸馏算法:
Rusu 等人搞出了策略蒸馏算法,里面有学习网络和指导网络。这个算法通过计算两个网络 Q 值的偏差来确定目标函数,引导学习网络去靠近指导网络的值函数空间。

渐进神经网络(PNN)算法:
还是 Rusu 等人,他们又提出了一种基于 PNN 的算法。PNN 的特点是把神经网络连起来,在一系列序列任务中,用渐进的方式存储知识、提取特征,实现知识迁移。它能训练多个独立任务,迁移知识的同时,还避免了灾难性遗忘。

路径网络(PathNet)算法:
Fernando 等人弄出了 PathNet,这可以看作是 PNN 的升级版。PathNet 把网络每一层都当模块,像搭积木一样复用。它把智能体嵌入神经网络,智能体的任务是为新任务找网络里能复用的部分。智能体其实就是网络里的路径,决定了反向传播时哪些参数被使用和更新。在 Atari 强化学习任务上,PathNet 实现了正迁移,说明它在训练神经网络方面有通用应用能力,还能提高 A3C 算法超参数选择的鲁棒性。

分层深度强化学习算法

分层强化学习可以将最终目标分解为多个子任务来学习层次化的策略, 并通过组合多个子任务的策略形成有效的全局策略. Kulkarni等提出了分层DQN(hierarchical deep Q-network, h–DQN) 算法. h–DQN基于时空抽象和内在激励分层, 通过在不同的时空尺度上设置子目标对值函数进行层次化处理. 顶层的值函数用于确定宏观决策, 底层的值函数用于确定具体行动.Krishnamurthy等在h–DQN的基础上提出了基于内部选择的分层深度强化学习算法. 该模型结合时空抽象和深度神经网络, 自动地完成子目标的学习, 避免了特定的内在激励和人工设定中间目标,加速了智能体的学习进程, 同时也增强了模型的泛化能力. Kulkarni等基于后续状态表示法提出了深度后续强化学习(deep successor reinforcement learning,DSRL).DSRL通过阶段性地分解子目标和学习子目标策略, 增强了对未知状态空间的探索, 使得智能体更加适应那些存在延迟反馈的任务.Vezhnevets等受封建(feudal)强化学习算法的启发, 提出一种分层深度强化学习的架构FeUdal网络(FuNs)[49]. FuNs框架使用一个管理员模块和一个工人模块. 管理员模块在较低的时间分辨率下工作, 设置抽象目标并传递给工人模块去执行. FuNs框架创造了一个稳定的自然层次结构, 并且允许两个模块以互补的方式学习. 实验证明, FuNs有助于处理长期信用分配和记忆任务,在Atari视频游戏和迷宫游戏中都取得了不错的效果。

深度记忆强化学习算法

传统的深度强化学习模型不具备记忆、认知、推理等高层次的能力, 尤其是在面对状态部分可观察和延迟奖赏的情形时. Junhyuk等通过在传统的深度强化学习模型中加入外部的记忆网络部件和反馈控制机制, 提出反馈递归记忆Q网络(feedback recurrent memory Q-network, FRMQN)). FRMQN模型具备了一定的记忆与推理功能, 通过反馈控制机制,FRMQN整合过去存储的有价值的记忆和当前时刻的上下文状态, 评估动作值函数并做出决策. FRMQN初步模拟了人类的主动认知与推理能力, 并完成了一些高层次的认知任务. 在一些未经过训练的任务中,FRMQN模型表现出了很强的泛化能力.Blundell等设计出一种模型无关的情节控制算法(model-free episode control, MFEC). MFEC可以快速存储和回放状态转移序列, 并将回放的序列整合到结构化知识系统中, 使得智能体在面对一些复杂的决策任务时, 能快速达到人类玩家的水平.MFEC通过反向经验回放, 使智能体拥有初步的情节记忆. 实验表明, 基于MFEC算法的深度强化学习不仅可以在Atari游戏中学习到有效策略, 还可以处理一些三维场景的复杂任务. Pritzel等在MFEC的基础上进一步提出了神经情节控制(neural episodic control, NEC),有效提高了深度强化学习智能体的记忆能力和学习效率[53]. NEC能快速吸收新经验并依据新经验来采取行动. 价值函数包括价值函数渐变状态表示和价值函数快速更新估计两部分. 大量场景下的研究表明,NEC的学习速度明显快于目前最先进的通用深度强化学习智能体.

多智能体深度强化学习算法

在一些复杂场景中, 涉及到多智能体的感知决策问题, 这时需要将单一模型扩展为多个智能体之间相互合作、通信及竞争的多智能体深度强化学习系统.Foerster等提出了一种称为分布式深度递归Q网络(deep distributed recurrent Q-networks, DDRQN) 的模型, 解决了状态部分可观测状态下的多智能体通信与合作的挑战性难题[54]. 实验表明, 经过训练的DDRQN模型最终在多智能体之间达成了一致的通信协1536 控制理论与应用第34 卷议, 成功解决了经典的红蓝帽子问题.让智能体学会合作与竞争一直以来都是人工智能领域内的一项重要研究课题, 也是实现通用人工智能的必要条件. Lowe等提出了一种用于合作–竞争混合环境的多智能体actor-critic 算法(multi-agent deepdeterministic policy gradient, MADDPG)[55]. MADDPG对DDPG强化学习算法进行了延伸, 可实现多智能体的集中式学习和分布式执行, 让智能体学习彼此合作和竞争. 在多项测试任务中, MADDPG的表现都优于DDPG.

强化学习开源框架(结合开源社区)

谷歌TensorFlow Agents —TensorFlow的加强版,它提供许多工具,通过强化学习可以实现各类智能应用程序的构建与训练。这个框架能够将OpoenAI Gym接口扩展至多个并行环境,并允许各代理立足TensorFlow之内实现以执行批量计算。其面向OpoenAI Gy环境的批量化接口可与TensorFlow实现全面集成,从而高效执行各类算法。该框架还结合有BatchPPO,一套经过优化的近端策略优化算法实现方案。其核心组件包括一个环境打包器,用于在外部过程中构建OpenAI Gym环境; 一套批量集成,用于实现TensorFlow图步并以强化学习运算的方式重置函数; 外加用于将TensorFlow图形批处理流程与强化学习算法纳入训练特内单一却步的组件。

Roboschool:Roboschool 提供开源软件以通过强化学习构建并训练机器人模拟。其有助于在同一环境当中对多个代理进行强化学习训练。通过多方训练机制,您可以训练同一代理分别作为两方玩家(因此能够自我对抗)、使用相同算法训练两套代理,或者设置两种算法进行彼此对抗。Roboschool由OpenAI开发完成,这一非营利性组织的背后赞助者包括Elon Musk、Sam Altman、Reid Hoffman以及Peter Thiel。其与OpenAI Gym相集成,后者是一套用于开发及评估强化学习算法的开源工具集。OpenAI Gym与TensorFlow、Theano以及其它多种深度学习库相兼容。OpenAI Gym当中包含用于数值计算、游戏以及物理引擎的相关代码。Roboschool基于Bullet物理引擎,这是一套开源许可物理库,并被其它多种仿真软件——例如Gazebo与Virtual Robot Experimentation Platform(简称V-REP)所广泛使用。其中包含多种强化学习算法,具体以怨报德 异步深度强化学习方法、Actor-Critic with Experience Replay、Actor- Critic using Kronecker-Factored Trust Region、深度确定性策略梯度、近端策略优化以及信任域策略优化等等。

Coach:英特尔公司的开源强化学习框架,可以对游戏、机器人以及其它基于代理的智能应用进行智能代理的建模、训练与评估。Coach 提供一套模块化沙箱、可复用组件以及用于组合新强化学习算法并在多种应用领域内训练新智能应用的Python API。该框架利用OpenAI Gym作为主工具,负责与不同强化学习环境进行交换。其还支持其它外部扩展,具体包括Roboschool、gym-extensions、PyBullet以及ViZDoom。Coach的环境打包器允许用户向其中添加自定义强化学习环境,从而解决其它学习问题。该框架能够在桌面计算机上高效训练强化学习代理,并利用多核CPU处理相关任务。其能够为一部分强化学习算法提供单线程与多线程实现能力,包括异步优势Actor-Critic、深度确定性策略梯度、近端策略优化、直接未来预测以及规范化优势函数。所有算法皆利用面向英特尔系统作出优化的TensorFLow完成,其中部分算法亦适用于英特尔的Neon深度学习框架。Coach 当中包含多种强化学习代理实现方案,具体包括从单线程实现到多线程实现的转换。其能够开发出支持单与多工作程序(同步或异步)强化学习实现方法的新代理。此外,其还支持连续与离散操作空间,以及视觉观察空间或仅包含原始测量指标的观察空间。

深度强化学习算法小结

在离散状态和离散动作的控制任务里,基于值函数的 DQN 算法及其扩展算法,表现已经很出色了。但是因为值函数输出是离散型的,在连续型控制任务上,它就有点力不从心啦。
而基于策略梯度概念的算法,像 DDPG、TRPO 这些策略型深度强化学习算法,就更适合处理连续状态空间和连续动作输出的控制任务。它们不仅适合连续任务,而且在稳定性和可靠性方面,有一定的理论保证,理论完备性很强。
还有采用演员 - 批判家架构的 A3C 算法及其扩展算法。跟传统的 DQN 算法相比,A3C 这类算法在数据利用效率、学习速率、通用性、可扩展应用性等方面都更有优势,性能表现也更优。不过,它的稳定性就没办法保证啦。
现在,深度迁移强化学习、分层深度强化学习、深度记忆强化学习和多智能体深度强化学习等算法,都是研究热点。这些算法可以应对更复杂的场景、系统和控制任务,是深度强化学习算法研究的前沿领域。
所以,展望未来,人工智能开发者们需要努力掌握上述这些框架和强化学习算法。同时,还要加强对多智能体强化学习架构的理解,因为很多框架都用了很多前沿的博弈论研究成果。而且,深度强化学习知识也是必须熟悉的呀。

小结

我们简单的了解了一下强化学习的一些基础知识,相信你们都对强化学习又饿一定的了解。展望未来,人工智能开发者们需要尽可能掌握上述框架以及其中所使用的各类强化学习算法。此外,还需要强化自身对于多代理强化学习架构的理解,因为其中多种框架都大量利用前沿博弈论研究成果。最后,还需要熟悉深度强化学习知识。

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

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

相关文章

基于stm32的多旋翼无人机(Multi-rotor UAV based on stm32)

由于一直在调试本项目,好久没有发文章,最近本项目的PID调试初见成效!开始正文前首先感谢各位粉丝的支持,以及对本项目技术上支持的老师以及师兄,谢谢你们! 对应源码及文件:源码及文件下载 基于…

实验分享|基于sCMOS相机科学成像技术的耐高温航空涂层材料损伤检测实验

1实验背景 航空发动机外壳的耐高温涂层材料在长期高温、高压工况下易产生微小损伤与裂纹,可能导致严重安全隐患。传统光学检测手段受限于分辨率与灵敏度,难以捕捉微米级缺陷,且检测效率低下。 某高校航空材料实验室,采用科学相机…

RAG混合检索:倒数秩融合RRF算法

文章目录 检索增强生成 (RAG)倒数秩融合在 RAG 中的工作原理RRF 背后的数学直觉检索增强生成 (RAG) RAG 是自然语言处理中的一种强大技术,结合了基于检索的模型和生成模型的优势。 如果检索器未能从检索器中获取相关文档,则精度较低,幻觉的可能性会增加。 有些查询适合…

2011肠衣问题

1 D类竞赛题目---具体题目 D题 天然肠衣搭配问题 天然肠衣(以下简称肠衣)制作加工是我国的一个传统产业,出口量占世界首位。肠衣经过清洗整理后被分割成长度不等的小段(原料),进入组装工序。 传统的生产…

RG3000网关构建5G LAN智慧工厂智能制造

在工业4.0与智能制造的趋势下,传统制造业正前后往智慧工厂转型升级。在转型过程中,高效、稳定、灵活的网络通信是实现设备互联互通、数据实时交互与智能决策的基础。智联物联RG3000网关,凭借其融合5G通信技术、WiFi6无线传输、边缘计算能力与…

webrtc初了解

1. webrtc的简介 一、WebRTC 是什么? Web Real-Time Communication(网页实时通信),是浏览器原生支持的实时音视频通信技术,无需安装插件或客户端,可直接在浏览器之间实现点对点(P2P&#xff09…

[STM32学习笔记(九)]CubeMX项目使用系统定时器SysTick的中断服务函数进行定时

有很多文章说明了由于HAL_Delay()函数的本质是系统定时器计数,通过全局变量uwTick的不断增加实现的比较延迟。调用HAL_Delay()函数会阻塞其他工作,因此在外设ISR进程调用该延迟时,要特别小心。 因此,现在考虑,既然系统…

将ipynb文件转换为markdown格式文件

文章目录 将ipynb文件转换为markdown格式文件nbconvert 包安装nbconvert 使用 将ipynb文件转换为markdown格式文件 有时候,我们需要把Jupyter notebook的.ipynb格式文件转换为markdown格式.md,便于使用。 那么,我们可以通过安装nbconvert包&a…

Vulnhub_Zico2_wp

一、信息收集 1、主机发现 arp-scan -l 2、端口扫描 nmap -sS -sV 192.168.66.144 nmap -p- -Pn -sC -sV -n 192.168.66.144 whatweb -v 192.168.66.144 这里开放了3个端口,先80端口拿去目录,然后测试下22端口有没有什么未授权之类的,然后…

【玩转腾讯混元大模型】腾讯混元大模型AIGC系列产品深度体验

【玩转腾讯混元大模型】腾讯混元大模型AIGC系列产品深度体验 腾讯推出的系列AI产品:混元大模型、大模型图像创作引擎、大模型视频创作引擎、腾讯元宝,共同构成了一个强大的AI生态系统;凭借腾讯自研的大规模预训练技术和先进的自然语言处理、计…

Attention Is All You Need论文阅读笔记

Attention is All You Need是如今机器学习研究者必读的论文,该文章提出的Transformer架构是如今很多机器学习项目的基础,说该文章极大推动了机器学习领域的研究也不为过。 但这么重要,也是必读的文章对初学者来说其实并不友好,很多…

如何制作全景VR图?

全景VR图,特别是720度全景VR,为观众提供一种沉浸式体验。 全景VR图能够捕捉场景的全貌,还能将多个角度的图片或视频无缝拼接成一个完整的全景视角,让观众在虚拟环境中自由探索。随着虚拟现实(VR)技术的飞速…

Flask与PostgreSQL交互教程

目录 1. 项目结构2. 环境准备2.1 安装依赖2.2 使用Docker启动PostgreSQL 3. 数据库配置3.1 环境变量配置3.2 数据库连接配置 4. 定义数据库模型5. 实现API接口5.1 创建用户5.2 获取所有用户5.3 获取单个用户5.4 更新用户5.5 删除用户 6. 运行应用7. API测试7.1 创建用户7.2 获取…

XJTU-SY轴承振动数据集的json自封装

1.最终形式的形式 不用再去翻文档找对应的故障类型,采样率等信息了,所有的信息自包含在.json文件里,15个测试例,一个测试例对应一整个.json文件。 {"dataset": {"name": "XJTU-SY_Bearing_Datasets&quo…

Spring AI 系列2: Advisors增强器简介

一、Advisors简介 1.1 Advisors定义 Advisors 是在 AI 应用程序中处理请求和响应的拦截器。我们可以使用它们为提示流程设置额外的功能。例如,可以建立聊天历史、排除敏感词或为每个请求添加额外的上下文。 Spring AI的Advisor,本质上是一个拦截…

通过Func实现飞书应用通知消息加急处理

前言 在现代企业运作中,及时响应告警信息对保障系统的稳定性和业务的连续性至关重要。随着业务的数字化转型,越来越多的企业依赖于复杂的技术架构,这使得故障和异常事件的及时处理变得愈发重要。传统的告警通知方式往往存在响应不及时、信息…

【目标检测】【AAAI-2022】Anchor DETR

Anchor DETR: Query Design for Transformer-Based Object Detection 锚点DETR:基于Transformer的目标检测查询设计 论文链接 代码链接 摘要 在本文中,我们提出了一种基于Transformer的目标检测新型查询设计。此前的Transformer检测器中&am…

智慧工厂整体解决方案

该方案围绕智能工厂建设,阐述其基于工业 4.0 和数字化转型需求,通过物联网、大数据、人工智能等技术实现生产自动化、数据化管理及联网协同的特点。建设步骤包括评估现状、设定目标、制定方案、测试调整、实施计划及持续改进,需整合 MES、ERP 等软件系统与传感器、机器人等硬…

秋招Day12 - 计算机网络 - TCP

详细说一下TCP的三次握手机制 TCP的三次握手机制是为了在两个主机之间建立可靠的连接,这个机制确保两端的通信是同步的,并且在开始传输数据前,双方都做好了要通信的准备。 说说SYN的概念? SYN 是 TCP 协议中用来建立连接的一个标…

vueflow

自定义节点&#xff0c;自定义线&#xff0c;具体细节还未完善&#xff0c;实现效果&#xff1a; 1.安装vueflow 2.目录如下 3. index.vue <script setup> import { ref } from vue import { VueFlow, useVueFlow } from vue-flow/core import { Background } from vue-…