CN112749809B - 构造量子仿真系统的方法和装置 - Google Patents
构造量子仿真系统的方法和装置 Download PDFInfo
- Publication number
- CN112749809B CN112749809B CN202110049940.XA CN202110049940A CN112749809B CN 112749809 B CN112749809 B CN 112749809B CN 202110049940 A CN202110049940 A CN 202110049940A CN 112749809 B CN112749809 B CN 112749809B
- Authority
- CN
- China
- Prior art keywords
- information
- quantum
- time
- hamiltonian
- user
- 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
- G06N10/00—Quantum computing, i.e. information processing based on quantum-mechanical phenomena
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/36—Circuit design at the analogue level
- G06F30/367—Design verification, e.g. using simulation, simulation program with integrated circuit emphasis [SPICE], direct methods or relaxation methods
Abstract
本公开公开了构造量子仿真系统的方法、装置、存储介质、设备和计算机程序产品,涉及量子计算技术领域,尤其涉及量子仿真技术领域。具体实现方案为:获取用户通过API接口输入的电路信息,并根据电路信息初始化哈密顿量;获取用户通过API接口输入的漂移项信息,并根据漂移项信息生成不含时哈密顿量添加到哈密顿量中;获取用户通过API接口输入的控制项信息,并根据控制项信息生成含时哈密顿量添加到哈密顿量中;基于哈密顿量进行量子仿真,得到仿真结果。该实施方式提供一种用于量子系统仿真的数据交互格式,及其配套的接口,以完整地刻画量子系统、模拟信息及结果,并方便地进行数据生成、存储和交互。
Description
技术领域
本公开涉及量子计算技术领域,尤其涉及量子仿真技术领域。
背景技术
量子计算是一种遵循量子力学,对量子信息单元进行调控从而进行计算的计算模型。相较于传统的计算机,量子计算在处理某些问题时要优于传统的通用计算机。然而,由于现在量子计算机的硬件设备还处于发展中,且成本非常昂贵,并且还有诸多技术路线仍在探究中。于是,相对于在实验室中直接使用量子计算硬件,基于经典计算机的量子仿真提供了一种高效且实用的选择。值得指出的是,这里提及的量子仿真系统是用经典计算机去模拟一个量子系统,其一个核心就是基于哈密顿量演化的模拟。这样的处理也被学术界和工业界广泛采用用于量子技术的开发。
在量子力学理论中,一个量子系统通可以用哈密顿量来表征。只要知道了系统的哈密顿量,就可以获得量子系统的能谱、动力学演化等诸多关键信息。更具体一点,比如在量子控制问题中,如果要使用经典计算机上进行仿真,则需要将包含量子系统参数、控制信号、环境以及噪声等相关信息的系统哈密顿量在经典计算机上进行建模和存储,随后使用经典计算程序对量子系统的动力学演化过程进行仿真,进而得到量子系统演化的结果。需要注意的是,随着量子系统规模的增大、控制的复杂化、噪声类型的多元化,量子系统哈密顿量的构建会变得异常复杂和不便,这给在经典计算机上进行大规模量子系统的仿真带来了不小的挑战。
发明内容
本公开提供了一种构造量子仿真系统的方法、装置、设备以及存储介质。
根据本公开的第一方面,提供了一种构造量子仿真系统的方法,包括:获取用户通过API接口输入的电路信息,并根据所述电路信息初始化哈密顿量;获取用户通过API接口输入的漂移项信息,并根据所述漂移项信息生成不含时哈密顿量添加到所述哈密顿量中;获取用户通过API接口输入的控制项信息,并根据所述控制项信息生成含时哈密顿量添加到所述哈密顿量中;基于所述哈密顿量进行量子仿真,得到仿真结果。
根据本公开的第二方面,提供了一种构造量子仿真系统的装置,包括:初始化单元,被配置成获取用户通过API接口输入的电路信息,并根据所述电路信息初始化哈密顿量;第一生成单元,被配置成获取用户通过API接口输入的漂移项信息,并根据所述漂移项信息生成不含时哈密顿量添加到所述哈密顿量中;第二生成单元,被配置成获取用户通过API接口输入的控制项信息,并根据所述控制项信息生成含时哈密顿量添加到所述哈密顿量中;仿真单元,被配置成基于所述哈密顿量进行量子仿真,得到仿真结果。
根据本公开的第三方面,提供了一种构造量子仿真系统的电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行第一方面中任一项所述的方法。
根据本公开的第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据第一方面中任一项所述的方法。
根据本公开的第五方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据第一方面中任一项所述的方法。
本公开的实施例提供的构造量子仿真系统的方法和装置,提供了用于量子系统仿真的数据交互格式,及其配套的API接口,以完整地刻画量子系统、模拟信息及结果,并方便地进行数据生成、存储和交互。同时,本申请还提供了一整套相关的算法和工具,提升这套数据结构的易用性和自动化程度。基于本申请提出的创新性的数据结构,用户可以使用API接口方便地构造和存储大型量子系统的哈密顿量、控制信号等信息,同时也可以使用API方便地获取系统信息。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1是本公开的一个实施例可以应用于其中的示例性系统架构图;
图2是根据本公开的构造量子仿真系统的方法的一个实施例的流程图;
图3是根据本公开的构造量子仿真系统的哈密顿量数据结构的示意图;
图4是根据本公开的构造量子仿真系统的方法的又一个实施例的流程图;
图5是根据本公开的构造量子仿真系统的方法的一个应用场景的示意图;
图6是根据本公开的构造量子仿真系统的装置的一个实施例的结构示意图;
图7是用来实现本公开实施例的构造量子仿真系统的方法的电子设备的框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1示出了可以应用本公开的构造量子仿真系统的方法或构造量子仿真系统的装置的实施例的示例性系统架构100。
如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如量子仿真类应用、网页浏览器应用、购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
终端设备101、102、103可以是硬件,也可以是软件。当终端设备101、102、103为硬件时,可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。当终端设备101、102、103为软件时,可以安装在上述所列举的电子设备中。其可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块。在此不做具体限定。
服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103上运行的量子仿真APP提供支持的后台仿真服务器。后台仿真服务器可以对接收到的量子仿真请求等数据进行分析等处理,并将处理结果(例如仿真结果)反馈给终端设备。
需要说明的是,服务器可以是硬件,也可以是软件。当服务器为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务的多个软件或软件模块),也可以实现成单个软件或软件模块。在此不做具体限定。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。服务器也可以是云服务器,或者是带人工智能技术的智能云计算服务器或智能云主机。
需要说明的是,本公开的实施例所提供的构造量子仿真系统的方法一般由服务器105执行,相应地,构造量子仿真系统的装置一般设置于服务器105中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
本方案的核心在于设计一种用于量子系统仿真的数据交互格式,及其配套的API接口,以完整地刻画量子系统、模拟信息及结果,并方便地进行数据生成、存储和交互。同时,还提供了一整套相关的算法和工具,提升这套数据结构的易用性和自动化程度。基于提出的创新性的数据结构,用户可以使用API接口方便地构造和存储大型量子系统的哈密顿量、控制信号等信息,同时也可以使用API方便地获取系统信息。
具体而言,本发明方案中的数据结构主要分为三个板块(如图3所示):
1、配置信息板块:用于存储一些用户定义的基本配置信息,例如量子子系统数量及维度、量子仿真配置、名称和版本信息等;
2、量子系统哈密顿量板块:用于存储量子系统的完整哈密顿量信息,包括量子系统的体系结构、控制信息、环境、噪声等。这一部分的具体构造方法见“(2)哈密顿量的构建方法”
3、缓存板块:用于存储量子仿真计算过程中加速所需的中间变量、计算结果、日志信息、量子测量结果等数据。
继续参考图2,示出了根据本公开的构造量子仿真系统的方法的一个实施例的流程200。该构造量子仿真系统的方法,包括以下步骤:
步骤201,获取用户通过API接口输入的电路信息,并根据电路信息初始化哈密顿量。
在本实施例中,本方案的数据交互格式中最重要的部分在于构造和存储哈密顿量的方法。本方案采用“接口化”和“系统化”的方法构造哈密顿量,从而解决了大型量子系统中复杂哈密顿量构造和表示的技术难题,让基于量子仿真的技术与应用研发更加便捷。
量子力学中的哈密顿量是一个描述系统总能量的算符,通常可以表述为系统动能和势能之和。根据表征的物理含义不同,哈密顿量可以分为含时和不含时的两部分:
其中不含时(time-independent)的哈密顿量在系统演化过程中,不会随着时间变化。而含时(time-dependent)的哈密顿量在系统演化过程中会随着时间发生变化。本方案中,将基于上述描述提供一种快速创建复杂系统哈密顿量的方法。
构造量子仿真系统的方法的执行主体(例如图1所示的服务器)可以通过有线连接方式或者无线连接方式从用户利用其进行量子仿真的终端接收电路信息。用户可通过终端上的仿真APP输入电路信息,或者通过登录服务器上的网页进行输入。电路信息如图3所示。可包括量子子系统的数量,及其各自希尔伯特空间的维度、AWG(任意波形发生器)采样时间间隔等。
初始化一个空哈密顿量,在初始化时可以根据电路信息指定量子子系统的数量,及其各自希尔伯特空间的维度:
sysHam=createHam(name=`drift`,qubits=5,level=[3,4,5,6,7],dt=0.2222ns)
例如上述代码创建了一个含有5个子系统的量子系统的哈密顿量变量,并且他们的希尔伯特空间的维度分别为3、4、5、6、7,AWG采样时间间隔为0.2222ns。基于初始化的哈密顿量,随后添加描述量子系统的各个部分。在本方案中,将哈密顿量的存储分为两个主要部分:含时的哈密顿量和不含时的哈密顿量。
步骤202,获取用户通过API接口输入的漂移项信息,并根据漂移项信息生成不含时哈密顿量添加到哈密顿量中。
在本实施例中,用户可通过终端上的仿真APP输入漂移项信息,或者通过登录服务器上的网页进行输入。漂移项信息如图3所示。对于第一部分的不含时的哈密顿量而言,本申请提供了如下的方式添加:
addDrift(sysHam,name=`drift0`,onQubits=[0,2],operator=[number,number],amp=1.0)
其中第一个参数为哈密顿量变量,第二个参数为漂移项的名称,第三个参数和第四个参数分别指定了作用在指定子系统上的算符,最后一个参数的含义为当前项的系数。上述代码的含义是,在之前定义的sysHam哈密顿量变量中,为第一个子系统和第三个子系统添加一个粒子数算符(number operator):并将其前面的系数设置为1.0,其中为湮灭算符,为产生算符,数学上均用一个矩阵表示,并且将上述项取名为`drift0`。由于系统有5个子系统,根据哈密顿量构造的法则,本申请需要将光子数算符与其它子系统空间的单位矩阵做张量积[4]后,再作为整个系统空间中的算符:
用户如果有多个算符可以通过重复执行addDrift函数添加,最终系统将自动生成一个算符并进行缓存方便模拟器调用。缓存中的内容如图3所示。
步骤203,获取用户通过API接口输入的控制项信息,并根据控制项信息生成含时哈密顿量添加到哈密顿量中。
在本实施例中,接下来,提供了如下方式添加控制哈密顿量:
addControl(sysHam,name=`ctrl0`,onQubits=[0,1],operator=[driveX,driveX])
与addDrift类似,其中第一个参数为哈密顿量变量,第二个参数为控制项的名称,第三个参数和第四个参数分别指定了作用在指定子系统上的算符。通过重复执行上述代码的addControl函数,本申请可以在第一个子系统和第二个子系统添加多个控制算符driveX:控制哈密顿量一般都含时,例如在超导量子计算中,控制信号一般由微波脉冲构成,因此还需要添加为控制项添加脉冲:
addWave(sysHam,`ctrl0`,`gaussian`,{`a`:1,`tau`:10,`sigma`:5},0,20)
可以通过上述函数快速添加脉冲,其中第一个参数为哈密顿量变量,第二个变量指定脉冲作用在哪一个之前定义的控制项中,第三个参数表示作用的脉冲函数,第四个参数表示该脉冲函数所需的脉冲参数,第五个和第六个参数分别表示脉冲的开始时间和持续时间。采用上述方式,系统将会自动根据用户设置将脉冲进行预处理,并存储仿真算法需要的格式,以加速运算。同时,这种方法可以高效地针对复杂的量子任务进行排布,从而更为方便、高效地实现复杂量子任务的实现。
通过上述方案所定义的哈密顿量数据结构可以用图3表示。
步骤204,基于哈密顿量进行量子仿真,得到仿真结果。
在本实施例中,在量子计算中,除了关心量子硬件的性能(包括量子比特的质量和数量),还需要思考如何能够有效地控制量子硬件,从而使得量子任务得以高效地被执行。具体而言,需要将量子软件层面的量子逻辑门编译为量子硬件能够识别的物理脉冲信号。其中,量子门保真度可作为编译效率的一个关键性能指标。于是,实现高精度的量子门,便成为量子控制技术中极为重要的目标。量子优化控制的目标则是使用优化方法设计能够实现高保真度量子门的脉冲。
常用的技术方案是,研究人员通过建立模型进行仿真和优化,在经典计算机中计算出一组脉冲参数。用户需要输入希望实现的目标量子门Ugoal以及量子硬件参数,就可以快速、稳定、准确地输出优化的脉冲参数。
这里以含有一个子系统的量子系统的脉冲优化为例说明。假设系统的哈密顿量为:
其中αq表示超导量子系统的失谐性强度; 分别为产生算符和湮灭算符;此外,|0>=[1,0,0]T,|1>=[0,1,0]T,|2>=[0,0,1]T;p为脉冲数量,k表示脉冲序号;则可以通过如下代码来构建哈密顿量:
sysHam=createHam(name=`drift`,qubits=1,level=[3])
addDrift(sysHam,name=`drift0`,onQubits=[0],operator=[|2><2|],amp=1.0)
表示标量的指数运算。本示例提供的参数初始化的方法中,其中初始脉冲振幅设置为:脉冲宽度设置为:脉冲中心位置设置为,和在每一次迭代中,本申请都需要设置新的脉冲,可以使用本方案前面介绍的函数来方便地添加脉冲:
脉冲参数即为仿真结果。
本公开的上述实施例提供的方法,可以通过使用API接口方便地构造量子系统的哈密顿量并设置脉冲波形,而无需用户进行复杂的矩阵运算。
与业界其它用于量子系统的仿真方法相比,本申请的方案在以下几点具备显著优势:
1、模型的可扩展性强:允许用户自定义任意规模、维度的哈密顿量。并支持不同类型的量子系统。不仅支持量子控制领域相关的模型,同样支持量子硬件设计、量子测量和读取相关的模型;
2、标准化的数据存储:采用接口化、系统化的方式构造哈密顿量。对哈密顿量制定了通用的格式化存储方案,因而能够提供丰富强大的接口,方便数据的读取、存储和传输。同时方便基于该方案的扩展和二次开发。例如,开发基于该方案的云端服务架构、量子控制方案、量子模拟器等功能;
3、用户友好:用户可以方便快捷地使用直观的接口创建、访问、修改哈密顿量中的信息;
4、支持复杂的量子任务管理:由于实用的量子算法往往具有较大的系统规模,并且需要复杂的控制信号,难以管理。由于本方案中的控制信号管理方式允许用户方便地指定不同量子子系统上脉冲的起始时间和结束时间,并允许用户提交系统内置或任意的自定义脉冲,因而对复杂量子任务管理非常友好。
在定义完成哈密顿量后,用户可以使用JSON、XML或数据库等形式格式化存储上述信息。由于数据存储采用格式化的方法,因而对于后期调用非常方便。同时,本发明方案还提供了诸多方法或函数,以便用户可以方便地提取需要的信息。
获取某个时刻的系统哈密顿量:getHam(sysHam,t=10)。其中第一个参数是通过前面的方法定义的哈密顿量变量,第二个参数是指定的时刻。
获取某个控制项的控制时序信号:getSequence(sysHam,name=`control`)。其中第一个参数是通过前述方法定义的哈密顿量变量,第二个参数是控制项的名称。
获取缓存区域中的缓存信息:getCache(sysHam,item=`演化过程`)。其中第一个参数是通过前述方法定义的哈密顿量变量,第二个参数是缓存项的名称。
在本实施例的一些可选的实现方式中,漂移项信息包括作用在指定子系统上的至少一个算符;以及该方法还包括:将该每个算符与非指定子系统空间的单位矩阵做张量积后,再作为整个系统空间中的不含时的全局算符;将至少一个不含时的全局算符通过线性相加的方式进行组合生成一个算符并进行缓存以供用户通过预定的接口调用。如图3所示的缓存项中的“不含时哈密顿量”。调用接口示范如下:获取缓存区域中的缓存信息:getCache(sysHam,item=`不含时哈密顿量`)。其中第一个参数是通过前述方法定义的哈密顿量变量,第二个参数是缓存项的名称。还可通过修改item对应的内容来调用其它缓存信息,例如“演化过程”。采用接口化、系统化的方式构造哈密顿量。对哈密顿量制定了通用的格式化存储方案,因而能够提供丰富强大的接口,方便数据的读取、存储和传输。同时方便基于该方案的扩展和二次开发和用户提取需要的信息。
在本实施例的一些可选的实现方式中,控制项信息包括脉冲函数和参数;以及该方法还包括:对脉冲函数和参数进行预处理得到时间控制信息,并按仿真算法所需的格式进行存储,以供用户通过预定的接口调用指定控制项的时序控制信息。例如,获取某个控制项的控制时序信号:getSequence(sysHam,name=`control`)。其中第一个参数是通过前述方法定义的哈密顿量变量,第二个参数是控制项的名称。采用接口化、系统化的方式构造哈密顿量。对哈密顿量制定了通用的格式化存储方案,因而能够提供丰富强大的接口,方便数据的读取、存储和传输。同时方便基于该方案的扩展和二次开发和用户提取需要的信息。
在本实施例的一些可选的实现方式中,该方法还包括:将所述哈密顿量按预定格式存储,以供用户通过预定的接口调用指定时刻的哈密顿量。例如,获取某个时刻的系统哈密顿量:getHam(sysHam,t=10)。其中第一个参数是通过前面的方法定义的哈密顿量变量,第二个参数是指定的时刻。方便数据的读取、存储和传输。同时方便基于该方案的扩展和二次开发和用户提取需要的信息。
在本实施例的一些可选的实现方式中,该方法还包括:将以下至少一项保存在缓存中以供用户通过预定的接口调用缓存信息:不含时哈密顿量、仿真结果、演化过程、仿真耗时、优化信息。因此方便数据的读取、存储和传输。同时方便基于该方案的扩展和二次开发和用户提取需要的信息。
在本实施例的一些可选的实现方式中,控制项信息还包括:噪声函数和参数。因此,方便用户对仿真系统进行扩展,自定义噪声信息、使得仿真过程更接近真实情况。
进一步参考图4,其示出了构造量子仿真系统的方法的又一个实施例的流程400。该构造量子仿真系统的方法的流程400,包括以下步骤:
步骤401,获取用户通过API接口输入的电路信息,并根据电路信息初始化哈密顿量。
步骤402,获取用户通过API接口输入的漂移项信息,并根据漂移项信息生成不含时哈密顿量添加到哈密顿量中。
步骤403,获取用户通过API接口输入的控制项信息,并根据控制项信息生成含时哈密顿量添加到哈密顿量中。
步骤404,基于哈密顿量进行量子仿真,得到仿真结果。
步骤401-404与步骤201-204基本相同,因此不再赘述。
步骤405,获取期望量子门信息。
在本实施例中,期望量子门信息(用Ugoal表示),是指用户所期望获得的量子门信息,可以由用户根据需求预先设置或在需要时实时设置,也可以在服务器、终端设备或其他存储设备中预先存储,上述执行主体可以根据具体的需要从本地或非本地的人机交互设备、存储设备中获取期望量子门信息。
期望量子门可以根据用户所期望实现的功能进行自主设置,也可以直接将期望量子门信息设置为常见泡利-X门(Pauli-X gate,以下简称X门),泡利-Y门(Pauli-Ygate,以下简称Y门),泡利-Z门(Pauli-Z gate,以下简称Z门)等量子门。
步骤406,根据哈密顿量确定初始脉冲参数。
在本实施例中,根据上述步骤201-203构造的哈密顿量,确定用于生成初始脉冲的初始脉冲参数。以高斯波形的脉冲为例,初始脉冲参数包括:初始脉冲的量子门的执行时间、脉冲振幅、脉冲宽度以及脉冲中心位置,如公式5所示。
初始脉冲的量子门,通常可以根据该量子系统的时间演化算符所满足的动力学方程求得。为了描述时间演化算符,可以参考以下线性薛定谔方程:
其中,H(t)为量子系统的哈密顿量,U(t)为时间演化算符,i为虚数单位,为普朗克常数。具体地,可以使用例如分离变量法、椭形函数展开法、试探函数法或三角函数假设法等微分方程展开方法求解该薛定谔方程,通过求解该线性薛定谔方程,可以确定初始脉冲对应的量子门。
步骤407,基于哈密顿量,确定初始脉冲参数对应的真实量子门信息。
在本实施例中,系统本身的哈密顿量由H(t)表示,其中,最原始的系统本身的哈密顿量可以由H0表示,由控制脉冲产生的哈密顿量由u(t)H1表示,其中u(t)表示含时脉冲的幅度。系统的演化结果与H0+u(t)H1的有关。根据上述步骤406中得到的初始脉冲参数,即量子门的执行时间、脉冲振幅、脉冲宽度以及脉冲中心位置,可以确定根据初始脉冲参数对应生成的脉冲的驱动下,对应的真实量子门信息,用Ureal表示。
步骤408,基于量子门信息和真实量子门信息对初始脉冲参数进行优化,得到优化脉冲参数。
在本实施例中,可使用Nelder-Mead方法进行优化。用户输入目标量子门Ugoal矩阵后,系统将会构造一个目标函数用以衡量使用当前脉冲参数的优劣。目标函数的具体形式为:
在求解上述哈密顿量的过程中,需要调用系统在每个时刻的哈密顿量,因此可以使用前面定义的接口函数来获取,比如获取在t1时刻的,
getHam(sysHam,t=t1)
当构造了目标函数后,下一步可使用Nelder-Mead优化算法(或梯度下降法,牛顿法,共轭梯度法,启发式方法等)来最小化目标函数,从而得到优化后的脉冲参数。
还可基于该优化脉冲参数来确定控制脉冲的生成,便可以得到生成的与优化脉冲参数对应的控制脉冲。
通过对脉冲参数的优化提高了实现量子门的效率和质量,并节省运算资源。
继续参见图5,图5是根据本实施例的构造量子仿真系统的方法的应用场景的一个示意图。在图5的应用场景中,用户可以方便快捷地使用直观的接口创建、访问、修改哈密顿量中的信息,例如,通过addDrift添加漂移项信息,通过addControl添加控制项信息,通过addNoise添加噪声,通过setWave设置脉冲参数。再通过读取哈密顿量的接口访问哈密顿量中的信息。例如,通过getHam获取某个时刻的系统哈密顿量,通过getSequence获取某个时刻的系统哈密顿量。通过getCache获取缓存区域中的缓存信息。
进一步参考图6,作为对上述各图所示方法的实现,本公开提供了一种构造量子仿真系统的装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图6所示,本实施例的构造量子仿真系统的装置600包括:初始化单元601、第一生成单元602、第二生成单元603和仿真单元604。其中,初始化单元601,被配置成获取用户通过API接口输入的电路信息,并根据电路信息初始化哈密顿量;第一生成单元602,被配置成获取用户通过API接口输入的漂移项信息,并根据漂移项信息生成不含时哈密顿量添加到哈密顿量中;第二生成单元603,被配置成获取用户通过API接口输入的控制项信息,并根据控制项信息生成含时哈密顿量添加到哈密顿量中;仿真单元604,被配置成基于哈密顿量进行量子仿真,得到仿真结果。
在本实施例中,构造量子仿真系统的装置600的初始化单元601、第一生成单元602、第二生成单元603和仿真单元604的具体处理可以参考图2对应实施例中的步骤201、步骤202、步骤203、步骤204。
在本实施例的一些可选的实现方式中,装置600还包括优化单元(附图中未示出),被配置成:获取期望量子门信息;根据哈密顿量确定初始脉冲参数;基于哈密顿量,确定初始脉冲参数对应的真实量子门信息;基于量子门信息和真实量子门信息对初始脉冲参数进行优化,得到优化脉冲参数。
在本实施例的一些可选的实现方式中,漂移项信息包括作用在指定子系统上的至少一个算符;以及装置600还包括组合单元(附图中未示出),被配置成:将每个算符与非指定子系统空间的单位矩阵做张量积后,再作为整个系统空间中的不含时的全局算符;将至少一个不含时的全局算符通过线性相加的方式进行组合生成一个算符并进行缓存以供用户通过预定的接口调用。
在本实施例的一些可选的实现方式中,控制项信息包括脉冲函数和参数;以及装置600还包括预处理单元(附图中未示出),被配置成:对脉冲函数和参数进行预处理得到时间控制信息,并按仿真算法所需的格式进行存储,以供用户通过预定的接口调用指定控制项的时序控制信息。
在本实施例的一些可选的实现方式中,装置600还包括存储单元(附图中未示出),被配置成:将哈密顿量按预定格式存储,以供用户通过预定的接口调用指定时刻的哈密顿量。
在本实施例的一些可选的实现方式中,装置600还包括缓存单元(附图中未示出),被配置成:将以下至少一项保存在缓存中以供用户通过预定的接口调用缓存信息:不含时哈密顿量、仿真结果、演化过程、仿真耗时、优化信息。
在本实施例的一些可选的实现方式中,控制项信息还包括:噪声函数和参数。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图7示出了可以用来实施本公开的实施例的示例电子设备700的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图7所示,设备700包括计算单元701,其可以根据存储在只读存储器(ROM)702中的计算机程序或者从存储单元708加载到随机访问存储器(RAM)703中的计算机程序,来执行各种适当的动作和处理。在RAM 703中,还可存储设备700操作所需的各种程序和数据。计算单元701、ROM 702以及RAM 703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
设备700中的多个部件连接至I/O接口705,包括:输入单元706,例如键盘、鼠标等;输出单元707,例如各种类型的显示器、扬声器等;存储单元708,例如磁盘、光盘等;以及通信单元709,例如网卡、调制解调器、无线通信收发机等。通信单元709允许设备700通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元701可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元701的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元701执行上文所描述的各个方法和处理,例如方法构造量子仿真系统。例如,在一些实施例中,方法构造量子仿真系统可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元708。在一些实施例中,计算机程序的部分或者全部可以经由ROM 702和/或通信单元709而被载入和/或安装到设备700上。当计算机程序加载到RAM 703并由计算单元701执行时,可以执行上文描述的方法构造量子仿真系统的一个或多个步骤。备选地,在其他实施例中,计算单元701可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行方法构造量子仿真系统。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以为分布式系统的服务器,或者是结合了区块链的服务器。服务器也可以是云服务器,或者是带人工智能技术的智能云计算服务器或智能云主机。服务器可以为分布式系统的服务器,或者是结合了区块链的服务器。服务器也可以是云服务器,或者是带人工智能技术的智能云计算服务器或智能云主机。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (16)
1.一种构造量子仿真系统的方法,包括:
获取用户通过API接口输入的电路信息,并根据所述电路信息初始化哈密顿量;
获取用户通过API接口输入的漂移项信息,并根据所述漂移项信息生成不含时哈密顿量添加到所述哈密顿量中;
获取用户通过API接口输入的控制项信息,并根据所述控制项信息生成含时哈密顿量添加到所述哈密顿量中;
基于所述哈密顿量进行量子仿真,得到仿真结果。
2.根据权利要求1所述的方法,其中,所述方法还包括:
获取期望量子门信息;
根据所述哈密顿量确定初始脉冲参数;
基于所述哈密顿量,确定所述初始脉冲参数对应的真实量子门信息;
基于所述期望量子门信息和所述真实量子门信息对所述初始脉冲参数进行优化,得到优化脉冲参数。
3.根据权利要求1所述的方法,其中,所述漂移项信息包括作用在指定子系统上的至少一个算符;以及
所述方法还包括:
将所述至少一个算符中每个算符与非指定子系统空间的单位矩阵做张量积后,再作为整个系统空间中的不含时的全局算符;
将至少一个不含时的全局算符通过线性相加的方式进行组合生成一个算符并进行缓存以供用户通过预定的接口调用。
4.根据权利要求1所述的方法,其中,所述控制项信息包括脉冲函数和参数;以及
所述方法还包括:
对脉冲函数和参数进行预处理得到时间控制信息,并按仿真算法所需的格式进行存储,以供用户通过预定的接口调用指定控制项的时序控制信息。
5.根据权利要求1所述的方法,其中,所述方法还包括:
将所述哈密顿量按预定格式存储,以供用户通过预定的接口调用指定时刻的哈密顿量。
6.根据权利要求1所述的方法,其中,所述方法还包括:
将以下至少一项保存在缓存中以供用户通过预定的接口调用缓存信息:不含时哈密顿量、仿真结果、演化过程、仿真耗时、优化信息。
7.根据权利要求1-6中任一项所述的方法,其中,所述控制项信息还包括:噪声函数和参数。
8.一种构造量子仿真系统的装置,包括:
初始化单元,被配置成获取用户通过API接口输入的电路信息,并根据所述电路信息初始化哈密顿量;
第一生成单元,被配置成获取用户通过API接口输入的漂移项信息,并根据所述漂移项信息生成不含时哈密顿量添加到所述哈密顿量中;
第二生成单元,被配置成获取用户通过API接口输入的控制项信息,并根据所述控制项信息生成含时哈密顿量添加到所述哈密顿量中;
仿真单元,被配置成基于所述哈密顿量进行量子仿真,得到仿真结果。
9.根据权利要求8所述的装置,其中,所述装置还包括优化单元,被配置成:
获取期望量子门信息;
根据所述哈密顿量确定初始脉冲参数;
基于所述哈密顿量,确定所述初始脉冲参数对应的真实量子门信息;
基于所述期望量子门信息和所述真实量子门信息对所述初始脉冲参数进行优化,得到优化脉冲参数。
10.根据权利要求8所述的装置,其中,所述漂移项信息包括作用在指定子系统上的至少一个算符;以及
所述装置还包括组合单元,被配置成:
将所述至少一个算符中每个算符与非指定子系统空间的单位矩阵做张量积后,再作为整个系统空间中的不含时的全局算符;
将至少一个不含时的全局算符通过线性相加的方式进行组合生成一个算符并进行缓存以供用户通过预定的接口调用。
11.根据权利要求8所述的装置,其中,所述控制项信息包括脉冲函数和参数;以及
所述装置还包括预处理单元,被配置成:
对脉冲函数和参数进行预处理得到时间控制信息,并按仿真算法所需的格式进行存储,以供用户通过预定的接口调用指定控制项的时序控制信息。
12.根据权利要求8所述的装置,其中,所述装置还包括存储单元,被配置成:
将所述哈密顿量按预定格式存储,以供用户通过预定的接口调用指定时刻的哈密顿量。
13.根据权利要求8所述的装置,其中,所述装置还包括缓存单元,被配置成:
将以下至少一项保存在缓存中以供用户通过预定的接口调用缓存信息:不含时哈密顿量、仿真结果、演化过程、仿真耗时、优化信息。
14.根据权利要求8-13中任一项所述的装置,其中,所述控制项信息还包括:噪声函数和参数。
15.一种构造量子仿真系统的电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7中任一项所述的方法。
16.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110049940.XA CN112749809B (zh) | 2021-01-14 | 2021-01-14 | 构造量子仿真系统的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110049940.XA CN112749809B (zh) | 2021-01-14 | 2021-01-14 | 构造量子仿真系统的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112749809A CN112749809A (zh) | 2021-05-04 |
CN112749809B true CN112749809B (zh) | 2021-12-14 |
Family
ID=75651983
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110049940.XA Active CN112749809B (zh) | 2021-01-14 | 2021-01-14 | 构造量子仿真系统的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112749809B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113537501B (zh) * | 2021-07-12 | 2022-04-29 | 北京百度网讯科技有限公司 | 电磁串扰的标定和缓释方法、装置及电子设备 |
CN113517040B (zh) * | 2021-07-12 | 2022-03-15 | 北京百度网讯科技有限公司 | 量子本征求解器的实现方法、装置及电子设备 |
CN115169570B (zh) * | 2022-07-26 | 2023-04-18 | 北京百度网讯科技有限公司 | 量子网络协议仿真方法、装置及电子设备 |
CN115329973B (zh) * | 2022-08-04 | 2023-09-26 | 北京百度网讯科技有限公司 | 仿真方法、装置、设备及存储介质 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104750945A (zh) * | 2015-04-17 | 2015-07-01 | 南通大学 | 一种量子电路仿真平台 |
CN107980145A (zh) * | 2015-06-29 | 2018-05-01 | 因斯布鲁克大学 | 量子处理设备和方法 |
CN108334952A (zh) * | 2017-11-24 | 2018-07-27 | 南京航空航天大学 | 一种新型通用量子门及量子线路优化方法 |
US10069573B2 (en) * | 2016-03-10 | 2018-09-04 | Raytheon Bbn Technologies Corp. | Optical ising-model solver using quantum annealing |
CN109478258A (zh) * | 2016-06-02 | 2019-03-15 | 谷歌有限责任公司 | 使用子逻辑控制训练量子演进 |
US10706366B2 (en) * | 2017-02-22 | 2020-07-07 | Rigetti & Co, Inc. | Modeling superconducting quantum circuit systems |
CN111566676A (zh) * | 2018-01-30 | 2020-08-21 | 国际商业机器公司 | 量子计算设备设计 |
CN111612152A (zh) * | 2020-05-27 | 2020-09-01 | 济南浪潮高新科技投资发展有限公司 | 一种量子计算机的模拟控制方法、系统及相关组件 |
CN112019193A (zh) * | 2020-09-01 | 2020-12-01 | 北京百度网讯科技有限公司 | 用于实现量子门的控制脉冲的生成方法、装置 |
CN112041859A (zh) * | 2018-05-08 | 2020-12-04 | 国际商业机器公司 | 使用分层存储在计算机上仿真量子电路 |
JP6804113B2 (ja) * | 2019-05-13 | 2020-12-23 | 株式会社QunaSys | エネルギーの微分を求めるための量子情報処理方法、古典コンピュータ、量子コンピュータ、量子情報処理プログラム、及びハイブリッドシステム |
-
2021
- 2021-01-14 CN CN202110049940.XA patent/CN112749809B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104750945A (zh) * | 2015-04-17 | 2015-07-01 | 南通大学 | 一种量子电路仿真平台 |
CN107980145A (zh) * | 2015-06-29 | 2018-05-01 | 因斯布鲁克大学 | 量子处理设备和方法 |
US10069573B2 (en) * | 2016-03-10 | 2018-09-04 | Raytheon Bbn Technologies Corp. | Optical ising-model solver using quantum annealing |
CN109478258A (zh) * | 2016-06-02 | 2019-03-15 | 谷歌有限责任公司 | 使用子逻辑控制训练量子演进 |
US10706366B2 (en) * | 2017-02-22 | 2020-07-07 | Rigetti & Co, Inc. | Modeling superconducting quantum circuit systems |
CN108334952A (zh) * | 2017-11-24 | 2018-07-27 | 南京航空航天大学 | 一种新型通用量子门及量子线路优化方法 |
CN111566676A (zh) * | 2018-01-30 | 2020-08-21 | 国际商业机器公司 | 量子计算设备设计 |
CN112041859A (zh) * | 2018-05-08 | 2020-12-04 | 国际商业机器公司 | 使用分层存储在计算机上仿真量子电路 |
JP6804113B2 (ja) * | 2019-05-13 | 2020-12-23 | 株式会社QunaSys | エネルギーの微分を求めるための量子情報処理方法、古典コンピュータ、量子コンピュータ、量子情報処理プログラム、及びハイブリッドシステム |
CN111612152A (zh) * | 2020-05-27 | 2020-09-01 | 济南浪潮高新科技投资发展有限公司 | 一种量子计算机的模拟控制方法、系统及相关组件 |
CN112019193A (zh) * | 2020-09-01 | 2020-12-01 | 北京百度网讯科技有限公司 | 用于实现量子门的控制脉冲的生成方法、装置 |
Non-Patent Citations (4)
Title |
---|
Qsimulation:一个量子计算模拟器工具;邓曦;《中国优秀硕士学位论文全文数据库 信息科技辑》;20190915;I137-70 * |
Strawberry Fields: A Software Platform for Photonic Quantum Computing;Nathan Killoran 等;《arXiv》;20190304;1-27 * |
范洪强 等.用经典计算机模拟量子计算机.《密码学报》.2018,第5卷(第3期), * |
量子算法的经典计算机模拟;张大伟 等;《信息安全与通信保密》;20070228;169-174 * |
Also Published As
Publication number | Publication date |
---|---|
CN112749809A (zh) | 2021-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112749809B (zh) | 构造量子仿真系统的方法和装置 | |
US20220076154A1 (en) | Control pulse generation method, system, device and storage medium | |
CN109740167B (zh) | 用于生成信息的方法和装置 | |
US20230087100A1 (en) | Pulse-based quantum gate implementation | |
US20230267357A1 (en) | Simulation method of quantum system, computing device and storage medium | |
CN112561068A (zh) | 模拟方法、计算设备、经典设备、存储设备及产品 | |
CN114897173B (zh) | 基于变分量子线路确定PageRank的方法及装置 | |
JP2022126618A (ja) | 量子デバイスのノイズ除去方法および装置、電子機器、コンピュータ可読記憶媒体並びにコンピュータプログラム | |
EP4099333A2 (en) | Method and apparatus for training compound property pediction model, storage medium and computer program product | |
US20230095725A1 (en) | Method of processing quantum circuit, electronic device, and storage medium | |
JP2023533404A (ja) | 駆動可能3dキャラクター生成方法、装置、電子機器、及び記憶媒体 | |
Ball et al. | An open source analysis framework for large-scale building energy modeling | |
Trujillo et al. | GSGP-CUDA—a CUDA framework for geometric semantic genetic programming | |
CN113505562A (zh) | 时钟树综合最优策略预测方法、系统及应用 | |
WO2023221407A1 (zh) | 模型生成方法、装置和电子设备 | |
CN116167445B (zh) | 量子测量模式的处理方法、装置及电子设备 | |
CN114580645A (zh) | 随机量子测量的模拟方法、装置、设备及存储介质 | |
CN113869042A (zh) | 文本标题生成方法、装置、电子设备以及存储介质 | |
CN114418103A (zh) | 基态能量的确定方法、装置、设备及存储介质 | |
Battocchio et al. | Density matrices and iterative natural modals in vibrational structure theory | |
Fasi et al. | Challenges in computing matrix functions | |
CN112632293B (zh) | 行业图谱的构建方法、装置、电子设备及存储介质 | |
CN109670158A (zh) | 一种用于根据资讯数据生成文本内容的方法与设备 | |
CN117521829A (zh) | 量子电路模拟方法、装置及电子设备 | |
CN117076813B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |