CN116663653A - 一种实现探索与利用平衡的智能体强化学习方法和装置 - Google Patents
一种实现探索与利用平衡的智能体强化学习方法和装置 Download PDFInfo
- Publication number
- CN116663653A CN116663653A CN202310559043.2A CN202310559043A CN116663653A CN 116663653 A CN116663653 A CN 116663653A CN 202310559043 A CN202310559043 A CN 202310559043A CN 116663653 A CN116663653 A CN 116663653A
- Authority
- CN
- China
- Prior art keywords
- operator
- agent
- state
- action
- exploration
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000002787 reinforcement Effects 0.000 title claims abstract description 79
- 238000000034 method Methods 0.000 title claims abstract description 59
- 230000009471 action Effects 0.000 claims abstract description 95
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 78
- 230000006870 function Effects 0.000 claims description 52
- 230000007704 transition Effects 0.000 claims description 22
- 238000004590 computer program Methods 0.000 claims description 10
- 230000006872 improvement Effects 0.000 claims description 7
- 238000010248 power generation Methods 0.000 claims description 7
- 238000010276 construction Methods 0.000 claims description 6
- 238000005457 optimization Methods 0.000 claims description 6
- 238000004891 communication Methods 0.000 description 8
- 230000008901 benefit Effects 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 238000010801 machine learning Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000010845 search algorithm Methods 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 101000963131 Homo sapiens Membralin Proteins 0.000 description 1
- 102100039605 Membralin Human genes 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000002485 combustion reaction Methods 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000005021 gait Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000007788 liquid Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000010355 oscillation Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/092—Reinforcement learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/27—Regression, e.g. linear or logistic regression
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Geophysics And Detection Of Objects (AREA)
Abstract
本发明提供一种实现探索与利用平衡的智能体强化学习方法和装置,包括:构建用于对经验回放池中成功经验进行学习利用的第一贝尔曼算子;构建用于探索未知状态的第二贝尔曼算子;根据第一贝尔曼算子和第二贝尔曼算子,生成探索与利用平衡的贝尔曼算子;利用探索与利用平衡的贝尔曼算子,改进动作家‑评论家算法;基于改进的动作家‑评论家算法,对智能体进行强化学习。本发明通过设计探索与利用平衡的贝尔曼算子来更加有效地解决动作家‑评论家算法中的探索利用平衡问题,从而提高了算法的样本效率和泛化性能,为真实场景的应用提供了可行的解决方案。
Description
技术领域
本发明涉及机器学习技术领域,尤其涉及一种实现探索与利用平衡的智能体强化学习方法和装置。
背景技术
强化学习(Reinforcement Learning,RL)是人工智能领域的一个重要分支,在实现智能决策的任务中具有广泛的应用。与传统的监督学习不同,强化学习主要关注在一个智能体与环境互动的过程中,如何通过不断地与环境进行交互、试错和学习,从而选择最优策略。在强化学习中,动作家-评论家(off-policy actor-critic)算法已经成为了一种广泛应用的算法,其主要通过使用一个动作家网络(actor)输出动作,再由一个评论家网络(critic)对该动作的质量进行评估,从而指导网络的学习。然而,这种算法在应用中还存在一些问题,其中最显著的问题就是探索利用平衡问题。
目前,为解决上述问题,研究人员提出了多种解决上述问题的探索算法,包括Vallian Bellman operator,bootstrapped DQN、count-based exploration和optimisticinitialization。然而,这些算法存在性能差的问题,具体为:Vallian Bellman operator在估计Q值时存在高估或低估的情况,导致算法的样本效率不佳。bootstrapped DQN、count-based exploration和optimistic initialization需要进行额外的假设,例如特定的环境假设或启发式算法等,难以在不同的场景中通用。此外,这些算法还存在真实场景应用能力差的问题,具体为:现有的off-policy actor-critic算法往往在理想化的场景下进行训练和测试,而实际应用场景中的复杂性和不确定性往往比理想情况下要高得多,这导致这些算法在实际应用中表现不佳,尤其是在真实场景下应用时,往往存在显著的泛化问题。
因此,需要更加高效且通用的探索利用平衡算法,以提高off-policy actor-critic算法的样本效率和泛化性能。
发明内容
本发明提供一种实现探索与利用平衡的智能体强化学习方法和装置,用于解决现有的探索利用平衡算法性能差和真实场景应用能力差的问题,通过设计探索与利用平衡的贝尔曼算子(BEE算子)来更加有效地解决动作家-评论家算法中的探索利用平衡问题,从而提高了算法的样本效率和泛化性能,为真实场景的应用提供了可行的解决方案。
第一方面,本发明提供一种实现探索与利用平衡的智能体强化学习方法,所述方法包括:
构建用于对经验回放池中成功经验进行学习利用的第一贝尔曼算子;
构建用于探索未知状态的第二贝尔曼算子;
根据所述第一贝尔曼算子和所述第二贝尔曼算子,生成探索与利用平衡的贝尔曼算子;
利用所述探索与利用平衡的贝尔曼算子,改进动作家-评论家算法;
基于改进的动作家-评论家算法,对智能体进行强化学习。
根据本发明提供的实现探索与利用平衡的智能体强化学习方法,所述经验回放池中的样本记录着状态转移信息“当前状态-动作-奖励-下一状态”;所述第一贝尔曼算子的表达式为:
其中,r(s,a)为智能体在状态s下执行动作a的奖励,γ为折旧因子,为智能体的动作集,μ(a′|s′)>0表征所述经验回放池中存在智能体在状态s′下执行动作a′的概率分布信息,p(s′|s,a)为智能体在状态s下执行动作a致使状态转移到s′的转移概率,Q(s′,a′)为智能体在状态s′下执行a′的价值函数,/>为利用所述第一贝尔曼算子计算的智能体在状态s下执行动作a的价值函数。根据本发明提供的实现探索与利用平衡的智能体强化学习方法,所述构建用于探索未知状态的第二贝尔曼算子,包括:
构建探索项w(s′,a′|π);其中,所述w(s′,a′|π)表征当前策略为π的情况下智能体在状态s′下执行动作a′的熵值,取值与在状态s′下执行动作a′的历史次数负相关;
基于所述探索项改进传统的贝尔曼算子,得到所述第二贝尔曼算子。
根据本发明提供的实现探索与利用平衡的智能体强化学习方法,所述第二贝尔曼算子的表达式为:
其中,r(s,a)为智能体在状态s下执行动作a的奖励,γ为折旧因子,p(s′|s,a)为智能体在状态s下执行动作a致使状态转移到s′的转移概率,π(a′|s′)为智能体当前策略为π时给定状态s′对应的a′的概率分布,Qπ(s′,a′)为当前策略为π的情况下智能体在状态s′下执行动作a′的价值函数,为利用所述第二贝尔曼算子计算的智能体在状态s下执行动作a的价值函数。
根据本发明提供的实现探索与利用平衡的智能体强化学习方法,所述探索与利用平衡的贝尔曼算子是所述第一贝尔曼算子和所述第二贝尔曼算子的加权和,表达式为:
上式中,λ为权重参数,为利用所述第一贝尔曼算子计算的智能体在状态s下执行动作a的价值函数,/>为利用所述第二贝尔曼算子计算的智能体在状态s下执行动作a的价值函数,/>为利用所述探索与利用平衡的贝尔曼算子计算的智能体在状态s下执行动作a的价值函数;
所述改进的动作家-评论家算法的表达式为:
动作家:
评论家:
上式中,为当前策略为πk且过往策略序列为μk的情况下智能体在状态s下执行动作a的价值函数,μk={π0,π1…πk-1},ω(s,a|πk)为当前策略为πk的情况下智能体在状态s下执行动作a的熵值,πk+1为第k+1轮迭代智能体的策略,/>为第k轮迭代时利用所述探索与利用平衡的贝尔曼算子计算的智能体在状态s下执行动作a的价值函数,Q(s,a)为由第k轮迭代时的评论家网络确定的智能体在状态s下执行动作a的价值函数,Qφ为评论家网络。根据本发明提供的实现探索与利用平衡的智能体强化学习方法,在决策得到所述当前策略πk之后,将所述当前策略πk对应的状态转移信息构成的样本回归到所述经验回归池中。
根据本发明提供的实现探索与利用平衡的智能体强化学习方法,所述基于改进的动作家-评论家算法,对智能体进行强化学习,包括:
对于所述智能体的任一应用场景,获取所述应用场景中所述智能体的当前状态以及当前经验回放池;
利用所述当前经验回放池和所述改进的动作家-评论家算法,对所述当前状态下的智能体进行策略的迭代优化学习,得到对应的最优策略;
其中,所述任一应用场景,包括:机器人控制应用场景、自动驾驶应用场景以及工业发电控制应用场景。
第二方面,本发明提供一种实现探索与利用平衡的智能体强化学习装置,所述装置包括;
第一构建模块,用于构建用于对经验回放池中成功经验进行学习利用的第一贝尔曼算子;
第二构建模块,用于构建用于探索未知状态的第二贝尔曼算子;
生成模块,用于根据所述第一贝尔曼算子和所述第二贝尔曼算子,生成探索与利用平衡的贝尔曼算子;
改进模块,用于利用所述探索与利用平衡的贝尔曼算子,改进动作家-评论家算法;
强化学习模块,用于基于改进的动作家-评论家算法,对智能体进行强化学习。
第三方面,本发明提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所述实现探索与利用平衡的智能体强化学习方法。
第四方面,本发明提供一种非暂态计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面所述实现探索与利用平衡的智能体强化学习方法。
本发明提供的一种实现探索与利用平衡的智能体强化学习方法和装置,构建了能够利用历史经验中的成功经验的第一贝尔曼算子(Bellman exploitation operator)以及能够探索未知状态的第二贝尔曼算子(Bellman exploration operator),之后由Bellmanexploitation operator和Bellman exploration operato构建BEE算子,该BEE算子提高了算法在探索未知状态和利用历史经验之间的平衡,相比于现有技术,该BEE算子具有样本效率高、泛化性能强、通用性强、易于实现以及真实场景应用能力强等多种优点。将BEE算子用于采用动作家-评论家(off-policy actor-critic)算法的强化学习方法中,可有效地提高强化学习的策略学习效果。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的实现探索与利用平衡的智能体强化学习方法的流程示意图;
图2是本发明提供的实现探索与利用平衡的智能体强化学习装置的结构示意图;
图3是本发明提供的电子设备的结构示意图;
附图标记:
310:处理器;320:通信接口;330:存储器;340:通信总线。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
对本发明涉及到的专业名词进行解释:
强化学习:强化学习(Reinforcement Learning)是一种通过智能体(Agent)与环境不断交互的方式,从而学习到最优策略的机器学习方法。其基本思想是智能体根据当前的状态st选择一个动作at,并在环境中执行该动作,得到奖励rt和下一个状态st+1。智能体会逐步形成对累积奖励的预期Q(st,at),通过选择可以获得最大奖励的动作at=argmaxaQ(st,a),从而学习到可以获得最大奖励的策略其中γ是折旧因子,rt为t时刻的奖励。强化学习的核心在于学习最优策略的过程。
探索利用困境:一个智能体需要在探索未知状态和行动空间的同时,利用已有的经验最大化累积奖励。具体来说,在探索利用困境中,一个智能体需要平衡探索(exploration)和利用(exploitation)两个目标。探索指智能体在未知状态和行动空间中随机探索,以便发现新的有益信息,而利用指利用已有的经验和知识来最大化累积奖励。
贝尔曼算子:贝尔曼算子(Bellman operator)是一种在强化学习中广泛应用的算子,用于更新状态值函数或者状态-动作值函数。贝尔曼算子由强化学习领域的著名学者Richard Bellman提出,其主要思想是将当前状态(或状态-动作对)的价值函数更新为当前收益与下一状态(或状态-动作对)的价值函数的加权平均。在基于值函数的强化学习算法中,贝尔曼算子是一个重要的操作,用于不断更新值函数,使其更接近真实值,从而得到更优的策略。对于状态-动作值函数Q(s,a),贝尔曼算子的定义为:
其中,p(s′|s,a)表示状态转移概率,表示在状态s′下采取所有可能动作中价值最大的动作的价值。
动作家-评论家算法:动作家-评论家算法(Off-policy Actor-critic)强化学习是一种广泛使用的强化学习方法,它是一种基于值函数和策略函数的方法,通过同时更新动作家和评论家网络来实现学习。动作家网络输出当前状态下的一个动作,评论家网络则估计该状态下执行该动作的价值。该方法的一个重要特点是可以使用用之前收集的数据进行学习,提高样本利用效率。动作家-评论家强化学习方法的目标是最大化累积奖励。动作家网络通过学习输出最优的动作,评论家网络通过学习预测当前状态下执行该动作的价值,两个网络通过更新策略和价值函数来实现学习。
下面结合图1-图3描述本发明的实现探索与利用平衡的智能体强化学习方法和装置。
在动作家-评论家强化学习方法中,如何有效的实现探索利用平衡是亟待解决的问题。目前,为解决上述问题,研究人员提出了多种解决上述问题的探索算法,包括VallianBellman operator,bootstrapped DQN、count-based exploration和optimisticinitialization。然而,这些算法存在性能差的问题和真实场景应用能力差的问题。
性能差的表现如下:(1)Vallian Bellman operator虽然简单易实现,但它的性能高度依赖于当前策略。对于未被探索过的状态-动作对,很难进行准确的Q值估计,容易出现过高或过低的估计值,从而导致算法的样本效率不佳。
(2)bootstrapped DQN虽然有一定的效果提升,但它需要对环境进行分层,每层都采用不同的网络来处理数据,难以在不同的场景中通用。
(3)count-based exploration虽然有一定的效果提升,但它需要对状态和动作进行计数和统计,不适合在高维空间使用,因此难以在复杂的机器人场景和任务中通用。
(4)optimistic initialization虽然有一定的效果提升,但它通常需要训练大量的Q值网络,训练和计算代价非常高昂,而且它仍旧是基于Vallian Bellman operator来进行的Q值估计,样本利用效率低下的问题也仍然存在。
真实场景应用能力差的表现如下:现有的off-policy actor-critic算法往往在理想化的场景下进行训练和测试,而实际应用场景中的复杂性和不确定性往往比理想情况下要高得多,这导致Vallian Bellman operator,bootstrapped DQN、count-basedexploration和optimistic initialization等在实际应用中表现不佳,尤其是在真实场景下应用时,往往存在显著的泛化问题。例如:在四足机器人DKitty的行走场景中,每一步行动都会影响机器人未来的状态,如步态、稳定性和速度等,因此需要进行大量的试验和采样,才能找到一组最优的行动序列。但是,由于DKitty环境本身的动态性和复杂性,大量的试验和采样会导致采样效率低下,进而影响算法的样本效率。另外,如果算法只是简单地进行探索,它可能会走向某些不合理的行动,例如在不稳定的地面上走路,导致机器人倒下,这进一步加剧了采样效率的问题。
综上,需要寻找一种高效且通用的探索利用平衡算法来提高off-policy actor-critic算法的样本效率和泛化性能。解决这个挑战需要研究如何在探索和利用之间找到一个更好的平衡,以便在未被探索的状态-动作对上获得更准确的Q值估计,同时不牺牲算法的样本效率和泛化性能。这个挑战的解决将有助于提高off-policy actor-critic算法的实际应用和推广。
鉴于此,本发明提供了一种实现探索与利用平衡的智能体强化学习方法,如图1所示,所述方法包括:
S11、构建用于对经验回放池中成功经验进行学习利用的第一贝尔曼算子;
S12、构建用于探索未知状态的第二贝尔曼算子;
S13、根据所述第一贝尔曼算子和所述第二贝尔曼算子,生成探索与利用平衡的贝尔曼算子;
S14、利用所述探索与利用平衡的贝尔曼算子,改进动作家-评论家算法;
S15、基于改进的动作家-评论家算法,对智能体进行强化学习。
本发明提供的一种实现探索与利用平衡的智能体强化学习方法,构建了能够利用历史经验中的成功经验的第一贝尔曼算子(Bellman exploitation operator)以及能够探索未知状态的第二贝尔曼算子(Bellman exploration operator),之后由Bellmanexploitation operator和Bellman exploration operato构建BEE算子,该BEE算子提高了算法在探索未知状态和利用历史经验之间的平衡,相比于现有技术,该BEE算子具有样本效率高、泛化性能强、通用性强、易于实现以及真实场景应用能力强等多种优点。将BEE算子用于采用动作家-评论家(off-policy actor-critic)算法的强化学习方法中,可有效地提高强化学习的策略学习效果。
具体的,传统的RL算法只专注于估计当前策略的Q值,这限制了它们利用过去经验开发和提高样本效率的能力。通俗来讲,状态-动作对(s,a)在当前策略上执行故障,在历史策略上存在执行成功的轨迹,但是状态-动作对(s,a)的价值会因其在当前策略上的执行故障而被严重低估,以致需要更长的时间才能重新应对成功事件。针对这种情况,本发明提出了探索与利用平衡的贝尔曼算子(BEE算子),它是基于贝尔曼算子(Bellman算子)的改进,通过有效地平衡探索和利用的关系来解决探索利用平衡问题。BEE算子具体实现需要两个子算子,即第一贝尔曼算子(Bellman exploitation operator)以及第二贝尔曼算子(Bellman exploration operator),Bellman exploitation operator主要用于利用历史经验中的成功经验,Bellman exploration operator主要用于探索未知状态;
其中,Bellman exploitation operator的公式如下:
其中,r(s,a)为智能体在状态s下执行动作a的奖励,γ为折旧因子,为智能体的动作集,μ(a′|s′)>0表征所述经验回放池中存在智能体在状态s′下执行动作a′的概率分布信息,p(s′|s,a)为智能体在状态s下执行动作a致使状态转移到s′的转移概率,Q(s′,a′)为智能体在状态s′下执行a′的价值函数,/>为利用所述第一贝尔曼算子计算的智能体在状态s下执行动作a的价值函数。
需要注意的是,为了更好的学习历史经验中的成功经验,本发明构建了一个不断变化的经验回归池,该经验回放池中的样本记录着状态转移信息“当前状态-动作-奖励-下一状态”,即初始的经验回放池由离线阶段采集的状态转移样本组成,在线学习阶段,每一次迭代产生的状态转移样本会被存储至经验回放池,以不断的更新经验回放池。
Bellman exploration operator(后续简称BEO)的公式如下:
其中,π(a′|s′)为智能体当前策略为π时给定状态s′对应的a′的概率分布,Qπ(s′,a′)为当前策略为π的情况下智能体在状态s′下执行动作a′的价值函数,为利用所述第二贝尔曼算子计算的智能体在状态s下执行动作a的价值函数,a′为从当前策略π中随机采样的下一个动作,s′为环境根据(s,a)转移得到的下一个状态,w(s′,a′|π)是为了鼓励探索而设计的探索项,表征当前策略为π的情况下智能体在状态s′下执行动作a′的熵值,该熵值与在状态s′下执行动作a′的历史次数负相关。
BEE算子的公式如下:
BEE算子的核心特性在于,它能够在在线学习的过程中,有效地利用历史经验中的成功经验,同时通过对新的状态-动作对进行探索,有效地平衡探索和利用的关系。
本发明BEE算子的主要优点如下:
高效性:使用BEE算子来平衡探索和利用之间的权衡,提高了算法的样本效率和泛化性能;
通用性:算法可以在不同的场景中应用,不需要额外的环境假设或启发式算法;
稳健性:算法能更好地利用历史经验,并且在真实场景和模拟场景中都表现出了较好的性能。
在BEE算子的应用方面,本发明BEE算子可以用于MBRL中,实现MB-BEE算法。其中,Dyna-style Model-based RL的主要思想是,先利用现有的样本数据学习环境的动态模型,然后在此基础上进行规划和决策。具体来说,它包含以下几个步骤:
数据采集:与其他强化学习方法类似,Dyna-style Model-based RL首先需要在环境中采集样本数据。
模型学习:利用采集到的样本数据,可以通过一些机器学习方法(如神经网络、决策树等)来学习环境的动态模型。这个动态模型可以用来预测环境中的下一状态和奖励。
策略优化:在学习到的动态模型的基础上,Dyna-style Model-based RL使用类似于Model-free RL的方法,通过训练一个值函数来指导策略的更新。(本发明的BEE算子应用到策略优化中)
Dyna-style Model-based RL参考文献:Sutton R S.Integrated architecturesfor learning,planning,and reacting based on approximating dynamic programming[M]//Machine learning proceedings 1990.Morgan Kaufmann,1990:216-224.
具体的,与传统的Dyna-style算法不同,本发明将BEE算子与AC算法结合,不仅对真实数据使用BEO,而且在模型生成数据中使用BEO进行探索。这样能够更加高效地利用真实数据和模型生成数据,从而提高了算法的样本效率和泛化性能。
BEE-AC算法具体包括:
【动作家Actor更新】:
首先从{μk,πk)更新策略到{μk,πk+1},其中μk={π0,π1…πk-1},πk+1是相对于的贪婪策略,即
然后将历史策略序列扩展到μk+1,πk+1,并将策略πk添加到策略混合中;
【评论家Critic更新】:
计算
1:首先在replay buffer中更新V值函数,计算方式为:
其中,τ∈[0,1]是一个给定的参数,D为经验回放池,I(·)为示性函数,当Q(s,a)-V(s)≤0时,I(Q(s,a)-V(s)<0)取值为1,Q(s,a)-V(s)>0时,则I(Q(s,a)-V(s)<0)取值为0;
2:计算
计算
计算目标Q值:
更新Q网络参数:
其中,λ为权重系数,B为策略混合。
考虑到实际应用场景中可能存在的″lucky″样本而引发Q值高估或者震荡的问题,本发明在的计算过程引入一个基于分位数回归的V值函数(V值函数是Q值函数关于动作分布的期望)来减少Q值估计的高估和震荡,提高算法的稳定性和可靠性。
总的来说,BEE算子是本发明的核心技术,它们能够更加有效地解决off-policyactor-critic算法中的探索利用平衡问题,从而提高了算法的样本效率和泛化性能,为真实场景的应用提供了可行的解决方案。
具体的,基于BEE-AE算法,对智能体进行强化学习,包括:
对于所述智能体的任一应用场景,获取所述应用场景中所述智能体的当前状态以及当前经验回放池;
利用所述当前经验回放池和所述改进的动作家-评论家算法,对所述当前状态下的智能体进行策略的迭代优化学习,得到对应的最优策略;
其中,所述任一应用场景,包括:机器人控制应用场景、自动驾驶应用场景以及工业发电控制应用场景。
进一步的,在机器人控制应用场景中,智能体状态s可以包括机器人各个传感器的感知数据,比如电机编码器数据,摄像头拍摄的图片,红外传感器、激光雷达等传感器的感知数据。智能体动作a可以包括电机扭矩指令,电机转速指令,以及电机编码器位置指令等可控制指令。r为人工根据机器人执行任务(例如机械臂搬运任务)所设计的奖励函数。
在自动驾驶应用场景中,智能体状态s可以包括高精地图信息、周围环境的语义分割信息、当前车辆的速度、位置、加速度、车头朝向信息以及各种传感器的感知数据等。智能体动作a可以包括车辆刹车的力度,油门的力度,转向的角度,下一个目标运动点的位置等运动决策可控制量。r为人工根据自动驾驶任务所设计的奖励函数。例如安全行驶距离越长r越大,行驶越平稳r越大,汽车更省油r越大等。
在工业发电控制应用场景中,智能体状态s可以包括各机组的传感器记录数据(例如燃烧室的温度和压力,管道内液体的流量、流速、压力等)以及排放废弃的化学成分比例等。智能体动作a可以包括发电机组的各控制量(例如各阀门是否开或关,阀门开启的幅度,管道流量的阈值等可控制量)。r为人工根据发电控制任务所设计的奖励函数,例如发电效率越高r越大。
第二方面,对本发明提供的实现探索与利用平衡的智能体强化学习装置进行描述,下文描述的实现探索与利用平衡的智能体强化学习装置与上文描述的实现探索与利用平衡的智能体强化学习方法可相互对应参照。图2提供了一种实现探索与利用平衡的智能体强化学习装置的结构示意图,如图2所示,所述装置包括:
第一构建模块21,用于构建用于对经验回放池中成功经验进行学习利用的第一贝尔曼算子;
第二构建模块22,用于构建用于探索未知状态的第二贝尔曼算子;
生成模块23,用于根据所述第一贝尔曼算子和所述第二贝尔曼算子,生成探索与利用平衡的贝尔曼算子;
改进模块24,用于利用所述探索与利用平衡的贝尔曼算子,改进动作家-评论家算法;
强化学习模块25,用于基于改进的动作家-评论家算法,对智能体进行强化学习。
本发明提供的一种实现探索与利用平衡的智能体强化学习装置,构建了能够利用历史经验中的成功经验的第一贝尔曼算子(Bellman exploitation operator)以及能够探索未知状态的第二贝尔曼算子(Bellman exploration operator),之后由Bellmanexploitation operator和Bellman exploration operato构建BEE算子,该BEE算子提高了算法在探索未知状态和利用历史经验之间的平衡,相比于现有技术,该BEE算子具有样本效率高、泛化性能强、通用性强、易于实现以及真实场景应用能力强等多种优点。将BEE算子用于采用动作家-评论家(off-policy actor-critic)算法的强化学习方法中,可有效地提高强化学习的策略学习效果。
在上述各实时例的基础上,作为一种可选的实施例,所述经验回放池中的样本记录着状态转移信息“当前状态-动作-奖励-下一状态”;所述第一贝尔曼算子的表达式为:
其中,r(s,a)为智能体在状态s下执行动作a的奖励,γ为折旧因子,为智能体的动作集,μ(a′|s′)>0表征所述经验回放池中存在智能体在状态s′下执行动作a′的概率分布信息,p(s′|s,a)为智能体在状态s下执行动作a致使状态转移到s′的转移概率,Q(s′,a′)为智能体在状态s′下执行a′的价值函数,/>为利用所述第一贝尔曼算子计算的智能体在状态s下执行动作a的价值函数。
在上述各实时例的基础上,作为一种可选的实施例,所述第二构建模块,包括:
构建单元,用于构建探索项w(s′,a′|π);其中,所述w(s′,a′|π)表征当前策略为π的情况下智能体在状态s′下执行动作a′的熵值,取值与在状态s′下执行动作a′的历史次数负相关;
改进单元,用于基于所述探索项改进传统的贝尔曼算子,得到所述第二贝尔曼算子。
在上述各实时例的基础上,作为一种可选的实施例,所述第二贝尔曼算子的表达式为:
其中,r(s,a)为智能体在状态s下执行动作a的奖励,γ为折旧因子,p(s′|s,a)为智能体在状态s下执行动作a致使状态转移到s′的转移概率,π(a′|s′)为智能体当前策略为π时给定状态s′对应的a′的概率分布,Qπ(s′,a′)为当前策略为π的情况下智能体在状态s′下执行动作a′的价值函数,为利用所述第二贝尔曼算子计算的智能体在状态s下执行动作a的价值函数。
在上述各实时例的基础上,作为一种可选的实施例,所述探索与利用平衡的贝尔曼算子是所述第一贝尔曼算子和所述第二贝尔曼算子的加权和,表达式为:
上式中,λ为权重参数,为利用所述第一贝尔曼算子计算的智能体在状态s下执行动作a的价值函数,/>为利用所述第二贝尔曼算子计算的智能体在状态s下执行动作a的价值函数,BQ(s,a)为利用所述探索与利用平衡的贝尔曼算子计算的智能体在状态s下执行动作a的价值函数;
所述改进的动作家-评论家算法的表达式为:
动作家:
评论家:
上式中,为当前策略为πk且过往策略序列为μk的情况下智能体在状态s下执行动作a的价值函数,μk={π0,π1…πk-1},ω(s,a|πk)为当前策略为πk的情况下智能体在状态s下执行动作a的熵值,πk+1为第k+1轮迭代智能体的策略,/>为第k轮迭代时利用所述探索与利用平衡的贝尔曼算子计算的智能体在状态s下执行动作a的价值函数,Q(s,a)为由第k轮迭代时的评论家网络确定的智能体在状态s下执行动作a的价值函数,Qφ为评论家网络。在上述各实时例的基础上,作为一种可选的实施例,在决策得到所述当前策略πk之后,将所述当前策略πk对应的状态转移信息构成的样本回归到所述经验回归池中。
在上述各实时例的基础上,作为一种可选的实施例,所述强化学习模块,包括:
获取单元,用于对于所述智能体的任一应用场景,获取所述应用场景中所述智能体的当前状态以及当前经验回放池;
强化学习单元,用于利用所述当前经验回放池和所述改进的动作家-评论家算法,对所述当前状态下的智能体进行策略的迭代优化学习,得到对应的最优策略;
其中,所述任一应用场景,包括:机器人控制应用场景、自动驾驶应用场景以及工业发电控制应用场景。
第三方面,图3示例了一种电子设备的实体结构示意图,如图3所示,该电子设备可以包括:处理器(processor)310、通信接口(Communications Interface)320、存储器(memory)330和通信总线340,其中,处理器310,通信接口320,存储器330通过通信总线340完成相互间的通信。处理器310可以调用存储器330中的逻辑指令,以执行实现探索与利用平衡的智能体强化学习方法,该方法包括:构建用于对经验回放池中成功经验进行学习利用的第一贝尔曼算子;构建用于探索未知状态的第二贝尔曼算子;根据所述第一贝尔曼算子和所述第二贝尔曼算子,生成探索与利用平衡的贝尔曼算子;利用所述探索与利用平衡的贝尔曼算子,改进动作家-评论家算法;基于改进的动作家-评论家算法,对智能体进行强化学习。
此外,上述的存储器330中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
第四方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的实现探索与利用平衡的智能体强化学习方法,该方法包括:构建用于对经验回放池中成功经验进行学习利用的第一贝尔曼算子;构建用于探索未知状态的第二贝尔曼算子;根据所述第一贝尔曼算子和所述第二贝尔曼算子,生成探索与利用平衡的贝尔曼算子;利用所述探索与利用平衡的贝尔曼算子,改进动作家-评论家算法;基于改进的动作家-评论家算法,对智能体进行强化学习。
第五方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的实现探索与利用平衡的智能体强化学习方法,该方法包括:构建用于对经验回放池中成功经验进行学习利用的第一贝尔曼算子;构建用于探索未知状态的第二贝尔曼算子;根据所述第一贝尔曼算子和所述第二贝尔曼算子,生成探索与利用平衡的贝尔曼算子;利用所述探索与利用平衡的贝尔曼算子,改进动作家-评论家算法;基于改进的动作家-评论家算法,对智能体进行强化学习。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种实现探索与利用平衡的智能体强化学习方法,其特征在于,所述方法包括:
构建用于对经验回放池中成功经验进行学习利用的第一贝尔曼算子;
构建用于探索未知状态的第二贝尔曼算子;
根据所述第一贝尔曼算子和所述第二贝尔曼算子,生成探索与利用平衡的贝尔曼算子;
利用所述探索与利用平衡的贝尔曼算子,改进动作家-评论家算法;
基于改进的动作家-评论家算法,对智能体进行强化学习。
2.根据权利要求1所述的实现探索与利用平衡的智能体强化学习方法,其特征在于,所述经验回放池中的样本记录着状态转移信息“当前状态-动作-奖励-下一状态”;所述第一贝尔曼算子的表达式为:
其中,r(s,a)为智能体在状态s下执行动作a的奖励,γ为折旧因子,为智能体的动作集,μ(a′|s′)>0表征所述经验回放池中存在智能体在状态s′下执行动作a′的概率分布信息,p(s′|s,a)为智能体在状态s下执行动作a致使状态转移到s′的转移概率,Q(s′,a′)为智能体在状态s′下执行a′的价值函数,/>为利用所述第一贝尔曼算子计算的智能体在状态s下执行动作a的价值函数。
3.根据权利要求1所述的实现探索与利用平衡的智能体强化学习方法,其特征在于,所述构建用于探索未知状态的第二贝尔曼算子,包括:
构建探索项w(s′,a′|π);其中,所述w(s′,a′|π)表征当前策略为π的情况下智能体在状态s′下执行动作a′的熵值,取值与在状态s′下执行动作a′的历史次数负相关;
基于所述探索项改进传统的贝尔曼算子,得到所述第二贝尔曼算子。
4.根据权利要求3所述的实现探索与利用平衡的智能体强化学习方法,其特征在于,所述第二贝尔曼算子的表达式为:
其中,r(s,a)为智能体在状态s下执行动作a的奖励,γ为折旧因子,p(s′|s,a)为智能体在状态s下执行动作a致使状态转移到s′的转移概率,π(a′|s′)为智能体当前策略为π时给定状态s′对应的a′的概率分布,Qπ(s′,a′)为当前策略为π的情况下智能体在状态s′下执行动作a′的价值函数,为利用所述第二贝尔曼算子计算的智能体在状态s下执行动作a的价值函数。
5.根据权利要求1~4任一项所述的实现探索与利用平衡的智能体强化学习方法,其特征在于,所述探索与利用平衡的贝尔曼算子是所述第一贝尔曼算子和所述第二贝尔曼算子的加权和,表达式为:
上式中,λ为权重参数,为利用所述第一贝尔曼算子计算的智能体在状态s下执行动作a的价值函数,/>为利用所述第二贝尔曼算子计算的智能体在状态s下执行动作a的价值函数,/>为利用所述探索与利用平衡的贝尔曼算子计算的智能体在状态s下执行动作a的价值函数;
所述改进的动作家-评论家算法的表达式为:
动作家:
评论家:
上式中,为当前策略为πk且过往策略序列为μk的情况下智能体在状态s下执行动作a的价值函数,μk={π0,π1…πk-1},ω(s,a|πk)为当前策略为πk的情况下智能体在状态s下执行动作a的熵值,πk+1为第k+1轮迭代智能体的策略,/>为第k轮迭代时利用所述探索与利用平衡的贝尔曼算子计算的智能体在状态s下执行动作a的价值函数,Q(s,a)为由第k轮迭代时的评论家网络确定的智能体在状态s下执行动作a的价值函数,Qφ为评论家网络。
6.根据权利要求5所述的实现探索与利用平衡的智能体强化学习方法,其特征在于,在决策得到所述当前策略πk之后,将所述当前策略πk对应的状态转移信息构成的样本回归到所述经验回归池中。
7.根据权利要求1所述的实现探索与利用平衡的智能体强化学习方法,其特征在于,所述基于改进的动作家-评论家算法,对智能体进行强化学习,包括:
对于所述智能体的任一应用场景,获取所述应用场景中所述智能体的当前状态以及当前经验回放池;
利用所述当前经验回放池和所述改进的动作家-评论家算法,对所述当前状态下的智能体进行策略的迭代优化学习,得到对应的最优策略;
其中,所述任一应用场景,包括:机器人控制应用场景、自动驾驶应用场景以及工业发电控制应用场景。
8.一种实现探索与利用平衡的智能体强化学习装置,其特征在于,所述装置包括;
第一构建模块,用于构建用于对经验回放池中成功经验进行学习利用的第一贝尔曼算子;
第二构建模块,用于构建用于探索未知状态的第二贝尔曼算子;
生成模块,用于根据所述第一贝尔曼算子和所述第二贝尔曼算子,生成探索与利用平衡的贝尔曼算子;
改进模块,用于利用所述探索与利用平衡的贝尔曼算子,改进动作家-评论家算法;
强化学习模块,用于基于改进的动作家-评论家算法,对智能体进行强化学习。
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7任一项所述实现探索与利用平衡的智能体强化学习方法。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述实现探索与利用平衡的智能体强化学习方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310559043.2A CN116663653A (zh) | 2023-05-17 | 2023-05-17 | 一种实现探索与利用平衡的智能体强化学习方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310559043.2A CN116663653A (zh) | 2023-05-17 | 2023-05-17 | 一种实现探索与利用平衡的智能体强化学习方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116663653A true CN116663653A (zh) | 2023-08-29 |
Family
ID=87716352
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310559043.2A Pending CN116663653A (zh) | 2023-05-17 | 2023-05-17 | 一种实现探索与利用平衡的智能体强化学习方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116663653A (zh) |
-
2023
- 2023-05-17 CN CN202310559043.2A patent/CN116663653A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112668235B (zh) | 基于离线模型预训练学习的ddpg算法的机器人控制方法 | |
US20220171907A1 (en) | Creation of digital twin of the interaction among parts of the physical system | |
CN112313043B (zh) | 自我监督的机器人对象交互 | |
Whiteson et al. | Critical factors in the empirical performance of temporal difference and evolutionary methods for reinforcement learning | |
US20230144995A1 (en) | Learning options for action selection with meta-gradients in multi-task reinforcement learning | |
CN116324818A (zh) | 使用增强时间差异学习训练强化学习智能体 | |
CN111830822A (zh) | 配置与环境交互的系统 | |
CN116848532A (zh) | 具有短期记忆单元的注意力神经网络 | |
JP2022504739A (ja) | 時間的価値移送を使用した長いタイムスケールにわたるエージェントの制御 | |
CN114529010A (zh) | 一种机器人自主学习方法、装置、设备及存储介质 | |
CN114518751A (zh) | 基于最小二乘截断时域差分学习的路径规划决策优化方法 | |
EP3788554B1 (en) | Imitation learning using a generative predecessor neural network | |
CN116681142A (zh) | 基于迭代式策略约束的智能体强化学习方法和装置 | |
CN115936058A (zh) | 一种基于图注意力网络的多智能体迁移强化学习方法 | |
CN116663653A (zh) | 一种实现探索与利用平衡的智能体强化学习方法和装置 | |
JP7493554B2 (ja) | Few-shot模倣のためのデモンストレーション条件付き強化学習 | |
CN115906673A (zh) | 作战实体行为模型一体化建模方法及系统 | |
Bar et al. | Deep Reinforcement Learning Approach with adaptive reward system for robot navigation in Dynamic Environments | |
Feng et al. | Mobile robot obstacle avoidance based on deep reinforcement learning | |
WO2021140698A1 (ja) | 情報処理装置、方法及びプログラム | |
Prescott | Explorations in reinforcement and model-based learning | |
CN114911157A (zh) | 基于部分可观测强化学习的机器人导航控制方法及系统 | |
Tang et al. | Reinforcement learning for robots path planning with rule-based shallow-trial | |
Ammar et al. | Reinforcement learning transfer using a sparse coded inter-task mapping | |
CN117556681B (zh) | 一种智能空战决策方法、系统及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |