利用深度强化学习的连续控制的制作方法

文档序号:14400840阅读:401来源:国知局



背景技术:

本说明书涉及选择待由强化学习代理执行的动作。

强化学习代理通过接收表征环境的当前状态的观测值(observation)并且作为响应执行动作来与环境交互。一些强化学习代理使用神经网络来选择响应于接收到任何给定观测值而要执行的动作。

神经网络是采用一个或者多个非线性单元层来预测接收到的输入的输出的机器学习模型。一些神经网络是除了输出层之外还包括一个或者多个隐藏层的深度神经网络。每个隐藏层的输出用作网络中下一层的输入,即下一隐藏层或者输出层的输入。网络的每个层根据相应参数集合的当前值来从接收到的输入生成输出。



技术实现要素:

本说明书描述了与强化学习有关的技术。

大体上,一个创新方面可以体现为一种用于训练动作器神经网络的方法,该动作器神经网络被用于选择待由代理执行的动作,所述代理通过接收表征环境的当前状态的观测值并且执行从连续动作空间中选择的动作来与环境交互,其中,动作器神经网络根据动作器神经网络的参数的当前值将观测值映射至接下来的动作,并且其中,该方法包括:从重演(replay)存储器获得小批经验元组,每个经验元组包括表征环境的训练状态的训练观测值、来自代理响应于接收到训练观测值而执行的连续动作空间的训练动作、由代理接收的执行训练动作的训练奖励、和表征环境的下一训练状态的下一训练观测值;以及使用小批经验元组来更新动作器神经网络的参数的当前值,包括:对于小批中的每个经验元组:使用评价器神经网络来处理经验元组中的训练观测值和训练动作以根据评价器神经网络的参数的当前值来确定经验元组的神经网络输出;以及根据经验元组中的训练奖励和经验元组中的下一训练观测值来确定经验元组的目标神经网络输出;使用在目标神经网络输出与小批中的经验元组的神经网络输出之间的误差来更新评价器神经网络的参数的当前值;以及使用评价器神经网络来更新动作器神经网络的参数的当前值。

确定经验元组的目标神经网络输出可以包括:使用目标动作器神经网络处理下一训练观测值以根据目标动作器神经网络的参数的当前值来确定经验元组的预测的下一动作,其中,目标动作器神经网络与动作器神经网络完全相同,但是目标动作器神经网络的参数的当前值与动作器神经网络的参数的当前值不同;使用目标评价器神经网络处理经验元组的下一训练观测值和预测的下一动作以根据目标评价器神经网络的参数的当前值来生成预测的下一神经网络输出,其中,目标评价器神经网络与评价器神经网络完全相同,但是目标评价器神经网络的参数的当前值与评价器神经网络的参数的当前值不同;以及根据经验元组的训练奖励和预测的下一神经网络输出来确定经验元组的目标神经网络输出。该方法可以进一步包括:使用动作器神经网络的参数的所更新的值来更新目标动作器神经网络的参数的当前值;以及使用评价器神经网络的参数的所更新的值来更新目标评价器神经网络的参数的当前值。可以将目标动作器神经网络和目标评价器神经网络的参数的当前值被约束为在动作器神经网络的训练期间缓慢地改变。

评价器神经网络、动作器神经网络、或者两者可以包括一个或者多个批标准化神经网络层。由代理接收的观测值可以通过使用表征环境的状态的低维特征向量来表征环境的状态。低维特征向量的不同维度的值可以具有不同的范围。由代理接收的观测值可以使用来自表征环境的状态的一个或者多个图像的高维像素输入来表征环境的状态。

该方法可以进一步包括:独立于使用小批经验元组来更新动作器神经网络的参数的当前值:生成新经验元组,包括:接收新训练观测值;使用动作器神经网络来处理新训练观测值以根据动作器神经网络的参数的当前值来选择待由代理执行的新训练动作;响应于代理执行新训练动作而接收新训练奖励;接收新下一训练观测值;以及生成包括新训练观测值、新训练动作、新训练奖励、和新下一训练观测值的新经验元组;以及将新经验元组添加至重演存储器中。使用动作器神经网络来处理新训练观测值以新训练动作可以包括:使用动作器神经网络来处理新训练观测值以生成初始新训练动作;从噪声过程进行采样以获得噪声因子;以及以噪声因子调整初始新动作来生成新训练动作。

该方法可以进一步包括:输出被布置为选择待由代理执行的动作的动作器神经网络。

可以在特定实施例中实施本说明书中所描述的主题以实现以下优点中的一个或者多个。强化学习系统可以有效地并且直接地学习高维连续动作空间中的代理的有效动作选择策略,即通过如本说明书中描述的那样训练动作器神经网络。具体地,通过如本说明书中描述的那样训练动作器神经网络,强化学习系统甚至可以针对要求精密控制动作的任务以及在动作空间难以进行离散化时有效地学习有效的动作选择策略并且然后有效地进行探索。此外,强化学习系统可以通过作为低维观测值的观测值和作为高维像素输入的观测值两者来学习有效策略。本主题可以提供对强化学习系统的改进训练以提供改进的强化学习系统,该改进的强化学习系统可以例如能够针对先前已经具有挑战性的任务学习动作选择策略。

要了解,可以按照任何便利的形式来实现每个方面。例如,可以通过适当的计算机程序来实现方面和实施方式,该计算机程序可以携载在可以是有形载体介质(例如,盘)或者无形载体介质(例如,通信信号)的适当载体介质上。还可以通过使用合适的装置来实现方面,该合适的装置可以是运行计算机程序的可编程计算机的形式。在附图和下面的描述中阐述了本说明书的主题的一个或者多个实施例的细节。本主题的其它特征、方面、和优点将通过描述、附图、以及权利要求书而变得显而易见。

附图说明

图1示出了示例强化学习系统。

图2是将经验元组添加至重演存储器的示例过程的流程图。

图3是确定对动作器神经网络的参数的当前值的更新的示例过程的流程图。

图4是确定经验元组的目标神经网络输出的示例过程的流程图。

各附图中的类似附图标记和名称指示类似的元素。

具体实施方式

本说明书大体上描述了一种强化学习系统,该强化学习系统选择待由与环境交互的强化学习代理执行的动作。为了与环境交互,该代理接收表征环境的当前状态的数据,并且响应于接收到的数据执行连续动作空间中的动作。本说明书中将表征环境的状态的数据称为观测值。

在一些实施方式中,环境是模拟环境,并且代理被实现为与该模拟环境交互的一个或者多个计算机程序。例如,模拟环境可以是视频游戏,并且代理可以是玩该视频游戏的模拟用户。作为另一示例,模拟环境可以是运动模拟环境,例如,驾驶模拟或者飞行模拟,并且代理是在该运动模拟环境中导航的模拟载具。在这些实施方式中,动作可以是控制模拟用户或者模拟载具的可能控制输入空间中的点。

在一些其它实施方式中,环境是真实世界环境,并且代理是与真实世界环境交互的机械代理。例如,代理可以是与环境交互以完成特定任务的机器人。作为另一示例,代理可以是在环境中导航的自主或者半自主载具。在这些实施方式中,动作可以是控制机器人或者自主载具的可能控制输入空间中的点。

在一些情况下,观测值通过使用表征环境的状态的低维特征向量来表征环境的状态。在这些情况下,低维特征向量的不同维度的值可以具有不同的范围。

在一些其它情况下,观测值通过使用来自表征环境的状态的一个或者多个图像——例如,模拟环境的图像或者由机械代理的传感器在机械代理与真实世界环境交互时捕获到的图像——的高维像素输入来表征环境的状态。

图1示出了示例强化学习系统100。该强化学习系统100是在实现下面描述的系统、组件、和技术的一个或者多个位置中的一个或者多个计算机上实现为计算机程序的系统的示例。

强化学习系统100选择待由与环境104交互的强化学习代理102执行的动作。即,强化学习系统100接收观测值,其中每个观测值表征环境104的相应状态,并且响应于每个观测值,从响应于该观测值而待由强化学习代理102执行的连续动作空间中选择动作。

具体地,强化学习系统100通过使用动作器神经网络110来选择动作。动作器神经网络110是被配置为接收观测值并且处理该观测值以将该观测值映射至下一动作——即映射至限定了响应于该观测值而应当由代理执行的动作的连续动作空间中的点——的神经网络。

为了允许代理102有效地与环境104交互,强化学习系统100训练动作器神经网络110来确定动作器神经网络110的参数的训练值。

一旦已经训练了动作器神经网络110,强化学习系统100就可以有效地使用动作器神经网络110来选择待由代理104执行的动作。具体地,当接收到观测值时,强化学习系统100可以通过使用动作器神经网络110来处理观测值以根据动作器神经网络110的参数的训练值来将观测值映射至新动作,并且然后引导代理102响应于观测值而执行新动作,即通过向代理102发送使得代理执行新动作的指令。

为了协助训练动作器神经网络110,强化学习系统100维持包括重演存储器130、评价器神经网络140、目标动作器神经网络150、和目标评价器神经网络160的训练组件120。

重演存储器130存储由于代理102与环境104的交互而生成的经验元组以用于训练动作器神经网络110。

具体地,重演存储器中的每个经验元组包括表征环境的训练状态的训练观测值、由代理102响应于训练观测值而执行的动作、由系统100响应于代理102执行动作而接收到的训练奖励、以及表征环境的下一状态——即在代理执行动作之后环境所转换到的状态——的下一观测值。

强化学习系统100在动作器神经网络110的训练期间从代理102与环境104的交互生成经验元组。下面参照图2更详细地描述在训练期间生成经验元组的示例过程。

评价器神经网络140是被配置为接收动作和观测值作为输入并且处理动作和观测值以生成神经网络输出的神经网络。如下面将更详细地描述的,在训练期间,强化学习系统100调整评价器神经网络140的参数的值,并且在更新动作器神经网络110的参数的值时使用评价器神经网络140。

在一些实施方式中,评价器神经网络140、动作器神经网络110、或者两者包括一个或者多个批标准化层以使训练期间的协变量移位(covariateshift)最小化。在ioffe,sergey,andszegedy,christian.batchnormalization:acceleratingdeepnetworktrainingbyreducinginternalcovariateshift.arxivpreprintarxiv:1502.03167,2015中更详细地描述了批标准化层。

目标动作器神经网络150是与动作器神经网络110相同——即具有与动作器神经网络110相同的神经网络架构,但是具有可能与动作器神经网络110的参数值不同的参数值的神经网络。

同样,目标评价器神经网络160是与评价器神经网络140相同但是具有可能与评价器神经网络140不同的参数值的神经网络。

为了使用训练组件120来训练神经网络,强化学习系统100重复地从重演存储器130中选择小批的经验元组。每小批经验元组包括预定数目的经验元组。预定数目的经验元组可以是随机选择的经验元组。

对于给定所选小批中的每个经验元组,强化学习系统100使用评价器神经网络140、目标动作器神经网络150、和目标评价器神经网络160来确定动作器神经网络110的参数的当前值和评价器神经网络150的参数的当前值的更新,并且然后通过使用该更新来调整动作器神经网络110的参数的当前值和评价器神经网络150的参数的当前值。下面将参照图3更详细地描述生成这些更新并且调整评价器神经网络140和动作器神经网络110的参数的当前值。

在训练期间,强化学习系统100还周期性地更新目标评价器神经网络160的参数的值和目标动作器神经网络150的参数的值,从而使得所述值分别缓慢地追踪评价器神经网络140的参数的值和动作器神经网络110的参数的值的变化。

一旦小批的经验元组已经被用于训练,强化学习系统100就可以从重演存储器120中去除该小批中的经验元组。

通常,在训练期间,强化学习系统100生成经验元组,并且独立于对重演存储器120中的经验元组进行采样和调整动作器神经网络110的参数——即与对重演存储器120中的经验元组进行采样和调整动作器神经网络110的参数异步,将生成的元组添加至重演存储器120。

图2是将经验元组添加至重演存储器的示例过程200的流程图。为了方便起见,将过程200描述为由位于一个或者多个位置的一个或者多个计算机的系统执行。例如,根据本说明书适当编程的强化学习系统——例如图1的强化学习系统100——可以执行过程200。

系统接收表征环境的当前状态的当前观测值(步骤202)。

系统使用动作器神经网络根据该动作器神经网络的参数的当前值来处理观测值(步骤204)。如上所述,动作器神经网络被配置为根据参数的当前值来将当前观测值映射至下一动作,即,连续动作空间中的点。

系统通过使用该下一动作来选择待由代理执行的动作(步骤206)。

在一些实施方式中,系统选择下一动作以作为待由代理执行的动作。

在一些其它实施方式中,为了鼓励在训练期间探索动作空间,系统从噪声过程进行采样以获得噪声因子,并且然后以该噪声因子调整下一动作以生成待由代理执行的动作。

可以选择用于获得噪声因子的噪声过程以适应环境。例如,对于某些环境,噪声过程可以是生成在时间上相关的探索的奥恩斯坦-乌伦贝克(ornstein-uhlenbeck)过程。在georgee.uhlenbeckandleonards.ornstein.“onthetheoryofthebrownianmotion”.in:physicalreview36.5(1930),p.823中更详细地描述了奥恩斯坦-乌伦贝克过程。

系统接收奖励和下一观测值(步骤206)。该下一观测值表征环境的下一状态,即,环境由于代理执行选择的动作所转换到的状态,并且奖励是系统由于代理执行选择的动作而从环境接收到的数值。

系统生成包括当前观测值、选择的动作、奖励、和下一观测值的经验元组,并且将生成的经验元组存储在重演存储器中以用于训练动作器神经网络(步骤208)。

图3是确定对动作器神经网络的参数的当前值的更新的示例过程300的流程图。为了方便起见,将过程300描述为由位于一个或者多个位置的一个或者多个计算机的系统执行。例如,根据本说明书适当编程的强化学习系统——例如图1的强化学习系统100——可以执行过程300。

系统接收经验元组(步骤302)。该经验元组是系统从重演存储器中采样的小批的经验元组中的其中一个经验元组。

经验元组包括表征环境的训练状态的训练观测值、来自由代理响应于接收到训练观测值而执行的连续动作空间的训练动作、由代理接收的执行训练动作的训练奖励、和表征环境的下一训练状态的下一训练观测值。

系统通过使用评价器神经网络来处理经验元组中的训练观测值和选择的动作以根据评价器神经网络的参数的当前值来确定经验元组的神经网络输出(步骤304)。

系统通过经验元组中的训练奖励和经验元组中的下一训练观测值来确定经验元组的目标神经网络输出(步骤306)。通常,系统通过使用目标动作器神经网络和目标评价器神经网络来确定目标神经网络输出。下面参照图4来更详细地描述确定目标神经网络输出。

系统通过使用在经验元组的目标神经网络输出与由评价器神经网络针对经验元组生成的神经网络输出之间的误差来确定评价器神经网络的参数的当前值的更新(步骤308)。即,系统可以通过使用常规的机器学习训练技术——例如通过利用反向传播执行梯度下降的迭代——来确定对参数的当前值的减少误差的更新。从通过对图4的描述将清楚的,通过按照这种方式来更新参数的当前值,系统训练评价器神经网络以生成神经网络输出,其表示将作为代理响应于给定观测值而执行给定动作的响应所接收的时间折扣的总未来奖励。

系统通过使用评价器神经网络来确定动作器神经网络的参数的当前值的更新(步骤310)。

具体地,为了确定更新,系统根据参数的当前值通过使用动作器神经网络来处理元组中的训练观测值以生成该训练观测值的下一动作。

然后,系统确定动作器神经网络的当前值的参数更新,该参数更新依赖于(i)关于针对训练观测值采取的下一动作——下一动作输入对并且根据评价器神经网络的参数的当前值的评价器神经网络的梯度和(ii)关于针对训练观测值采取的动作器神经网络的参数并且根据动作器神经网络的参数的当前值的动作器神经网络的梯度,即,是该两个梯度的乘积或者其不同的组合。系统可以通过相应网络反向传播相应梯度来确定梯度(i)和梯度(ii)。

通常,系统针对给定小批中的每个经验元组执行过程300以对于每个元组确定评价器神经网络的参数的更新和动作器神经网络的参数的更新。一旦已经确定了小批中的每个元组的更新,系统就通过使用小批中的元组的更新来更新动作器神经网络的参数的当前值和评价器神经网络的参数的当前值。例如,对于每个网络,系统可以将每个更新添加至网络的参数的当前值以更新这些值。

一旦已经确定了动作器神经网络和评价器神经网络的参数的更新值,系统就更新目标评价器神经网络参数和目标动作器神经网络参数的当前值,从而使得这些值缓慢地追踪评价器神经网络的参数的值和动作器神经网络的参数的值的变化。具体地,系统在训练期间将目标评价器神经网络参数和目标动作器神经网络参数的值约束为缓慢变化以提高训练过程的稳定性。

例如,目标网络中的一个目标网络的更新值可以是在对应的动作器或者评价器网络的更新值与目标网络的当前值之间的线性内插,其中在该内插中对目标网络的当前值进行更重的加权。

通过对多个不同小批经验元组重复执行过程300,系统可以训练动作器神经网络以确定动作器神经网络的参数的训练值并且允许动作器神经网络有效地被用于选择待由与环境交互的代理执行的动作。

图4是确定经验元组的目标神经网络输出的示例过程400的流程图。为了方便起见,将过程400描述为由位于一个或者多个位置的一个或者多个计算机的系统执行。例如,根据本说明书适当编程的强化学习系统——例如图1的强化学习系统100——可以执行过程400。

系统根据目标动作器神经网络的参数的当前值通过使用目标动作器神经网络来处理经验元组中的下一训练观测值以生成预测的下一动作(步骤402)。如上所述,目标动作器神经网络与动作器神经网络完全相同,但是具有可能不同的参数值。

系统根据目标评价器神经网络的参数的当前值通过使用目标评价器神经网络来处理下一训练观测值和预测的下一动作以生成预测的下一神经网络输出(步骤404)。如上所述,目标评价器神经网络与评价器神经网络完全相同,但是具有可能不同的参数值。

系统通过经验元组的训练奖励和预测的神经网络输出来确定经验元组的目标神经网络。具体地,系统将预测的神经网络输出乘以预定时间折扣因子,并且然后将所得到的乘积和训练奖励相加以生成经验元组的目标神经网络输出。

对于要被配置为执行特定操作或者动作的一个或者多个计算机的系统意味着已经在系统上安装了在操作中使得系统执行操作或者动作的软件、固件、硬件、或者它们的组合。对于要被配置为执行特定操作或者动作的一个或者多个计算机程序意味着该一个或者多个程序包括指令,该指令在由数据处理装置执行时使得该装置执行操作或者动作。

可以在数字电子电路系统中、有形实施的计算机软件或者固件中、计算机硬件中——包括本说明书所公开的结构及其结构等效物、或者它们中的一个或者多个的组合中实现本说明书中描述的主题的实施例和功能操作。可以将本说明书中描述的主题的实施例实现为一个或者多个计算机程序,即,编码在有形非暂时性程序载体上以供由数据处理装置执行或者控制数据处理装置的操作的计算机程序指令的一个或者多个模块。替选地或者另外,程序指令可以被编码在人工生成的传播信号上,例如,机器生成的电、光、或者电磁信号,生成该信号是为了对信息进行编码以供传输至合适的接收器装置以用于数据处理装置执行。计算机存储介质可以是机器可读存储设备、机器可读存储基底、随机或者串行存取存储器设备、或者它们中的一个或者多个的组合。

术语“数据处理装置”指代数据处理硬件并且囊括了用于处理数据的所有种类的装置、设备、和机器,包括:例如,可编程处理器、计算机、或者多个处理器或者计算机。该装置还可以是或者进一步包括专用逻辑电路,例如,fpga(现场可编程门阵列)或者asic(专用集成电路)。除了硬件之外,该装置可以可选地包括为计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统、或者它们中的一个或者多个的组合的代码。

可以用任何形式的编程语言——包括编译语言或者解释语言、或者声明式语言或者过程式语言——来编写计算机程序(其也可以被称为或者描述为程序、软件、软件应用、模块、软件模块、脚本、或者代码),并且可以按照任何形式——包括作为独立式程序或者作为模块、组件、子例程、或者适合用于计算环境的其它单元——来部署计算机程序。计算机程序可以但并非必须与文件系统中的文件相对应。可以将程序存储在保持其它程序或者数据——例如存储在标记语言文档中的一个或者多个脚本——的文件的一部分中,或者存储在专用于所探讨中的程序的单个文件中,或者存储在多个协作文件——例如存储一个或者多个模块、子程序、或者代码部分的文件——中。可以将计算机程序部署为在一个计算机上执行或者在位于一个站点处或者跨多个站点分布并且通过通信网络互相连接的多个计算机上执行。

可以通过一个或者多个可编程计算机来执行本说明书中描述的过程和逻辑流程,该一个或者多个可编程计算机执行一个或者多个计算机程序以通过操作输入数据并且生成输出来执行功能。还可以通过专用逻辑电路系统——例如,fpga(现场可编程门阵列))或者asic(专用集成电路)——来执行过程和逻辑流程,并且装置还可以被实现为该专用逻辑电路系统。

