CN116090571A - 基于广义极小残量的量子线性求解方法、装置及介质 - Google Patents

基于广义极小残量的量子线性求解方法、装置及介质 Download PDF

Info

Publication number
CN116090571A
CN116090571A CN202111275781.1A CN202111275781A CN116090571A CN 116090571 A CN116090571 A CN 116090571A CN 202111275781 A CN202111275781 A CN 202111275781A CN 116090571 A CN116090571 A CN 116090571A
Authority
CN
China
Prior art keywords
matrix
quantum
linear system
processed
algorithm
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
CN202111275781.1A
Other languages
English (en)
Inventor
窦猛汉
李叶
马腾阳
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.)
Origin Quantum Computing Technology Co Ltd
Original Assignee
Origin Quantum Computing Technology Co Ltd
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 Origin Quantum Computing Technology Co Ltd filed Critical Origin Quantum Computing Technology Co Ltd
Priority to CN202111275781.1A priority Critical patent/CN116090571A/zh
Publication of CN116090571A publication Critical patent/CN116090571A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Artificial Intelligence (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Complex Calculations (AREA)

Abstract

本发明公开了一种基于广义极小残量的量子线性求解方法、装置及介质,方法包括:获取待处理线性系统Ax=b,构建用于线性系统预处理的稀疏近似矩阵M,并对所述待处理线性系统进行预处理,构造m阶Krylov子空间Km和HHL算法对应的量子线路,基于广义极小残量法计算预处理后的所述待处理线性系统在Krylov子空间Km内的近似解xm,以解决现有技术中的不足,它能够降低解线性问题求解的时间复杂度和计算量,同时减少硬件资源的占用。

Description

基于广义极小残量的量子线性求解方法、装置及介质
技术领域
本发明属于量子计算技术领域,特别是一种基于广义极小残量的量子线性求解方法、装置及介质。
背景技术
量子计算机是一类遵循量子力学规律进行高速数学和逻辑运算、存储及处理量子信息的物理装置。当某个装置处理和计算的是量子信息,运行的是量子算法时,它就是量子计算机。量子计算机因其具有相对普通计算机更高效的处理数学问题的能力,例如,能将破解RSA密钥的时间从数百年加速到数小时,故成为一种正在研究中的关键技术。
量子计算模拟是一个借助数值计算和计算机科学来仿真遵循量子力学规律的模拟计算,作为一个仿真程序,它依据量子力学的量子比特的基本定律,利用计算机的高速计算能力,刻画量子态的时空演化。
对线性方程组的求解是许多科学与工程问题的核心,求解此类问题的经典算法统称为线性系统算法。近年来,量子计算领域的一个非常重要的成果是量子线性系统算法,其中最著名的当属Harrow、Hassidim和Lloyd于2009年共同提出的HHL算法,但是该算法随着输入矩阵维度的增大,求解线性问题的时间复杂度会随之提高,导致其求解过程可能需要调用兆字节甚至千兆字节的数据量,对计算资源的需求过高,使其无法在普通的计算机上对实际物理问题进行模拟求解。
发明内容
本发明的目的是提供一种基于广义极小残量的量子线性求解方法、装置及介质,以解决现有技术中的不足,它能够降低解线性问题求解的时间复杂度和计算量,同时减少硬件资源的占用。
本申请的一个实施例提供了一种基于广义极小残量的量子线性求解方法,所述方法包括:
获取待处理线性系统Ax=b;
构建用于线性系统预处理的稀疏近似矩阵M,并对所述待处理线性系统进行预处理;
构造m阶Krylov子空间Km和HHL算法对应的量子线路,基于广义极小残量法计算预处理后的所述待处理线性系统在Krylov子空间Km内的近似解xm
可选的,所述获取待处理线性系统Ax=b,包括:
获取待处理线性系统Ax=b及初始残差b0,其中,所述A为第一矩阵,所述b为第一向量,所述初始残差b0根据预设初始解x0计算,满足b0=b-Ax0
可选的,所述构建用于线性系统预处理的稀疏近似矩阵M,并对所述待处理线性系统进行预处理,包括:
根据所述第一矩阵A,构建用于线性系统预处理的稀疏近似矩阵M,其中,所述稀疏近似矩阵M为A-1的稀疏近似且满足预设稀疏结构;
根据所述稀疏近似矩阵M,分别获取线性系统中第二矩阵A′、第二向量b′,其中,所述第二矩阵A′=MA,所述第二向量b′=Mb。
可选的,所述构造m阶Krylov子空间Km和HHL算法对应的量子线路,基于广义极小残量法计算预处理后的所述待处理线性系统在Krylov子空间Km内的近似解xm,包括:
根据Arnoldi算法、第二矩阵A′和第二向量b′,构造m阶Krylov子空间Km的标准正交基组Vm和Hessenberg矩阵Hm+1,m
对所述Hessenberg矩阵Hm+1,m进行QR分解并构建HHL算法对应的量子线路;
利用所述HHL算法对应的量子线路,输出所述待处理线性系统在Krylov子空间Km内的中间值ym
根据所述中间值ym,获取所述待处理线性系统在Krylov子空间Km内的近似解xm,其中,所述xm=x0+Vmym
可选的,所述对所述Hessenberg矩阵Hm+1,m进行QR分解,包括:
将所述Hessenberg矩阵Hm+1,m分解成
Figure BDA0003329255210000021
其中,Qm+1为正交矩阵,Rm+1,m为上三角矩阵。
可选的,所述利用所述HHL算法对应的量子线路,输出所述待处理线性系统在Krylov子空间Km内的中间值ym,包括:
利用所述HHL算法对应的量子线路,输入Rm和残差向量β的值,输出所述待处理线性系统在Krylov子空间Km内的中间值ym,其中,Rm为上三角矩阵Rm+1,m的前m行,β=‖b02q1(1:m),q1(1:m)表示正交矩阵Qm+1第一列的前m个元素组成的向量,β与Rm、ym满足关系:β=Rmym
可选的,所述利用所述HHL算法对应的量子线路,输入Rm和残差向量β的值,输出所述待处理线性系统在Krylov子空间Km内的中间值ym之后,所述方法还包括:
判断所述中间值ym能否满足‖Rmym-β‖2<∈1,其中,∈1为预设第一精度;
若所述中间值ym不满足‖Rmym-β‖2<∈1,则获取更新后的残差向量βnew并返回执行所述利用所述HHL算法对应的量子线路,输入Rm和残差向量β的值,输出所述待处理线性系统在Krylov子空间Km内的中间值ym的步骤,其中,所述更新后的残差向量βnew=β-Rmym
可选的,所述方法还包括:
若所述中间值ym满足‖Rmym-β‖2<∈1,则判断所述近似解xm能否满足‖A′xm-b′‖2<∈2,其中,∈2为预设第二精度;
若所述近似解xm满足‖A′xm-b′‖2<∈2,则确定所述近似解xm即为所述待处理线性系统Ax=b在Krylov子空间Km内的目标近似解。
可选的,所述方法还包括:
若所述近似解xm不满足‖A′xm-b′‖2<∈2,则获取当前残差b0-Axm并返回执行所述根据Arnoldi算法、第二矩阵A′和第二向量b′,构造m阶Krylov子空间Km的标准正交基组Vm和Hessenberg矩阵Hm+1,m的步骤继续迭代计算,直至获得满足预设第二精度的目标近似解为止。
可选的,所述构建HHL算法对应的量子线路,包括:
获得包括辅助量子比特、第一量子比特、第二量子比特的若干量子比特,其中,所述辅助量子比特和所述第一量子比特的初态置为|0>,所述第二量子比特的初态置为
Figure BDA0003329255210000031
所述bi为所述第一向量b的第i个元素,所述N为第一向量的维数;
确定所述第一矩阵A对应的酉矩阵U;
构建用以相位估计的第一子量子线路模块,用于将所述|b>在第一矩阵A的特征空间上分解为
Figure BDA0003329255210000041
并将所述第一量子比特和所述第二量子比特的初态|0>|b>转化为
Figure BDA0003329255210000042
其中,所述|μj>为所述第一矩阵A的特征向量,所述λj为所述第一矩阵A的特征值,所述βj为所述第一矩阵A特征向量的振幅;
构建用以执行受控旋转操作的第二子量子线路模块,用于将|λj>作为控制比特对辅助量子比特进行旋转,得到
Figure BDA0003329255210000043
其中,所述C为归一化常数;
构建用以执行逆相位估计的第三子量子线路模块,用于将|λj>复位至|0〉;
构建用于所述辅助量子比特的测量操作模块,以使测量到所述辅助量子比特的量子态为|1>时,得到:
Figure BDA0003329255210000044
所述|x′>∝|x>;
将所述第一子量子线路模块、所述第二子量子线路模块、所述第三子量子线路模块和所述量子测量操作模块,依次组成HHL算法对应的量子线路。
可选的,所述确定所述第一矩阵A对应的酉矩阵U,包括:
若所述第一矩阵A为Hermite矩阵,确定对应的酉矩阵U=eiAt;其中,所述t为常量;
若所述第一矩阵A为非Hermite矩阵,确定对应Hermite矩阵
Figure BDA0003329255210000045
Figure BDA0003329255210000046
以确定对应的酉矩阵
Figure BDA0003329255210000047
本申请的又一实施例提供了一种基于广义极小残量的量子线性求解装置,所述装置包括:
获取模块,用于获取待处理线性系统Ax=b;
构建模块,用于构建用于线性系统预处理的稀疏近似矩阵M,并对所述待处理线性系统进行预处理;
构造模块,用于构造m阶Krylov子空间Km和HHL算法对应的量子线路,基于广义极小残量法计算预处理后的所述待处理线性系统在Krylov子空间Km内的近似解xm
可选的,所述获取模块,包括:
第一获取单元,用于获取待处理线性系统Ax=b及初始残差b0,其中,所述A为第一矩阵,所述b为第一向量,所述初始残差b0根据预设初始解x0计算,满足b0=b-Ax0
可选的,所述构建模块,包括:
第一构建单元,用于根据所述第一矩阵A,构建用于线性系统预处理的稀疏近似矩阵M,其中,所述稀疏近似矩阵M为A-1的稀疏近似且满足预设稀疏结构;
第二获取单元,用于根据所述稀疏近似矩阵M,分别获取线性系统中第二矩阵A′、第二向量b′,其中,所述第二矩阵A′=MA,所述第二向量b′=Mb。
可选的,所述构造模块,包括:
构造单元,用于根据Arnoldi算法、第二矩阵A′和第二向量b′,构造m阶Krylov子空间Km的标准正交基组Vm和Hessenberg矩阵Hm+1,m
第二构建单元,用于对所述Hessenberg矩阵Hm+1,m进行QR分解并构建HHL算法对应的量子线路;
输出单元,用于利用所述HHL算法对应的量子线路,输出所述待处理线性系统在Krylov子空间Km内的中间值ym
第三获取单元,用于根据所述中间值ym,获取所述待处理线性系统在Krylov子空间Km内的近似解xm,其中,所述xm=x0+Vmym
可选的,所述第二构建单元,包括:
分解子单元,用于将所述Hessenberg矩阵Hm+1,m分解成
Figure BDA0003329255210000051
Figure BDA0003329255210000052
其中,Qm+1为正交矩阵,Rm+1,m为上三角矩阵。
可选的,所述输出单元,包括:
输出子单元,用于利用所述HHL算法对应的量子线路,输入Rm和残差向量β的值,输出所述待处理线性系统在Krylov子空间Km内的中间值ym,其中,Rm为上三角矩阵Rm+1,m的前m行,β=‖b02q1(1:m),q1(1:m)表示正交矩阵Qm+1第一列的前m个元素组成的向量,β与Rm、ym满足关系:β=Rmym
可选的,所述输出子单元之后,还包括:
第一判断子单元,用于判断所述中间值ym能否满足‖Rmym-β‖2<∈1,其中,∈1为预设第一精度;
第一返回子单元,用于若所述中间值ym不满足‖Rmym-β‖2<∈1,则获取更新后的残差向量βnew并返回执行所述利用所述HHL算法对应的量子线路,输入Rm和残差向量β的值,输出所述待处理线性系统在Krylov子空间Km内的中间值ym的步骤,其中,所述更新后的残差向量βnew=β-Rmym
可选的,所述装置还包括:
第二判断子单元,用于若所述中间值ym满足‖Rmym-β‖2<∈1,则判断所述近似解xm能否满足‖A′xm-b′‖2<∈2,其中,∈2为预设第二精度;
第一确定子单元,用于若所述近似解xm满足‖A′xm-b′‖2<∈2,则确定所述近似解xm即为所述待处理线性系统Ax=b在Krylov子空间Km内的目标近似解。
可选的,所述装置还包括:
第二返回子单元,用于若所述近似解xm不满足‖A′xm-b′‖2<∈2,则获取当前残差b0-Axm并返回执行所述根据Arnoldi算法、第二矩阵A′和第二向量b′,构造m阶Krylov子空间Km的标准正交基组Vm和Hessenberg矩阵Hm+1,m的步骤继续迭代计算,直至获得满足预设第二精度的目标近似解为止。
可选的,所述第二构建单元,包括:
获得子单元,用于获得包括辅助量子比特、第一量子比特、第二量子比特的若干量子比特,其中,所述辅助量子比特和所述第一量子比特的初态置为|0>,所述第二量子比特的初态置为
Figure BDA0003329255210000061
所述bi为所述第一向量b的第i个元素,所述N为第一向量的维数;
第二确定子单元,用于确定所述第一矩阵A对应的酉矩阵U;
第一构建子单元,用于构建用以相位估计的第一子量子线路模块,用于将所述|b>在第一矩阵A的特征空间上分解为
Figure BDA0003329255210000071
并将所述第一量子比特和所述第二量子比特的初态|0>|b>转化为
Figure BDA0003329255210000072
其中,所述|μj>为所述第一矩阵A的特征向量,所述λj为所述第一矩阵A的特征值,所述βj为所述第一矩阵A特征向量的振幅;
第二构建子单元,用于构建用以执行受控旋转操作的第二子量子线路模块,用于将|λj>作为控制比特对辅助量子比特进行旋转,得到
Figure BDA0003329255210000073
其中,所述C为归一化常数;
第三构建子单元,用于构建用以执行逆相位估计的第三子量子线路模块,用于将|λj>复位至|0>;
第四构建子单元,用于构建用于所述辅助量子比特的测量操作模块,以使测量到所述辅助量子比特的量子态为|1>时,得到:
Figure BDA0003329255210000074
所述|x′>∝|x>;
组成子单元,用于将所述第一子量子线路模块、所述第二子量子线路模块、所述第三子量子线路模块和所述量子测量操作模块,依次组成HHL算法对应的量子线路。
可选的,所述第二确定子单元,包括:
第三确定子单元,用于若所述第一矩阵A为Hermite矩阵,确定对应的酉矩阵U=eiAt;其中,所述t为常量;
第四确定子单元,用于若所述第一矩阵A为非Hermite矩阵,确定对应Hermite矩阵
Figure BDA0003329255210000075
以确定对应的酉矩阵
Figure BDA0003329255210000076
本申请的又一实施例提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项中所述的方法。
本申请的又一实施例提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项中所述的方法。
与现有技术相比,本发明首先获取待处理线性系统Ax=b,构建用于线性系统预处理的稀疏近似矩阵M,并对待处理线性系统进行预处理,构造m阶Krylov子空间Km和HHL算法对应的量子线路,基于广义极小残量法计算预处理后的待处理线性系统在Krylov子空间Km内的近似解xm,它能够降低解线性问题求解的时间复杂度和计算量,加快量子线性算法的求解速度,同时减少硬件资源的占用。
附图说明
图1为本发明实施例提供的一种基于广义极小残量的量子线性求解方法的计算机终端的硬件结构框图;
图2为本发明实施例提供的一种基于广义极小残量的量子线性求解方法的流程示意图;
图3为本发明实施例提供的相位估计对应的第一子量子线路模块示意图;
图4为本发明实施例提供的HHL算法对应的总量子线路示意图;
图5为本发明实施例提供的一种基于广义极小残量的量子线性求解装置的结构示意图。
具体实施方式
下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本发明实施例首先提供了一种基于广义极小残量的量子线性求解方法,该方法可以应用于电子设备,如计算机终端,具体如普通电脑、量子计算机等。
下面以运行在计算机终端上为例对其进行详细说明。图1为本发明实施例提供的一种基于广义极小残量的量子线性求解方法的计算机终端的硬件结构框图。如图1所示,计算机终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,可选地,上述计算机终端还可以包括用于通信功能的传输装置106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述计算机终端的结构造成限定。例如,计算机终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储应用软件的软件程序以及模块,如本申请实施例中的基于广义极小残量的量子线性求解方法对应的程序指令/模块,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
需要说明的是,真正的量子计算机是混合结构的,它包含两大部分:一部分是经典计算机,负责执行经典计算与控制;另一部分是量子设备,负责运行量子程序进而实现量子计算。而量子程序是由量子语言如QRunes语言编写的一串能够在量子计算机上运行的指令序列,实现了对量子逻辑门操作的支持,并最终实现量子计算。具体的说,量子程序就是一系列按照一定时序操作量子逻辑门的指令序列。
在实际应用中,因受限于量子设备硬件的发展,通常需要进行量子计算模拟以验证量子算法、量子应用等等。量子计算模拟即借助普通计算机的资源搭建的虚拟架构(即量子虚拟机)实现特定问题对应的量子程序的模拟运行的过程。通常,需要构建特定问题对应的量子程序。本发明实施例所指量子程序,即是经典语言编写的表征量子比特及其演化的程序,其中与量子计算相关的量子比特、量子逻辑门等等均有相应的经典代码表示。
量子线路作为量子程序的一种体现方式,也称量子逻辑电路,是最常用的通用量子计算模型,表示在抽象概念下对于量子比特进行操作的线路,其组成包括量子比特、线路(时间线),以及各种量子逻辑门,最后常需要通过量子测量操作将结果读取出来。
不同于传统电路是用金属线所连接以传递电压信号或电流信号,在量子线路中,线路可看成是由时间所连接,亦即量子比特的状态随着时间自然演化,在这过程中按照哈密顿运算符的指示,一直到遇上逻辑门而被操作。
一个量子程序整体上对应有一条总的量子线路,本发明所述量子程序即指该条总的量子线路,其中,该总的量子线路中的量子比特总数与量子程序的量子比特总数相同。可以理解为:一个量子程序可以由量子线路、针对量子线路中量子比特的测量操作、保存测量结果的寄存器及控制流节点(跳转指令)组成,一条量子线路可以包含几十上百个甚至千上万个量子逻辑门操作。量子程序的执行过程,就是对所有的量子逻辑门按照一定时序执行的过程。需要说明的是,时序即单个量子逻辑门被执行的时间顺序。
需要说明的是,经典计算中,最基本的单元是比特,而最基本的控制模式是逻辑门,可以通过逻辑门的组合来达到控制电路的目的。类似地,处理量子比特的方式就是量子逻辑门。使用量子逻辑门,能够使量子态发生演化,量子逻辑门是构成量子线路的基础,量子逻辑门包括单比特量子逻辑门,如Hadamard门(H门,阿达马门)、泡利-X门(X门)、泡利-Y门(Y门)、泡利-Z门(Z门)、RX门、RY门、RZ门等等;多比特量子逻辑门,如CNOT门、CR门、iSWAP门、Toffoli门等等。量子逻辑门一般使用酉矩阵表示,而酉矩阵不仅是矩阵形式,也是一种操作和变换。一般量子逻辑门在量子态上的作用是通过酉矩阵左乘以量子态右矢对应的矩阵进行计算的。
量子态,即量子比特的逻辑状态,在量子算法(或称量子程序)中用二进制表示,例如,一组量子比特为q0、q1、q2,表示第0位、第1位、第2位量子比特,从高位到低位排序为q2q1q0,该组量子比特对应的量子态是该组量子比特对应的本征态的叠加,该组量子比特对应的本征态共有2的量子比特总数次方个,即8个本征态(确定的状态):|000>、|001>、|010>、|011>、|100>、|101>、|110>、|111>,每个本征态的位与量子比特对应一致,如|000>态,000从高位到低位对应q2q1q0,|>为狄拉克符号。
以单个量子比特说明,单个量子比特的逻辑状态
Figure BDA0003329255210000111
可能处于|0>态、|1>态、|0>态和|1>态的叠加态(不确定状态),具体可以表示为
Figure BDA0003329255210000112
其中,c和d为表示量子态振幅(概率幅)的复数,振幅模的平方|c|2和|d|2分别表示|0>态、|1>态的概率,|c|2+|d|2=1。简言之,量子态是各本征态组成的叠加态,当其它本征态的概率为0时,即处于唯一确定的本征态。
参见图2,图2为本发明实施例提供的一种基于广义极小残量的量子线性求解方法的流程示意图,可以包括如下步骤:
S201:获取待处理线性系统Ax=b。
具体的,可以获取待处理线性系统Ax=b及初始残差b0,其中,所述A为第一矩阵,所述b为第一向量,所述初始残差b0根据预设初始解x0计算,满足b0=b-Ax0
在应用数学和科学工程计算领域,许多问题的数学模型都可以用线性方程组来描述。例如目标电磁特性仿真计算问题经由矩量法、有限元等数值算法离散化电磁场微积分方程即转化为了对矩阵方程的求解,又如流体力学中的NS方程求解、量子色动力学(QCD)中的格点规范理论等。
线性系统是一种数学模型,是指用线性算子组成的系统,且同时满足叠加性与均匀性(又称为齐次性)的系统,目前,线性系统是很多科学和工程领域的核心。对于待处理线性系统Ax=b,分别获取第一矩阵A、第一向量b的元素信息及维数,其中第一矩阵A,可以为系数矩阵,系数矩阵是矩阵中的众多类型之一,简单来说系数矩阵就是将方程组的系数组成矩阵来计算方程的解,系数矩阵常常用来表示一些项目的数学关系,当系数矩阵为非对称情况时,广义极小残量法(GMRES)是当今最常用的一类算法。GMRES的运算量主要由矩阵向量乘积和向量正交化两部分构成,如何进一步降低其计算复杂度一直是一项颇具挑战性的工作。
残差在数理统计中是指实际值与估计值(拟合值)之间的差,残差蕴含了有关系统模型基本假设的重要信息,对于待处理线性系统Ax=b的初始残差b0可根据预设初始解x0计算,满足b0=b-Ax0
S202:构建用于线性系统预处理的稀疏近似矩阵M,并对所述待处理线性系统进行预处理。
构建用于线性系统预处理的稀疏近似矩阵,具体包括:
S1:根据所述第一矩阵A,构建用于线性系统预处理的稀疏近似矩阵M,其中,所述稀疏近似矩阵M为A-1的稀疏近似且满足预设稀疏结构。
具体的,设N={1,2,3,...,n},
Figure BDA0003329255210000121
表示预设的稀疏结构,稀疏近似逆预处理技术旨在显式地构造A-1的稀疏近似,用于降低矩阵的条件数,降低求解难度和复杂度,其最基本的前提是给定第一矩阵A,存在A-1在某种意义下的稀疏近似矩阵M,使得M≈A-1,如何快速捕捉A-1元素的位置信息确定M稀疏结构是该算法成功的关键。
需要说明的是,F-范数最小化的稀疏近似逆预处理技术通过最小化残量矩阵‖AM-I‖F来计算A-1的稀疏近似M,其中M满足某确定的稀疏结构(M要么预先给定,要么在算法执行过程中动态确定)。由矩阵F-范数的特点,最小化‖AM-I‖F可以转化为独立求解n个最小二乘问题,因此有天然的并行特性。但是对于一般的第一矩阵A,往往很难预先确定M的合理有效的稀疏结构,当A-1的大元素较少时,先验的结构可能并不能有效捕捉其位置信息,或者只有当先验结构非常稠密时,以计算和存储为代价才能得到与A-1近似程度较高的M。为了克服上述困难,可提出动态的确定M的稀疏结构的策略,该策略往往从一个简单的初始结构(如单位矩阵的结构或者稀疏化的第一矩阵A的结构等)开始,然后根据某种规则逐步扩充或自适应地调整,直到残量矩阵关于某种范数满足给定精度‖AM-I‖F≤ε,其中,ε代表预设的精度值,或者M的非零元个数达到预先给定的最大值。
S2:根据所述稀疏近似矩阵M,分别获取线性系统中第二矩阵A′、第二向量b′,其中,所述第二矩阵A′=MA,所述第二向量b′=Mb。
具体的,根据稀疏近似矩阵M,分别获取线性系统中条件数降低的第二矩阵A′和第二向量b′。
S203:构造m阶Krylov子空间Km和HHL算法对应的量子线路,基于广义极小残量法计算预处理后的所述待处理线性系统在Krylov子空间Km内的近似解xm
首先,根据Arnoldi算法、第二矩阵A′和第二向量b′,构造m阶Krylov子空间Km的标准正交基组Vm和Hessenberg矩阵Hm+1,m
具体的,广义极小残量法(Generalized Minimum Residual,GMRES)是一种针对线性问题的经典子空间类求解方法。对于待处理线性系统Ax=b,给定一个预设初始解x0,则有初始残差b0=b-Ax0,定义:
Km=span{b0,Ab0,A2b0,…,Am-1b0}
为第二矩阵A′和第二向量b′的m阶Krylov子空间。由定义可知Krylov子空间是嵌套的,即有K1∈K2∈…∈Km,显然子空间的正交基组{V1,V2,…,Vm}也是嵌套的。GMRES的核心思想是将待处理线性系统的精确求解转化为寻找某个子空间内的“最优解”,当解xm被约束在子空间Km内时,显然xm可以由Km的基Vm线性表示。根据上述的嵌套性质,则有Axm∈Km+1,当xm在Km中变化时,Axm在更高一阶的子空间Km+1内相应地变化。由于bm=b0-Axm,因此bm的大小和方向同样发生变化,为了使得“最优解”逼近精确解,要求bm的模尽可能地小,因此,广义极小残量法的数学形式可描述为:寻找xm∈Km,使得bm⊥AKm,可见GMRES方法中,解空间为Km,解的约束空间为AKm
利用基于Gram-Schmidt正交化的Arnoldi算法求解出m阶Krylov子空间Km的标准正交基组Vm,对于子空间Km内的近似解xm,可以由Km的正交基组Vm线性表示,有:
xm=x0+Vmym
正交性条件b0-Axm⊥AKm,得:
Figure BDA0003329255210000131
其中,正交基组Vm具有如下性质:
Figure BDA0003329255210000132
Figure BDA0003329255210000133
其中,hm+1,m=(wm,vm+1),wm=Avm,em=[0,0,0,…,1]T,Hm+1,m为执行Arnoldi算法过程中由元素构成的矩阵,其记录了原始空间到子空间的投影信息,其矩阵形式如下:
Figure BDA0003329255210000141
结合上述正交基组的性质,GMRES(Generalized Minimum Residual,广义极小残量法)直接从bm模长最小这一条件入手,其最优准则可描述为寻找xm∈Km,求解min‖b0-Axm2
其次,对所述Hessenberg矩阵Hm+1,m进行QR分解并构建HHL算法对应的量子线路。
QR分解法是目前求一般矩阵全部特征值的最有效并广泛应用的方法,一般矩阵先经过正交相似变化成为Hessenberg矩阵,然后再应用QR方法求特征值和特征向量。它是将矩阵分解成一个正交矩阵Q与上三角形矩阵R,所以称为QR分解法,与此正交矩阵的通用符号Q有关。
可以将所述Hessenberg矩阵Hm+1,m分解成
Figure BDA0003329255210000142
其中,Qm+1为正交矩阵,Rm+1,m为上三角矩阵。
基于上文描述,有b0-Axm=b0-AVmym=Vm+1(β-Hm+1,mym),由于Vm+1的列向量是标准正交的,故:
‖b0-Axm2=||Vm+1(β-Hm+1,mym)||2=||β-Hm+1,mym||2
因此,在GMRES方法中,问题被转化成了一个最小二乘问题。当m不是很大时,使用QR分解来求解上述最小二乘问题。由:
Figure BDA0003329255210000143
为Hm+1,m的QR分解,其中,Qm+1为正交矩阵,Rm+1,m为上三角矩阵,于是有:
Figure BDA0003329255210000151
其中,Rm为Rm+1,m的前m行,因此ym可以通过求解如下上三角方程组获得:
β=Rmym
其中,β=‖b02q1(1:m),q1(1:m)表示正交矩阵Qm+1第一列的前m个元素组成的向量,q1是Qm+1的第一列。
GMRES中最终求解的待处理线性系统为:
β=Rmym
待处理线性系统Ax=b在子空间Km内的近似解便可以求得。可见,利用GMRES求解线性问题最大的特点是具有“降维”效果,如果第一矩阵的维度为n,满足精度需求解的子空间维度为m,一般来说m往往显著小于n。
具体的,构建HHL算法对应的量子线路包括如下步骤:
步骤1:获得包括辅助量子比特、第一量子比特、第二量子比特的若干量子比特,其中,所述辅助量子比特和所述第一量子比特的初态置为|0>,所述第二量子比特的初态置为
Figure BDA0003329255210000152
所述bi为所述第一向量b的第i个元素,所述N为第一向量的维数。
具体的,获取若干个量子比特的比特数量可由用户根据需求确定,也可以在计算资源充足的情况下,设置较充足数量的量子比特,满足计算需求。
获得包括辅助量子比特、第一量子比特、第二量子比特的若干量子比特,具体可以用量子比特位表示。例如,初始量子比特位上为|0>,表示该位量子比特的量子态为|0>态,为|1>则表示初始量子态为|1>态。
需要说明的是,为方便后续区分,获得的若干量子比特可以区分为辅助量子比特、第一量子比特、第二量子比特,具体区分名称在此不做限定,并且,各量子比特的初态可由现有的振幅编码方式或量子态编码方式制备得到。其中,辅助量子比特和第一量子比特的初态置为|0>态,第二量子比特的初态置为
Figure BDA0003329255210000153
例如,对于4维第一向量b=[b1,b2,b3,b4],即N=4,将第一向量b的数据编码到量子态振幅上,得到:
Figure BDA0003329255210000161
实现将第一向量b的数据加载到量子线路中2个第二量子比特的量子态振幅上。
步骤2:确定所述第一矩阵A对应的酉矩阵U。
具体的,若第一矩阵A为酉矩阵,则将第一矩阵A直接确定为对应的酉矩阵U;
若所述第一矩阵A为Hermite矩阵,可以通过哈密顿量模拟实现Hermite矩阵到酉矩阵的转换,得到对应的酉矩阵U=eiAt;其中,t为常量,一般取值2π;
若所述第一矩阵A为非Hermite矩阵,通过扩充维数将其转换,确定对应厄米矩阵
Figure BDA0003329255210000162
以确定对应的酉矩阵
Figure BDA0003329255210000163
同时将第一向量b转换为
Figure BDA0003329255210000164
也可写成
Figure BDA0003329255210000165
Figure BDA0003329255210000166
xm即为上述HHL算法的解。
步骤3:构建用以相位估计的第一子量子线路模块,用于将所述|b>在第一矩阵A的特征空间上分解为
Figure BDA0003329255210000167
并将所述第一量子比特和所述第二量子比特的初态|0>|b>转化为
Figure BDA0003329255210000168
其中,所述|μj>为所述第一矩阵A的特征向量,所述λj为所述第一矩阵A的特征值,所述βj为所述第一矩阵A特征向量的振幅。
具体的,构建用以相位估计的第一子量子线路模块,用于将所述|b>在第一矩阵A的特征空间上分解为
Figure BDA0003329255210000171
并将第一量子比特和第二量子比特的初态|0>|b>转化为
Figure BDA0003329255210000172
本领域技术人员可以理解的是,相位估计(Phase estimation)是量子傅里叶变换QFT的一个重要应用,体现在它是很多量子算法的基础。
如图3所示为本实施例提供的相位估计对应的第一子量子线路模块示意图,包括:H门操作模块、受控U算子操作模块和量子傅里叶逆变换模块(图中
Figure BDA0003329255210000178
模块),其中,该U算子即为第一矩阵A对应的酉矩阵U。经过第一子量子线路模块,辅助量子比特(对应图3最上的时间线)的量子态不变、第一量子比特(对应图3中间的时间线)的初态|0>转化为|λj>、第二量子比特(对应图3最下的时间线)的初态|b>分解
Figure BDA0003329255210000173
实际上,输出的λj是估计值,可以通过增加第一量子比特的数量,提高相位估计的输出精度。并且,在实际应用中,可以设置辅助量子寄存器、第一量子寄存器、第二量子寄存器,分别存储辅助量子比特、第一量子比特、第二量子比特的量子态。
步骤4:构建用以执行受控旋转操作的第二子量子线路模块,用于将|λj>作为控制比特对辅助量子比特进行旋转,得到
Figure BDA0003329255210000174
Figure BDA0003329255210000175
其中,所述C为归一化常数。
具体的,构建用以执行受控旋转操作的第二子量子线路模块,用于将|λj>作为控制比特对辅助量子比特进行旋转,得到
Figure BDA0003329255210000176
Figure BDA0003329255210000177
受控旋转又可称“提取占比”,因为经过相位估计运算之后,第一量子寄存器会存储一系列的特征值λj(具体存储在基态|λj>中),而第二量子寄存器存储的输入态即初态|b>会在第一矩阵A的特征空间上进行分解,然后通过受控旋转操作,将基态中的λj值提取到了振幅上,将辅助量子比特的量子态|0>转化为得到
Figure BDA0003329255210000181
各量子比特的量子态经过第二子量子线路由
Figure BDA0003329255210000182
转化为
Figure BDA0003329255210000183
为了减少资源占用,辅助量子比特可设1位,且C为常数,一般取1。
需要说明是的,可以在第二个量子寄存器中得到量子态|x>=A-1|b>(更准确地说,是接近的|x>量子态),伴随着一个常数因子C。后面可以采用振幅放大的手段来提高成功概率,取代简单测量并筛选结果的过程。
步骤5:构建用以执行逆相位估计的第三子量子线路模块,用于将|λj>复位至|0>。
具体的,本领域技术人员可以理解的是,相位估计逆运算是上述相位估计的还原过程,或称相位估计的转置共轭运算,目的是将|λj>复位至|0>,具体以将量子态
Figure BDA0003329255210000184
转化为如下为准:
Figure BDA0003329255210000185
步骤6:构建用于所述辅助量子比特的测量操作模块,以使测量到所述辅助量子比特的量子态为|1>时,得到:
Figure BDA0003329255210000186
所述|x′>∝|x>。
具体的,量子测量操作施加在辅助量子比特上,以在相位估计逆运算后,对辅助量子比特进行测量。测量后,辅助量子比特的状态会塌缩至一个确定的状态,其中,塌缩至|0〉的概率是
Figure BDA0003329255210000187
塌缩至|1〉的概率是
Figure BDA0003329255210000188
当测量辅助量子比特的量子态为|1〉、且C=1时,即可得到确定的量子态:|x′〉=
Figure BDA0003329255210000191
可见是
Figure BDA0003329255210000192
进行振幅归一化的对应结果。在实际应用中,可以根据用户所需的应用场景,对应得到|x〉,或者直接将|x′〉用于后续的场景计算。
步骤7:将所述第一子量子线路模块、所述第二子量子线路模块、所述第三子量子线路模块和所述量子测量操作模块,依次组成HHL算法对应的量子线路。
具体的,参见图4,图4为根据第一子量子线路模块、所述第二子量子线路模块、所述第三子量子线路模块和所述量子测量操作模块的执行时序,依次组成一条完整的量子线路,即为HHL算法对应的总量子线路。
再次,利用所述HHL算法对应的量子线路,输出所述待处理线性系统在Krylov子空间Km内的中间值ym,可以包括:
利用所述HHL算法对应的量子线路,输入Rm和残差向量β的值,输出所述待处理线性系统在Krylov子空间Km内的中间值ym,其中,Rm为上三角矩阵Rm+1,m的前m行,β=‖b02q1(1:m),q1(1:m)表示正交矩阵Qm+1第一列的前m个元素组成的向量,β与Rm、ym满足关系:β=Rmym
具体的,由于HHL算法在特定条件下相较于经典算法具有指数加速效果,未来能够在数据处理、机器学习、数值计算、流体力学问题处理等场景具有广泛应用。
在本实施例中,HHL算法可用于解决一个求解线性方程的问题,即:输入第一矩阵A和第一向量b,输出满足线性方程的解x满足Ax=b,即x=A-1b。由此,第一矩阵A需要满足为可逆矩阵,且对于第一向量b,由于下述需要将第一向量b的数据加载到量子线路的缘故,第一向量b的维数需要能表示为2的正整数次幂形式。若维数不符合2的正整数次幂的形式,则在第一向量b的元素中补零直至满足符合2的正整数次幂的形式。同样的,第一矩阵A的元素信息加载到量子线路,也需符合2的正整数次幂的形式,若需进行补零操作的原理和方法与在第一向量b的元素中补零的方法相同。
利用上述构建的HHL算法对应的量子线路,输入Rm和残差向量β的值,即可通过测量等操作输出待处理线性系统在Krylov子空间Km内的中间值ym
最后,根据所述中间值ym,获取所述待处理线性系统在Krylov子空间Km内的近似解xm,其中,所述xm=x0+Vmym
需要说明的是,利用所述HHL算法对应的量子线路,输入Rm和残差向量β的值,输出所述待处理线性系统在Krylov子空间Km内的中间值ym之后,所述方法还包括:
判断所述中间值ym能否满足‖Rmym-β‖2<∈1,其中,∈1为预设第一精度。
具体的,判断‖Rmym-β‖2的值能否满足第一预设精度,其主要目的在于判断利用上述HHL算法所计算的中间值ym是否符合用户预设∈1精度要求,便于进一步处理。
若所述中间值ym不满足‖Rmym-β‖2<∈1,则获取更新后的残差向量βnew并返回执行所述利用所述HHL算法对应的量子线路,输入Rm和残差向量β的值,输出所述待处理线性系统在Krylov子空间Km内的中间值ym的步骤,其中,所述更新后的残差向量βnew=β-Rmym
若所述中间值ym满足‖Rmym-β‖2<∈1,则判断所述近似解xm能否满足‖A′xm-b′‖2<∈2,其中,∈2为预设第二精度。
具体的,判断‖A′xm-b′‖2的值能否满足第二预设精度,其主要目的在于检查利用GMRES降维计算后,所求得的近似解损失的精度是不是足够小,能否满足用户预设的精度需求。
若所述近似解xm满足‖A′xm-b′‖2<∈2,则确定所述近似解xm即为所述待处理线性系统Ax=b在Krylov子空间Km内的目标近似解。
若所述近似解xm不满足‖A′xm-b′‖2<∈2,则获取当前残差b0-Axm并返回执行所述根据Arnoldi算法、第二矩阵A′和第二向量b′,构造m阶Krylov子空间Km的标准正交基组Vm和Hessenberg矩阵Hm+1,m的步骤继续迭代计算,直至获得满足预设第二精度的目标近似解为止。
具体的,当xm不满足预设第二精度时,则获取当前步的残差b0-Axm,更新第二向量,作为下一步迭代的输入向量继续进行计算,直至获得满足预设第二精度的目标近似解为止。
需要说明的是,上述迭代步骤,针对GMRES算法在低维子空间解的精度欠佳问题,利用迭代的思想将目标近似解求解出来,提高了计算精度和稳定性。
可见,本申请将线性系统求解方法中的GMRES算法和量子HHL算法结合,从而显著提高HHL算法的加速效果,使得在普通PC端的量子虚拟机上模拟实际物理问题。HHL算法求解线性问题的时间复杂度为O(s2κ2logN),其中N为矩阵维度,κ为矩阵条件数,s表征矩阵稠密性。显然加速HHL算法求解过程可以通过以下三个途径:减小求解的矩阵维度N;减小求解的矩阵的条件数κ或通过减小s增大矩阵的稀疏性。而在GMRES算法中,直接求解的是m维子空间内的方程组:
β-Rmym=0
方程组维度m往往远小于原始问题的维度,从而实现求解加速。这是GMRES-HHL算法的优势之一,即保留了GMRES方法自带“降维”效果的性质。注意到GMRES直接求解的输入矩阵为低维矩阵,为Hessenberg矩阵能够容易的转换为归一化双对角矩阵,从而显著增大了系数矩阵的稀疏性并能一定程度地降低矩阵条件数,另外注意在算法的进行中能够轻松的对矩阵进行处理而不必引入额外过多的计算量。另外对于GMRES中嵌套子空间的选取方式,有:
Km=span{b0,Ab0,A2b0,…,Am-1b0}
即在构造子空间的过程中,通过不断将矩阵A作用于初始残差,使得初始残差在空间中不断旋转和伸缩,因此可以将其理解为一个人工的信号放大过程。假设问题是m维满秩的,初始残差总可以用矩阵A的m个特征向量μm线性表示,随着矩阵A的不断作用,特征向量μm将按照其对应特征值λm的大小不断缩放。显然,随着m变大,λm>1的特征向量影响权重越大,而λm<1的特征向量的影响越来越小,即Am-1b0的方向愈加趋于稳定。当矩阵A条件数越大时,这种微弱的影响越难区分,从而需要模长很小的基去构造这种微弱的变化。但是在低维的子空间内这种影响结果被削弱,原始矩阵的低频信息并没有被完整的考虑,因此低维矩阵Hm不仅维度小于原始矩阵A,条件数同样小于原始矩阵A,这便是GMRES-HHL算法的优势之二,即在低维空间内条件数被自动降低。总结来看,相比于直接HHL算法求解,GMRES-HHL算法降低了问题维度,条件数,增大了稀疏性,能更好的激发HHL算法的加速性能,从而使得在普通PC端基于HHL算法求解大规模线性问题得以实现。
与现有技术相比,本发明首先获取待处理线性系统Ax=b,构建用于线性系统预处理的稀疏近似矩阵M,并对待处理线性系统进行预处理,构造m阶Krylov子空间Km和HHL算法对应的量子线路,基于广义极小残量法计算预处理后的待处理线性系统在Krylov子空间Km内的近似解xm,它能够降低解线性问题求解的时间复杂度和计算量,加快量子线性算法的求解速度,同时减少硬件资源的占用。
参见图5,图5为本发明实施例提供的一种基于广义极小残量的量子线性求解装置的结构示意图,与图2所示的流程相对应,可以包括:
获取模块501,用于获取待处理线性系统Ax=b;
构建模块502,用于构建用于线性系统预处理的稀疏近似矩阵M,并对所述待处理线性系统进行预处理;
构造模块503,用于构造m阶Krylov子空间Km和HHL算法对应的量子线路,基于广义极小残量法计算预处理后的所述待处理线性系统在Krylov子空间Km内的近似解xm
具体的,所述获取模块,包括:
第一获取单元,用于获取待处理线性系统Ax=b及初始残差b0,其中,所述A为第一矩阵,所述b为第一向量,所述初始残差b0根据预设初始解x0计算,满足b0=b-Ax0
具体的,所述构建模块,包括:
第一构建单元,用于根据所述第一矩阵A,构建用于线性系统预处理的稀疏近似矩阵M,其中,所述稀疏近似矩阵M为A-1的稀疏近似且满足预设稀疏结构;
第二获取单元,用于根据所述稀疏近似矩阵M,分别获取线性系统中第二矩阵A′、第二向量b′,其中,所述第二矩阵A′=MA,所述第二向量b′=Mb。
具体的,所述构造模块,包括:
构造单元,用于根据Arnoldi算法、第二矩阵A′和第二向量b′,构造m阶Krylov子空间Km的标准正交基组Vm和Hessenberg矩阵Hm+1,m
第二构建单元,用于对所述Hessenberg矩阵Hm+1,m进行QR分解并构建HHL算法对应的量子线路;
输出单元,用于利用所述HHL算法对应的量子线路,输出所述待处理线性系统在Krylov子空间Km内的中间值ym
第三获取单元,用于根据所述中间值ym,获取所述待处理线性系统在Krylov子空间Km内的近似解xm,其中,所述xm=x0+Vmym
具体的,所述第二构建单元,包括:
分解子单元,用于将所述Hessenberg矩阵Hm+1,m分解成
Figure BDA0003329255210000231
Figure BDA0003329255210000232
其中,Qm+1为正交矩阵,Rm+1,m为上三角矩阵。
具体的,所述输出单元,包括:
输出子单元,用于利用所述HHL算法对应的量子线路,输入Rm和残差向量β的值,输出所述待处理线性系统在Krylov子空间Km内的中间值ym,其中,Rm为上三角矩阵Rm+1,m的前m行,β=‖b02q1(1:m),q1(1:m)表示正交矩阵Qm+1第一列的前m个元素组成的向量,β与Rm、ym满足关系:β=Rmym
具体的,所述输出子单元之后,还包括:
第一判断子单元,用于判断所述中间值ym能否满足‖Rmym-β‖2<∈1,其中,∈1为预设第一精度;
第一返回子单元,用于若所述中间值ym不满足‖Rmym-β‖2<∈1,则获取更新后的残差向量βnew并返回执行所述利用所述HHL算法对应的量子线路,输入Rm和残差向量β的值,输出所述待处理线性系统在Krylov子空间Km内的中间值ym的步骤,其中,所述更新后的残差向量βnew=β-Rmym
具体的,所述装置还包括:
第二判断子单元,用于若所述中间值ym满足‖Rmym-β‖2<∈1,则判断所述近似解xm能否满足‖A′xm-b′‖2<∈2,其中,∈2为预设第二精度;
第一确定子单元,用于若所述近似解xm满足‖A′xm-b′‖2<∈2,则确定所述近似解xm即为所述待处理线性系统Ax=b在Krylov子空间Km内的目标近似解。
具体的,所述装置还包括:
第二返回子单元,用于若所述近似解xm不满足‖A′xm-b′‖2<∈2,则获取当前残差b0-Axm并返回执行所述根据Arnoldi算法、第二矩阵A′和第二向量b′,构造m阶Krylov子空间Km的标准正交基组Vm和Hessenberg矩阵Hm+1,m的步骤继续迭代计算,直至获得满足预设第二精度的目标近似解为止。
具体的,所述第二构建单元,包括:
获得子单元,用于获得包括辅助量子比特、第一量子比特、第二量子比特的若干量子比特,其中,所述辅助量子比特和所述第一量子比特的初态置为|0>,所述第二量子比特的初态置为
Figure BDA0003329255210000241
所述bi为所述第一向量b的第i个元素,所述N为第一向量的维数;
第二确定子单元,用于确定所述第一矩阵A对应的酉矩阵U;
第一构建子单元,用于构建用以相位估计的第一子量子线路模块,用于将所述|b>在第一矩阵A的特征空间上分解为
Figure BDA0003329255210000242
并将所述第一量子比特和所述第二量子比特的初态|0>|b>转化为
Figure BDA0003329255210000243
其中,所述|μj>为所述第一矩阵A的特征向量,所述λj为所述第一矩阵A的特征值,所述βj为所述第一矩阵A特征向量的振幅;
第二构建子单元,用于构建用以执行受控旋转操作的第二子量子线路模块,用于将|λj〉作为控制比特对辅助量子比特进行旋转,得到
Figure BDA0003329255210000244
其中,所述C为归一化常数;
第三构建子单元,用于构建用以执行逆相位估计的第三子量子线路模块,用于将|λj>复位至|0〉;
第四构建子单元,用于构建用于所述辅助量子比特的测量操作模块,以使测量到所述辅助量子比特的量子态为|1>时,得到:
Figure BDA0003329255210000245
所述|x′>∝|x>;
组成子单元,用于将所述第一子量子线路模块、所述第二子量子线路模块、所述第三子量子线路模块和所述量子测量操作模块,依次组成HHL算法对应的量子线路。
具体的,所述第二确定子单元,包括:
第三确定子单元,用于若所述第一矩阵A为Hermite矩阵,确定对应的酉矩阵U=eiAt;其中,所述t为常量;
第四确定子单元,用于若所述第一矩阵A为非Hermite矩阵,确定对应Hermite矩阵
Figure BDA0003329255210000251
以确定对应的酉矩阵
Figure BDA0003329255210000252
与现有技术相比,本发明首先获取待处理线性系统Ax=b,构建用于线性系统预处理的稀疏近似矩阵M,并对待处理线性系统进行预处理,构造m阶Krylov子空间Km和HHL算法对应的量子线路,基于广义极小残量法计算预处理后的待处理线性系统在Krylov子空间Km内的近似解xm,它能够降低解线性问题求解的时间复杂度和计算量,加快量子线性算法的求解速度,同时减少硬件资源的占用。
本发明实施例还提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项中方法实施例中的步骤。
具体的,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S201:获取待处理线性系统Ax=b;
S202:构建用于线性系统预处理的稀疏近似矩阵M,并对所述待处理线性系统进行预处理;
S203:构造m阶Krylov子空间Km和HHL算法对应的量子线路,基于广义极小残量法计算预处理后的所述待处理线性系统在Krylov子空间Km内的近似解xm
具体的,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本发明实施例还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项中方法实施例中的步骤。
具体的,上述电子设备还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
具体的,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S201:获取待处理线性系统Ax=b;
S202:构建用于线性系统预处理的稀疏近似矩阵M,并对所述待处理线性系统进行预处理;
S203:构造m阶Krylov子空间Km和HHL算法对应的量子线路,基于广义极小残量法计算预处理后的所述待处理线性系统在Krylov子空间Km内的近似解xm
以上依据图式所示的实施例详细说明了本发明的构造、特征及作用效果,以上所述仅为本发明的较佳实施例,但本发明不以图面所示限定实施范围,凡是依照本发明的构想所作的改变,或修改为等同变化的等效实施例,仍未超出说明书与图示所涵盖的精神时,均应在本发明的保护范围内。

Claims (14)

1.一种基于广义极小残量的量子线性求解方法,其特征在于,所述方法包括:
获取待处理线性系统Ax=b;
构建用于线性系统预处理的稀疏近似矩阵M,并对所述待处理线性系统进行预处理;
构造m阶Krylov子空间Km和HHL算法对应的量子线路,基于广义极小残量法计算预处理后的所述待处理线性系统在Krylov子空间Km内的近似解xm
2.根据权利要求1所述的方法,其特征在于,所述获取待处理线性系统Ax=b,包括:
获取待处理线性系统Ax=b及初始残差b0,其中,所述A为第一矩阵,所述b为第一向量,所述初始残差b0根据预设初始解x0计算,满足b0=b-Ax0
3.根据权利要求2所述的方法,其特征在于,所述构建用于线性系统预处理的稀疏近似矩阵M,并对所述待处理线性系统进行预处理,包括:
根据所述第一矩阵A,构建用于线性系统预处理的稀疏近似矩阵M,其中,所述稀疏近似矩阵M为A-1的稀疏近似且满足预设稀疏结构;
根据所述稀疏近似矩阵M,分别获取线性系统中第二矩阵A′、第二向量b′,其中,所述第二矩阵A′=MA,所述第二向量b′=Mb。
4.根据权利要求3所述的方法,其特征在于,所述构造m阶Krylov子空间Km和HHL算法对应的量子线路,基于广义极小残量法计算预处理后的所述待处理线性系统在Krylov子空间Km内的近似解xm,包括:
根据Arnoldi算法、第二矩阵A′和第二向量b′,构造m阶Krylov子空间Km的标准正交基组Vm和Hessenberg矩阵Hm+1,m
对所述Hessenberg矩阵Hm+1,m进行QR分解并构建HHL算法对应的量子线路;
利用所述HHL算法对应的量子线路,输出所述待处理线性系统在Krylov子空间Km内的中间值ym
根据所述中间值ym,获取所述待处理线性系统在Krylov子空间Km内的近似解xm,其中,所述xm=x0+Vmym
5.根据权利要求4所述的方法,其特征在于,所述对所述Hessenberg矩阵Hm+1,m进行QR分解,包括:
将所述Hessenberg矩阵Hm+1,m分解成
Figure FDA0003329255200000021
其中,Qm+1为正交矩阵,Rm+1,m为上三角矩阵。
6.根据权利要求5所述的方法,其特征在于,所述利用所述HHL算法对应的量子线路,输出所述待处理线性系统在Krylov子空间Km内的中间值ym,包括:
利用所述HHL算法对应的量子线路,输入Rm和残差向量β的值,输出所述待处理线性系统在Krylov子空间Km内的中间值ym,其中,Rm为上三角矩阵Rm+1,m的前m行,β=||b0||2q1(1:m),q1(1:m)表示正交矩阵Qm+1第一列的前m个元素组成的向量,β与Rm、ym满足关系:β=Rmym
7.根据权利要求6所述的方法,其特征在于,所述利用所述HHL算法对应的量子线路,输入Rm和残差向量β的值,输出所述待处理线性系统在Krylov子空间Km内的中间值ym之后,所述方法还包括:
判断所述中间值ym能否满足||Rmym-β||2<∈1,其中,∈1为预设第一精度;
若所述中间值ym不满足||Rmym-β||2<∈1,则获取更新后的残差向量βnew并返回执行所述利用所述HHL算法对应的量子线路,输入Rm和残差向量β的值,输出所述待处理线性系统在Krylov子空间Km内的中间值ym的步骤,其中,所述更新后的残差向量βnew=β-Rmym
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
若所述中间值ym满足||Rmym-β||2<∈1,则判断所述近似解xm能否满足||A′xm-b′||2<∈2,其中,∈2为预设第二精度;
若所述近似解xm满足||A′xm-b′||2<∈2,则确定所述近似解xm即为所述待处理线性系统Ax=b在Krylov子空间Km内的目标近似解。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
若所述近似解xm不满足||A′xm-b′||2<∈2,则获取当前残差b0-Axm并返回执行所述根据Arnoldi算法、第二矩阵A′和第二向量b′,构造m阶Krylov子空间Km的标准正交基组Vm和Hessenberg矩阵Hm+1,m的步骤继续迭代计算,直至获得满足预设第二精度的目标近似解为止。
10.根据权利要求4所述的方法,其特征在于,所述构建HHL算法对应的量子线路,包括:
获得包括辅助量子比特、第一量子比特、第二量子比特的若干量子比特,其中,所述辅助量子比特和所述第一量子比特的初态置为|0>,所述第二量子比特的初态置为
Figure FDA0003329255200000031
所述bi为所述第一向量b的第i个元素,所述N为第一向量的维数;
确定所述第一矩阵A对应的酉矩阵U;
构建用以相位估计的第一子量子线路模块,用于将所述|b>在第一矩阵A的特征空间上分解为
Figure FDA0003329255200000032
并将所述第一量子比特和所述第二量子比特的初态|0>|b>转化为
Figure FDA0003329255200000033
其中,所述|μj>为所述第一矩阵A的特征向量,所述λj为所述第一矩阵A的特征值,所述βj为所述第一矩阵A特征向量的振幅;
构建用以执行受控旋转操作的第二子量子线路模块,用于将|λj>作为控制比特对辅助量子比特进行旋转,得到
Figure FDA0003329255200000034
其中,所述C为归一化常数;
构建用以执行逆相位估计的第三子量子线路模块,用于将|λj>复位至|0>;
构建用于所述辅助量子比特的测量操作模块,以使测量到所述辅助量子比特的量子态为|1>时,得到:
Figure FDA0003329255200000035
所述|x′>∝|x>;
将所述第一子量子线路模块、所述第二子量子线路模块、所述第三子量子线路模块和所述量子测量操作模块,依次组成HHL算法对应的量子线路。
11.根据权利要求10所述的方法,其特征在于,所述确定所述第一矩阵A对应的酉矩阵U,包括:
若所述第一矩阵A为Hermite矩阵,确定对应的酉矩阵U=eiAt;其中,所述t为常量;
若所述第一矩阵A为非Hermite矩阵,确定对应Hermite矩阵
Figure FDA0003329255200000041
Figure FDA0003329255200000042
以确定对应的酉矩阵
Figure FDA0003329255200000043
12.一种基于广义极小残量的量子线性求解装置,其特征在于,所述装置包括:
获取模块,用于获取待处理线性系统Ax=b;
构建模块,用于构建用于线性系统预处理的稀疏近似矩阵M,并对所述待处理线性系统进行预处理;
构造模块,用于构造m阶Krylov子空间Km和HHL算法对应的量子线路,基于广义极小残量法计算预处理后的所述待处理线性系统在Krylov子空间Km内的近似解xm
13.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至11任一项中所述的方法。
14.一种电子设备,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行所述权利要求1至11任一项中所述的方法。
CN202111275781.1A 2021-10-29 2021-10-29 基于广义极小残量的量子线性求解方法、装置及介质 Pending CN116090571A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111275781.1A CN116090571A (zh) 2021-10-29 2021-10-29 基于广义极小残量的量子线性求解方法、装置及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111275781.1A CN116090571A (zh) 2021-10-29 2021-10-29 基于广义极小残量的量子线性求解方法、装置及介质

Publications (1)

Publication Number Publication Date
CN116090571A true CN116090571A (zh) 2023-05-09

Family

ID=86199636

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111275781.1A Pending CN116090571A (zh) 2021-10-29 2021-10-29 基于广义极小残量的量子线性求解方法、装置及介质

Country Status (1)

Country Link
CN (1) CN116090571A (zh)

Similar Documents

Publication Publication Date Title
CN113850389B (zh) 一种量子线路的构建方法及装置
CN113496285A (zh) 基于量子电路的数据处理方法及装置、电子设备和介质
CN114418105B (zh) 一种基于量子线路处理量子应用问题的方法及装置
CN114021728B (zh) 量子数据测量方法及系统、电子设备和介质
CN113705793B (zh) 决策变量确定方法及装置、电子设备和介质
CN114219076A (zh) 量子神经网络训练方法及装置、电子设备和介质
CN114239840A (zh) 量子信道噪声系数估计方法及装置、电子设备和介质
WO2020221583A1 (en) System and method for molecular design on a quantum computer
CN114819168B (zh) 一种矩阵特征值的量子比较方法及装置
CN114372539B (zh) 基于机器学习框架的分类方法及相关设备
CN114418104B (zh) 一种量子应用问题的处理方法及装置
CN116090571A (zh) 基于广义极小残量的量子线性求解方法、装置及介质
CN114519429A (zh) 获取目标体系的可观测量的方法、装置及介质
CN116090572A (zh) 基于完全正交化的量子线性求解方法、装置、介质及设备
CN116070707A (zh) 基于量子线路的线性系统求解方法、装置、介质及设备
CN116957084A (zh) 基于混合子空间的线性系统求解方法、装置、介质及设备
JP2022048780A (ja) 計算装置、計算方法およびプログラム
CN114862079A (zh) 基于量子线路的风险值估算方法、装置、介质及电子装置
CN114819167B (zh) 一种稀疏线性系统的稀疏近似逆量子预处理方法及装置
CN117056646A (zh) 一种用于子空间的变分量子线性求解方法、装置及介质
CN114692879B (zh) 一种基于稀疏线性系统的量子预处理方法及装置
CN116263883A (zh) 基于多项式预处理器的量子线性求解方法、装置及设备
CN114969629A (zh) 一种基于量子线路的非线性方程组求解方法及装置
CN117669757A (zh) 一种哈密顿量的构造方法及装置
CN114819169A (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
CB02 Change of applicant information

Address after: 230088 6th floor, E2 building, phase II, innovation industrial park, 2800 innovation Avenue, Hefei high tech Zone, Hefei City, Anhui Province

Applicant after: Benyuan Quantum Computing Technology (Hefei) Co.,Ltd.

Address before: 230088 6th floor, E2 building, phase II, innovation industrial park, 2800 innovation Avenue, Hefei high tech Zone, Hefei City, Anhui Province

Applicant before: ORIGIN QUANTUM COMPUTING COMPANY, LIMITED, HEFEI

CB02 Change of applicant information