公开/公告号CN111241356A
专利类型发明专利
公开/公告日2020-06-05
原文格式PDF
申请/专利权人 腾讯科技(深圳)有限公司;
申请/专利号CN202010337586.6
申请日2020-04-26
分类号
代理机构北京三高永信知识产权代理有限责任公司;
代理人祝亚男
地址 518057 广东省深圳市南山区高新区科技中一路腾讯大厦35层
入库时间 2023-12-17 09:51:04
法律状态公告日
法律状态信息
法律状态
2020-08-11
授权
授权
2020-06-30
实质审查的生效 IPC(主分类):G06F16/903 申请日:20200426
实质审查的生效
2020-06-05
公开
公开
技术领域
本申请实施例涉及计算机技术领域,特别涉及一种基于模拟量子算法的数据搜索方法、装置及设备。
背景技术
随着量子计算技术的发展,量子计算的应用也越来越多,与经典计算相比,量子计算在很大程度上提高了数据处理效率。量子计算中的绝热量子计算采用搜索路径对数据进行处理,而准确的搜索路径可以提高绝热量子计算的效率。
相关技术中,第一搜索路径中包括取值未确定的多个系数,通过强化学习模型分别确定多个系数的取值,得到第二搜索路径。但是,强化学习模型是通过对每个系数的多个可选数值进行尝试,最终确定一个可选数值,在获取第二搜索路径的过程中,如果取值未确定的每个系数对应有大量的可选数值,则强化学习模型需要尝试多次,导致确定取值的效率较低,从而导致第二搜索路径的获取效率较低。
发明内容
本申请实施例提供了一种基于模拟量子算法的数据搜索方法、装置及设备,提高了第二搜索路径的获取效率。所述技术方案如下:
一方面,提供了一种基于模拟量子算法的数据搜索方法,所述方法包括:
根据待搜索的多个备选数据,创建第一状态数据和第二状态数据,所述第一状态数据对应的第一状态为所述多个备选数据的选取概率相同的状态,所述第二状态数据对应的第二状态为已经搜索到满足搜索条件的目标数据的状态;
根据所述第一状态数据和所述第二状态数据创建第一搜索路径,所述第一搜索路径的起点指代所述第一状态,且终点指代所述第二状态,所述第一搜索路径包括取值未确定的多个系数;
获取所述第一搜索路径对应的第一处理函数,所述第一处理函数包括所述多个系数,且所述第一处理函数的输出值由所述第一搜索路径确定,所述第一处理函数的输出值收敛指示所述多个系数的取值满足目标;
遍历所述第一搜索路径的至少两组数值集合,每组数值集合包括所述多个系数对应的多个数值,且不同的数值集合中的多个数值不完全相同;
基于模拟量子算法,获取在所述多个系数的取值分别为遍历的数值集合中的多个数值时,所述第一处理函数的输出值;
在所述第一处理函数的输出值收敛的情况下,将收敛的输出值对应的数值集合中的多个数值分别作为所述多个系数的取值,得到第二搜索路径;
采用所述第二搜索路径,在所述多个备选数据中搜索所述目标数据。
另一方面,提供了一种数据搜索装置,所述装置包括:
状态数据创建模块,用于根据待搜索的多个备选数据,创建第一状态数据和第二状态数据,所述第一状态数据对应的第一状态为所述多个备选数据的选取概率相同的状态,所述第二状态数据对应的第二状态为已经搜索到满足搜索条件的目标数据的状态;
第一路径创建模块,用于根据所述第一状态数据和所述第二状态数据创建第一搜索路径,所述第一搜索路径的起点指代所述第一状态,且终点指代所述第二状态,所述第一搜索路径包括取值未确定的多个系数;
第一函数获取模块,用于获取所述第一搜索路径对应的第一处理函数,所述第一处理函数包括所述多个系数,且所述第一处理函数的输出值由所述第一搜索路径确定,所述第一处理函数的输出值收敛指示所述多个系数的取值满足目标;
集合获取模块,用于遍历所述第一搜索路径的至少两组数值集合,每组数值集合包括所述多个系数对应的多个数值,且不同的数值集合中的多个数值不完全相同;
输出值获取模块,用于基于模拟量子算法,获取在所述多个系数的取值分别为遍历的数值集合中的多个数值时,所述第一处理函数的输出值;
第二路径获取模块,用于在所述第一处理函数的输出值收敛的情况下,将收敛的输出值对应的数值集合中的多个数值分别作为所述多个系数的取值,得到第二搜索路径;
数据搜索模块,用于采用所述第二搜索路径,在所述多个备选数据中搜索所述目标数据。
在一种可能实现方式中,概率获取单元,还用于:
在所述至少两组数值集合满足所述高斯分布的情况下,获取所述至少两组数值集合对应的平均值及方差;
根据所述平均值及所述方差,获取所述至少两组数值集合对应的条件概率。
在另一种可能实现方式中,所述第一路径创建模块,还用于:
根据所述第一状态数据、所述第二状态数据和目标搜索时长,创建所述第一搜索路径,所述第一搜索路径还包括所述目标搜索时长,所述目标搜索时长表示将所述第一状态转换为所述第二状态所需的时长。
在另一种可能实现方式中,所述多个备选数据的类型不同,所述搜索条件包括目标类型,所述数据搜索模块,还用于:
采用所述第二搜索路径,在所述多个备选数据中搜索满足所述目标类型的目标数据。
另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行,以实现如所述基于模拟量子算法的数据搜索方法中所执行的操作。
另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行,以实现如所述基于模拟量子算法的数据搜索方法中所执行的操作。
本申请实施例提供的方法、装置及设备,根据待搜索的多个备选数据,创建第一状态数据和第二状态数据,根据第一状态数据和第二状态数据创建第一搜索路径,获取第一搜索路径对应的第一处理函数,遍历第一搜索路径的至少两组数值集合,基于模拟量子算法,获取在多个系数的取值分别为遍历的数值集合中的多个数值时,第一处理函数的输出值,对数值集合进行遍历的过程中,一次遍历即可分别对多个系数的不同取值进行处理,在第一处理函数的输出值收敛的情况下,将收敛的输出值对应的数值集合中的多个数值分别作为多个系数的取值,得到第二搜索路径,只需要遍历较少的次数即可使第一处理函数的输出值收敛,以快速获取多个系数的准确取值,从而提高获取第二搜索路径的效率。并且,由于第一搜索路径是根据多个备选数据对应的第一状态数据和第二状态数据进行创建的,获取的第二搜索路径适用于该多个备选数据,可以采用第二搜索数据在对多个备选数据中快速搜索出目标数据。
并且,在获取第二搜索路径的过程中,当第一处理函数的输出值不收敛时,会更新数值集合,以根据更新的数值集合获取新的第一处理函数的输出值,在更新数值集合的过程中,采用了高斯过程回归算法,该高斯过程回归算法针对连续的、缺乏特定的对称结构和几何结构、难以获取梯度信息的函数,仅需要较短的时间,即可完成对这种复杂的函数的处理,处理效率高。且高斯过程回归算法可以对含有噪声的函数进行处理,可以对多种类型的函数进行处理,应用范围大,则在获取第二搜索路径时,即使该第二搜索路径对应的处理函数是较为复杂的函数,也可以采用高斯过程回归算法快速处理。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请实施例的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种基于模拟量子算法的搜索路径获取方法的流程图;
图2是本申请实施例提供的一种采用高斯过程回归算法拟合得到估计函数的示意图;
图3是本申请实施例提供的一种数值集合获取方法的流程图;
图4是本申请实施例提供的一种数值集合获取方法的示意图;
图5是本申请实施例提供的一种基于线性路径、非线性路径及第二搜索路径的搜索效果的示意图;
图6是本申请实施例提供的另一种基于线性路径、非线性路径及第二搜索路径的搜索效果的示意图;
图7是本申请实施例提供的一种基于第二搜索路径的搜索效果的示意图;
图8是本申请实施例提供的另一种基于模拟量子算法的搜索路径获取方法的流程图;
图9是本申请实施例提供的一种基于模拟量子算法的数据搜索方法的流程图;
图10是本申请实施例提供的一种数据搜索装置的结构示意图;
图11是本申请实施例提供的另一种数据搜索装置的结构示意图;
图12是本申请实施例提供的一种终端的结构示意图;
图13是本申请实施例提供的一种服务器的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
可以理解,本申请所使用的术语“第一”、“第二”、“第三”等可在本文中用于描述各种概念,但除非特别说明,这些概念不受这些术语限制。这些术语仅用于将一个概念与另一个概念区分。举例来说,在不脱离本申请的范围的情况下,可以将第一处理函数称为第二处理函数,将第二处理函数称为第一处理函数。
本申请所使用的术语“每个”、“多个”等,多个包括两个或两个以上,每个是指对应的多个中的每一个。举例来说,多个系数包括20个系数,而每个系数是指这20个系数中的每一个系数。
为了便于理解本申请实施例提供的基于模拟量子算法的数据搜索方法,下面对涉及到的关键词进行解释。
量子计算:一种基于量子逻辑进行计算的计算方式,量子计算中存储数据的基本单位是量子比特(Qubit)。
量子比特:量子比特是量子计算的基本单位。经典计算中采用0和1作为二进制的基本单位,则采用经典计算对数据进行计算的过程中,数据为0和1中的任一种状态;而量子计算中数据可以同时为0或1,也就是说,量子计算中0和1可以同时存在,即存在0和1的线性叠加态。那么,量子计算与经典计算相比,由于量子计算中存在线性叠加态,可以提高计算速度和可能性。其中,线性叠加态可如公式(1)所示:
其中,
本征态:对于一个厄米共轭的矩阵H,满足方程
基态:能量最低的本征态。
可分态和纠缠态:对于一个纯态:
绝热量子计算:一种量子计算方式。数学定义为:对于两个作用在n个粒子且每个粒子拥有p个状态和k局域的初态哈密顿量H0和末态哈密顿量H1,其中,初态哈密顿量H0的基态是唯一的可分态,初态哈密顿量的输出态在
具体来讲,定义搜索路径对应的函数
保真度:用于表示绝热量子计算过程的输出态,与末态哈密顿量H1的基态之间的相近程度,输出态越接近末态哈密顿量H1的基态,保真度越大,保真度的取值范围为0到1。
最优的搜索路径:对于固定的演化时间T,获取函数
本申请实施例中,将获取最优的搜索路径的问题转换为获取公式(2)和公式(3)的解的问题,则最优的搜索路径为下述公式(2)和公式(3)的解:
其中,
图1是本申请实施例提供的一种基于模拟量子算法的搜索路径获取方法的流程图。本申请实施例的执行主体为计算机设备,计算机设备可以为终端,该终端可以为便携式、袖珍式、手持式等多种类型的终端,如手机、计算机、平板电脑等终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。或者,计算机设备也可以为服务器,该服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。参见图1,该方法包括。
101、计算机设备获取第一搜索路径,该第一搜索路径包括取值未确定的多个系数。
本申请实施例中,第一搜索路径的表达形式已确定,多个系数之间的关系已确定,自变量已确定,且自变量与多个系数之间的关系已确定,但该多个系数的取值还未确定。其中,该多个系数的取值可以为任意数值,为该多个系数设置不同的数值,可以得到第一搜索路径对应的不同搜索路径。
在一种可能实现方式中,定义第一搜索路径为
其中,T为演化时间,t为自变量,
上述公式(4)是第一搜索路径在频域上的表达形式,由于在绝热量子计算过程中,高频振荡容易对量子的状态产生干扰,将量子态变为能量更高的激发态,而绝热量子计算需要将量子态变为能量较低的基态,因此需要以频率数为M进行高频截断,也就是说,上述公式(4)中,j的取值范围不再是1到正无穷,而是变为1到M。其中,M可以为任一低频频率,如小于预设低频频率的任一数值,且M为正整数。
因此,下述公式(5)为最终获取的第一搜索路径,该第一搜索路径中需要确定M个系数的数值:
需要说明的是,本申请实施例仅是以上述公式(5)所示的第一搜索路径为例进行说明,在另一实施例中,第一搜索路径可以为其他的表达形式,本申请实施例对第一搜索路径的表达形式不做限制。
102、计算机设备获取第一搜索路径对应的第一处理函数。
本申请实施例中,第一处理函数与第一搜索路径之间存在关联,该第一处理函数可以是由第一搜索路径与其他的函数经过运算得到的,也即是,第一处理函数的输出值由第一搜索路径确定。该第一处理函数的表达形式已确定,且第一处理函数中除第一搜索路径包括的、取值未确定的该多个系数之外,其他系数的取值均已确定,多个系数之间的关系已确定、自变量已确定,且自变量与多个系数之间的关系已确定。
由于第一处理函数也包括上述取值未确定的多个系数,则如果将数据输入至第一处理函数,需要先确定多个系数的取值,才能够确定第一处理函数的输出值。
并且,由于多个系数的取值不同,第一处理函数的输出值也不同,则为多个系数取不同的数值,当该第一处理函数的输出值收敛于预设数值时,则表示多个系数的取值满足目标。因此该第一处理函数即为该第一搜索路径的目标函数。
在一种可能实现方式中,第一搜索路径与第一处理函数满足以下关系:
其中,公式(2)中的
需要说明的是,本申请实施例仅是根据公式(2)及公式(3)确定的第一处理函数为例进行说明,在另一实施例中,该第一处理函数可以为其他的表达形式,本申请实施例对第一处理函数的具体表达形式不做限制。
103、计算机设备基于模拟量子算法,获取在多个系数的取值为数值集合中的多个数值时,第一处理函数的输出值。
本申请实施例中,计算机设备遍历第一搜索路径的至少两组数值集合,基于模拟量子算法,获取在多个系数的取值分别为遍历的数值集合中的多个数值时,第一处理函数的输出值,则根据一组数值集合会得到第一处理函数的一个输出值,则该输出值即为该数值集合对应的输出值。计算机设备获取第一处理函数的输出值的过程中,需要遍历多组数值集合,直至第一处理函数的输出值收敛,在第一处理函数的输出值不收敛的情况下,执行步骤104,在第一处理函数的输出值收敛的情况下,执行步骤106。
其中,第一处理函数的输出值不收敛是指已遍历完成的至少两组数值集合对应的第一处理函数的输出值均不收敛于某一数值;第一处理函数的输出值收敛是指已遍历完成的至少两组数值集合中,最新遍历完成的至少两组数值集合对应的第一处理函数的输出值收敛于同一数值。其中,第一处理函数所收敛的数值根据第一处理函数确定。
在一种可能实现方式中,模拟量子算法包括多个子函数及根据多个子函数确定第一处理函数的运算方式,计算机设备基于模拟量子算法,对数值集合中的多个数值进行处理,分别得到多个子函数输出的第一数值,按照运算方式,对多个子函数输出的第一数值进行运算处理,得到第一处理函数的输出值。
第一处理函数可能为一个很复杂的函数,直接将数值集合中的多个数值作为该多个系数的取值,代入第一处理函数中,无法得到输出值,但是模拟量子算法可以对多个子函数按照运算方式进行运算,得到第一处理函数,该多个子函数是较为简单的函数,将数值集合中的多个数值作为该多个系数的取值,代入子函数中,可以得到每个子函数输出的第一数值,从而对多个第一数值按照运算方式进行运算处理,即可得到第一处理函数的输出值。
104、计算机设备在第一处理函数的输出值不收敛的情况下,对已获取的至少两组数值集合及对应的输出值进行函数拟合处理,得到用于描述至少两组数值集合对应的输出值的分布的第二处理函数。
本申请实施例中,计算机设备遍历第一搜索路径的至少两组数值集合,基于模拟量子算法获取了至少两组数值集合对应的输出值,则计算机设备采用高斯过程回归算法,对已获取的至少两组数值集合及对应的输出值进行函数拟合处理,得到用于描述至少两组数值集合对应的输出值的分布的第二处理函数,即根据第二处理函数能够确定至少两组数值集合对应的第一处理函数的输出值的分布情况。其中,高斯过程回归算法是一种利用高斯过程对数据进行回归分析的机器学习算法,可以采用原始目标函数对应的、已知的多个数据点,拟合得到该原始目标函数对应的拟合函数。
在一种可能实现方式中,本申请实施例中的第一处理函数即为原始目标函数,已获取的至少两个数值集合及对应的输出值为第一处理函数对应的、已知的至少两个数据点,则采用下述步骤对已获取的数据点进行拟合得到第二处理函数。
(1)计算机设备获取至少两组数值集合及对应的第一处理函数的输出值。
可选地,对于第一处理函数
本申请实施例以已获取了k个数值集合为例进行说明,k个数值集合为:
在一种可能实现方式中,在该k个数值集合对应的第一处理函数的输出值满足高斯分布的情况下,则该k个数值集合对应的第一处理函数的输出值的高斯分布如下述公式(6)所示:
其中,
(2)计算机设备对已获取的至少两组数值集合及对应的输出值进行函数拟合处理,得到用于描述至少两组数值集合对应的输出值的分布的第二处理函数。
在一种可能实现方式中,计算机设备在至少两组数值集合满足高斯分布的情况下,获取至少两组数值集合对应的条件概率,根据至少两组数值集合及对应的输出值和条件概率,对第二处理函数进行调整,得到调整后的第二处理函数。其中,条件概率表示至少两组数值集合对应的输出值的分布满足高斯分布的条件下,基于至少两组数值集合及对应的输出值得到第二处理函数的概率。其中,高斯分布可以为多元高斯分布。
在第一处理函数的任意输出值的联合分布满足高斯分布的情况下,且基于已获取的至少两组数值集合对应的输出值,得到对于第二处理函数的后验概率,将该后验概率作为至少两组数值集合对应的条件概率。
可选地,在至少两组数值集合满足高斯分布的情况下,获取至少两组数值集合对应的平均值及方差;根据平均值及方差,获取至少两组数值集合对应的条件概率。
例如,将上述k个数值集合及对应的第一处理函数的输出值,作为已知的k个数据点,根据已知的k个数据点,判断第一处理函数在数值集合为x时的输出值
其中,
其中,
方差
其中,
在上述确定条件概率的过程中,根据贝叶斯法则,确定条件概率,其中,贝叶斯法则用于描述事件1成立的情况下事件2成立的概率,与事件2成立的情况下事件1成立的概率之间的关系。因此,可以根据贝叶斯法则,确定
举例来说:采用高斯过程回归算法,根据已知的多个数据点,确定该多个数据点对应的函数,参见图2,假设存在一个第一处理函数
需要说明的是,本申请实施例仅是以根据上述至少两组数值集合得到第二处理函数的过程为例进行说明,而针对于多组数值集合,可以先初始化第二处理函数,每次根据至少两组数值集合,采用上述步骤对已得到的第二处理函数进行调整,得到调整后的第二处理函数,之后还可以继续根据其他的至少两组数值集合,重复采用上述步骤继续对调整后的第二处理函数进行再次调整,以此类推,即可得到更为准确的第二处理函数。
105、计算机设备获取更新的数值集合,以使更新的数值集合中的多个数值采用期望函数进行处理后得到的输出值为期望函数的最大输出值。
上述步骤104中根据已知的k个数值集合及对应的输出值,采用高斯过程回归算法可以较为准确地得到第一处理函数对应的第二处理函数,但是如果需要得到更加准确的第二处理函数,则需要继续获取新的数值集合及对应的输出值,以根据更多的数值集合及对应的输出值得到更加准确的第二处理函数,而如何获取新的数值集合是关键。因此获取用于描述第二处理函数的期望收益的期望函数,采用该期望函数指示获取更新的数值集合。其中,期望函数最好的选择就是第一处理函数,即将第一处理函数作为期望函数,但是第一处理函数仍是一个未知的函数,因此获取改良期望(EI,Expected Improvement)对应的期望函数。
在一种可能实现方式中,参见图3,采用下述步骤获取更新的数值集合。
1051、计算机设备获取至少两组数值集合对应的第一处理函数的输出值中的最大输出值。
关于期望函数:对于第一处理函数来说,获取了n个数值集合对应的输出值
其中,n为正整数,
1052、计算机设备根据第二处理函数与最大输出值的差值,确定第二处理函数对应的期望函数。
其中,期望函数为求取该差值和0的最大值的均值的函数。
在一种可能实现方式中,定义期望函数如下述公式(10)所示:
其中,n表示当前已确定的n个输出值,
将上述公式(7)代入公式(10)中,得到的简化之后的期望函数如下述公式(11)所示:
其中,
1053、计算机设备采用梯度算法,确定期望函数的最大输出值对应的一组数值集合,作为更新的数值集合。
在一种可能实现方式中,根据确定的第二处理函数对应的期望函数,定义数值集合的更新法则如下述公式(12)所示:
也就是说,当上述期望函数的输出值为最大输出值时,对应的数值集合x即为新获取的数值集合。另外,当期望函数的输出值收敛至0时,表示已知的多个数值集合对应的输出值已经存在最大值,也即是收敛于该最大值,此时第一处理函数的输出值也收敛。
另外,图4示出了一种更新数值集合的流程示意图,获取一组数值集合,基于模拟量子算法对一组数值集合中的多个数值进行处理,得到多个子函数对应的第一数值,根据多个子函数对应的第一数值及根据多个子函数确定第一处理函数的运算方式,确定第一处理函数的输出值,根据当前的数值集合及对应的输出值以及之前的数值集合及对应的输出值,根据高斯过程回归算法得到第二处理函数,根据期望函数,得到一组更新的数值集合。
需要说明的是,本申请实施例中,第一组数值集合中的多个数值是预先设置的,该多个数值可以随机设置,也可以根据经验设置。除第一组数值集合之外,其他的数值集合均采用步骤105获取。
106、计算机设备在第一处理函数的输出值收敛的情况下,将收敛的输出值对应的数值集合中的多个数值分别作为多个系数的取值,得到第二搜索路径。
本申请实施例中,第一处理函数的输出值收敛是指多个数值集合对应的输出值收敛于同一数值,由于上述获取第二处理函数的输出值的过程是一个循环过程,则在多个数值集合对应的输出值收敛时,将最后获取的一组数值集合中的多个数值分别作为多个系数的取值,将该多个数值代入第一搜索路径中,得到第二搜索路径。后续即可根据该第二搜索路径对数据进行处理。
本申请实施例中的第二搜索路径是基于量子计算的搜索路径,由于量子计算中存在线性叠加态,因此,与经典计算相比,在量子计算中采用第二搜索路径对数据的处理速度更快,可以提高数据处理效率。
在一种可能实现方式中,将获取的第二搜索路径应用于量子计算机中,根据获取的第二搜索路径,解决量子计算中的Grover搜索(一种量子搜索算法)问题。对于量子计算中的Grover搜索,假设有n个比特,每个比特对应0和1两个状态,则对该n个比特进行编码,可以编码
基于绝热量子计算的Grover搜索,也就是对于下面给定的两个哈密顿量H0、H1,设计最优的搜索路径。
其中,
分别采用传统的线性路径、Roland-Cerf路径(一种非线性路径)、以及采用上述步骤得到的第二搜索路径,将初态哈密顿量H0的基态演化至末态哈密顿量H1的基态,则演化过程的示意图如图5所示,横坐标为演化时间,纵坐标为保真度,曲线1为线性路径对应的曲线,曲线2为Roland-Cerf路径对应的曲线,曲线3为最优的搜索路径对应的曲线,图5中的示意图501为6个量子比特对应的演化示意图,图5中的示意图502为8个量子比特对应的演化示意图,图5中的示意图503为10个量子比特对应的演化示意图,图5中的示意图504为12个量子比特对应的演化示意图。
从图5中可以看出,采用传统的线性路径,演化结束之后保真度无法达到1,而采用Roland-Cerf路径和第二搜索路径,演化结束之后保真度可以达到1,并且采用第二搜索路径比采用Roland-Cerf路径到达保真度为1时的时间短,速度更快,提高了绝热量子计算的效率。
另外,从图5中还可以看出,随着量子比特的数目变大,采用线性路径进行演化的效果逐渐变差,这是由于线性路径在任何时刻的速率都是一样的,那么在能隙很小的时候,相同的速率很容易将量子的能量激发到高能级的状态上去,导致无法回到基态。
将上述图5所示的演化过程采用另一种形式进行表现,如图6所示,图6中的横坐标为
从图6和图7可以看出,第二搜索路径在
本申请实施例提供的方法,获取第一搜索路径和第一搜索路径对应的第一处理函数,遍历第一搜索路径的至少两组数值集合,基于模拟量子算法,获取在多个系数的取值分别为遍历的数值集合中的多个数值时,第一处理函数的输出值,对数值集合进行遍历的过程中,一次遍历即可分别对多个系数的不同取值进行处理,在第一处理函数的输出值收敛的情况下,将收敛的输出值对应的数值集合中的多个数值分别作为多个系数的取值,得到第二搜索路径,只需要遍历较少的次数即可使第一处理函数的输出值收敛,以快速获取多个系数的准确取值,从而提高获取第二搜索路径的效率。
并且,当第一处理函数的输出值不收敛时,会更新数值集合,以根据更新的数值集合获取新的第一处理函数的输出值,在更新数值集合的过程中,采用了高斯过程回归算法,该高斯过程回归算法针对连续的、缺乏特定的对称结构和几何结构、难以获取梯度信息的函数,仅需要较短的时间,即可完成对这种复杂的函数的处理,处理效率高。且高斯过程回归算法可以对含有噪声的函数进行处理,可以对多种类型的函数进行处理,应用范围大,则在获取第二搜索路径时,即使该第二搜索路径对应的处理函数是较为复杂的函数,也可以采用高斯过程回归算法快速处理。
并且,由于经典计算中对复杂的函数进行处理时,时间成本和经济成本较高,而对于量子系统来说,量子系统中经历量子相变时,量子系统会变得较为复杂,也就意味着,该量子系统对应的函数会变为较为复杂的函数,采用本申请中的方法可以对复杂的函数快速处理,降低了时间成本和经济成本。
并且,采用强化学习模型只能够对离散的数据进行处理,而无法直接处理连续的函数,导致采用强化学习模型得到的搜索路径仅是局域最优的搜索路径,而本申请中的搜索路径获取方法,可以对连续的函数进行处理,则得到的第二搜索路径为全局最优的搜索路径。
并且,本申请实施例提供的方法,可以确定第一搜索路径的多个系数的取值,得到第二搜索路径,与该多个系数采用其他取值而得到的搜索路径相比,采用该第二搜索路径对数据进行处理时,数据处理速度最快。
图8是本申请实施例提供的一种基于模拟量子算法的搜索路径获取方法的流程图。本申请实施例的执行主体为计算机设备,参见图8,该方法包括。
801、计算机设备获取第一搜索路径及第一搜索路径对应的第一处理函数。
步骤801中获取第一搜索路径及对应的第一处理函数的实施方式与上述图1所示的实施例中的步骤101和步骤102的实施方式类似,在此不再赘述。
802、计算机设备基于模拟量子算法,对获取的数值集合中的多个数值进行处理,得到多个子函数输出的第一数值。
其中,模拟量子算法包括多个子函数及根据多个子函数确定第一处理函数的运算方式。该多个子函数中包括取值未确定的多个系数,该多个系数与第一处理函数中包括的取值未确定的多个系数可以相同,也可以是对第一处理函数中包括的取值未确定的多个系数进行运算得到的。另外,每个子函数均可以包括取值未确定的系数,或者,多个子函数中的预设数量的子函数包括取值未确定的系数,而除预设数量的子函数之外的其他子函数中不包括取值未确定的系数。
另外,由于本申请实施例中是基于模拟量子算法,对获取的数值集合中的多个数值进行处理,得到多个子函数输出的第一数值。那么,模拟量子算法中包括的每个子函数输出的第一数值均有对应的物理含义,例如,子函数输出的第一数值表示量子速度、量子质量等,则模拟量子算法将第一处理函数表示为多个物理量对应的子函数。
803、计算机设备按照运算方式,对多个子函数输出的第一数值进行运算处理,得到第一处理函数的输出值。
计算机设备获取到第一处理函数的输出值之后,获取已经遍历的至少两组数值集合对应的第一处理函数的输出值,判断第一处理函数的输出值是否收敛,在第一处理函数的输出值收敛的情况下,则执行步骤807,在第一处理函数的输出值不收敛的情况下,则执行步骤804。
804、计算机设备在第一处理函数的输出值不收敛的情况下,对已获取的至少两组数值集合及对应的输出值进行函数拟合处理,得到用于描述至少两组数值集合对应的输出值的分布的第二处理函数。
步骤804中获取第二处理函数的实施方式与上述图1所示的实施例中的步骤104的实施方式类似,在此不再赘述。
805、计算机设备获取至少两组数值集合对应的输出值中的最大输出值,根据第二处理函数与该最大输出值的差值,确定第二处理函数对应的期望函数。
806、计算机设备采用梯度算法,确定期望函数的最大输出值对应的一组数值集合,作为更新的一组数值集合,重复执行步骤802。
步骤805中确定期望函数的实施方式及步骤806中获取更新的数值集合的实施方式与上述图1所示的实施例中的步骤105的实施方式类似,在此不再赘述。
807、计算机设备在第一处理函数的输出值收敛的情况下,将收敛的输出值对应的数值集合中的多个数值分别作为多个系数的取值,得到第二搜索路径。
本申请实施例提供的搜索路径获取方法,获取第一搜索路径和第一搜索路径对应的第一处理函数,遍历第一搜索路径的至少两组数值集合,基于模拟量子算法,获取在多个系数的取值分别为遍历的数值集合中的多个数值时,第一处理函数的输出值,对数值集合进行遍历的过程中,一次遍历即可分别对多个系数的不同取值进行处理,在第一处理函数的输出值收敛的情况下,将收敛的输出值对应的数值集合中的多个数值分别作为多个系数的取值,得到第二搜索路径,只需要遍历较少的次数即可使第一处理函数的输出值收敛,以快速获取多个系数的准确取值,从而提高获取第二搜索路径的效率。
上述图1或图8所示的基于模拟量子算法的搜索路径获取方法可以应用于搜索场景下,采用搜索路径,在多个备选数据中搜索目标数据。下面以应用于搜索场景为例,对基于模拟量子算法的数据搜索方法进行说明。
图9是本申请实施例提供的一种基于模拟量子算法的数据搜索方法的流程图。参见图9,本申请实施例的执行主体为计算机设备,该方法包括。
901、计算机设备根据待搜索的多个备选数据,创建第一状态数据和第二状态数据。
本申请实施例中,备选数据可以为物品、图像或其他数据,根据实际的搜索场景的不同,该备选数据可以为不同形式的数据,本申请实施例对此不做限制。第一状态数据用于描述还未开始对多个备选数据进行搜索时多个备选数据的状态,第二状态数据用于描述已经搜索到目标数据时多个备选数据的状态。
其中,第一状态数据对应的第一状态为多个备选数据的选取概率相同的状态,第二状态数据对应的第二状态为已经搜索到满足搜索条件的目标数据的状态。
也就是说,多个备选数据处于第一状态时,还未开始对多个备选数据进行搜索,多个备选数据的选取概率均相同,即计算机设备第一次对多个备选数据进行搜索时,选取到多个备选数据中的任一备选数据的可能性是相同的;多个备选数据处于第二状态时,已经搜索到目标数据,目标数据的选取概率为1,即计算机设备最后一次对多个备选数据进行搜索时,选取到的必然是目标数据。
例如,有n个备选数据,计算机设备第一次对n备选数据进行搜索时,从n个备选数据中选取任一备选数据,该任一备选数据的选取概率为1/n。
在一种可能实现方式中,第一状态数据中包括多个备选数据的选取概率,第二状态数据中包括预设概率,该多个选取概率根据备选数据的数量确定,预设概率为1。例如,有20个备选数据,需要从这20个备选数据中选取1个目标数据,则可以确定第一状态数据中包括的选取概率为1/20。
在一种可能实现方式中,该多个备选数据位于不同的位置,则在多个备选数据中搜索目标数据时,需要从任一初始位置开始进行搜索,终止位置即为目标数据所在的位置,那么,第一状态数据包括起点位置信息,第二状态数据包括终点位置信息。后续在搜索过程中,如果搜索到的位置信息与终止位置信息相同,则表示搜索到目标数据。
902、计算机设备根据第一状态数据和第二状态数据创建第一搜索路径。
步骤902中创建第一搜索路径的实施方式与上述步骤101中获取第一搜索路径的实施方式类似,不同的是,除第一搜索路径包括取值未确定的多个系数之外,第一搜索路径的起点指代第一状态,且终点指代第二状态。
在一种可能实现方式中,计算机设备根据第一状态数据、第二状态数据和目标搜索时长,创建第一搜索路径。其中,第一搜索路径还包括目标搜索时长,该目标搜索时长表示第一状态转换为第二状态所需的时长。其中,目标搜索时长可以为任意预设时长,例如,可以为1分钟、2分钟或其他时长。
以目标搜索时长为T,第一状态数据为(0,1),第二状态数据为(T,0)为例,可以创建第一搜索路径为
对该第一搜索路径
其中,T为目标搜索时长,t为自变量,
需要说明的是,本申请实施例仅是以第一状态数据为(0,1),第二状态数据为(T,0),创建的第一搜索路径为为例进行说明,在另一实施例中,可以创建其他满足第一状态数据和第二状态数据的搜索路径。
903、计算机设备获取第一搜索路径对应的第一处理函数。其中,第一处理函数包括多个系数,且第一处理函数的输出值由第一搜索路径确定,第一处理函数的输出值收敛指示多个系数的取值满足目标。
904、计算机设备基于模拟量子算法,获取在多个系数的取值为数值集合中的多个数值时,第一处理函数的输出值。
905、计算机设备在第一处理函数的输出值不收敛的情况下,对已获取的至少两组数值集合及对应的输出值进行函数拟合处理,得到用于描述至少两组数值集合对应的输出值的分布的第二处理函数。
906、计算机设备获取更新的数值集合,以使更新的数值集合中的多个数值采用期望函数进行处理后得到的输出值为期望函数的最大输出值。
907、计算机设备在第一处理函数的输出值收敛的情况下,将收敛的输出值对应的数值集合中的多个数值分别作为多个系数的取值,得到第二搜索路径。
步骤903-步骤907中确定第二搜索路径的实施方式与上述图1所示的实施例中步骤102-步骤106中确定第二搜索路径的实施方式类似,在此不再赘述。不同的是,图1所示的实施例中获取的是第二搜索路径,步骤906中获取的是第二搜索路径。
908、计算机设备采用第二搜索路径,在多个备选数据中搜索目标数据。
本申请实施例中,计算机设备采用第二搜索路径,在多个备选数据中搜索目标数据,如果搜索到的备选数据满足搜索条件,则表示该备选数据即为目标数据。
在一种可能实现方式中,多个备选数据的类型不同,搜索条件包括目标类型,计算机设备采用第二搜索路径,在多个备选数据中搜索满足目标类型的目标数据。
例如,备选数据为20个备选物品,需要从20个备选物品中选取1个目标物品,搜索条件为目标物品类型,即需要从20个备选物品中搜索出目标物品类型的目标物品。则在搜索过程中,从搜索路径的起点开始搜索,此时第一次进行搜索能够选取到目标物品的概率为1/20,如果第一次搜索就选取到目标物品,则概率变为1,则结束搜索;如果第一次搜索没有搜索到目标物品,则第二次进行搜索能够选取到目标物品的概率为1/19,如果第二次搜索选取到目标物品,则概率变为1,则结束搜索;如果第二次搜索还没有搜索到目标物品,则第三次进行搜索能够选取到目标物品的概率变为1/18,继续对剩余的备选物品进行搜索,直至搜索到目标物品。
可选地,多个备选数据中包括类型相同的数据,搜索条件可以包括数据标识或其他可以唯一表示该目标数据的数据特征。
需要说明的是,本申请实施例对备选数据的形式、搜索条件不做限制,根据实际的应用场景,该备选数据可以为多种形式的数据,搜索条件可以根据备选数据的形式确定。
本申请实施例提供的方法,根据待搜索的多个备选数据,创建第一状态数据和第二状态数据,根据第一状态数据和第二状态数据创建第一搜索路径,获取第一搜索路径对应的第一处理函数,遍历第一搜索路径的至少两组数值集合,基于模拟量子算法,获取在多个系数的取值分别为遍历的数值集合中的多个数值时,第一处理函数的输出值,对数值集合进行遍历的过程中,一次遍历即可分别对多个系数的不同取值进行处理,在第一处理函数的输出值收敛的情况下,将收敛的输出值对应的数值集合中的多个数值分别作为多个系数的取值,得到第二搜索路径,只需要遍历较少的次数即可使第一处理函数的输出值收敛,以快速获取多个系数的准确取值,从而提高获取第二搜索路径的效率。并且,由于第一搜索路径是根据多个备选数据对应的第一状态数据和第二状态数据进行创建的,获取的第二搜索路径适用于该多个备选数据,可以采用第二搜索数据在对多个备选数据中快速搜索出目标数据。
并且,由于获取的第二搜索路径为搜索时间最短、搜索速度最快的搜索路径,采用第二搜索路径搜索目标数据的过程中,可以根据搜索条件快速从多个备选数据中搜索到目标数据,提高了数据搜索效率。并且,与经典计算中的数据搜索方式相比较,第二搜索路径是基于量子计算的数据搜索方式,采用第二搜索路径搜索目标数据的效率高于采用经典计算搜索目标数据的效率。
图10是本申请实施例提供的一种数据搜索装置的结构示意图。参见图10,该装置包括。
状态数据创建模块1001,用于根据待搜索的多个备选数据,创建第一状态数据和第二状态数据,第一状态数据对应的第一状态为多个备选数据的选取概率相同的状态,第二状态数据对应的第二状态为多个备选数据中满足搜索条件的目标数据的选取概率为预设概率,且其他备选数据的选取概率小于预设概率的状态;
第一路径创建模块1002,用于根据第一状态数据和第二状态数据创建第一搜索路径,第一搜索路径的起点指代第一状态,且终点指代第二状态,第一搜索路径包括取值未确定的多个系数;
第一函数获取模块1003,用于获取第一搜索路径对应的第一处理函数,第一处理函数包括多个系数,且第一处理函数的输出值由第一搜索路径确定,第一处理函数的输出值收敛指示多个系数的取值满足目标;
集合获取模块1004,用于遍历第一搜索路径的至少两组数值集合,每组数值集合包括多个系数对应的多个数值,且不同的数值集合中的多个数值不完全相同;
输出值获取模块1005,用于基于模拟量子算法,获取在多个系数的取值分别为遍历的数值集合中的多个数值时,第一处理函数的输出值;
第二路径获取模块1006,用于在第一处理函数的输出值收敛的情况下,将收敛的输出值对应的数值集合中的多个数值分别作为多个系数的取值,得到第二搜索路径
数据搜索模块1007,用于采用第二搜索路径,在多个备选数据中搜索目标数据。
本申请实施例提供的装置,根据待搜索的多个备选数据,创建第一状态数据和第二状态数据,根据第一状态数据和第二状态数据创建第一搜索路径,获取第一搜索路径对应的第一处理函数,遍历第一搜索路径的至少两组数值集合,基于模拟量子算法,获取在多个系数的取值分别为遍历的数值集合中的多个数值时,第一处理函数的输出值,对数值集合进行遍历的过程中,一次遍历即可分别对多个系数的不同取值进行处理,在第一处理函数的输出值收敛的情况下,将收敛的输出值对应的数值集合中的多个数值分别作为多个系数的取值,得到第二搜索路径,只需要遍历较少的次数即可使第一处理函数的输出值收敛,以快速获取多个系数的准确取值,从而提高获取第二搜索路径的效率。并且,由于第一搜索路径是根据多个备选数据对应的第一状态数据和第二状态数据进行创建的,获取的第二搜索路径适用于该多个备选数据,可以采用第二搜索数据在对多个备选数据中快速搜索出目标数据。
在一种可能实现方式中,参见图11,装置还包括:
信息获取模块1008,用于在第一处理函数的输出值不收敛的情况下,获取已遍历完成的至少两组数值集合,以及至少两组数值集合对应的第一处理函数的输出值;
第二函数获取模块1009,用于对至少两组数值集合及对应的输出值进行函数拟合处理,得到第二处理函数,第二处理函数用于描述至少两组数值集合对应的输出值的分布,第二处理函数包括多个系数;
集合更新模块1010,用于获取更新的数值集合,以使更新的数值集合中的多个数值采用期望函数进行处理后得到的输出值为期望函数的最大输出值,期望函数用于描述第二处理函数的期望收益。
在另一种可能实现方式中,参见图11,第二函数获取模块1009,包括:
概率获取单元1019,用于在至少两组数值集合满足高斯分布的情况下,获取至少两组数值集合对应的条件概率,条件概率表示至少两组数值集合对应的输出值的分布满足高斯分布的条件下,基于至少两组数值集合及对应的输出值得到第二处理函数的概率;
函数调整单元1029,用于根据至少两组数值集合及对应的输出值和条件概率,对已得到的第二处理函数进行调整,得到调整后的第二处理函数。
在另一种可能实现方式中,参见图11,集合更新模块1010,还用于:
获取至少两组数值集合对应的第一处理函数的输出值中的最大输出值;
根据第二处理函数与最大输出值的差值,确定第二处理函数对应的期望函数,期望函数为求取差值和0的最大值的均值的函数;
采用梯度算法,确定期望函数的最大输出值对应的一组数值集合,作为更新的数值集合。
在另一种可能实现方式中,参见图11,概率获取单元1019,还用于:
在至少两组数值集合满足高斯分布的情况下,获取至少两组数值集合对应的平均值及方差;
根据平均值及方差,获取至少两组数值集合对应的条件概率。
在另一种可能实现方式中,参见图11,模拟量子算法包括多个子函数及根据多个子函数确定第一处理函数的运算方式,输出值获取模块1005,包括:
第一数值获取单元1015,用于基于模拟量子算法,对遍历的数值集合中的多个数值进行处理,分别得到多个子函数输出的第一数值;
输出值获取单元1025,用于按照运算方式,对多个子函数输出的第一数值进行运算处理,得到第一处理函数的输出值。
在另一种可能实现方式中,第一路径创建模块1002,还用于:
根据第一状态数据、第二状态数据和目标搜索时长,创建第一搜索路径,第一搜索路径还包括目标搜索时长,目标搜索时长表示将第一状态转换为第二状态所需的时长。
在另一种可能实现方式中,多个备选数据的类型不同,搜索条件包括目标类型,数据搜索模块1007,还用于:
采用第二搜索路径,在多个备选数据中搜索满足目标类型的目标数据。
图12示出了本申请一个示例性实施例提供的终端1200的结构示意图。该终端1200用于执行上述基于模拟量子算法的数据搜索方法中终端所执行的步骤。
通常,终端1200包括有:处理器1201和存储器1202。
处理器1201可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1201可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1201也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1201可以在集成有GPU(Graphics Processing Unit,图像处理的交互器), GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1201还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1202可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1202还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1202中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1201所具有以实现本申请中方法实施例提供的基于模拟量子算法的数据搜索方法。
在一些实施例中,终端1200还可选包括有:外围设备接口1203和至少一个外围设备。处理器1201、存储器1202和外围设备接口1203之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1203相连。具体地,外围设备包括:射频电路1204、触摸显示屏1205、摄像头1206、音频电路1207、定位组件1208和电源1209中的至少一种。
外围设备接口1203可被用于将I/O(Input /Output,输入/输出)相关的至少一个外围设备连接到处理器1201和存储器1202。在一些实施例中,处理器1201、存储器1202和外围设备接口1203被集成在同一芯片或电路板上;在一些其他实施例中,处理器1201、存储器1202和外围设备接口1203中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路1204用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路1204通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1204将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1204包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1204可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路1204还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏1205用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1205是触摸显示屏时,显示屏1205还具有采集在显示屏1205的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1201进行处理。此时,显示屏1205还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1205可以为一个,设置终端1200的前面板;在另一些实施例中,显示屏1205可以为至少两个,分别设置在终端1200的不同表面或呈折叠设计;在再一些实施例中,显示屏1205可以是柔性显示屏,设置在终端1200的弯曲表面上或折叠面上。甚至,显示屏1205还可以设置成非矩形的不规则图形,也即异形屏。显示屏1205可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件1206用于采集图像或视频。可选地,摄像头组件1206包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端1200的前面板,后置摄像头设置在终端1200的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1206还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路1207可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1201进行处理,或者输入至射频电路1204以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端1200的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1201或射频电路1204的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1207还可以包括耳机插孔。
定位组件1208用于定位终端1200的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件1208可以是基于美国的GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的定位组件。
电源1209用于为终端1200中的各个组件进行供电。电源1209可以是交流电、直流电、一次性电池或可充电电池。当电源1209包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端1200还包括有一个或多个传感器1210。该一个或多个传感器1210包括但不限于:加速度传感器1211、陀螺仪传感器1212、压力传感器1213、指纹传感器1214、光学传感器1215以及接近传感器1216。
加速度传感器1211可以检测以终端1200建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1211可以用于检测重力加速度在三个坐标轴上的分量。处理器1201可以根据加速度传感器1211采集的重力加速度信号,控制触摸显示屏1205以横向视图或纵向视图进行用户界面的显示。加速度传感器1211还可以用于应用或者用户的运动数据的采集。
陀螺仪传感器1212可以检测终端1200的机体方向及转动角度,陀螺仪传感器1212可以与加速度传感器1211协同采集用户对终端1200的3D动作。处理器1201根据陀螺仪传感器1212采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、应用控制以及惯性导航。
压力传感器1213可以设置在终端1200的侧边框和/或触摸显示屏1205的下层。当压力传感器1213设置在终端1200的侧边框时,可以检测用户对终端1200的握持信号,由处理器1201根据压力传感器1213采集的握持信号进行左右手识别或快捷操作。当压力传感器1213设置在触摸显示屏1205的下层时,由处理器1201根据用户对触摸显示屏1205的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器1214用于采集用户的指纹,由处理器1201根据指纹传感器1414采集到的指纹识别用户的身份,或者,由指纹传感器1214根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器1201授权该用户具有相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器1214可以被设置终端1200的正面、背面或侧面。当终端1200上设置有物理按键或厂商Logo时,指纹传感器1214可以与物理按键或厂商标志集成在一起。
光学传感器1215用于采集环境光强度。在一个实施例中,处理器1201可以根据光学传感器1215采集的环境光强度,控制触摸显示屏1205的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏1205的显示亮度;当环境光强度较低时,调低触摸显示屏1205的显示亮度。在另一个实施例中,处理器1201还可以根据光学传感器1215采集的环境光强度,动态调整摄像头组件1206的拍摄参数。
接近传感器1216,也称距离传感器,通常设置在终端1200的前面板。接近传感器1216用于采集用户与终端1200的正面之间的距离。在一个实施例中,当接近传感器1216检测到用户与终端1200的正面之间的距离逐渐变小时,由处理器1201控制触摸显示屏1205从亮屏状态切换为息屏状态;当接近传感器1216检测到用户与终端1200的正面之间的距离逐渐变大时,由处理器1201控制触摸显示屏1205从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图12中示出的结构并不构成对终端1200的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
图13是本申请实施例提供的一种服务器的结构示意图,该服务器1300可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(Central ProcessingUnits,CPU)1301和一个或一个以上的存储器1302,其中,存储器1302中存储有至少一条指令,该至少一条指令由处理器1301加载并执行以实现上述各个方法实施例提供的方法。当然,该服务器还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现设备功能的部件,在此不做赘述。
服务器1300可以用于执行上述基于模拟量子算法的数据搜索方法中服务器所执行的步骤。
本申请实施例还提供了一种计算机设备,该计算机设备包括处理器和存储器,存储器中存储有至少一条指令,该至少一条指令由处理器加载并执行,以实现上述实施例的基于模拟量子算法的数据搜索方法中所执行的操作。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有至少一条指令,该至少一条指令由处理器加载并执行,以实现上述实施例的基于模拟量子算法的数据搜索方法中所执行的操作。
本申请实施例还提供了一种计算机程序,该计算机程序中存储有至少一条指令,该至少一条指令由处理器加载并执行,以实现上述实施例的基于模拟量子算法的数据搜索方法中所执行的操作。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上仅为本申请实施例的可选实施例,并不用以限制本申请实施例,凡在本申请实施例的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
机译: 基于模拟量子算法的数据搜索方法和装置和装置
机译: 基于模拟量子算法的数据搜索方法和装置和装置
机译: 基于模拟量子算法的数据检索方法和装置和装置