CN108604309B - 从动作集中选择代理执行的动作的方法、系统和存储介质 - Google Patents
从动作集中选择代理执行的动作的方法、系统和存储介质 Download PDFInfo
- Publication number
- CN108604309B CN108604309B CN201680066409.0A CN201680066409A CN108604309B CN 108604309 B CN108604309 B CN 108604309B CN 201680066409 A CN201680066409 A CN 201680066409A CN 108604309 B CN108604309 B CN 108604309B
- Authority
- CN
- China
- Prior art keywords
- action
- estimate
- observation
- value
- actions
- 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.)
- Active
Links
Images
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/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic networks
-
- 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
- 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
-
- 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
-
- 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/02—Neural networks
- G06N3/08—Learning methods
- G06N3/094—Adversarial 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/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- 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/088—Non-supervised learning, e.g. competitive learning
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y04—INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
- Y04S—SYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
- Y04S10/00—Systems supporting electrical power generation, transmission or distribution
- Y04S10/50—Systems or methods supporting the power network operation or management, involving a certain degree of interaction with the load-side end user applications
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Probability & Statistics with Applications (AREA)
- Image Analysis (AREA)
Abstract
系统、方法和装置,包括编码在计算机存储介质上的计算机程序,用于从动作集中选择待由与环境交互的代理执行的动作。在一个方面中,该系统包括对抗性深度神经网络。对抗性深度神经网络包括价值子网、优势子网和组合层。价值子网处理观察的表示以生成价值估计。优势子网处理观察的表示以对该动作集中的每个动作生成优势估计。组合层将价值估计与用于每个动作的相应的优势估计组合以生成用于该动作的相应的Q值。该系统使用用于该动作集中的动作的相应的Q值,选择响应于该观察,将由该代理执行的动作。
Description
技术领域
本说明书涉及强化学习。
背景技术
在强化学习系统中,代理通过响应于接收表征环境的当前状态的观察,执行由强化学习系统选择的动作来与环境交互。
一些强化学习系统根据神经网络的输出,响应于接收给定观察,选择将由代理执行的动作。
神经网络是采用一个或多个非线性单元层来预测所接收输入的输出的机器学习模型。一些神经网络是除了输出层外,还包括一个或多个隐藏层的深度神经网络。每个隐藏层的输出被用作网络中的下一层(即下一隐藏层或输出层)的输入。网络的每一层根据相应的参数集的当前值,由所接收的输入产生输出。
发明内容
通常,本说明书中所述的主题的一个创新方面可以体现在用于从动作集中选择将由与环境交互的代理执行的动作的系统中,其中,该系统包括由一个或多个计算机实现的对抗性深度神经网络。
该对抗性深度神经网络包括:(i)价值子网,所述价值子网被配置为:接收表征所述环境的当前状态的观察的表示;以及处理所述观察的表示以生成价值估计,所述价值估计是由所述环境处于所述当前状态而产生的预期返回的估计;(ii)优势子网,所述优势子网被配置为:接收所述观察的表示;以及处理所述观察的表示以对所述动作集中的每个动作生成相应的优势估计,所述优势估计是当所述环境处于当前状态时由所述代理执行所述动作而产生的返回相对于当所述环境处于当前状态时由所述代理执行其他动作而产生的返回的相对度量的估计;以及(iii)组合层,所述组合层被配置为对每个动作,组合所述价值估计和所述动作的相应的优势估计以生成用于所述动作的相应的Q值,其中,所述所述相应的Q值是当所述环境处于当前状态时由所述代理执行所述动作而产生的预期返回的估计。
该方面的其他实施例包括使用该系统来选择将由与环境交互的代理执行的动作的方法。该方面的其他实施例包括相应的计算机系统、装置和记录在一个或多个计算机存储设备上的计算机程序,分别被配置为执行所述方法的动作。一个或多个计算机的系统可以被配置为借助于安装在系统上、运行时,使系统执行动作的软件、固件、硬件或其任意组合来执行特定的操作或动作。一个或多个计算机程序可以被配置为借助于包括当由数据处理装置执行时,使该装置执行动作的指令来执行特定的操作或动作。
在一些实施方式中,所述系统包括一个或多个第二计算机以及一个或多个存储设备,所述一个或多个存储设备存储指令,所述指令当由所述一个或多个第二计算机执行时,使所述一个或多个第二计算机执行包括使用用于所述动作集中的所述动作的相应的Q值,响应于所述观察,选择将由所述代理执行的动作。
在一些实施方式中,所述对抗性深度神经网络进一步包括一个或多个初始神经网络层,所述一个或多个初始神经网络层被配置为接收所述观察;以及处理所述观察以生成所述观察的所述表示。
在一些实施方式中,所述观察是图像,以及所述一个或多个初始神经网络层是卷积神经网络层。在一些实施方式中,所述观察的表示是所述观察。
在一些实施方式中,组合所述价值估计和所述相应的优势估计包括对所述动作集中的所述动作,确定所述相应的优势估计的集中趋势的度量;通过使用所述集中趋势的度量调整用于所述动作的所述相应的优势估计,确定用于所述动作的相应的调整优势估计;以及组合用于所述动作的相应的优势估计和所述价值估计以确定用于所述动作的相应的Q值。
在一些实施方式中,所述价值子网具有第一参数集,以及所述优势子网具有不同的第二参数集。
在一些实施方式中,使用用于所述动作集中的所述动作的相应的Q值,响应于所述观察,选择将由所述代理执行的动作包括将具有最高Q值的动作选择为将由所述代理执行的动作。
在一些实施方式中,使用用于所述动作集中的所述动作的所述相应的Q值,响应于所述观察,选择将由所述代理执行的动作包括以概率ε从所述动作集中选择随机动作;以及以概率1-ε选择具有最高Q值的动作。
本说明书中公开的主题的另一创新方面可以体现在一种用于使用包括价值子网和优势子网的对抗性深度神经网络,从动作集中选择将由与环境交互的代理执行的动作的方法中,其中,所述方法包括动作:获得表征所述环境的当前状态的观察的表示;使用所述价值子网处理所述观察的所述表示,其中,所述价值子网被配置为:接收所述观察的表示;以及处理所述观察的表示以生成价值估计,所述价值估计是由所述环境处于当前状态而产生的预期返回的估计;使用所述优势子网处理所述观察的表示,其中,所述优势子网被配置为:接收所述观察的表示;以及处理所述观察的表示以对所述动作集中的每个动作生成相应的优势估计,所述优势估计是当所述环境处于当前状态时由所述代理执行所述动作而产生的返回相对于当所述环境处于当前状态时由所述代理执行其他动作而产生的返回的相对度量的估计;以及对每个动作,组合所述价值估计和所述动作的相应的优势估计以生成用于所述动作的相应的Q值,其中,所述相应的Q值是当所述环境处于当前状态时由所述代理执行所述动作而产生的预期返回的估计;以及使用用于所述动作集中的动作的所述相应的Q值,响应于所述观察,选择将由所述代理执行的动作。
该方面的其他实施例包括相应的计算机系统、装置和记录在一个或多个计算机存储设备上的计算机程序,分别被配置为执行所述方法的动作。一个或多个计算机的系统可以被配置为借助于安装在系统上、运行时,使系统执行动作的软件、固件、硬件或其任意组合来执行特定的操作或动作。一个或多个计算机程序可以被配置为借助于包括当由数据处理装置执行时,使该装置执行动作的指令来执行特定的操作或动作。
在一些实施方式中,所述对抗性深度神经网络进一步包括一个或多个初始神经网络层,以及所述方法进一步包括使用所述一个或多个初始神经网络层处理所述观察,其中,所述一个或多个初始神经网络层被配置为接收所述观察;以及处理所述观察以生成所述观察的表示。
在一些实施方式中,所述观察是图像,以及其中,所述一个或多个初始神经网络层是卷积神经网络层。在一些实施方式中,所述观察的表示是所述观察。
在一些实施方式中,组合所述价值估计和所述相应的优势估计包括:对所述动作集中的动作,确定所述相应的优势估计的集中趋势的度量;通过使用所述集中趋势的度量来调整用于所述动作的相应的优势估计,确定用于所述动作的相应的调整优势估计;以及组合用于所述动作的相应的优势估计和价值估计以确定用于所述动作的相应的Q值。
在一些实施方式中,所述价值子网具有第一参数集,以及所述优势子网具有不同的第二参数集。
在一些实施方式中,使用用于所述动作集中的动作的相应的Q值,响应于所述观察,选择将由所述代理执行的动作包括将具有最高Q值的动作选择为将由所述代理执行的动作。
在一些实施方式中,使用用于所述动作集中的动作的相应的Q值,响应于所述观察,选择将由所述代理执行的动作包括以概率ε从所述动作集中选择随机动作;以及以概率1-ε选择具有最高Q值的动作。
本说明书中所述的主题可以在特定实施例中实施,以便实现下述一个或多个优点。可以训练神经网络以产生更好的优势估计。训练神经网络以生成可靠的优势估计在计算上比训练神经网络以生成可靠的价值估计更复杂。这是因为优势估计必须考虑代理的环境的状态以及该状态下每个单独的动作的优势的属性,而价值估计仅基于环境状态的属性。为生成优势估计分配单独的子网使能用于生成跨不同动作的优势估计的神经网络的通用训练,无需改变基础强化学习算法。这导致产生更准确的优势估计和Q值,并且减轻或克服上文所述的产生可靠优势估计的困难。在不同动作的优势估计的目标值和Q值彼此接近的情况下,生成的Q值的提高的准确性尤其显著。
在附图和下文的描述中阐述了本说明书的主题的一个或多个实施例的细节。从描述、附图和权利要求,本主题的其他特征、方面和优点将变得显而易见。
附图说明
图1示出示例性强化学习系统。
图2是用于选择将由代理执行的动作的示例性过程的流程图。
图3是使用调整的优势估计,生成Q值的示例性过程的流程图。
各个附图中的相同的参考数字和标记表示相同的元件。
具体实施方式
本说明书通常描述了选择将由与环境交互的强化学习代理执行的动作的强化学习系统。为了代理与环境交互,该系统接收表征环境的当前状态的数据并且响应于所接收的数据,从预定动作集选择将由代理执行的动作。表征环境状态的数据在本说明书中将被称为观察。
在一些实施方式中,环境是模拟环境,并且代理被实现为与模拟环境交互的一个或多个计算机程序。例如,模拟环境可以是视频游戏,以及代理可以是玩视频游戏的模拟用户。作为另一示例,模拟环境可以是运动模拟环境,例如驾驶模拟或飞行模拟,并且代理是通过运动模拟导航的模拟车辆。在这些实施方式中,动作可以是控制模拟用户或模拟车辆的控制输入。
在其他一些实施方式中,环境是真实世界的环境,以及代理是与真实世界环境交互的机械代理。例如,代理可以是与环境交互以完成特定任务的机器人。作为另一示例,代理可以是导航通过环境的自动或半自动车辆。在这些实施方式中,动作可以是控制机器人或自动车辆的控制输入。
例如,代理可以是与环境交互的机器人代理。关于该环境的观察可以包括由机器人代理的一个或多个传感器捕获并且表征环境的一个或多个特性的感测数据(包括图像)。例如,每个观察可以包括由机器人代理的相机捕获的图像以及可选地,由机器人代理的一个或多个其他传感器(诸如热传感器、化学传感器、运动传感器等)捕获的一个或多个其他传感器读数。
图1示出示例性强化学习系统100。强化学习系统100选择将由与环境104交互的强化学习代理102执行的动作。即,强化学习系统100接收观察,每个观察表征环境104的各个状态,并且响应于每个观察,从预定动作集选择响应于所述观察,将由强化学习代理102执行的动作。响应于由代理102执行的一些或全部动作,强化学习系统100接收奖励。每个奖励是作为代理执行动作的结果,从环境104接收的数值,即,取决于根据代理102执行动作的结果,环境104转换到的状态,奖励将是不同的。
具体地,强化学习系统100使用对抗性深度神经网络103,选择将由代理102执行的动作。对抗性深度神经网络103是将表征环境104的当前状态的观察105接收为输入并且对动作集中的每一动作生成相应的Q值171的神经网络。
给定动作的Q值是由代理102响应于观察105而执行给定动作产生的预期返回的估计。返回是作为响应于观察105,代理执行动作的结果,由强化学习系统100接收的总长期未来奖励的度量。例如,返回可以是未来奖励的时间折扣总和(time-discounted sum)。
对抗性深度神经网络103包括价价值子网111、优势子网112和组合层113。对抗性深度神经网络103还可以可选地包括初始神经网络层110。
当被包括在对抗性深度神经网络103中时,初始神经网络层110被配置为接收观察105并且处理观察105以生成观察105的表示151。例如,在观察为图像的实施方式中,一个或多个初始神经网络层110可以是从图像提取特征的卷积神经网络层。
价值子网111被配置为处理表示151,或者在对抗性深度神经网络103不包括任何初始神经网络层100的实施方式中,处理观察105以对环境104的当前状态,确定价值估计152。当前状态的价值估计152是由环境处于当前状态而产生的预期返回的估计。换句话说,价值估计152测量处于当前状态的重要性,而不管当环境104处于当前状态时选择的动作如何。
优势子网112被配置为处理表示151,或者在对抗性深度神经网络103不包括任何初始神经网络层100的实施方式中,处理观察105以对所述动作集中的每个动作确定相应的优势估计153。用于给定动作的优势估计153是当环境104处于当前状态时由代理执行所述给定动作产生的返回相对于执行动作集106中的其他动作产生的返回的相对度量的估计。
组合层113被配置为对动作集中的每个动作,组合该价值估计152和用于该动作的优势估计153以确定用于该动作的相应的Q值171。在下文中,参考图3,更详细地描述组合价值估计152和用于每个动作的优势估计153。
强化学习系统100可以可选地包括决策制定引擎120。决策制定引擎120使用用于可能动作集合106中的动作的Q值171来选择响应于观察105,将由代理10执行的动作105并且使代理102执行所选择的动作。
对抗性深度神经网络103由一个或多个第一计算机实现,而决策制定引擎120的操作由一个或多个第二计算机执行。
在一些实施方式中,一个或多个第一计算机可以是与一个或多个第二计算机相同的计算机系统的一部分。在其他实施方式中,一个或多个第一计算机以及一个或多个第二计算机可以是不同计算机系统的一部分。
在一些实施方式中,一个或多个第一计算机以及一个或多个第二计算机由相同的一个或多个计算机组成。换句话说,相同的一个或多个计算机实现对抗性深度神经网络103并且执行决策制定引擎120的操作。
在一些实施方式中,一个或多个第一计算机以及一个或多个第二计算机由不同的一个或多个计算机组成。换句话说,不同的一个或多个计算机实现对抗性深度神经网络103并且执行决策制定引擎120的操作。
图2是用于选择将由代理执行的动作的示例性过程200的流程图。为了方便,过程200将被描述为由位于一个或多个位置的一个或多个计算机的系统执行。例如,根据本说明书适当编程的强化学习系统(例如图1的强化学习系统100)可以执行过程200。
系统获得表征环境的当前状态的观察(210)。在一些实施方式中,观察是图像或图像的集合。例如,可以使用与环境或与代理相关联的一个或多个传感器来获得该观察。
系统生成观察的表示(220)。在一些实施方式中,观察的表示是观察本身。在一些其它实施方式中,系统通过对抗性深度神经网络的一个或多个初始神经网络层(例如,图1中的对抗性深度神经网络103的初始神经网络层110)处理观察,生成该观察的表示。
系统通过使用对抗性深度神经网络的价值子网(例如,图1中的对抗性深度神经网络103的价值子网111)处理观察的表示来生成价值估计(230)。价值估计是由代理的环境处于当前状态产生的预期返回的估计。在一些实施方式中,特定状态的价值估计是当在特定状态下开始并且此后按照特定策略,即由对抗性深度网络输出的Q值定义的动作选择策略时的预期返回。
系统通过使用对抗性深度神经网络的优势子网(例如图1中的对抗性深度神经网络103的优势子网112)处理观察的表示,对可能的动作集合中的每个动作产生优势估计(240)。给定动作的优势估计是当环境处于当前状态时由代理执行该动作相对于执行该动作集中的其他动作所产生的返回的相对度量的估计。
系统通过组合价值估计的度量和动作的优势估计的度量来对每个动作生成Q值(250)。在一些实施方式中,系统将动作的价值估计与优势估计相加以生成动作的Q值。在一些其他实施方式中,系统将价值估计与优势估计的调整值相加以生成动作的Q值。
在下文中,参考图3,更详细地描述使用调整的优势估计生成Q值。
系统响应于该观察,选择将由代理执行的动作(260)。
在一些实施方式中,系统将具有最高Q值的动作选择为将由代理执行的动作。在一些其它实施方式中,例如,在对抗性深度神经网络的训练期间,系统以概率ε从可能动作集合中选择随机动作,并且以概率1-ε选择具有最高Q值的动作。在这些实施方式的一些中,当通过更多训练示例呈现该系统时,ε值会减小,这导致系统的随机动作选择的减少。
在一些实施方式中,在训练对抗性深度神经网络之后,系统使用每个动作的优势估计,即通过选择具有最高优势估计的动作来选择将执行的动作。
图3是用于使用调整的优势估计,生成Q值的示例性过程300的流程图。为了方便,过程300将被描述为由位于一个或多个位置的一个或多个计算机的系统执行。例如,根据本说明书适当编程的强化学习系统,例如图1的强化学习系统100可以执行过程300。
系统获得当前状态的价值估计(310)。
该系统对可能动作集中的每个动作,获得相应的优势估计(320)。
系统确定表征优势估计的统计量(330)。在一些实施方式中,统计量是集中趋势的度量,例如相应的优势估计的平均值或中值。在一些其他实施方式中,统计量是优势估计的最大值。
系统使用统计量来确定调整的优势估计(340)。在一些实施方式中,系统从用于每个动作的优势估计中减去统计量以确定用于该动作的调整的优势估计。
系统使用价值估计和相应的优势估计,对每个动作生成Q值(350)。即,系统将当前状态的价值估计与每个动作的调整的优势估计组合以生成每个动作的Q值。
本说明书中描述的主题和功能性操作的实施例能够以数字电子电路、以有形体现的计算机软件或固件、以计算机硬件,包括本说明书中公开的结构及其结构等同物、或者以它们中的一个或多个的组合来实现。本说明书中描述的主题的实施例能够被实现为一个或多个计算机程序,即计算机程序指令的一个或多个模块,其被编码在有形非暂时性程序载体上,以用于由数据处理装置执行或控制数据处理装置的操作。替选地或另外地,程序指令能够被编码在人工生成的传播信号上,例如,机器生成的电、光、或电磁信号,其被生成以编码信息以便传输到合适的接收器装置以供数据处理装置执行。计算机存储介质能够是机器可读存储设备、机器可读存储基底、随机或串行存取存储器设备、或它们中的一个或多个的组合。然而,计算机存储介质不是传播信号。
术语“数据处理装置”涵盖用于处理数据的各种装置、设备和机器,包括例如可编程处理器、计算机、或者多个处理器或计算机。该装置能够包括专用逻辑电路,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。除了硬件之外,该装置还能够包括创建用于所述的计算机程序的执行环境的代码,例如构成处理器固件、协议栈、数据库管理系统、操作系统、或它们中的一个或多个的组合的代码。
计算机程序(也被称为或描述为程序、软件、软件应用、模块、软件模块、脚本、或代码)能够以任何形式的编程语言,包括编译或解释语言、声明性或过程性语言编写,并且其能够以任何形式部署,包括作为独立程序或作为适于在计算环境中使用的模块、组件、子例程、或其它单元。计算机程序可以但不必对应于文件系统中的文件。程序能够被存储在保持其他程序或数据,例如存储在标记语言文档中的一个或多个脚本的文件的一部分中、存储在专用于所述程序的单个文件中、或者存储在多个协作文件,例如存储一个或多个模块、子程序、或代码部分的文件中。计算机程序能够被部署为在一个计算机上或在位于一个地点或跨多个地点分布并且通过通信网络互连的多个计算机上执行。
如在本说明书中所使用的,“引擎”,或“软件引擎”是指提供不同于输入的输出的软件实现的输入/输出系统。引擎能是功能性的编码块,诸如库、平台、软件开发套件(“SDK”)或对象。每一引擎能实现在包括一个或多个处理器和计算机可读介质的任何适当类型的计算设备,例如服务器、移动电话、平板电脑、笔记本电脑、音乐播放器、电子书阅读器、手提或台式计算机、PDAs、智能电话或其他固定或便携式设备上。此外,引擎中的两个或以上可以实现在同一计算设备上,或实现在不同的计算设备上。
本说明书中所述的过程和逻辑流程能够由一个或多个可编程计算机来执行,所述可编程计算机执行一个或多个计算机程序以通过在输入数据上操作并且生成输出来执行功能。该过程和逻辑流程也能够由专用逻辑电路执行并且装置也能够被实现为专用逻辑电路,所述专用逻辑电路例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。
适合于执行计算机程序的处理器包括,例如基于通用或专用微处理器或两者,或者包括任何其他类型的中央处理单元。通常,中央处理单元将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的必需元件是用于实施或执行指令的中央处理单元和用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括用于存储数据的一个或多个大容量存储设备,例如磁盘、磁光盘、或光盘,或者可操作地耦合以从其接收数据或向其传输数据、或者两者的一个或多个大容量存储设备。然而,计算机不需要具有这样的设备。此外,计算机能够被嵌入另一设备中,例如移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏控制台、全球定位系统(GPS)接收器、或便携式存储设备,例如通用串行总线(USB)闪存驱动器,仅举数例。
适合于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备,例如EPROM、EEPROM、和闪速存储器设备;磁盘,例如内部硬盘或可移动盘;磁光盘;以及CD ROM和DVD-ROM盘。处理器和存储器能够由专用逻辑电路补充或者并入专用逻辑电路中。
为了提供与用户的交互,本说明书中所述的主题的实施例能够被实现在具有用于向用户显示信息的显示设备,例如CRT(阴极射线管)或LCD(液晶显示器)监视器以及用户通过其能够向计算机提供输入的键盘和指针设备,例如鼠标或轨迹球的计算机上。其他类型的设备也能够被用于提供与用户的交互;例如,提供给用户的反馈能够是任何形式的感官反馈,例如视觉反馈、听觉反馈、或触觉反馈;并且能够以任何形式接收来自用户的输入,包括声音、语音、或触觉输入。此外,计算机能够通过向用户使用的设备发送文档以及从其接收文档来与该用户交互,例如通过响应于从web浏览器接收的请求而向用户客户端设备上的web浏览器发送网页。
在本说明书中所述的主题的实施例能够被实现在计算系统中,该计算系统包括例如作为数据服务器的后端组件,或者包括例如应用服务器的中间件组件,或者包括例如具有图形用户界面或Web浏览器的客户端计算机的前端组件-用户通过该Web浏览器能够与本说明书中所描述的主题的实施方式交互,或者包括一个或多个这样的后端组件、中间件组件、或前端组件的任意组合。系统的组件能够通过任何形式或介质的数字数据通信,例如通信网络来互连。通信网络的示例包括局域网(“LAN”)和广域网(“WAN”),例如互联网。
计算系统能够包括客户端和服务器。客户端和服务器通常彼此远离并且通常通过通信网络交互。客户端和服务器的关系依靠在相应的计算机上运行并且具有彼此的客户端-服务器关系的计算机程序而产生。
虽然本说明书包含许多具体实施方式细节,但是这些不应被解释为对任何发明或可以要求保护的内容的范围的限制,而是应当被解释为对特定发明的特定实施例特有的特征的描述。本说明书中在单独实施例的场境中描述的某些特征也能够在单个实施例中以组合实现。相反,在单个实施例场境下所描述的各个特征也能够在多个实施例中单独地或以任何合适的子组合来实现。此外,虽然上文可能将特征描述为以某些组合来起作用并且甚至最初如此要求保护,但是在一些情况下来自所要求保护的组合的一个或多个特征能够从组合中被删去,并且所要求保护的组合可以针对子组合或子组合的变型。
类似地,虽然在附图中以特定顺序描绘了操作,但是这不应当被理解为需要以所示的特定顺序或以连续顺序来执行这样的操作、或者需要执行所有所示的操作才能达到期望的结果。在某些情况下,多任务和并行处理可以是有利的。此外,上述实施例中的各种系统组件的分离不应当被理解为在所有实施例中都需要这样的分离,而是应当理解为所述的程序组件和系统通常能够一起集成在单个软件产品中或封装到多个软件产品内。
已经描述了本主题的特定实施例。其他实施例落入所附权利要求书的范围内。例如,权利要求书中所记载的动作能够以不同的顺序执行并且仍然达到期望的结果。作为一个示例,附图中描绘的过程不一定需要所示的特定顺序或连续顺序来达到期望的结果。在某些实施方式中,多任务和并行处理可以是有利的。
Claims (17)
1.一种用于从动作集中选择将由与环境交互的代理执行的动作的系统,所述代理是强化学习代理并且所述环境是模拟环境或真实世界环境,所述代理包括模拟用户、模拟车辆、模拟飞行器、机器人、自动车辆和半自动车辆中的一种,所述系统包括由一个或多个计算机实现的对抗性深度神经网络,所述对抗性深度神经网络包括价值子网、优势子网以及组合层,所述系统被配置为接收与所述模拟环境或真实世界环境的当前状态相关联的输入数据,对所述动作集中的每个动作生成与所述模拟环境或真实世界环境的所述当前状态相关联的Q值,以及基于所述动作集中的所述动作的相应的Q值来为所述代理选择动作以与所述模拟环境或真实世界环境交互,其中:
所述价值子网被配置为:
接收表征所述环境的当前状态的观察的表示;以及
处理所述观察的所述表示以生成价值估计,所述价值估计是由所述环境处于所述当前状态而产生的预期返回的估计;
所述优势子网被配置为:
接收所述观察的所述表示;以及
处理所述观察的所述表示以对所述动作集中的每个动作生成相应的优势估计,所述优势估计是当所述环境处于所述当前状态时由所述代理执行所述动作而产生的返回相对于当所述环境处于所述当前状态时由所述代理执行其他动作而产生的返回的相对度量的估计;以及
所述组合层被配置为:对每个动作,组合所述价值估计和所述动作的相应的优势估计以生成用于该动作的相应的Q值,其中,所述相应的Q值是当所述环境处于所述当前状态时由所述代理执行所述动作而产生的预期返回的估计。
2.如权利要求1所述的系统,其中,所述对抗性深度神经网络进一步包括一个或多个初始神经网络层,所述一个或多个初始神经网络层被配置为:
接收所述观察;以及
处理所述观察以生成所述观察的所述表示。
3.如权利要求2所述的系统,其中,所述观察是图像,以及其中,所述一个或多个初始神经网络层是卷积神经网络层。
4.如权利要求1所述的系统,其中,所述观察的所述表示是所述观察。
5.如权利要求1所述的系统,其中,对每个动作,组合所述价值估计和所述相应的优势估计包括:
对该动作确定所述相应的优势估计的集中趋势的度量;
通过使用所述集中趋势的度量来调整用于该动作的相应的优势估计,确定用于该动作的相应的调整优势估计;以及
组合用于该动作的相应的优势估计和所述价值估计以确定用于该动作的相应的Q值。
6.如权利要求1所述的系统,其中,所述价值子网具有第一参数集,以及所述优势子网具有不同的第二参数集。
7.如权利要求1至6中的任一项所述的系统,其中,选择动作包括:
选择来自所述动作集的具有最高Q值的动作。
8.如权利要求1至6中的任一项所述的系统,其中,选择动作包括:
以概率ε从所述动作集中选择随机动作;以及
以概率1-ε选择具有最高Q值的动作。
9.一种从动作集中选择将由与环境交互的代理执行的动作的方法,所述方法在包括对抗性深度神经网络的系统上执行,所述代理是强化学习代理并且所述环境是模拟环境或真实世界环境,所述代理包括模拟用户、模拟车辆、模拟飞行器、机器人、自动车辆和半自动车辆中的一种,所述对抗性深度神经网络包括价值子网、优势子网以及组合层,所述方法包括:
获得表征所述环境的当前状态的观察的表示;
使用所述价值子网处理所述观察的所述表示,其中,所述价值子网被配置为:
接收所述观察的所述表示;以及
处理所述观察的所述表示以生成价值估计,所述价值估计是由所述环境处于所述当前状态而产生的预期返回的估计;
使用所述优势子网处理所述观察的所述表示,其中,所述优势子网被配置为:
接收所述观察的所述表示;以及
处理所述观察的所述表示以对所述动作集中的每个动作生成相应的优势估计,所述优势估计是当所述环境处于所述当前状态时由所述代理执行所述动作而产生的返回相对于当所述环境处于所述当前状态时由所述代理执行其他动作而产生的返回的相对度量的估计;以及
对每个动作,使用所述组合层组合所述价值估计和该动作的相应的优势估计以生成用于该动作的相应的Q值,其中,所述相应的Q值是当所述环境处于所述当前状态时由所述代理执行所述动作而产生的预期返回的估计;以及
使用用于所述动作集中的动作的相应的Q值,响应于所述观察而选择将由所述代理执行的动作。
10.如权利要求9所述的方法,其中,所述对抗性深度神经网络进一步包括一个或多个初始神经网络层,以及其中,所述方法进一步包括:
使用所述一个或多个初始神经网络层处理所述观察,其中,所述一个或多个初始神经网络层被配置为:
接收所述观察;以及
处理所述观察以生成所述观察的所述表示。
11.如权利要求10所述的方法,其中,所述观察是图像,以及其中,所述一个或多个初始神经网络层是卷积神经网络层。
12.如权利要求9所述的方法,其中,所述观察的所述表示是所述观察。
13.如权利要求9所述的方法,其中,对每个动作,组合所述价值估计和所述相应的优势估计包括:
对该动作,确定所述相应的优势估计的集中趋势的度量;
通过使用所述集中趋势的度量来调整用于该动作的相应的优势估计,确定用于该动作的相应的调整优势估计;以及
组合用于该动作的相应的优势估计和所述价值估计以确定用于该动作的相应的Q值。
14.如权利要求9所述的方法,其中,所述价值子网具有第一参数集,以及所述优势子网具有不同的第二参数集。
15.如权利要求9至14中的任一项所述的方法,其中,使用用于所述动作集中的动作的相应的Q值响应于所述观察而选择将由所述代理执行的动作包括:
将具有最高Q值的动作选择为将由所述代理执行的动作。
16.如权利要求9至14中的任一项所述的方法,其中,使用用于所述动作集中的动作的相应的Q值响应于所述观察而选择将由所述代理执行的动作包括:
以概率ε从所述动作集中选择随机动作;以及
以概率1-ε选择具有最高Q值的动作。
17.一种编码有指令的非暂时性计算机可读存储介质,所述指令在由一个或多个计算机执行时使所述一个或多个计算机执行如权利要求9-16中的任一项所述的方法的操作。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201562254684P | 2015-11-12 | 2015-11-12 | |
US62/254,684 | 2015-11-12 | ||
PCT/US2016/061702 WO2017083775A1 (en) | 2015-11-12 | 2016-11-11 | Dueling deep neural networks |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108604309A CN108604309A (zh) | 2018-09-28 |
CN108604309B true CN108604309B (zh) | 2022-06-07 |
Family
ID=57539607
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680066409.0A Active CN108604309B (zh) | 2015-11-12 | 2016-11-11 | 从动作集中选择代理执行的动作的方法、系统和存储介质 |
Country Status (6)
Country | Link |
---|---|
US (2) | US10572798B2 (zh) |
EP (1) | EP3360083B1 (zh) |
JP (1) | JP6591672B2 (zh) |
KR (1) | KR102172277B1 (zh) |
CN (1) | CN108604309B (zh) |
WO (1) | WO2017083775A1 (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10885432B1 (en) * | 2015-12-16 | 2021-01-05 | Deepmind Technologies Limited | Selecting actions from large discrete action sets using reinforcement learning |
US11170293B2 (en) * | 2015-12-30 | 2021-11-09 | Microsoft Technology Licensing, Llc | Multi-model controller |
US10909450B2 (en) * | 2016-03-29 | 2021-02-02 | Microsoft Technology Licensing, Llc | Multiple-action computational model training and operation |
CN110088775B (zh) * | 2016-11-04 | 2023-11-07 | 渊慧科技有限公司 | 使用加强学习的环境预测 |
CN107367929B (zh) * | 2017-07-19 | 2021-05-04 | 北京上格云技术有限公司 | 更新q值矩阵的方法、存储介质和终端设备 |
US20210034969A1 (en) * | 2018-03-09 | 2021-02-04 | Deepmind Technologies Limited | Training an unsupervised memory-based prediction system to learn compressed representations of an environment |
JP6857332B2 (ja) * | 2018-03-13 | 2021-04-14 | オムロン株式会社 | 演算装置、演算方法、及びそのプログラム |
US11043730B2 (en) * | 2018-05-14 | 2021-06-22 | Mediatek Inc. | Fan-out package structure with integrated antenna |
US20190348747A1 (en) | 2018-05-14 | 2019-11-14 | Mediatek Inc. | Innovative air gap for antenna fan out package |
US11024954B2 (en) | 2018-05-14 | 2021-06-01 | Mediatek Inc. | Semiconductor package with antenna and fabrication method thereof |
WO2019241145A1 (en) | 2018-06-12 | 2019-12-19 | Intergraph Corporation | Artificial intelligence applications for computer-aided dispatch systems |
JP7048455B2 (ja) * | 2018-08-30 | 2022-04-05 | 本田技研工業株式会社 | 学習装置、シミュレーションシステム、学習方法、およびプログラム |
US10739777B2 (en) * | 2018-11-20 | 2020-08-11 | Waymo Llc | Trajectory representation in behavior prediction systems |
EP3827383A4 (en) * | 2019-01-17 | 2021-08-25 | Advanced New Technologies Co., Ltd. | SAMPLE SCHEMES FOR STRATEGY SEARCH IN STRATEGIC INTERACTIONS BETWEEN PARTICIPANTS |
KR102166811B1 (ko) * | 2019-01-21 | 2020-10-19 | 한양대학교 산학협력단 | 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 방법 및 장치 |
WO2022006873A1 (en) * | 2020-07-10 | 2022-01-13 | Beijing Didi Infinity Technology And Development Co., Ltd. | Vehicle repositioning on mobility-on-demand platforms |
CN112347699A (zh) * | 2020-11-24 | 2021-02-09 | 北京圣涛平试验工程技术研究院有限责任公司 | 多智能体对抗神经网络训练方法及装置 |
CN113218400B (zh) * | 2021-05-17 | 2022-04-19 | 太原科技大学 | 一种基于深度强化学习的多智能体导航算法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103930871A (zh) * | 2011-05-09 | 2014-07-16 | 谷歌公司 | 基于安装历史给移动设备推荐应用 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5608843A (en) * | 1994-08-01 | 1997-03-04 | The United States Of America As Represented By The Secretary Of The Air Force | Learning controller with advantage updating algorithm |
DE102007042440B3 (de) * | 2007-09-06 | 2009-01-29 | Siemens Ag | Verfahren zur rechnergestützten Steuerung und/oder Regelung eines technischen Systems |
CN101261634B (zh) * | 2008-04-11 | 2012-11-21 | 哈尔滨工业大学深圳研究生院 | 基于增量Q-Learning的学习方法及系统 |
JP5413831B2 (ja) * | 2009-07-17 | 2014-02-12 | 学校法人立命館 | 電力取引管理システム、管理装置、電力取引方法、及び電力取引用コンピュータプログラム |
US9679258B2 (en) * | 2013-10-08 | 2017-06-13 | Google Inc. | Methods and apparatus for reinforcement learning |
US10832138B2 (en) * | 2014-11-27 | 2020-11-10 | Samsung Electronics Co., Ltd. | Method and apparatus for extending neural network |
-
2016
- 2016-11-11 JP JP2018524773A patent/JP6591672B2/ja active Active
- 2016-11-11 KR KR1020187016564A patent/KR102172277B1/ko active IP Right Grant
- 2016-11-11 US US15/349,900 patent/US10572798B2/en active Active
- 2016-11-11 WO PCT/US2016/061702 patent/WO2017083775A1/en active Application Filing
- 2016-11-11 EP EP16809575.0A patent/EP3360083B1/en active Active
- 2016-11-11 CN CN201680066409.0A patent/CN108604309B/zh active Active
-
2018
- 2018-05-11 US US15/977,913 patent/US10296825B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103930871A (zh) * | 2011-05-09 | 2014-07-16 | 谷歌公司 | 基于安装历史给移动设备推荐应用 |
Also Published As
Publication number | Publication date |
---|---|
KR102172277B1 (ko) | 2020-10-30 |
US10572798B2 (en) | 2020-02-25 |
US20170140266A1 (en) | 2017-05-18 |
KR20180091841A (ko) | 2018-08-16 |
CN108604309A (zh) | 2018-09-28 |
US10296825B2 (en) | 2019-05-21 |
US20180260689A1 (en) | 2018-09-13 |
JP2018537773A (ja) | 2018-12-20 |
WO2017083775A1 (en) | 2017-05-18 |
EP3360083B1 (en) | 2023-10-25 |
EP3360083A1 (en) | 2018-08-15 |
JP6591672B2 (ja) | 2019-10-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108604309B (zh) | 从动作集中选择代理执行的动作的方法、系统和存储介质 | |
US11803750B2 (en) | Continuous control with deep reinforcement learning | |
CN108701251B (zh) | 使用优势估计强化学习 | |
CN110235148B (zh) | 训练动作选择神经网络 | |
CN110326004B (zh) | 使用路径一致性学习训练策略神经网络 | |
CN107851216B (zh) | 一种用于选择待由与环境进行交互的强化学习代理执行的动作的方法 | |
WO2017083767A1 (en) | Training neural networks using a prioritized experience memory | |
JP6728495B2 (ja) | 強化学習を用いた環境予測 | |
WO2017091629A1 (en) | Reinforcement learning using confidence scores | |
US11727264B2 (en) | Reinforcement learning using pseudo-counts | |
KR102241404B1 (ko) | 시각 입력을 이용한 에이전트 네비게이션 | |
JP2020508527A (ja) | ニューラルエピソード制御 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |