CN116897357A - 具有不同策略的神经网络强化学习 - Google Patents
具有不同策略的神经网络强化学习 Download PDFInfo
- Publication number
- CN116897357A CN116897357A CN202280013473.8A CN202280013473A CN116897357A CN 116897357 A CN116897357 A CN 116897357A CN 202280013473 A CN202280013473 A CN 202280013473A CN 116897357 A CN116897357 A CN 116897357A
- Authority
- CN
- China
- Prior art keywords
- policies
- policy
- diversity
- new policy
- rewards
- 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
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 35
- 230000002787 reinforcement Effects 0.000 title claims abstract description 32
- 238000000034 method Methods 0.000 claims abstract description 85
- 230000009471 action Effects 0.000 claims abstract description 64
- 238000012549 training Methods 0.000 claims abstract description 30
- 238000005457 optimization Methods 0.000 claims abstract description 19
- 239000003795 chemical substances by application Substances 0.000 claims description 44
- 238000009826 distribution Methods 0.000 claims description 38
- 239000013598 vector Substances 0.000 claims description 34
- 230000008901 benefit Effects 0.000 claims description 33
- 230000006870 function Effects 0.000 claims description 33
- 230000008569 process Effects 0.000 claims description 21
- 238000003860 storage Methods 0.000 claims description 14
- 238000012545 processing Methods 0.000 description 15
- 238000004590 computer program Methods 0.000 description 13
- 238000013459 approach Methods 0.000 description 11
- 230000006399 behavior Effects 0.000 description 9
- 238000004891 communication Methods 0.000 description 8
- 238000002156 mixing Methods 0.000 description 8
- 230000004044 response Effects 0.000 description 7
- 238000010801 machine learning Methods 0.000 description 5
- 238000004088 simulation Methods 0.000 description 5
- 230000001133 acceleration Effects 0.000 description 4
- 230000007613 environmental effect Effects 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 4
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 4
- 230000003068 static effect Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000001816 cooling Methods 0.000 description 2
- 230000001186 cumulative effect Effects 0.000 description 2
- 239000012636 effector Substances 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 241000009334 Singa Species 0.000 description 1
- 230000000386 athletic effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000001149 cognitive effect Effects 0.000 description 1
- 230000001143 conditioned effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000009472 formulation Methods 0.000 description 1
- 238000010438 heat treatment Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000010248 power generation Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000000007 visual effect Effects 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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
- G06N7/01—Probabilistic graphical models, e.g. probabilistic networks
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Probability & Statistics with Applications (AREA)
- Algebra (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
在一个方面,提供了一种用于通过强化学习来训练神经网络系统的方法。神经网络系统可以被配置为接收表征由智能体与之交互的环境的状态的输入观察,并且根据旨在满足目标的策略来选择和输出动作。该方法可以包括获得包括用于满足目标的一个或多个策略的策略集合,以及基于一个或多个策略确定新策略。该确定可以包括一个或多个优化步骤,其旨在基于通过遵循新策略将获得的预期收益,在新策略满足最小性能标准的条件下,最大化新策略相对于策略集合的多样性。
Description
技术领域
本说明书涉及强化学习。
背景技术
在强化学习系统中,智能体通过执行由强化学习系统响应于接收到表征环境的当前状态的观察而选择的动作来与环境交互。
一些强化学习系统根据神经网络的输出选择要由智能体响应于接收到给定观察而执行的动作。
神经网络是采用一层或多层非线性单元来预测接收到的输入的输出的机器学习模型。一些神经网络是深度神经网络,其除了输出层之外还包括一个或多个隐藏层。每个隐藏层的输出被用作网络中的下一层(即,下一隐藏层或输出层)的输入。网络的每个层根据相应参数集的当前值从接收到的输入生成输出。
发明内容
本说明书总体上描述了用于训练神经网络系统的方法,该神经网络系统选择要由与环境交互的智能体执行的动作。本文描述的强化学习方法可以用于学习一组不同的接近最佳的策略。这为给定任务提供了替代解决方案,从而提供了改进的鲁棒性。
在一个方面,提供了一种用于通过强化学习来训练神经网络系统的方法。神经网络系统可以被配置为接收表征由智能体与之交互的环境的状态的输入观察,并且根据旨在满足目标的策略来选择和输出动作。该方法可以包括获得包括用于满足目标的一个或多个策略的策略集合,以及基于一个或多个策略确定新策略。该确定可以包括一个或多个优化步骤,其旨在基于通过遵循新策略将获得的预期收益,在新策略满足最小性能标准的条件下,最大化新策略相对于策略集合的多样性。
鉴于上述情况,本文描述的方法旨在通过使服从最小性能标准的策略的多样性最大化来获得不同的策略集合。这与可能试图最大化策略的固有性能而不是比较策略以确保它们是多样化的其他方法不同。
可以通过多种不同的方法测量多样性。通常,多个策略的多样性表示策略行为的差异。这可以通过策略参数的差异或策略访问的状态的预期分布的差异来测量。
本文描述的方法可以通过一个或多个计算设备和/或一个或多个计算机存储介质来实现。
根据一个实现方式,提供了一种系统,其包括一个或多个计算机和存储指令的一个或多个存储设备,所述指令在由所述一个或多个计算机执行时使所述一个或多个计算机执行本文所述的方法。
根据另一实现方式,提供存储指令的一或多个(暂时性或非暂时性)计算机存储媒体,所述指令在由一或多个计算机执行时致使所述一个或多个计算机执行本文所述的方法。
可以实现本说明书中描述的主题的特定实施例,以便实现以下优点中的一个或多个。
本说明书中描述的主题介绍了用于确定用于执行特定目标的一组不同策略的方法。通过获得不同的策略集合,例如,取决于情况或响应于其他策略中的一个未充分执行,可以应用针对问题的不同方法(不同策略)。因此,获得一组不同的策略对于探索、转移、层级和鲁棒性可能是有用的。所得到的不同策略的集合可以独立地应用,或者作为混合策略(其基于概率分布从集合中选择策略)应用。
在附图和下面的描述中阐述了本说明书的主题的一个或多个实施例的细节。根据说明书、附图和权利要求,主题的其他特征、方面和优点将变得显而易见。
附图说明
图1示出了强化学习系统的示例。
图2是用于训练强化学习系统的示例过程的流程图。
图3是用于迭代地更新新策略的参数的示例过程的流程图。
各个附图中相同的附图标记和名称指示相同的元件。
具体实施方式
本公开提出了一种改进的强化学习方法,其中训练基于来自环境的外在奖励和基于多样性的内在奖励。提供了一种目标函数,其组合性能和多样性两者以提供用于执行任务的一组不同策略。通过提供一组不同的策略,本文描述的方法提供了执行给定任务的多种手段,从而提高了鲁棒性。
本申请提供以下贡献。提出了一种发现不同的近乎最优策略的集合的增量方法。可以基于迭代更新来训练集合中的每个策略,迭代更新尝试在最小性能约束下使相对于集合中的其他策略的多样性最大化。例如,每个策略的训练可以求解约束马尔可夫决策过程(CMDP)。CMDP中的主要目标可以是最大化在后继特征(SF)的空间中测量的增长集合的多样性,并且约束是策略接近最优。虽然可以使用各种多样性奖励,但是本文描述了旨在最小化集合中的策略的SF之间的相关性的各种显式多样性奖励。已经测试了本文描述的方法,并且已经发现,给定外在奖励(例如,针对站立或行走),本文描述的方法定性地发现了近似最大化该奖励的不同的运动行为。
本文描述的强化学习方法可以用于学习一组不同的策略。这是有益的,因为它提供了获得反映执行任务的不同方法的多个不同策略的手段。找到相同问题的不同解决方案(例如,找到用于执行给定任务的多个不同策略)是与创造性相关联的智能的长期存在的方面。在强化学习中,一组不同的策略对于探索、转移、层级和鲁棒性可能是有用的。例如,许多感兴趣的问题可能具有许多定性不同的最优或接近最优的策略。找到这种不同的策略集合可以帮助强化学习智能体对任务和/或环境的变化变得更鲁棒,以及更好地推广到未来的任务。
本框架有许多潜在的应用。例如,考虑使用强化学习来训练机器人行走的过程。设计者不先验地知道哪种奖励将导致期望的行走模式。因此,机器人工程师通常训练策略以最大化初始奖励,微调奖励,并迭代直到他们达到期望的行为。使用本方法,工程师将在每次尝试中选择多种形式的行走,从而加速训练机器人的过程。
图1示出了可以被实现为一个或多个位置中的一个或多个计算机上的一个或多个计算机程序的强化学习神经网络系统100的示例。强化学习神经网络系统100用于使用强化学习技术来控制与环境104交互的智能体102以执行一个或多个任务。
强化学习神经网络系统100具有一个或多个输入,以从环境接收表征环境状态的数据,例如,来自环境的一个或多个传感器的数据。表征环境状态的数据在本文中被称为观察106。
来自环境的数据还可以包括外在奖励(或任务奖励)。通常,外在奖励108由表征智能体朝向任务目标的进展的标量数值表示,并且可以基于环境中的任何事件或方面。可以随着任务进行或者仅在任务结束时接收外在奖励,例如,以指示任务的成功完成。替代地或另外地,可以由强化学习神经网络系统100基于观察106使用外在奖励函数来计算外在奖励108。
通常,强化学习神经网络系统100通过在多个动作选择时间步中的每一个处处理观察以选择要由智能体执行的动作112来控制智能体。在每个时间步处,该时间步处的环境状态取决于先前时间步处的环境状态和智能体在先前时间步处执行的动作。智能体102对所选择的动作112的执行通常使得环境104转变到新状态。通过重复地使智能体102在环境104中动作,系统100可以控制智能体102完成指定的任务。
更详细地,强化学习神经网络系统100包括策略集合神经网络110、存储策略参数140的存储器、内在奖励引擎120和训练引擎130。
每个策略神经网络110被配置为根据策略参数140处理包括表征环境104的当前状态的当前观察106的输入,以生成用于选择动作112的神经网络输出。
在实现方式中,一个或多个策略神经网络110包括值函数神经网络,其被配置为根据值函数神经网络参数的当前值处理当前时间步的观察106,以生成与环境的当前状态相关的当前值估计。值函数神经网络可以是状态或状态动作值函数神经网络。也就是说,当前值估计可以是状态值估计,即环境的当前状态的值的估计,或者是状态动作值估计,即当前时间步处的一组可能动作中的每一个的值的估计。
当前值估计可以例如通过值函数神经网络的输出确定性地生成,或者随机地生成,例如,其中值函数神经网络的输出参数化从其对当前值估计进行采样的分布。在一些实现方式中,使用当前值估计来选择动作112。
强化学习神经网络系统100被配置为使用观察106来学习控制智能体执行任务。对于每个动作,从环境提供外在奖励108。此外,对于每个动作,由内在奖励引擎120确定内在奖励122。内在奖励引擎120被配置为基于被训练的策略相对于策略集合中的其他策略的多样性来生成内在奖励122。训练引擎130基于外在(extrinsic)奖励108和内在奖励122两者来更新正被训练的策略的策略参数。当更新策略神经网络的参数时,可以利用来自至少一个其他策略的信息,以便确保在受到一个或多个性能约束的情况下最大化多样性。
内在奖励引擎120可被配置为基于从被训练的策略和一个或多个其他策略确定的状态分布(或状态访问分布)来生成内在奖励122。这允许奖励引擎120确定正被训练的策略相对于一个或多个其他策略的多样性。这些状态分布可以是后继特征140(下面更详细地描述)。也就是说,强化学习神经网络系统100(例如,训练引擎130和/或内在奖励引擎120)可确定每个策略的后继特征。可以存储每个策略的后继特征140以用于确定内在奖励122。
一旦被训练,策略集合可以由系统100实现。这可以包括基于策略集合上的概率分布来实现策略集合,其中强化学习神经网络系统100被配置为根据概率分布从策略集合中选择策略并实现所选择的策略。
例如,策略集合上的概率分布可以是混合策略。可以基于策略集合上的概率分布来随机选择策略。这可以在时间零(例如t=0,s=s0)发生,在此之后可以遵循所选择的策略。使用该方法,系统可以实现用于解决任务的策略集合,从而允许利用策略的多样性来提高鲁棒性。
后续特征、内在奖励和方法训练的细节将在下面更详细地讨论。
图2是用于训练强化学习系统的示例过程200的流程图。过程200训练用于满足服从最小性能标准的给定目标的一组不同策略。目标也可以被认为是“任务”。应当注意,该上下文中的目标不同于在训练强化学习系统中使用的(一个或多个)目标函数。
该方法开始于获得包括用于满足目标210的一个或多个策略的策略集合。策略集合可以从存储装置获得(即,可以预先计算),或者可以通过训练获得(例如,通过将智能体应用于一个或多个状态并更新策略的参数)。在给定环境状态的特定观察的情况下,每个策略可以定义动作上的概率分布。如图2所示,可以通过在确定(优化)策略集合之后将每个新策略添加到策略集合来构建策略集合。
获得策略集合210可以包括在不使用任何内在奖励的情况下训练一个或多个策略。例如,这可以包括仅基于外在奖励来训练第一策略(例如,“最优”策略)。
第一策略可以通过尝试在没有对多样性的任何参考的情况下最大化外在收益的训练来获得。在确定该第一策略之后,可以基于本文描述的多样性训练方法来确定后续策略并将其添加到策略集合。第一策略可以用作应用于后续策略的最小性能标准的基础。除了该第一策略之外,策略集合可以包括可以通过其他手段(例如,通过多样性训练)获得的附加策略。
然后确定220新策略。通过一个或多个优化步骤来确定新策略,所述一个或多个优化步骤使新策略相对于策略集合的服从最小性能标准的多样性最大化。下面将更详细地描述这些优化步骤。
根据一个实现方式,确定新策略包括定义为给定状态提供多样性奖励的多样性奖励函数。多样性奖励可以提供新策略相对于策略集合的多样性的度量。然后,一个或多个优化步骤可以旨在在新策略满足最小性能标准的条件下基于多样性奖励函数最大化预期多样性收益。
通常,来自以给定状态st的观察为条件的任何奖励函数rt(s)的预期收益也可以被认为是在特定策略π下的状态的值Vπ(st)。这可以被确定为累积未来折扣奖励:
其中Rt可以被定义为时间t之后的折扣奖励的总和:
其中γ是折扣因子。可替代地,该值可以基于来自遵循策略的平均(未折扣)奖励。
一旦确定了新策略,就将其添加到策略集合230。然后,该方法确定是否达到240结束标准。结束标准可以是迭代的最大数量、添加到策略集合的策略的最大数量、或任何其他形式的结束标准。
如果尚未到达结束,则通过步骤220和230确定另一策略。如果达到终点,则输出策略集合250。该输出可以包括用于本地实现(例如,本地推断或进一步的本地训练)或通过传达到外部设备或网络的本地存储。
图3是用于迭代地更新新策略的参数的示例过程的流程图。这通常等同于图2的步骤220和230。
首先,从新策略222的实现中获得观察序列。如果这是第一次迭代,则可以(例如,随机地)初始化策略参数。然后在多个时间步上实现新策略,其中选择动作并将其应用于环境,以便获得环境状态的更新观察。可以在等于或大于新策略的混合时间的多个时间步内收集观察序列。
在此之后,基于优化步骤更新新策略参数,该优化步骤旨在最大化新策略相对于一个或多个其他策略(例如,策略集合中的策略)的服从最小性能标准224的多样性。更新(优化)步骤224可以旨在在新策略满足最小性能标准的条件下最小化新策略的后继特征与策略集合的后继特征之间的相关性。稍后将描述该更新步骤的细节。
在更新之后,确定是否已经到达226迭代更新步骤的结束。例如,可以确定是否已经实现了最大数量的更新,或者是否已经满足某个评估标准。如果不是,则重复步骤222和224。如果是,则将新策略添加到策略集合230。
训练多样性
本文描述的方法训练策略集合,策略集合使服从最小性能标准的多样性最大化。可以通过多种不同的方法测量多样性。通常,多个策略的多样性表示策略行为的差异。这可以通过策略参数的差异或策略访问的状态的预期分布的差异来测量。
本方法的关键方面是多样性的度量。目标是集中于各种不同的策略。有利地,可以基于在策略混合之后策略的平稳分布来测量多样性。
在特定实现方式中,基于策略的后继特征(SF)来测量多样性。后继特征是由给定起始状态ρ的策略π产生的预期状态分布的度量。
后继特征基于以下假设:给定策略的奖励函数(例如,多样性奖励)可以如下参数化:
r(s,a)=w·φ(s,a)
其中w是表征所讨论的特定奖励(例如,多样性奖励)的权重向量(多样性向量),并且φ(s,a)是表示给定状态s和动作a(状态-动作对)的可观察特征向量。特征向量φ(s,a)可以被认为是给定状态s和动作a的编码。特征向量φ(s,a)可以是有界的,例如在0和1之间(φ(s,a)∈[0,1]d,其中d是特征向量φ(s,a)和权重向量的维度)。从状态和动作到特征向量的映射可以通过训练的逼近器(例如神经网络)来实现。虽然上面参考了动作和状态的编码,但是特征向量可以替代地仅是给定状态φ(s)的编码。
鉴于上述内容,在某些实现方式中,多样性奖励函数是至少表示给定状态s的观察的特征向量φ(s)与表征新策略相对于策略集合的多样性的多样性向量w之间的线性乘积。如上所述,特征向量φ(s)至少表示给定状态,但也可以表示导致给定状态s的动作a。也就是说,特征向量可以是φ(s,a)(以动作a和状态s两者为条件)。
鉴于上述情况,给定特定策略π的给定状态s和动作a的后继特征ψπ(s,a)是预期特征向量(从遵循策略观察到的特征向量的预期):
在实践中,可以通过实现策略、收集轨迹(一系列观察到的状态和动作)并确定对应的一系列特征向量来计算后继特征。这可以在等于或大于策略的混合时间的多个时间步上确定。混合时间可以被认为是策略产生接近(例如,在给定差值阈值内)其稳态分布的状态分布所需的步骤数。形式上,具有平稳分布dπ的遍历马尔可夫链的混合时间(例如∈混合时间)是最小时间t,命使得TV[Prt(·|s0),dπ]≤∈,其中Prt(·|s0)是在从s0开始的t步骤之后的状态s上的分布,并且TV[·,]是总变化距离。
鉴于上述情况,稳态分布下的后继特征dπ可以定义为:
平稳分布可以定义为dπ=limt→∞Pr(st=s|s0~ρ,π)。这可能是遍历马尔可夫链的情况。稳态分布可以被认为是当策略π被应用于其时保持不变的状态分布(其中pπ是策略π的转移矩阵)。平稳分布可以是通过应用策略而遇到的状态的折扣加权,从s0开始:
测量SF空间中的多样性允许对长期行为进行建模,因为SF是在策略的平稳分布下定义的。相比之下,学习多样化技能的其他方法通常在技能策略混合之前测量多样性。
本文描述的实现方式试图最大化多样性,同时仍然满足最小性能标准。该最小性能标准可以基于通过遵循新策略将获得的收益。例如,可以确定策略的预期收益(或值)并将其与最佳预期收益(或值)进行比较。该最优值可以是仅基于外在奖励确定的第一策略的值。
鉴于上述情况,给定策略集合Πn(例如,包括策略集合和新策略的集合)的多样性可以服从最小性能标准、基于策略的后继特征ψπ而被最大化(例如,相对于最优外在值新策略实现的特定外在值/>)。因此,用于训练新策略的目标可以是:
其中D(ψn)是所有策略集合Πn的后继特征Ψn的集合的多样性,并且α是用于定义最小性能标准的缩放因子。注意,α可以控制搜索的策略的范围。通常,参数α越小,α最优策略的集合越大,因此Πn中发现的策略的多样性越大。在一个示例中,α=0.9,可以利用α的其他值。设置α=0可以将设定减少到无奖励设置,其中目标是最大化多样性而不管外在奖励。
在基于多样性奖励测量多样性并且经由外在奖励测量外在值的情况下,一个或多个优化步骤中的每一个可以旨在解决以下目标:
其中,dπ是策略π的状态分布(诸如策略的平稳分布),rd是多样性奖励的向量,re是外在奖励的向量,α是用于定义最小性能标准的缩放因子,并且是最优外在值(例如,基于仅基于外在奖励训练的第一策略确定的)。
鉴于上述情况,最小性能标准可以要求通过遵循新策略将获得的预期收益大于或等于阈值。阈值可以被定义为基于来自第一策略的预期收益的最优值的分数α,该最优值是通过最大化第一策略的预期收益来确定的。最优值可以基于值函数(例如,计算预期收益的值函数)。因此,第一策略可以通过尝试最大化外在收益而不参考多样性的训练来获得。在确定该第一策略之后,可以基于本文描述的多样性训练方法来确定后续策略并将其添加到策略集合。
最优值可以是来自第一策略和策略集合中的任何一个的最大预期收益。因此,每次将新策略添加到策略集合时,可以检查最优值以确保来自该新策略的预期收益(值)不大于先前最高值。如果来自该新策略的预期收益(值)大于先前的最高值,则将最优值更新为来自新策略的值(预期收益)。
虽然使用术语“最优值”,但这不一定意味着该值必须是最优值,即最大可能值(全局最大值)。相反,它可以指这样的事实:它涉及到迄今为止已经获得的最高值,或者基于通过仅基于外在奖励的优化已经实现的值。
如上所述,可以通过线性乘积来确定内在奖励rd(s,a)=w·φ(s,a)。在一些实现方式中,可以可选地绑定内在奖励,以便使奖励对内积中的小变化更敏感(例如,当被比较的策略彼此相对相似时)。这可以通过应用以下变换来实现:
然后应用以下非线性变换:
其中τ是归一化温度参数。
如上所述,可以基于内在奖励和外在奖励两者来更新新策略。该更新可以通过求解约束马尔可夫决策过程(CMDP)来实现。这可以经由使用约束马尔可夫决策过程的拉格朗日乘数或用于求解CMDP的任何其他替代方法通过梯度下降来求解。在这种情况下,拉格朗日可以被认为是:
在此基础上,优化目标可以是:
这可以通过在拉格朗日乘数λ上使用Sigmoid激活函数σ(λ)来求解,以形成作为多样性奖励和外在奖励的组合的无约束奖励:
r(s)=σ(λ)re(s)+(1-σ(λ))rd(s).
可以引入λ上的熵正则化以防止σ(λ)达到极值(例如,0或1)。然后,拉格朗日乘数的目标可以是:
其中H(σ(λ))是Sigmoid激活函数σ(λ)的熵,ae是熵正则化的权重,并且是智能体在最近轨迹(最近状态-动作对)中获得的总累积外在收益的估计(例如蒙特卡罗估计)。拉格朗日λ可以通过梯度下降来更新。拉格朗日λ不需要在每个优化步骤更新,而是可以在每Nλ个步骤更新。
估计的总累积外在收益可以从平均外在收益的估计来估计。这些可以通过蒙特卡罗估计来计算:/>即由轨迹j中的智能体获得的经验平均奖励rt。在一个示例中,T可以是1000。可以利用相同的估计器来估计平均后继特征:/>用于估计外在收益的样本大小T不需要与用于估计后继特征的样本大小相同。
因此,外在收益可以被估计为在一定数量的时间步t上(例如,在一定数量的动作之后)返回的平均奖励。多个时间步可以大于或等于混合时间。
可以通过使用利用衰减因子ad的移动平均来进一步对估计进行平均:也就是说,每次确定新的外在收益(例如,从新的轨迹)时,它用于更新估计的外在收益的运行平均值。
本文将讨论多种不同形式的内在奖励。外在奖励re可以从环境接收或基于环境的观察来计算,并且通常是给定策略执行特定任务的程度的度量。替代地,在一些实现方式中,外在奖励re可以是另一多样性奖励。也就是说,可以基于进一步的多样性奖励(例如,本文提到的多样性奖励之一,假设它不同于用于最大化多样性的多样性奖励)或基于从实现新策略接收的外在奖励来确定外在收益。
可以响应于策略的实现(例如,响应于动作)从环境接收外在奖励,或者可以基于基于观察的显式奖励函数来计算外在奖励。可以以与可以如何计算多样性收益(如上所述)类似的方式基于预期的外在奖励来计算收益。
算法1示出了用于在给定外在奖励函数和内在奖励函数的情况下确定一组不同策略的过程。该方法通过基于最大化预期外在收益确定第一(最优)策略来初始化。然后将最优值设置为该第一策略的值,并将第一策略添加到策略集合中。在此之后,确定多个策略(多达T。策略)。对于每个新策略πi,基于策略相对于策略集合中先前确定的策略的后继特征的多样性来设置多样性奖励然后,通过一组优化步骤来确定新策略,该组优化步骤使受新策略相对于其平均外在奖励值接近最优的约束的平均内在奖励值最大化。也就是说,优化使服从预期外在收益大于或等于/>的预期多样性收益最大化。在此之后,确定策略πi的后继特征ψi。然后将策略πi添加到策略集合Πi,并且将策略的后继特征ψi添加到后继特征Ψi的集合。
上述方法旨在最大化服从最低执行标准的技能多样性。技能多样性可以使用多种方法来测量。一种方法是根据轨迹特定量(诸如最终状态、初始状态和最终状态的混合或轨迹)来测量技能鉴别。隐式地引起多样性的替代方法是学习使集合Πn对最差可能奖励的鲁棒性最大化的策略。
经由鉴别的多样性
为了鼓励策略(也称为“技能”)之间的多样性,策略可以被训练为例如基于它们访问的状态彼此可区分。在这种情况下,学习多样化的技能则是可以容易地区分的学习技能的问题。这可以通过最大化技能之间的共同信息来实现。
为了确定不同的策略,可以定义内在奖励ri,其奖励访问将其与其他策略区分开的状态的策略。可以示出,当尝试最大化共同信息时,该奖励函数可以采取以下形式:r(s|z)=logp(z|s)-logp(z),其中z是表示策略(或技能)的潜在变量。技能策略π(a|s,z)可以控制该奖励的第一部分p(z|s),其测量在给定访问状态s的情况下识别策略(或技能)的概率。因此,该策略对于将其与其他技能区分开来的访问状态得到奖励,从而鼓励多样性。
p(z|s)的确切形式取决于如何对技能进行编码。一种方法是编码z为独热d维变量。类似地,z可以表示为z∈{1,…,n}以索引n个单独的策略πz。
p(z|s)通常由于大的状态空间而难以计算,并且可以替代地经由学习的鉴别器qφ(z|s)来近似。在当前情况下,在策略的平稳分布下测量p(z|s);即,基于上述,最大化多样性的目标可以写为:
找到具有该奖励的最大值的策略可以被视为在解是有效静态分布的约束下求解中的优化程序。该项∑sp(s|z)logp(s|z)对应于/>(s)的负熵。因此,优化可以包括尝试最小化由策略产生的状态分布(例如,静止状态分布)的熵的项。
利用后续特征,鉴别奖励函数可以写为:
其中ψn是当前策略的后继特征的运行平均估计量。
经由鲁棒性的多样性
上述的替代方法是通过最大化策略的性能、其中剩余到最差情况奖励来寻求策略集合之间的鲁棒性。对于固定n,目标是:
其中B2是l2单位球,Π是所有可能策略的集合,并且Πn={π1,…,πn}是被优化的n个策略的集合。
内积ψi·w在策略的稳态分布(参见第2部分)下产生期望值。内部的最小-最大是两玩家零和游戏,其中最小化玩家正在找到使预期值最小化的最差情况奖励函数(因为权重和奖励函数是一一对应的),并且最大化玩家正在从集合Πn中找到使值最大化的最佳策略(因为策略和SF是一一对应的)。外部最大化是为了找到最大化参与者可以使用的n个策略的最佳集合。
直观地说,这个问题的解Πn是一组不同的策略,因为非不同的组很可能产生游戏的低值,也就是说,它很容易被最小化的玩家利用。以这种方式,以与多样化金融投资组合比高度集中的金融投资组合对风险更稳健相同的方式,多样性和稳健性彼此是双重的。通过强制策略集合对对抗性选择的奖励是鲁棒的,它将是多样的。
值得注意的是,最差情况奖励目标可以通过迭代方法来实现,该迭代方法等同于完全校正的Floyd-Warsh(FW)算法,以使函数f=||ψπ||2最小化。因此,为了实现∈最优解,该过程最多需要O(log(1/∈))次迭代。因此,保证以线性速率收敛于最优解。
以上的奖励可以写成如下:
rd(s)=w′·φ(s)
其中
也就是说,w′是上述目标中的内部最小化。
显式多样性
到目前为止,上面讨论的多样性机制被设计成使鲁棒性或鉴别最大化。每一个都在多样性方面具有其自己的优点,但是由于它们没有明确地最大化多样性度量,因此它们不能保证所得到的策略集合将是多样性的。
以下部分定义了两个奖励信号,这两个奖励信号被设计为引起一组不同的策略。这是通过利用关于策略在其SF可用的长期行为的信息来实现的。两种奖励都基于SF之间的相关性应该被最小化的直觉。
为了激励这种方法,应注意,SF可以被视为策略的平稳分布的紧凑表示。当考虑其元素对状态进行编码的有限MDP|S|维“独热”特征向量φ的情况时,这变得清楚,其中/>是指示符功能。在这种特殊情况下,策略π的SF与其平稳分布一致,即ψπ=dπ。在这种解释下,最小化SF之间的相关性直观地对应于鼓励相关联的策略访问状态空间的不同区域,这进而导致不同的行为。只要感兴趣的任务是特征/>的线性组合,类似的推理就在d<|S|时适用。
这可以通过尝试最小化后继特征之间的线性乘积来解决。考虑到集合Π中的单个策略πk的极端场景,目标将是其中w=-ψk。解决该问题是强化学习问题,其奖励在w加权的特征中是线性的。当然,在集合包括多个策略的情况下,则需要适当地定义w。
提出了w的两种实现方式。
首先,可以基于策略集合的后继特征的平均值来计算多样性向量w。例如,多样性向量w可以是策略集合的后继特征的平均值的负数, 在这种情况下,给定状态的多样性奖励可以被认为是策略集合的平均后继特征ψj和给定状态的特征向量φ(s)的线性乘积的负值:
其中k是策略集合中的策略的数量。该公式是有用的,因为它测量集合内的负相关性的总和。然而,当集合中的两个策略碰巧具有带相反符号的相同SF时,它们彼此抵消,并且不影响多样性测量。
替代地,可以基于策略集合中的最接近策略的后继特征来计算多样性向量w,该最接近策略具有最接近给定状态的特征向量φ(s)的后继特征。在这种情况下,可以通过从策略集合的后继特征确定提供与给定状态的特征向量φ(s)的最小线性乘积的后继特征来确定多样性向量w。多样性向量w可以等于这些确定的最接近后继特征的负数。因此,可以考虑给定状态的多样性奖励。
rd(s)=mink{-ψk·φ(s)}
该目标可以鼓励策略与策略集合具有最大的“余量”,因为它使与“最接近”其的元素的负相关性最大化。
实现方式
本文描述的方法提供了确定针对执行特定任务而优化的一组不同的策略。这提供了对仅基于多样性确定策略的方法或确定用于特定任务的单个最优策略的方法的改进。通过提供一组不同的接近最佳的策略,策略集合可以用于提供针对环境变化的改进的鲁棒性(相当于提供解决特定问题的不同方法)。
此外,提供多个策略可以允许特定用户为某个任务选择给定策略。通常,用户可能不知道训练奖励将导致期望结果的先验信息。因此,工程师经常训练策略以最大化初始奖励,调整奖励,并迭代直到他们达到期望的行为。使用本方法,工程师将具有多个策略以在每次尝试中从中进行选择,这些策略也是可解释的(权重是线性的)。因此,这通过避免需要基于调整后的奖励进行额外的训练迭代来提供更有效的强化学习手段。
某些实现通过使用约束马尔可夫决策过程(CMDP)来训练策略。虽然可以通过多目标马尔可夫决策过程来实现这一点,但是CMDP的使用提供了许多优点。首先,CMDP公式化保证所发现的策略接近最优(即,满足性能约束)。其次,多目标MDP中的加权系数必须被调谐,而在本实现方式中,其随时间被调整。这在最大化多样性同时满足奖励的情境下特别重要。在许多情况下,除了作为外在奖励的负值之外,多样性奖励可能没有其他选项。在这些情况下,本方法将返回不多样化的良好策略,而多目标MDP的解决方案可能在两个目标之间波动并且根本没有用。
应注意,实现方式论述了可包含“最大化”或“最小化”的“优化”方法。对“优化”的任何提及涉及旨在改善某个目标的结果的一个或多个处理步骤的集合,但不一定意味着获得“最优”(例如,全局最大或最小)值。相反,它是指尝试改善结果(例如,经由最大化或最小化)的过程。类似地,“最大化”或“最小化”不一定意味着找到全局(或甚至局部)最大值或最小值,而是意味着执行迭代过程以更新函数以将结果朝向(局部或全局)最大值或最小值移动。
还应当注意,虽然本文讨论了术语“奖励”,但是这些奖励可以是负的。在负收益的情况下,这些同样可以被认为是成本。在这种情况下,强化学习任务的总体目标将是最小化预期成本(而不是最大化预期奖励或收益)。
为了使智能体与环境交互,系统接收表征环境的当前状态的数据,并响应于接收到的数据选择要由智能体执行的动作。表征环境状态的数据在本说明书中将被称为观察。
在一些应用中,环境是现实世界环境,并且智能体是与现实世界环境交互的机械智能体。例如,智能体可以是与环境交互以完成特定任务的机器人。作为另一示例,智能体可以是导航通过环境的自主或半自主陆地或空中或水上载具。在这些实现方式中,动作可以是用于控制机器人或载具的物理行为的控制输入。
通常,观察可以包括例如图像、对象位置数据和传感器数据中的一个或多个,以在智能体与环境交互时捕获观察,例如来自图像、距离或位置传感器或来自致动器的传感器数据。在机器人或其他机械智能体或车辆的情况下,观察可以类似地包括智能体的一个或多个部分的位置、线性或角速度、力、扭矩或加速度以及全局或相对姿势中的一个或多个。观察可以在1、2或3维中定义,并且可以是绝对和/或相对观察。例如,在机器人的情况下,观察可以包括表征机器人的当前状态的数据,例如,以下中的一个或多个:关节位置、关节速度、关节力、扭矩或加速度,以及机器人的一部分(诸如手臂和/或由机器人保持的物品)的全局或相对姿势。观察还可以包括例如感测到的电子信号,诸如马达电流或温度信号;和/或例如来自相机或激光雷达传感器的图像或视频数据,例如,来自智能体的传感器的数据或来自与环境中的智能体分开定位的传感器的数据。
在这些应用中,动作可以是控制输入以控制机器人,例如,用于机器人的关节的扭矩或更高级别的控制命令;或者控制自主或半自主陆地或空中或海上载具,例如,对载具的控制表面或其他控制元件的扭矩或更高级别的控制命令;或例如电机控制数据。换句话说,动作可以包括例如机器人的一个或多个关节或另一机械智能体的部件的位置、速度或力/扭矩/加速度数据。动作数据可以包括用于这些动作的数据和/或电子控制数据,诸如马达控制数据,或者更一般地,用于控制环境内的一个或多个电子设备的数据,其控制对观察到的环境的状态具有影响。例如,在自主或半自主陆地或空中或海上载具的情况下,动作可以包括控制导航(例如,转向)和移动(例如,载具的制动和/或加速)的动作。
在一些情况下,系统可以在真实世界环境的模拟中使用机械智能体的模拟来部分地训练,然后被部署以控制作为模拟对象的真实世界环境中的机械智能体。在这种情况下,模拟环境的观察与真实世界环境相关,并且模拟环境中的所选择的动作与在真实世界环境中由机械智能体执行的动作相关。
虽然本申请讨论了基于策略多样性的多样性奖励,但是也可以基于要实现的总体目标来获得外在奖励。在这些应用中,外在奖励/成本可以包括以下内容或基于以下内容来定义:
i.用于接近或实现一个或多个目标位置、一个或多个目标姿势或一个或多个其他目标配置的一个或多个奖励。一个或多个奖励取决于任何先前提到的观察,例如机器人或车辆位置或姿势。例如,在机器人的情况下,奖励可以取决于关节取向(角度)或速度、末端执行器位置、质心位置或身体部位组的位置和/或取向。
ii.可以类似地定义一个或多个成本,例如负奖励。负奖励或成本也可以或替代地与由致动器或末端执行器施加的力相关联,例如,取决于与对象相互作用时的阈值或最大施加力。负奖励还可以取决于能例如用于约束移动的量或功率使用、过度运动速度、一个或多个机器人身体部分的一个或多个位置。
基于这些外在奖励的目标可以与不同的偏好相关联,例如对安全相关目标(诸如工作包络(envelope)或施加到对象的力)的高度偏好。
机器人可以是自主或半自主移动车辆或者是自主或半自主移动车辆的一部分。然后可以应用类似的目标。另外或替代地,这样的车辆可以具有与车辆的物理移动相关的一个或多个目标,诸如取决于以下各项的目标(外在奖励):移动时的能量/功率使用,例如最大或平均能量使用;移动速度;在移动时采取的路线,例如用于惩罚两点之间的较长路线而不是较短路线,如通过距离或时间测量的。这样的车辆或机器人可以用于执行诸如仓库、物流或设备自动化的任务,例如,在其制造期间收集、放置或移动存储的货物或货物或货物的部分;或者所执行的任务可以包括包裹递送控制任务。因此,一个或多个目标可以涉及这样的任务,动作可以包括与转向或其他方向控制动作相关的动作,并且观察可以包括对其他车辆或机器人的位置或运动的观察。
在一些其他应用中,相同的观察、动作和目标可以应用于如上所述的物理系统/环境的模拟。例如,机器人或车辆可以在于现实世界环境中被使用之前在模拟中进行训练。
在一些应用中,智能体可以是静态或移动软件智能体,即被配置为自主操作和/或与其他软件智能体或人员一起操作以执行任务的计算机程序。例如,环境可以是集成电路路由环境,并且智能体可以被配置为执行用于路由诸如ASIC的集成电路的互连线的路由任务。然后,目标(外在奖励/成本)可以取决于一个或多个路由度量,诸如互连电阻、电容、阻抗、损耗、速度或传播延迟、物理线路参数(诸如宽度、厚度或几何形状)以及设计规则。目标可以包括与路由电路的全局属性(例如,部件密度、操作速度、功耗、材料使用或冷却要求)相关的一个或多个目标。观察可以是部件位置和互连的观察;动作可以包括部件放置动作(例如,用于定义部件位置或取向)和/或互连路由动作(例如,互连选择和/或放置动作)。
在一些应用中,智能体可以是电子智能体,并且观察可以包括来自监测设备或服务设施的一部分的一个或多个传感器和其他传感器的数据,诸如电流、电压、功率、温度,和/或表示设备的电子和/或机械项目的功能的电子信号。智能体可以控制包括例如在诸如数据中心、服务器群或电网主电源或水分配系统的设施中或在制造设备或服务设施中的设备项目的现实世界环境中)的动作。然后,观察可以涉及设备或设施的操作,例如,它们可以包括对设备的电力或水使用的观察,或者对发电或配电控制的观察,或者对资源使用或废物产生的观察。动作可以包括控制设备/设施的装备项目或对设备/设施的装备项目施加操作条件的动作,和/或导致设备/设施的操作中的设置改变的动作,例如,用于调整或打开/关闭设备/设施的部件。目标(定义外在奖励/成本)可以包括以下中的一个或多个:效率的度量,例如资源使用;对环境中的操作的环境影响的度量,例如废物输出;电或其他功耗;加热/冷却要求;设施中的资源使用,例如水使用;设施的温度;设施内的物品的特性的计数。
在一些应用中,环境可以是数据分组通信网络环境,并且智能体可以包括用于通过通信网络路由数据分组的路由器。动作可以包括数据分组路由动作,并且观察可以包括例如路由表的观察,该路由表包括路由度量,诸如路由路径长度、带宽、负载、跳数、路径成本、延迟、最大传输单元(MTU)和可靠性的度量。目标可以提供用于最大化或最小化路由度量中的一个或多个路由度量的外在奖励/成本。
在一些其他应用中,智能体是管理跨计算资源(例如,在移动设备上和/或在数据中心中)的任务分配的软件智能体。在这些实现方式中,观察可以包括对计算资源(诸如计算和/或存储器容量)或互联网可访问资源的观察;并且动作可以包括将任务分配给特定计算资源。目标可以包括取决于(例如,最大化或最小化)以下中的一个或多个的外在奖励:计算资源的利用率、电功率、带宽和计算速度。
在一些其他应用中,环境是互联网或移动通信环境,并且智能体是管理用户的个性化推荐的软件智能体。观察可以包括用户采取的先前动作(表征用户采取的先前动作的特征);动作可以包括向用户推荐诸如内容项的项的动作。外在奖励可以涉及最大化或最小化以下中的一个或多个的目标:用户将有利地响应被推荐(内容)项的估计可能性、对一个或多个推荐项的适合性的约束、推荐项的成本、以及用户接收到的推荐数量(可选地在一时间跨度内)。
在上述系统和计算机存储介质的上下文中也可以采用与先前描述的那些特征相对应的特征。
本文描述的方法可以在一个或多个计算机的系统上实现。对于被配置为执行特定操作或动作的一个或多个计算机的系统,意味着系统已经在其上安装了软件、固件、硬件或它们的组合,这些软件、固件、硬件或它们的组合在操作中使得系统执行操作或动作。对于被配置为执行特定操作或动作的一个或多个计算机程序,意味着一个或多个程序包括当由数据处理装置执行时使装置执行操作或动作的指令。
本说明书中描述的主题和功能操作的实施例可以在数字电子电路、有形体现的计算机软件或固件、计算机硬件(包括本说明书中公开的结构及其结构等同物)或它们中的一个或多个的组合中实现。本说明书中描述的主题的实施例可以实现为一个或多个计算机程序,即,在有形非暂时性程序载体上编码的计算机程序指令的一个或多个模块,用于由装置的数据处理执行或控制数据处理的操作。可替代地或另外地,程序指令可以被编码在人工生成的传播信号上,例如机器生成的电、光或电磁信号,其被生成以编码信息以传输到合适的接收器装置以供数据处理装置执行。计算机存储介质可以是机器可读存储设备、机器可读存储基板、随机或串行存取存储器设备、或它们中的一个或多个的组合。然而,计算机存储介质不是传播信号。
术语“数据处理装置”涵盖用于处理数据的所有种类的装置、设备和机器,包括例如可编程处理器、计算机或多个处理器或计算机。装置可以包括专用逻辑电路,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。除了硬件之外,装置还可以包括为所讨论的计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统或它们中的一个或多个的组合的代码。
计算机程序(其也可以被称为或描述为程序、软件、软件应用、模块、软件模块、脚本或代码)可以以任何形式的编程语言编写,包括编译或解释语言,或者声明或过程语言,并且它可以以任何形式部署,包括作为独立程序或作为模块、组件、子例程或适合在计算环境中使用的其他单元。计算机程序可以但不必对应于文件系统中的文件。程序可以存储在保存其他程序或数据的文件的一部分中,例如,存储在标记语言文档中的一个或多个脚本,存储在专用于所讨论的程序的单个文件中,或者存储在多个协调文件中,例如,存储一个或多个模块、子程序或代码部分的文件。计算机程序可以被部署为在一个计算机上或在位于一个站点处或分布在多个站点上并通过通信网络互连的多个计算机上执行。
如本说明书中所使用的,“引擎”或“软件引擎”是指提供与输入不同的输出的软件实现的输入/输出系统。引擎可以是编码的功能块,诸如库、平台、软件开发工具包(“SDK”)或对象。每个引擎可以在包括一个或多个处理器和计算机可读介质的任何适当类型的计算设备上实现,例如服务器、移动电话、平板计算机、笔记本计算机、音乐播放器、电子书阅读器、膝上型或台式计算机、PDA、智能电话或其他固定或便携式设备。另外,引擎中的两个或更多个可以在相同的计算设备上或在不同的计算设备上实现。
本说明书中描述的过程和逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程计算机执行,以通过对输入数据进行操作并生成输出来执行功能。过程和逻辑流程也可以由专用逻辑电路执行,并且装置也可以实现为专用逻辑电路,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。例如,过程和逻辑流程可以由图形处理单元(GPU)执行,并且装置也可以实现为GPU。
适合于执行计算机程序的计算机包括,例如,可以基于通用或专用微处理器或两者,或任何其他类型的中央处理单元。通常,中央处理单元将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行或运行指令的中央处理单元和用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括用于存储数据的一个或多个大容量存储设备(例如磁盘、磁光盘或光盘),或者可操作地耦合以从其接收数据或向其传输数据或两者。然而,计算机不需要具有这样的设备。此外,计算机可以嵌入在另一设备中,例如移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏控制台、全球定位系统(GPS)接收器或便携式存储设备,例如通用串行总线(USB)闪存驱动器,仅举几例。
适用于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备,例如EPROM、EEPROM和闪存设备;磁盘,例如内部硬盘或可移动磁盘;磁光盘;以及CD ROM和DVD-ROM盘。处理器和存储器可以由专用逻辑电路补充或并入专用逻辑电路中。
为了提供与用户的交互,本说明书中描述的主题的实施例可以在具有用于向用户显示信息的显示设备(例如,CRT(阴极射线管)或LCD(液晶显示器)监视器)以及用户可以通过其向计算机提供输入的键盘和指向设备(例如,鼠标或轨迹球)的计算机上实现。其他种类的设备也可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈,例如视觉反馈、听觉反馈或触觉反馈;并且可以以任何形式接收来自用户的输入,包括声音、语音或触觉输入。另外,计算机可以通过向用户使用的设备发送文档和从用户使用的设备接收文档来与用户交互;例如,通过响应于从网络浏览器接收的请求将网页发送到用户的客户端设备上的网络浏览器。
用于实现机器学习模型的数据处理装置还可以包括例如专用硬件加速器单元,用于处理机器学习训练或生产的公共和计算密集部分,即推理、工作负载。
可以使用机器学习框架(例如,TensorFlow框架、PyTorch框架、Microsoft认知工具包框架、Apache Singa框架或Apache MXNet框架)来实现和部署机器学习模型。
本说明书中描述的主题的实施例可以在计算系统中实现,该计算系统包括后端组件(例如,作为数据服务器),或者包括中间件组件(例如,应用服务器),或者包括前端组件(例如,具有图形用户界面或Web浏览器的客户端计算机,用户可以通过该图形用户界面或Web浏览器与本说明书中描述的主题的实现交互),或者一个或多个这样的后端、中间件或前端组件的任何组合。系统的组件可以通过任何形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”)和广域网(“WAN”),例如因特网。
计算系统可以包括客户端和服务器。客户端和服务器通常彼此远离,并且通常通过通信网络进行交互。客户端和服务器的关系借助于在相应计算机上运行并且彼此具有客户端-服务器关系的计算机程序而产生。
虽然本说明书包含许多具体实现方式细节,但是这些不应被解释为对任何发明或可能要求保护的范围的限制,而是作为可以特定于特定发明的特定实施例的特征的描述。在本说明书中在单独实施例的上下文中描述的某些特征也可以在单个实施例中组合实现。相反,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合在多个实施例中实现。此外,尽管特征可以在上面被描述为以某些组合起作用并且甚至最初如此要求保护,但是来自所要求保护的组合的一个或多个特征在一些情况下可以从组合中删除,并且所要求保护的组合可以针对子组合或子组合的变型。
类似地,虽然在附图中以特定顺序描绘了操作,但是这不应被理解为要求以所示的特定顺序或按顺序执行这些操作,或者执行所有示出的操作,以实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。此外,上述实施例中的各种系统模块和组件的分离不应被理解为在所有实施例中都需要这种分离,并且应当理解,所描述的程序组件和系统通常可以一起集成在单个软件产品中或封装到多个软件产品中。
已经描述了主题的特定实施例。其它实施例在所附权利要求书的范围内。例如,权利要求中记载的动作可以以不同的顺序执行并且仍然实现期望的结果。作为一个示例,附图中描绘的过程不一定需要所示的特定顺序或相继顺序来实现期望的结果。在某些实现方式中,多任务和并行处理可能是有利的。
Claims (20)
1.一种用于通过强化学习来训练神经网络系统的方法,所述神经网络系统被配置为接收表征由智能体与之交互的环境的状态的输入观察,并且根据旨在满足目标的策略来选择和输出动作,所述方法包括:
获得策略集合,所述策略集合包括用于满足所述目标的一个或多个策略;
基于所述一个或多个策略确定新策略,其中所述确定包括一个或多个优化步骤,所述一个或多个优化步骤旨在基于通过遵循所述新策略将获得的预期收益,在所述新策略满足最小性能标准的条件下,最大化所述新策略相对于所述策略集合的多样性。
2.根据权利要求1所述的方法,其中,基于所述新策略和所述策略集合中的一个或多个策略中的每一个的预期状态分布来测量所述多样性。
3.根据权利要求1或2所述的方法,其中:
确定所述新策略包括定义为给定状态提供多样性奖励的多样性奖励函数,所述多样性奖励提供所述新策略相对于所述策略集合的多样性的度量;
所述一个或多个优化步骤旨在在新策略满足最小性能标准的条件下基于多样性奖励函数最大化预期多样性收益。
4.根据权利要求3所述的方法,其中,所述一个或多个优化步骤旨在在所述新策略满足所述最小性能标准的条件下,最小化所述新策略的后继特征与所述策略集合的后继特征之间的相关性。
5.根据权利要求3或4所述的方法,其中:
所述多样性奖励函数是表示给定状态s的观察的特征向量φ(s)与表征新策略相对于策略集合的多样性的多样性向量w之间的线性乘积。
6.根据权利要求5所述的方法,其中,所述多样性向量w基于以下来计算:
所述策略集合的后继特征的平均值;或
所述策略集合中的最接近策略的后继特征,所述最接近策略具有与所述给定状态的特征向量φ(s)最接近的后继特征。
7.根据权利要求5所述的方法,其中,基于所述策略集合中的最接近策略的后继特征来计算所述多样性向量w,所述最接近策略具有与所述给定状态的特征向量φ(s)最接近的后继特征,其中,通过从所述策略集合的后继特征中确定提供与所述给定状态的特征向量φ(s)的最小线性乘积的后继特征来确定所述多样性向量w。
8.根据权利要求3-7中任一项所述的方法,其中,所述一个或多个优化步骤中的每一个包括:
从所述新策略的实现中获得状态的观察序列;以及
更新所述新策略的参数,以在满足所述最小性能标准的条件下最大化所述观察序列和所述多样性奖励之间的线性乘积。
9.根据权利要求1-3中任一项所述的方法,其中,所述一个或多个优化步骤旨在在所述新策略满足所述最小性能标准的条件下确定新策略,所述新策略基于所述新策略和策略集合来最大化策略和状态之间的共同信息的度量。
10.根据权利要求1-3中任一项所述的方法,其中,所述一个或多个优化步骤包括:
基于所述策略集合确定最差情况奖励函数;
确定新策略,在所述新策略满足所述最小性能标准的条件下,所述新策略最大化基于所述最差情况奖励函数计算的预期最差情况收益。
11.根据前述权利要求中任一项所述的方法,其中,基于从实现所述新策略接收到的外在奖励来确定将通过遵循所述新策略获得的预期收益。
12.根据前述权利要求中任一项所述的方法,其中,所述最小性能标准要求将通过遵循所述新策略获得的预期收益大于或等于阈值。
13.根据权利要求12所述的方法,其中,所述阈值被定义为基于来自第一策略的预期收益的最优值的分数,所述最优值是通过最大化所述第一策略的预期收益而确定的。
14.根据前述权利要求中任一项所述的方法,其中,获得策略集合包括:通过更新第一策略的一个或多个更新步骤来获得所述第一策略,以便最大化所述第一策略的预期收益。
15.根据前述权利要求中的任一项所述的方法,还包括:
将所确定的新策略添加到所述策略集合;以及
基于所述策略集合确定另一新策略,其中,所述确定包括一个或多个优化步骤,所述一个或多个优化步骤旨在基于通过遵循所述另一新策略将获得的预期收益、在所述另一新策略满足最小性能标准的条件下,最大化所述另一新策略相对于所述策略集合的多样性。
16.根据前述权利要求中的任一项所述的方法,还包括:
基于所述策略集合上的概率分布来实现所述策略集合,其中,所述神经网络系统被配置为根据所述概率分布从所述策略集合中选择策略并实现所选择的策略。
17.根据前述权利要求中任一项所述的方法,其中,通过求解约束马尔可夫决策过程来确定所述新策略。
18.根据前述权利要求中任一项所述的方法,其中,所述智能体是机械智能体,所述环境是现实世界环境,并且所述动作是所述机械智能体在所述现实世界环境中为了满足所述目标而采取的动作。
19.一种系统,包括一个或多个计算机和存储指令的一个或多个存储设备,所述指令在由所述一个或多个计算机执行时使所述一个或多个计算机执行根据前述权利要求中的任一项所述的方法。
20.存储指令的一个或多个计算机存储介质,所述指令在由一个或多个计算机执行时使所述一个或多个计算机执行根据权利要求1-18中任一项所述的方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202163146253P | 2021-02-05 | 2021-02-05 | |
US63/146,253 | 2021-02-05 | ||
PCT/EP2022/052788 WO2022167623A1 (en) | 2021-02-05 | 2022-02-04 | Neural network reinforcement learning with diverse policies |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116897357A true CN116897357A (zh) | 2023-10-17 |
Family
ID=80628783
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280013473.8A Pending CN116897357A (zh) | 2021-02-05 | 2022-02-04 | 具有不同策略的神经网络强化学习 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20240104389A1 (zh) |
EP (1) | EP4288905A1 (zh) |
CN (1) | CN116897357A (zh) |
WO (1) | WO2022167623A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2628757A (en) * | 2023-03-29 | 2024-10-09 | Univ Nanyang Tech | A computer-implemented method for training an untrained policy network of an autonomous agent |
-
2022
- 2022-02-04 WO PCT/EP2022/052788 patent/WO2022167623A1/en active Application Filing
- 2022-02-04 CN CN202280013473.8A patent/CN116897357A/zh active Pending
- 2022-02-04 US US18/275,511 patent/US20240104389A1/en active Pending
- 2022-02-04 EP EP22707625.4A patent/EP4288905A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
EP4288905A1 (en) | 2023-12-13 |
WO2022167623A1 (en) | 2022-08-11 |
US20240104389A1 (en) | 2024-03-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230082326A1 (en) | Training multi-objective neural network reinforcement learning systems | |
JP7335434B2 (ja) | 後知恵モデリングを用いた行動選択ニューラルネットワークの訓練 | |
CN110520868B (zh) | 用于分布式强化学习的方法、程序产品和存储介质 | |
Das et al. | Intelligent-based multi-robot path planning inspired by improved classical Q-learning and improved particle swarm optimization with perturbed velocity | |
CN112292693A (zh) | 强化学习系统训练返回函数的元梯度更新 | |
CN111971691A (zh) | 表示物理系统的图神经网络 | |
US20220366247A1 (en) | Training action selection neural networks using q-learning combined with look ahead search | |
US20230144995A1 (en) | Learning options for action selection with meta-gradients in multi-task reinforcement learning | |
EP4014162A1 (en) | Controlling agents using causally correct environment models | |
JP7297842B2 (ja) | リスク尺度を示すパラメータに基づいて訓練されたモデルを使用して、与えられた状況に対するデバイスの行動を決定する方法およびシステム | |
CN116897357A (zh) | 具有不同策略的神经网络强化学习 | |
US20240127071A1 (en) | Meta-learned evolutionary strategies optimizer | |
US20230325635A1 (en) | Controlling agents using relative variational intrinsic control | |
EP4305553A1 (en) | Multi-objective reinforcement learning using weighted policy projection | |
WO2022069743A1 (en) | Constrained reinforcement learning neural network systems using pareto front optimization | |
Cao et al. | Hierarchical reinforcement learning for kinematic control tasks with parameterized action spaces | |
Delgrange et al. | Controller Synthesis from Deep Reinforcement Learning Policies | |
Hachiya et al. | Robot Control by Least-Squares Policy Iteration with Geodesic Gaussian Kernels | |
八谷大岳 et al. | Robot Control by Least-Squares Policy Iteration with Geodesic Gaussian Kernels |
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 |