CN115836303A - 异步量子信息处理 - Google Patents

异步量子信息处理 Download PDF

Info

Publication number
CN115836303A
CN115836303A CN202180044033.4A CN202180044033A CN115836303A CN 115836303 A CN115836303 A CN 115836303A CN 202180044033 A CN202180044033 A CN 202180044033A CN 115836303 A CN115836303 A CN 115836303A
Authority
CN
China
Prior art keywords
quantum
parameters
program
qipu
dispatching
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
Application number
CN202180044033.4A
Other languages
English (en)
Inventor
W·J·曾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Goldman Sachs and Co LLC
Original Assignee
Goldman Sachs and Co LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Goldman Sachs and Co LLC filed Critical Goldman Sachs and Co LLC
Publication of CN115836303A publication Critical patent/CN115836303A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • G06N10/20Models of quantum computing, e.g. quantum circuits or universal quantum computers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • G06N10/60Quantum algorithms, e.g. based on quantum optimisation, quantum Fourier or Hadamard transforms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • G06N10/70Quantum error correction, detection or prevention, e.g. surface codes or magic state distillation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • G06N10/80Quantum programming, e.g. interfaces, languages or software-development kits for creating or handling programs capable of running on quantum computers; Platforms for simulating or accessing quantum computers, e.g. cloud-based quantum computing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B82NANOTECHNOLOGY
    • B82YSPECIFIC USES OR APPLICATIONS OF NANOSTRUCTURES; MEASUREMENT OR ANALYSIS OF NANOSTRUCTURES; MANUFACTURE OR TREATMENT OF NANOSTRUCTURES
    • B82Y10/00Nanotechnology for information processing, storage or transmission, e.g. quantum computing or single electron logic

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Algebra (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Complex Calculations (AREA)
  • Holo Graphy (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Superconductor Devices And Manufacturing Methods Thereof (AREA)

Abstract

实现量子算法的异步方法可以减少量子信息处理单元(QIPU)的停滞时间。由控制器针对量子程序确定多个参数集合,并且QIPU被命令为针对参数集合来执行量子程序。每次程序执行的结果被返回给控制器。在一个或多个结果被接收之后,控制器确定经更新的参数集合,同时QIPU继续针对剩余参数集合执行量子程序。QIPU被命令为针对经更新的参数集合执行量子程序(例如,立即、在当前程序执行之后、或在剩余的参数集合被处理之后)。该异步方法可以导致QIPU很少或没有停滞时间,并且因此可以更有效地使用QIPU。

Description

异步量子信息处理
相关申请的交叉引用
本申请根据35U.S.C.§119(e),要求于2020年4月22日提交的题为“AsynchronousQuantum Information Processing”的美国临时专利申请序列号63/014066的优先权,其全部内容通过引用并入本文。
技术领域
所描述的主题整体涉及量子计算,并且具体涉及用于量子信息处理的异步方法。
背景技术
量子算法可以包括通过经典计算链接在一起的多个量子电路。因此,现代量子信息处理可以涉及量子处理器和其他计算单元(例如,CPU、GPU、FPGA或其他数字或模拟处理器)之间的通信。全量子算法可以在量子处理器和经典计算之间执行混合执行。示例混合算法包括(i)变分量子算法(诸如变分量子本征解算器、量子近似算法或各种量子机器学习方法);(ii)量子纠错;(iii)联合量子学习和其他用途。
发明内容
用于实现量子算法的串行方法可以包括计算量子程序的第一参数集合的控制器,以及使用第一参数集合来执行量子程序的量子信息处理单元(QIPU)(QIPU的示例包括量子处理单元(QPU)、量子传感器、QPU网络或量子传感器网络)。控制器接收执行结果并基于结果确定经更新的参数集合。QIPU被命令为使用经更新的参数集合来执行量子程序。该过程可以重复,直到结束条件被满足(例如,解收敛)。当经更新的参数集合被确定时,QIPU可以保持空闲。
实施例涉及实现量子算法的异步方法,其中QIPU的停滞时间被减少或消除。多个参数集合针对量子程序而被确定,并且QIPU被命令为针对每个参数集合执行量子程序。来自每个程序执行的单独结果或聚合结果(例如,期望值)可以被返回给控制器。在一个或多个结果被接收之后,控制器确定经更新的参数集合,同时QIPU继续针对剩余参数集合执行量子程序。QIPU然后被命令为针对经更新的参数集合执行量子程序(例如,立即、在当前程序执行之后或在剩余参数集合被处理之后)。该异步方法导致QIPU具有很少或没有停滞时间,从而导致更有效地使用QIPU。此外,通过在从QIPU接收到结果时确定经更新的参数并通过实时调整QIPU的队列,异步方法比串行方法更灵活和动态,这可能导致更快地满足结束条件。此外,异步方法可以提供比串行方法更多的结果,这是因为QIPU本质上是概率性的,所以可以导致更高的置信度结果和解决方案。
在一个实施例中,量子处理系统包括一个或多个(例如,经典)控制器和QIPU。一个或多个控制器计算量子程序的一系列初始参数集合。具有一系列初始参数集合的量子程序被派送到量子处理队列。QIPU使用第一初始参数集合的参数来评估量子程序的第一期望值,并将第一期望值广播给一个或多个控制器。当QIPU使用第二初始参数集合的参数来评估量子程序的第二期望值时,一个或多个控制器基于第一初始参数集合和第一期望值来计算下一参数集合。下一参数集合被派送到量子处理队列并且QIPU使用下一参数集合的参数来评估量子程序的下一期望值。
附图说明
图1A是图示了根据一个实施例的量子处理系统的框图。
图1B是图示了根据一个实施例的量子处理单元(QPU)的框图。
图2图示了混合量子经典例程在图1A的量子处理系统上的示例执行。
图3是包括大量未使用的QPU停滞时间的串行变分程序中的步骤的时间线。
图4是根据一个实施例的包括QPU的有效使用的串行变分程序中的步骤的时间线。
图5是图示了根据一个实施例的多个控制处理器的使用的框图,多个控制处理器将量子程序与QPU集(例如,同时)并行地派送。
图6图示了根据一个实施例的图5所示的QPU集的异步操作。
图7图示了根据一个实施例的图6所示的异步QPU操作的示例实现方式。
图8图示了根据一个实施例的图5-图7的异步方法应用于量子传感器集。
图9是图示了根据一个实施例的用于量子信息处理的异步方法的流程图。
图10是图示了根据一个实施例的用于量子信息处理的另一异步方法的流程图。
图11是根据一个实施例的适合用作控制器的经典计算系统的示例架构。
具体实施方式
现在将参考若干实施例,实施例的示例在附图中图示。在可行的情况下,图中使用相同或类似的附图标记来表示相同或类似功能。尽管描述了各种具体实施例,但本领域技术人员将认识到,备选配置可以被用于实现所描述的方法。
图1A图示了量子处理系统100的一个实施例。在所示的实施例中,量子处理系统110包括(例如,经典)控制器110和量子处理单元(QPU)120。如前所述,QPU是QIPU的示例(因此,图1A中的QPU 120可以使用QIPU替换来图示更一般的系统100)。控制器110可以是经典计算系统(关于图11进一步描述)。虽然控制器110和QPU 120被一起图示,但它们可以是物理上分离的设备(例如,在云架构中)。在一些实施例中,量子处理系统100是包括QPU 120和量子传感器两者的多模式系统。在其他实施例中,量子处理系统100包括不同的或附加的元件(例如,多个QPU 120)。附加地,该功能可以以与所描述的不同方式分布在元件之间。
图1B是图示了根据一个实施例的QPU 120的框图。QPU 120包括任意数目的量子比特(“量子位”)150和相关联的量子位控制器140。量子位150是两级量子力学系统。量子位150可以处于第一状态、第二状态或两个状态的叠加。量子位的示例物理实现方式包括超导量子位、离子阱和光子学系统(例如,波导中的光子)。在一些实施例中,作为量子位150的附加或备选,QPU 120包括量子位。量子位是具有多于两个状态的多级量子力学系统(例如,量子位)。量子位控制器140是控制量子位150的模块。量子位处理器140可以包括经典处理器,诸如CPU、GPU或FPGA。量子位控制器140可以对量子位150执行物理操作(例如,它可以对量子位140执行量子门操作)。在图1B的示例中,针对每个量子位150图示了单独的量子位控制器140,然而,量子位处理器150可以控制QPU 120的多个(例如,所有)量子位,或者多个控制器150可以控制单个量子位。例如,量子位控制器150可以是单独的处理器、同一处理器上的并行线程或两者的某种组合。在其他实施例中,QPU 120包括不同的或附加的元件。附加地,该功能可以以与所描述的不同的方式分布在元件之间。
图2图示了在量子处理系统100上执行混合量子经典例程的示例。控制器210生成212将由QPU 230执行或处理的量子程序。量子程序可以包括将由QPU 230(或量子传感器)执行的指令或子例程。在一个示例中,量子程序是量子电路。在另一示例中,输出或程序测量错误伴随式。该程序可以以量子编程语言或中间表示(诸如QASM或Quil)进行数学表示。整体而言,该程序可以通过一些参数向量
Figure BDA0004007630190000041
来参数化。参数向量对参数集合进行编码,参数集合在QPU 230执行量子程序时影响量子程序的结果。示例参数包括量子电路中的量子门参数、量子电路中量子门的顺序、量子电路的门类型或程序控制流图上的条件。在变分量子本征解算器的示例中,这样的参数化程序可以被称为拟设(ansatz)。该生成的程序然后被分配223到单个QPU 230。
QPU 230执行程序以计算234结果(例如,量子测量)。QPU 230通常多次运行程序来累积来自概率执行的统计。在计算234每个结果之后,QPU 230可以评估235终止条件是否满足,并且如果终止条件未被满足,则可以触发另一结果的计算。例如,程序可以被执行一些固定的重复次数,或者直到一些其他终止条件被满足。在终止条件被满足之后,累积结果(例如,期望值)被返回226到控制器210。控制器210然后(通常通过对某个目标函数进行评估)计算
Figure BDA0004007630190000051
的新值,或完全新的程序,并向QPU 230派送223新的程序。控制器210和QPU 230之间的这种混合循环可以无限地继续(如在量子纠错中的情况)或者直到某些收敛指标被满足(如在变分量子本征解算器中)。
在变分量子编程中,量子电路被参数化为酉
Figure BDA0004007630190000052
在不失一般性的情况下,可以假设这些变分程序在|0>状态下初始化并在计算基础上进行测量。这些变分程序的期望值是
Figure BDA0004007630190000053
然后,程序员还定义了优化器ζ,使得ζ
Figure BDA0004007630190000054
将期望值或L个期望值的集合映射到M个参数设置的新集合。例如,梯度下降和Nelder-Mead具有L=M=1。然而,如果考虑到量子电路梯度的计算,例如使用参数移位规则,则M可以是
Figure BDA0004007630190000055
在这种情况下,可以执行两个量子电路来针对每个参数计算梯度。然而,在最一般的设置中,优化器可以从(例如,基于)先前观察到的期望值的整个历史中学习,并输出任意数目的参数值进行评估。
在一个实施例中,
Figure BDA0004007630190000056
被转换为串行运行的M个电路的集合。此外,优化器的每个迭代步骤t产生新的电路集合
Figure BDA0004007630190000057
如果优化器采用NC个步骤进行收敛,则每个迭代步骤也会串行运行,从而产生总共MNC个串行电路执行。
一旦这些新参数
Figure BDA0004007630190000058
由优化器计算,则它们可以并行执行。例如,它们可以在不同的QPU 120上并行执行,然后将它们的结果聚合回优化器。根据ζ的结构,该并行执行可能以异步联合优化的形式异步进行。这些类型的联合学习方法可以被用于使用诸如移动电话的边缘设备来训练经典的机器学习模型。在一个实施例中,QPU 120是边缘计算资源。该方法的一个可能挑战是QPU可能是不均匀的。具体地,它们的噪声特性可能会变化,并且因此跨多个QPU训练变分量子程序可以改善变分优化可能带来的噪声降低。
图3图示了用于执行变分程序的步骤的串行方法。在图3所示的示例中,一个或多个控制器210或经典过程(为方便起见,在不失一般性的情况下,本文中也称为“CPU”)针对量子程序来计算310参数
Figure BDA0004007630190000061
并且QPU 230评估320量子程序的期望值
Figure BDA0004007630190000062
当数据在控制器210和QPU 230之间传递时,计算310和评估320之间存在延迟315。一旦评估320完成,控制器210计算330下一个变分步长
Figure BDA0004007630190000063
并且QPU 230评估340
Figure BDA0004007630190000064
因此,当QPU 230空闲而下一变分步长
Figure BDA0004007630190000065
正在被计算330时,存在停滞时间335。延迟315和停滞时间335可能是不利的,因为它们导致QPU 230的低效使用。
在各种实施例中,量子处理系统100使用变分优化器步骤之间产生的“停滞时间”(例如,停滞时间335)来模拟并行运行的变分量子程序。这可以加快执行时间,因为它跨不同的时间纠缠重复使用相同的QPU 230。在以下段落中,出于例示目的描述了M=1的实施例(被称为异步方法)。然而,所描述的异步方法可以推广到更大的M值。事实上,该方法产生的效率增益对于更大的值M可能更显著。
图4图示了根据一个实施例的异步方法,其中使用一些或全部停滞时间335,就好像它是可用于执行的另一QPU 230一样。因此,可以实现QPU 230的更有效的使用。在所示实施例中,控制器210和QPU 230之间存在异步交互。控制器210计算410一系列初始参数集合
Figure BDA0004007630190000066
并将它们派送到QPU 230从中拉出的队列中。当QPU230评估期望值时,QPU230将它们广播给控制器210。例如,在图4中,QPU 230评估420第一期望值
Figure BDA0004007630190000067
并将其广播给控制器210,并且当控制器210计算430下一变分步长
Figure BDA0004007630190000068
时,QPU 230评估422第二期望值
Figure BDA0004007630190000071
评估424第三期望值
Figure BDA0004007630190000072
等。类似地,控制器210可以基于不同的期望值(例如,使用并行操作的多个经典处理器210或并行操作的线程)来计算432、434下一个变分步长的变量。控制器210可以附加到QPU 230的队列并中断其执行(例如,在队列中的任何点处)。在图4中,这通过
Figure BDA0004007630190000073
的缩短的评估426来示出。在实践中,这可能意味着在特定
Figure BDA0004007630190000074
处获取较少的样本,因为过程可能已确定更多的信息将通过评估440
Figure BDA0004007630190000075
来学习(其中i≠j)。
将控制器210视为贝叶斯学习器可以洞察如何管理它们。控制器210以一些先于
Figure BDA0004007630190000076
的方式开始,并且然后选择基于将获得的最有用信息的位置来评估新参数。通过切换到该异步执行方法,贝叶斯学习器可以继续评估QPU 230上的新数据,即使在计算下一最佳参数集合时也是如此。该新数据是用于通知下一步骤的额外信息。
作为图示使用该异步方法可以节省多少时间的示例,假设QPU210的射击速率是1Mhz(射击可以指代QPU 120的单个执行),用于(例如,经典)优化(例如,步骤430)的时间加上延迟(例如,延迟415)是每个步骤0.1秒,并且每个期望值的射击数目为Ns=104。这些是当前技术系统的合理值。这转化为0.1秒的停滞时间,其中附加的105个样本可以使用异步方法来评估。这是在串行执行方法的每个步骤中可能获得的样本的十倍。通过该逻辑,异步方法给出的样本数是串行方法的十倍。更一般地,异步方法可以提供因子为τc*r/Ns的更多样本,其中τc是包括双向延迟的(例如,经典)计算步骤的持续时间,并且r是QPU 230的射击速率。
与图3的串行方法相比,图4中所示的异步方法可以使用多个控制器210,以使得在很少或没有停滞时间的情况下,单个QPU 230能够更频繁地(例如,连续地)运行。在该异步方法期间,QPU 230可以(例如,连续地)将数据流(或周期性地发送一批数据)返回处理,从而在更短的时间内完成更多的计算。所计算的数据量的增加通常不会线性地减少运行时间,但是它可以亚线性地减少运行时间。这些额外的数据可以被用于改进优化器并导致变分算法更好/更快的收敛。
图5图示了多个控制器510并行(例如,同时)派送量子程序的实施例。中间路由层520将这些程序路由到一个或多个QPU 530。QPU530执行它们的计算并将它们的结果(例如,异步)返回到路由层520。路由层520将这些结果聚合并将其返回到控制器510集合。控制器510然后进而可以生成用于执行的附加程序(例如,异步)。
图6将该异步方法与图2中所示的串行方法进行了比较。在异步方法中,来自QPU630的结果被返回(例如,立即、受到延迟和其他固有延迟的影响)到路由层620,无需等待在每个QPU 630上满足终止条件。这允许控制器610从QPU 630接收流(或成批)中的额外数据。该额外数据可以例如被用于更新学习系统,以使得变分量子本征解算器更快收敛。在该示例中,控制器610可以使用联合学习算法,其中边缘计算单元是QPU 630。
异步方法可以如图7所示来实现,其中所生成的程序被添加710到来自路由层620的程序堆栈(也被称为队列)。程序从堆栈中拉取720以供QPU 630执行。针对每次执行,QPU630(或来自程序的指令)可以决定(例如,经由终止条件)重新运行相同的计算来收集更多的统计量或者移动到另一程序。堆栈可以具有程序的优先级排序。在一些实施例中,当新程序被提交给该QPU 630时,路由层620(或控制器610)可以中断QPU 630上的程序的执行。当QPU 630完成了程序的执行时,例如在不等待其他QPU 630来完成其程序的执行的情况下,它向控制器610派送740结果。在一些实施例中,堆栈中的程序指定应执行它的特定QPU630。由于每个QPU 630可以具有其自己的噪声配置文件,所以相同的QPU 630(或具有基本相同噪声配置文件的QPU 630集合)执行具有不同参数的程序可能是有利的。确定噪声配置文件是否基本相同可能与噪声的模型非常相关,并且算子可以选择如何限定基本相同的噪声模型。一些噪声模型具有多个参数。例如,针对不同量子位的错误率不同。这可以被归纳为一些标准或指标,诸如平均阈值。在其他情况下,它可能更复杂。在一些实施例中,可以基于它们的量子过程算子的菱形范数距离来将类似的QPU聚类。如果测量量子过程算子很困难,可以使用启发式代理。
如上文参考图4所述,通过使用变分步长之间的停滞时间来执行其他计算,可以将单个QPU 630用作多个QPU。因此,图6中所示的配置可以使用多个控制器610和单个QPU 630来近似。备选地,可以使用两个QPU 630,每个QPU 630使用图4的技术来增加可用QPU的有效数目。
图8图示了异步方法可以被应用于量子传感器830的集合。此处,一个或多个量子程序(例如,指令)经由路由层820从一个或多个控制器810发送到量子传感器830的库。量子程序可以包括针对传感器830的调谐参数。量子传感器830(例如,异步)生成数据并以流式或批处理方式将其返回到控制器810来进一步处理。
同样的异步方法也可以被应用于其他上下文。例如,所公开的异步方法可以被应用于量子网络或量子感测、联网和计算的其他分布式系统中的节点。事实上,控制器本身不一定必须是经典的。控制器可以是QIPU(例如,QPU 120)。例如,控制器可以是QIPU的计算单元(例如,量子位)的分区集合。附加地或备选地,控制器可以是单个QIPU上的线程。此外,由QIPU执行的计算可以涉及网络协议的执行。例如,QIPU可以是量子网络的节点并且QIPU执行网络协议。
图9是图示了根据一个实施例的异步方法900的流程图。方法900的步骤可以由一个或多个控制器执行。方法900的步骤可以以不同的顺序执行,并且方法可以包括不同的、附加的或更少的步骤。方法1000(关于图10描述)的各方面也可适用于方法900。
控制器确定910量子程序的第一和第二参数集合。在一些实施例中,第二参数集合用于不同的量子程序。在一些实施例中,量子程序是变分优化问题的量子电路并且第三参数集合与下一变分步骤相对应。
控制器将具有第一参数集合和第二参数集合的量子程序派送920到量子信息处理单元(QIPU)的量子处理队列。量子处理队列被配置为存储量子程序以供QIPU执行。
控制器接收930由QIPU使用第一参数集合的参数来执行的量子程序的第一期望值。控制器还可以接收具有第一参数集合的量子程序的单独执行结果(例如,以流式或分批方式)。
当QIPU使用第二参数集合的参数来评估量子程序的第二期望值时,控制器基于第一参数集合和第一期望值来计算940量子程序的第三参数集合。
控制器通过将具有第三参数集合的量子程序派送到量子处理队列来修改950量子处理队列。修改量子处理队列可以包括将第三参数集合添加到量子处理队列的尾部。附加地或备选地,修改队列可以包括指示QIPU停止当前执行并使用第三参数集合的参数来评估量子程序的期望值。
在一些实施例中,控制器使用第二参数集合的参数来接收由QIPU执行的量子程序的第二期望值。当QIPU利用第三参数集合的参数来评估量子程序的第三期望值时,控制器基于第一参数集合和第二参数集合以及第一期望值和第二期望值来计算量子程序的第四参数集合。控制器通过将具有第四参数集合的量子程序派送到量子处理队列来修改量子处理队列。
在一些实施例中,在QIPU使用第一参数集合的参数来评估量子程序的第一期望值或者使用第三参数集合的参数来评估量子程序的第三期望值时,控制器计算第二量子程序的参数集合。控制器通过将具有第二量子程序的参数集合的第二量子程序派送到量子处理队列来修改量子处理队列。
在一些实施例中,QIPU是QIPU集合中的一个并且量子处理队列被配置为存储量子程序,每个量子程序由集合中的一个或多个QIPU执行。由QIPU计算的期望值可以由控制器异步接收。在一些实施例中,派送具有第三参数集合的量子程序还包括控制器派送具有第三参数集合的量子程序的、将由QIPU执行的指令。在一些实施例中,派送具有第三参数集合的量子程序还包括控制器派送针对具有第三参数集合的量子程序的、将由具有噪声配置文件的QIPU执行的指令,该噪声配置文件具有与QIPU的噪声配置文件基本相同的噪声配置文件。
在一些实施例中,响应于量子处理队列具有少于阈值数目的程序,控制器将具有第一参数集合(或任何其他参数集合)的量子程序重新派送到量子处理队列。这可以提供附加的统计样本并且可以确保队列不会变空。
图10是图示了根据一个实施例的另一异步方法1000的流程图。方法1000的步骤可以由一个或多个控制器执行。方法1000的步骤可以以不同的顺序执行并且方法1000可以包括不同的、附加的或更少的步骤。方法900的各方面(上文关于图9描述)也可适用于方法1000。
控制器生成1010量子程序集合。
控制器向多个量子信息处理单元(QIPU)派送1020量子程序集合中的至少一些以用于执行。
控制器异步接收1030由多个QIPU以流式或批处理方式生成的结果。结果可以由多个QIPU处理所派送的量子程序来生成。结果可以是来自处理量子程序的期望值或单独结果。
控制器基于返回的结果来执行1040新量子程序集合的单线程或多线程生成。
控制器将新量子程序集合中的至少一些派送1050给多个QIPU以用于执行。在一些实施例中,QIPU响应于从新集合接收量子程序,在完成之前停止处理集合中的量子程序。
在一些实施例中,量子程序集合通过将流结果并入贝叶斯学习模型中来优化变分量子算法中的目标函数来生成。
图11是根据一个实施例的计算系统的示例架构。尽管图11描绘了图示用作本文所描述的一个或多个实体的一部分或全部的计算机物理组件的高级框图,但是根据一个实施例,计算机可以具有图11中提供的组件的附加、更少或变型。尽管图11描绘了计算机100,但是该图旨在作为计算机系统中可能存在的各种特征的功能描述,而不是本文所描述的实现方式的结构示意图。在实践中,如本领域普通技术人员所认识到的,单独示出的项可以被组合并且一些项可以分离。
图11中所图示的是耦合到芯片集1104的至少一个处理器1102。耦合到芯片集1104的还有存储器1106、存储设备1108、键盘1110、图形适配器1112、指点设备1114和网络适配器1116。显示器1118被耦合到图形适配器1112。在一个实施例中,芯片集1104的功能由存储器控制器集线器1120和I/O集线器1122提供。在另一实施例中,存储器1106被直接耦合到处理器1102而不是芯片集1102。在一些实施例中,计算机1100包括用于将这些组件互连的一个或多个通信总线。一个或多个通信总线可选地包括互连和控制系统组件之间的通信的电路(有时称为芯片集)。
存储设备1108是任何非暂态计算机可读存储介质,诸如硬盘驱动装置、光盘只读存储器(CD-ROM)、DVD或固态存储器设备或其他光学存储装置、盒式磁带、磁带、磁盘存储装置或其他磁存储设备、磁盘存储设备、光盘存储设备、闪存设备、或其他非易失性固态存储设备。这样的存储设备1108也可以被称为持久存储器。定点设备1114可以是鼠标、跟踪球或其他类型的定点设备并与键盘1110组合使用来将数据输入到计算机1100中。图形适配器1112在显示器1118上显示图像和其他信息。网络适配器1116将计算机1100耦合到局域网或广域网。
存储器1106保存处理器1102使用的指令和数据。存储器1106可以是非永久性存储器,其示例包括高速随机存取存储器,诸如DRAM、SRAM、DDR RAM、ROM、EEPROM、闪存。
如本领域所知,计算机1100可以具有不同于图11中所示的组件或其他组件。附加地,计算机1100可以缺少某些所示组件。在一个实施例中,充当服务器的计算机1100可以缺少键盘1110、指点设备1114、图形适配器1112或显示器1118。此外,存储设备1108可以在计算机1100的本地或远程(诸如体现在存储区域网络(SAN)内)。
如本领域所知,计算机1100被适配用于执行计算机程序模块,以提供本文所述的功能。如本文所使用的,术语“模块”指代用于提供指定功能的计算机程序逻辑。因此,模块可以在硬件、固件或软件中实现。在一个实施例中,程序模块被存储在存储设备1108上、加载到存储器1106中并由处理器302执行。
上述描述的一些部分描述了算法过程或操作方面的实施例。计算领域的技术人员通常使用这些算法描述和表示来将其工作的实质有效地传达给本领域的其他技术人员。尽管在功能上、计算上或逻辑上描述了这些操作,但这些操作被理解为由计算机程序实现,计算机程序包括由处理器或等效电路、微代码等执行的指令。此外,在不失一般性的情况下,有时将这些功能操作的布置称为模块也被证明是方便的。
如本文所使用的,对“一个实施例”或“实施例”的任何引用意味着结合实施例描述的特定元素、特征、结构或特性被包括在至少一个实施例中。说明书中不同地方出现的短语“在一个实施例中”不一定均指代同一实施例。类似地,在元素或组件之前使用“一”或“一个”只是为了方便。除非很明显它是另一意思,否则该描述应被理解为表示存在一个或多个元素或组件。
如果值被描述为“近似”或“大约”(或其导数),则除非上下文中另有明确含义,否则此类值应被解释为准确+/-10%。例如,“近似十”应被理解为“在九到十一的范围内”
如本文所使用的,术语“包括”、“包含”、“具有”、“带有”或其任何其他变型旨在涵盖非排他性包括。例如,包括元素列表的过程、方法、制品或设备不一定仅限于那些元素,而是可以包括未明确列出的或此类过程、方法或制品或设备固有的其他元素。此外,除非另有明确相反规定,否则“或者”指代包含性的或者,而非排他性的或者。例如,条件A或B满足以下任一条件:A为真(或者存在)并且B为假(或者不存在),A为假(或者不存在)并且B为真(或者存在)以及A和B均为真(存在)。
在阅读本公开之后,本领域技术人员将理解异步量子信息处理的系统和过程的其他附加备选结构和功能设计。因此,虽然已图示和描述了特定实施例和应用,但是应当理解,所描述的主题不限于所公开的精确构造和组件。保护范围应仅由所附权利要求来限制。

Claims (20)

1.一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质包括所存储的指令,所述指令在由计算系统执行时使所述计算系统执行操作,所述操作包括:
确定针对量子程序的第一参数集合和第二参数集合;
将具有所述第一参数集合和所述第二参数集合的所述量子程序派送到量子信息处理单元(QIPU)的量子处理队列,所述量子处理队列被配置为存储用于由所述QIPU执行的量子程序;
接收由所述QIPU利用所述第一参数集合的参数执行所述量子程序的第一期望值;
在所述QIPU利用所述第二参数集合的参数来评估所述量子程序的第二期望值时,基于所述第一参数集合和所述第一期望值来计算针对所述量子程序的第三参数集合;以及
通过将具有所述第三参数集合的所述量子程序派送到所述量子处理队列来修改所述量子处理队列。
2.根据权利要求1所述的非暂态计算机可读存储介质,其中所述操作还包括:
接收由所述QIPU利用所述第二参数集合的参数执行所述量子程序的所述第二期望值;
在所述QIPU利用所述第三参数集合的参数来评估所述量子程序的第三期望值时,基于所述第一参数集合和第二参数集合以及所述第一期望值和所述第二期望值来计算所述量子程序的第四参数集合;以及
通过将具有所述第四参数集合的所述量子程序派送到所述量子处理队列来修改所述量子处理队列。
3.根据权利要求1所述的非暂态计算机可读存储介质,其中所述操作还包括:
在所述QIPU利用所述第一参数集合的参数来评估所述量子程序的所述第一期望值或者利用所述第三参数集合中的参数来评估所述量子程序的第三期望值时,计算针对第二量子程序的参数集合;以及
通过向所述量子处理队列派送具有所述第二量子程序的所述参数集合的所述第二量子程序来修改所述量子处理队列。
4.根据权利要求1所述的非暂态计算机可读存储介质,其中所述QIPU是QIPU集合中的一个QIPU,并且所述量子处理队列被配置为存储量子程序,每个量子程序用于由所述集合中的一个或多个QIPU执行。
5.根据权利要求4所述的非暂态计算机可读存储介质,其中派送具有所述第三参数集合的所述量子程序还包括派送针对具有所述第三参数集合的所述量子程序的、将由所述QIPU执行的指令。
6.根据权利要求4所述的非暂态计算机可读存储介质,其中派送具有所述第三参数集合的所述量子程序还包括派送针对具有所述第三参数集合的所述量子程序的、将由具有噪声配置文件的QIPU执行的指令,所述噪声配置文件与所述QIPU的噪声配置文件基本相同。
7.根据权利要求1所述的非暂态计算机可读存储介质,其中修改所述量子处理队列包括将所述第三参数集合添加到所述量子处理队列的尾部。
8.根据权利要求1所述的非暂态计算机可读存储介质,其中修改所述队列包括命令所述QIPU停止当前执行并且利用所述第三参数集合的参数来评估所述量子程序的期望值。
9.根据权利要求1所述的非暂态计算机可读存储介质,其中所述量子程序是变分优化问题的量子电路,并且所述第三参数集合对应于下一变分步骤。
10.根据权利要求1所述的非暂态计算机可读存储介质,响应于所述量子处理队列具有少于阈值数目的程序,将具有所述第一参数集合的所述量子程序重新派送到所述量子处理队列。
11.一种方法,包括:
生成量子程序集合;
将所述量子程序集合中的至少一些量子程序派送给多个量子信息处理单元(QIPU)以用于执行;
接收由所述多个QIPU以流式或批处理方式异步生成的结果;
基于所返回的所述结果来执行新的量子程序集合的单线程或多线程生成;以及
将所述新的量子程序集合中的至少一些量子程序派送给所述多个QIPU以用于执行。
12.根据权利要求11所述的方法,还包括由所述多个量子信息处理单元处理所派送的所述程序。
13.根据权利要求11所述的方法,其中所述量子程序集合由经典控制器通过优化用于变分量子程序执行的目标函数而被生成。
14.根据权利要求11所述的方法,其中派送所述新的量子程序集合中的至少一些量子程序包括向至少一个QIPU发送指令以停止当前量子程序过程并且处理所述新的集合的量子程序。
15.一种量子处理系统,包括:
一个或多个控制器,被配置为:
计算针对量子程序的一系列初始参数集合;
将具有所述一系列初始参数集合的所述量子程序派送到量子处理队列;
接收与具有第一初始参数集合的参数的所述量子程序相对应的第一期望值;
基于所述第一初始参数集合和所述第一期望值来计算下一参数集合;以及
将所述下一参数集合派送到所述量子处理队列;以及
量子信息处理单元(QIPU),被配置为:
利用所述第一初始参数集合的参数来评估针对所述量子程序的所述第一期望值;
向所述一个或多个控制器广播所述第一期望值;
在所述下一参数集合正在被计算时,利用第二初始参数集合的参数来评估所述量子程序的第二期望值;
接收所述下一参数集合;以及
利用所述下一参数集合的参数来评估所述量子程序的下一期望值。
16.根据权利要求15所述的量子处理系统,其中所述量子处理单元还被配置为响应于接收所述下一参数集合,在完成之前停止所述第二期望值的评估。
17.根据权利要求15所述的量子处理系统,其中所述QIPU是QIPU集合中的一个QIPU,并且所述量子处理队列被配置为存储用于由所述集合的QIPU执行的量子程序。
18.根据权利要求17所述的量子处理系统,其中派送所述下一参数集合还包括派送具有所述下一参数集合的所述量子程序的、将由所述QIPU执行的指令。
19.根据权利要求17所述的量子处理系统,其中派送所述下一参数集合包括派送具有所述下一参数集合的所述量子程序的、将由具有噪声配置文件的QIPU执行的指令,所述噪声配置文件与所述QIPU的噪声配置文件基本相同。
20.根据权利要求15所述的量子处理系统,其中所述一个或多个控制器还被配置为响应于所述量子处理队列具有少于阈值数目的程序,将具有所述一系列初始参数集合的所述量子程序重新派送到所述量子处理队列。
CN202180044033.4A 2020-04-22 2021-04-19 异步量子信息处理 Pending CN115836303A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202063014066P 2020-04-22 2020-04-22
US63/014,066 2020-04-22
PCT/IB2021/053222 WO2021214638A1 (en) 2020-04-22 2021-04-19 Asynchronous quantum information processing

Publications (1)

Publication Number Publication Date
CN115836303A true CN115836303A (zh) 2023-03-21

Family

ID=78222224

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180044033.4A Pending CN115836303A (zh) 2020-04-22 2021-04-19 异步量子信息处理

Country Status (9)

Country Link
US (1) US20210334128A1 (zh)
EP (1) EP4139854A4 (zh)
JP (1) JP2023524204A (zh)
KR (1) KR20230006867A (zh)
CN (1) CN115836303A (zh)
AU (1) AU2021260985A1 (zh)
CA (1) CA3180652A1 (zh)
IL (1) IL297433A (zh)
WO (1) WO2021214638A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114202070A (zh) * 2021-11-23 2022-03-18 国网北京市电力公司 电力数据处理方法、装置、非易失性存储介质及处理器
US20240045711A1 (en) * 2022-08-03 2024-02-08 International Business Machines Corporation Preempting a quantum program in a quantum computing device
WO2024102180A2 (en) * 2022-08-16 2024-05-16 Quantinuum Llc Hybrid quantum-classical computing environments

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100643283B1 (ko) * 2004-10-13 2006-11-10 삼성전자주식회사 양자 코프로세서를 사용하여 연산 속도를 향상시키는 방법및 장치
US8950484B2 (en) * 2005-07-05 2015-02-10 Halliburton Energy Services, Inc. Formation tester tool assembly and method of use
US20080313430A1 (en) * 2007-06-12 2008-12-18 Bunyk Paul I Method and system for increasing quantum computer processing speed using digital co-processor
CN112789629A (zh) * 2018-10-02 2021-05-11 札帕塔计算股份有限公司 用于对线性系统求解的混合量子经典计算机
US11074104B2 (en) * 2019-04-09 2021-07-27 International Business Machines Corporation Quantum adaptive circuit dispatcher
US20210012233A1 (en) * 2019-07-11 2021-01-14 International Business Machines Corporation Adaptive compilation of quantum computing jobs

Also Published As

Publication number Publication date
CA3180652A1 (en) 2021-10-28
EP4139854A4 (en) 2024-03-20
WO2021214638A1 (en) 2021-10-28
JP2023524204A (ja) 2023-06-09
AU2021260985A8 (en) 2023-02-23
EP4139854A1 (en) 2023-03-01
KR20230006867A (ko) 2023-01-11
IL297433A (en) 2022-12-01
US20210334128A1 (en) 2021-10-28
AU2021260985A1 (en) 2022-12-22

Similar Documents

Publication Publication Date Title
CN115836303A (zh) 异步量子信息处理
Neglia et al. The role of network topology for distributed machine learning
US11120368B2 (en) Scalable and efficient distributed auto-tuning of machine learning and deep learning models
US11790242B2 (en) Mini-machine learning
CN111464154B (zh) 一种控制脉冲的计算方法及装置
Gaunt et al. AMPNet: Asynchronous model-parallel training for dynamic neural networks
US11222288B2 (en) Building deep learning ensembles with diverse targets
Mehta State-of-the-art reinforcement learning algorithms
CN110531996B (zh) 一种多微云环境下基于粒子群优化的计算任务卸载方法
Yang et al. Efficient average reward reinforcement learning using constant shifting values
CN116702907B (zh) 一种服务器无感知的大语言模型推理系统、方法和设备
Li-Mei Path Planning for Batch Picking of Warehousing and Logistics Robots Based on Modified A* Algorithm.
Teng et al. Bayesian distributed stochastic gradient descent
CN110163255B (zh) 一种基于密度峰值的数据流聚类方法及装置
CN112256422A (zh) 基于q学习的异构平台任务调度方法及系统
CN106874215B (zh) 一种基于Spark算子的序列化存储优化方法
CN115640825A (zh) 智能体的多样性行为强化学习方法、装置、智能体及介质
US11379456B2 (en) Efficient adjustment of spin-locking parameter values
CN113076181B (zh) 一种数据处理流程优化方法、系统及存储介质
KR20230069763A (ko) 신경망 네트워크의 셀프 어텐션 연산을 가속하는 장치
Pourshamsaei et al. Predictive reinforcement learning in non-stationary environments using weighted mixture policy
KR102090109B1 (ko) 학습 및 추론 장치 및 그 방법
CN117216232B (zh) 一种大语言模型超参数优化方法及系统
Chen Stock Price Prediction Based on the Fusion of CNN-GRU Combined Neural Network and Attention Mechanism
CN116579435B (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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40084363

Country of ref document: HK