适合执行计算机程序的计算机包括例如可以基于通用或者专用微处理器或者两者或者任何其它种类的中央处理单元。一般而言,中央处理单元将接收来自只读存储器或者随机存取存储器或者两者的指令和数据。计算机的必要元件是:用于实施或者执行指令的中央处理单元、和用于存储指令和数据的一个或者多个存储器设备。一般而言,计算机还将包括用于存储数据的一个或者多个海量存储设备——例如磁盘、磁光盘、或者光盘,或者计算机可以操作地耦合以接收来自该海量存储设备的数据或者将数据传输至该海量存储设备或者进行两者。然而,计算机不需要具有这样的设备。此外,计算机可以嵌入在另一设备中,例如,移动电话、个人数字助理(pda)、移动音频或者视频播放器、游戏控制台、全球定位系统(gps)接收器、或者便携式存储设备——例如通用串行总线(usb)闪存驱动,仅举数例。

适合于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括:例如,半导体存储器设备,例如eprom、eeprom、和闪速存储器设备;磁盘,例如内部硬盘或者可移动盘;磁光盘;cd-rom盘和dvd-rom盘。处理器和存储器可以由专用逻辑电路系统补充或者可以并入该专用逻辑电路系统中。

为了提供与用户的交互,可以在计算机上实现本说明书中描述的主题的实施例,该计算机具有:用于向用户显示信息的显示设备,例如,crt(阴极射线管)或者lcd(液晶显示器)监视器;以及键盘和指示设备,例如,鼠标或者轨迹球,用户可以通过该键盘和该指示设备来将输入提供给计算机。其它种类的设备还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感官反馈,例如,视觉反馈、听觉反馈或者触觉反馈;并且可以用任何形式——包括声输入、语音输入或者触觉输入——来接收来自用户的输入。另外,计算机可以通过将文档发送至用户所使用的设备并且接收来自该设备的文档来与用户交互;例如,通过响应于从web浏览器接收的请求而将网页发送至在用户的用户设备上的web浏览器。

可以将本说明书中描述的主题的实施例实现在包括后台组件的计算系统——例如作为数据服务器、者包括中间件组件的计算系统——例如应用服务器、或者包括前端组件的计算系统——例如具有用户可以通过其与本发明中所描述的主题的实施方式交互的关系图形用户界面或者web浏览器的用户计算机、或者一个或者多个这样的后台组件、中间件组件或者前端组件的任何组合。可以通过任何形式或者介质的数字数据通信——例如通信网络——来将系统的组件相互连接。通信网络的示例包括:局域网(“lan”)和广域网(“wan”),例如,互联网。

计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。

虽然本说明书包含了许多具体实施方式细节,但是不应当将这些细节视为对任何发明或者可能被要求的内容的范围的限制,而是作为可以对特定发明所特有的特定实施例的特征的描述。在本说明书中在分开第实施例的场境(context)下描述的某些特征还可以组合地实现在单个实施例中。相反,在单个实施例的背景中描述的各种特征也可以分开地或者按照任何合适的子组合实现在多个实施例中。此外,虽然上文可能将特征描述为以某些组合来起作用并且最初甚至如此要求保护,但是在一些情况下,可以从组合中删除来自所要求保护的组合的一个或者多个特征。并且所要求保护的组合可以涉及子组合或者子组合的变化。

同样,虽然在附图中按照特定顺序示出了操作,但是不应当将其理解为需要按照所述的特定顺序或者按照相继的顺序来执行这样的操作,或者需要执行所有图示的操作以实现期望的结果。在某些情况下,多任务处理和并行处理可以是有利的。此外,不应当将在上述实施例中的各个系统模块和组件的分离理解为在所有实施例中需要这样的分离,并且应当理解,所描述的程序组件和系统通常可以一起集成在单个软件产品中或者封装到多个软件产品中。

已经描述了本主题的特定实施例。其它实施例在所附权利要求书的范围内。例如,可以按照不同的顺序来执行权利要求书中阐述的动作,并且仍然实现期望的结果。作为一个示例,在附图中描绘的过程不一定需要所示的特定顺序或者相继顺序以实现期望的结果。在某些实施方式中,多任务处理和并行处理可以是有利的。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1