发明内容
本公开的目的是提供一种分子基态的电子结构计算方法及相关设备,旨在基于二次量子化形式下的哈密顿量实现对于分子基态电子结构的计算。
为了实现上述目的,本公开实施例的第一方面提供一种分子基态的电子结构计算方法,所述方法包括:
获取目标分子的由二次量子化形式表示的分子哈密顿量;
将所述分子哈密顿量中的产生算符和湮灭算符转化为由泡利项表示,得到目标哈密顿量;
获取所述目标哈密顿量的泡利校验矩阵和系数集合,所述泡利校验矩阵的行向量用于表征所述目标哈密顿量的所述泡利项;
基于所述泡利校验矩阵和所述系数集合计算对应于所述目标分子的基态的稳定子,以得到所述目标分子的基态;
基于所述稳定子计算所述目标分子的基态能量。
可选地,所述将所述分子哈密顿量中的产生算符和湮灭算符转化为由泡利项表示,包括:
基于如下Jordan-Wigner变换将所述分子哈密顿量中的产生算符和湮灭算符转化为由泡利项表示:
其中,和aj分别表示分子哈密顿量中第j自旋轨道的产生算符和湮灭算符,X、Y和Z分别表示σx泡利算符、σy泡利算符和σz泡利算符。
可选地,所述将所述分子哈密顿量中的产生算符和湮灭算符转化为由泡利项表示,包括:
基于如下Parity变换将所述分子哈密顿量中的产生算符和湮灭算符转化为由泡利项表示:
其中,表示更新算子,/>和aj分别表示分子哈密顿量中第j自旋轨道的产生算符和湮灭算符,X、Y和Z分别表示σx泡利算符、σy泡利算符和σz泡利算符。
可选地,所述将所述分子哈密顿量中的产生算符和湮灭算符转化为由泡利项表示,包括:
基于如下Bravyi-Kitaev变换将所述分子哈密顿量中的产生算符和湮灭算符转化为由泡利项表示:
其中,U(j)为更新集,表示第j轨道占据数fj发生改变时,会相应改变的j以外的所有量子比特,P(j)为宇称集,为决定第0轨道至第j-1轨道总宇称pj-1的所有量子比特的集合,R(j)=P(j)\F(j),为翻转集F(j)在P(j)中的补集,翻转集F(j)是决定第j轨道占据数fj与相应BK值bj是否一致的所有量子比特的集合,和aj分别表示分子哈密顿量中第j自旋轨道的产生算符和湮灭算符,X、Y和Z分别表示σx泡利算符、σy泡利算符和σz泡利算符。
可选地,所述基于所述泡利校验矩阵和所述系数集合计算对应于所述目标分子的基态的稳定子,包括:
从所述系数集合中选出绝对值最大的目标系数,并从所述泡利校验矩阵中选出对应所述目标系数的目标行向量;
在所述目标系数为正数时,将所述目标行向量取反后作为稳定子生成元,在所述目标系数为负数时,直接将所述目标行向量作为稳定子生成元;
更新所述泡利校验矩阵,以使得更新后的所述泡利校验矩阵中的行向量均与所述稳定子生成元满足对易关系且互相线性无关,并相应更新所述系数集合;
在得到的所述稳定子生成元数量小于所述目标分子的量子比特数量,且泡利校验矩阵和对应系数集合仍有元素时,返回执行所述从所述系数集合中选出绝对值最大的目标系数,并从所述泡利校验矩阵中选出对应所述目标系数的目标行向量的步骤;
在得到的所述稳定子生成元数量等于所述目标分子的量子比特数量,或泡利校验矩阵和对应系数集合为空集时,将得到的所有所述稳定子生成元作为对应于所述目标分子的基态的稳定子。
可选地,所述更新所述泡利校验矩阵,以使得更新后的所述泡利校验矩阵中的行向量均与所述稳定子生成元满足对易关系且互相线性无关,并相应更新所述系数集合,包括:
从所述泡利校验矩阵中删除每一个与所述稳定子生成元不对易的行向量,并从所述系数集合中删除与该行向量对应的系数;
基于高斯消元法或施密特正交化对所述泡利校验矩阵进行变换,以消去所述泡利校验矩阵中与所述稳定子生成元线性相关的行向量,并相应更新所述系数集合。
可选地,所述分子哈密顿量基于如下公式表示:
其中,H为分子哈密顿量,为第p自旋轨道的产生算符,/>为第q自旋轨道的产生算符,/>为第r自旋轨道的湮灭算符,/>为第s自旋轨道的湮灭算符,/>为第q自旋轨道的湮灭算符,hpq为电子从第q自旋轨道跃迁到第p自旋轨道的动能和原子核势能增减总和,hpqrs为两个电子分别从第r和第s自旋轨道跃迁到第q和第p自旋轨道的电子之间相互作用势能的变化,hnuc为原子核之间的相互作用能量。
本公开实施例的第二方面,提供一种分子基态的电子结构计算装置,所述装置包括:
第一获取模块,用于获取目标分子的由二次量子化形式表示的分子哈密顿量;
转化模块,用于将所述分子哈密顿量中的产生算符和湮灭算符转化为由泡利项表示,得到目标哈密顿量;
第二获取模块,用于获取所述目标哈密顿量的泡利校验矩阵和系数集合,所述泡利校验矩阵的行向量用于表征所述目标哈密顿量的所述泡利项;
稳定子计算模块,用于基于所述泡利校验矩阵和所述系数集合计算对应于所述目标分子的基态的稳定子,以得到所述目标分子的基态;
能量计算模块,用于基于所述稳定子计算所述目标分子的基态能量。
本公开实施例的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述第一方面中任一项所述方法的步骤。
本公开实施例的第四方面,提供一种电子设备,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现上述第一方面中任一项所述方法的步骤。
通过上述技术方案,在获取目标分子的由二次量子化形式表示的分子哈密顿量后,将分子哈密顿量中的产生算符和湮灭算符转化为由泡利项表示,得到对应于分子哈密顿量的目标哈密顿量,便于后续通过目标哈密顿量的泡利校验矩阵和系数集合计算目标分子基态的稳定子,以得到通过稳定子描述的基态,进而根据稳定子计算目标分子的基态能量,最终基于二次量子化形式下的哈密顿量实现对于分子基态的电子结构计算,此外由于稳定子对应的稳定子态构成的空间相对于原本分子的多量子比特态构成的希尔伯特空间较小,可以提高近似基态的搜索速度,进而提高分子基态电子结构的计算效率。
本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
具体实施方式
以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
分子是由组成的原子按照一定的键合顺序和空间排列而结合在一起的整体,这种键合顺序和空间排列关系称为分子结构,分子是物质中能够独立存在的相对稳定并保持该物质物理化学特性的最小单元。分子基态的电子结构计算是量子化学中的一个重要问题。它可以用于预测分子的性质和反应。
量子模拟最早由Feynman提出,它允许一些量子力学系统的经典模拟以指数级的速度加速。化学系统的量子模拟有三种基本方法,其中一种称为二次量子化(Second-Quantized),在这种形式下,分子哈密顿量可以用在分子轨道基组上作用的产生算符和湮灭算符表示,其较小规模的模拟使得其所需的资源减少。在二次量子化形式下,分子哈密顿量可以基于如下公式表示:
其中,H为分子哈密顿量,为第p自旋轨道的产生算符,/>为第q自旋轨道的产生算符,/>为第r自旋轨道的湮灭算符,/>为第s自旋轨道的湮灭算符,/>为第q自旋轨道的湮灭算符,hpq为电子从第q自旋轨道跃迁到第p自旋轨道的动能和原子核势能增减总和,hpqrs为两个电子分别从第r和第s自旋轨道跃迁到第q和第p自旋轨道的电子之间相互作用势能的变化,hnuc为原子核之间的相互作用能量。
和/>分别为电子的产生算符和湮灭算符,因为电子是费米子,所以这些算符也都是费米型的。为了方便用量子计算求解,我们考虑先把它们都转换成量子比特上的算符,或者说门操作。例如,可以将分子哈密顿量转化为如下形式:
其中/>σi∈{I,X,Y,Z}
其中,H为目标哈密顿量,Pi为泡利项,c0和ci为系数,σi为泡利项中的算符,I为恒等算符,X为σx泡利算符,Y为σy泡利算符,Z为σz泡利算符。
这里的系数由前面的电子积分hpq和hpqrs决定,而量子比特数n等于分子的自旋轨道数,也就是空间轨道数的2倍。写成量子比特形式后,为提高计算效率,可以考虑应用稳定子方法进行近似求解。
多量子比特态构成的希尔伯特空间是很大的,对于n量子比特体系,这一空间的维度是2n。这一方面是量子计算得以超越经典计算的理论基础,另一方面也给量子算法的具体实现带来了一定难度。考虑上述的哈密顿量:
其中/>σi∈{I,X,Y,Z}
该哈密顿量中,每个泡利(Pauli)项Pi是作用在不同量子比特上的泡利算符σ的张量积通过计算哈密顿量的本征值,就可以得到能量。我们希望找到能量最低的态,也就是基态。由于整个希尔伯特空间很大,要直接找到基态是很困难的。例如,利用变分量子本征求解器(VQE)算法求解基态,常常会遇到所谓局部最小(local minimum)和贫瘠高原(barren plateau)问题。这些问题出现的原因之一就是,整个希尔伯特空间是指数维的,而哈密顿量中涉及的泡利项的集合R一般来说只是多项式大小的。为缓解这些问题,可以考虑先设法缩小希尔伯特空间,在一个特定的子空间中近似求解。例如,可以选择子空间为所谓“稳定子态”构成的空间。
首先对稳定子体系进行简单介绍。我们定义单量子比特的泡利群为:
G1≡{±I,±iI,±X,±iX,±Y,±iY,±Z,±iZ}
而n比特Pauli群则相应地定义为:
这里表示张量积。对于Gn的任意交换子群S,如果S不包含-I,我们可以定义一个子空间VS,使得:
我们称VS是被S稳定的空间,而S是空间VS的稳定子。对于有限群,我们常常用它的生成元来进行描述。于是,我们可以将S写成:
S=<s1,...,sl>
这里s1,...,sl是S的一组生成元。可以证明,如果S的独立生成元数目为l,则VS的维度为2n-l。在特殊情形l=n下,VS为1维空间,也就是由唯一的态组成。我们把这种态称作“稳定子态”。于是,对于特定的稳定子态,我们只需要找到n个独立的稳定子生成元就可以完整描述。
根据已知的研究,所有稳定子态在整个希尔伯特空间中是均匀分布的,因此,我们可以先在所有稳定子态构成的离散子空间中寻找哈密顿量的最低能量态。由于搜索空间大大缩小,求解难度在一定程度上降低了。同时,求得的稳定子态可以很接近真实基态,可以为后续精确求解奠定基础。
图1是根据一示例性实施例示出的一种分子基态的电子结构计算方法的流程图,如图1所示,该方法包括:
S101,获取目标分子的由二次量子化形式表示的分子哈密顿量;
S102,将所述分子哈密顿量中的产生算符和湮灭算符转化为由泡利项表示,得到目标哈密顿量;
S103,获取所述目标哈密顿量的泡利校验矩阵和系数集合,所述泡利校验矩阵的行向量用于表征所述目标哈密顿量的所述泡利项;
S104,基于所述泡利校验矩阵和所述系数集合计算对应于所述目标分子的基态的稳定子,以得到所述目标分子的基态;
S105,基于所述稳定子计算所述目标分子的基态能量。
在步骤S101中,目标分子即待计算其电子结构的分子,电子结构计算包括对分子基态以及基态能量的计算,分子哈密顿量由上述二次量子化形式表示,二次量子化形式表示的分子哈密顿量包括湮灭算符和产生算符。可以通过输入设备将分子哈密顿量输入到计算设备以获取分子哈密顿量。
在步骤S102中,可以基于Jordan-Wigner(JW,约尔当–维格纳)变换、Parity(宇称)变换或Bravyi-Kitaev(BK)变换将分子哈密顿量中的产生算符和湮灭算符转化为由泡利项表示,进而得到对应于分子哈密顿量的目标哈密顿量。目标哈密顿量的具体形式可以参见上述用泡利项表示的哈密顿量。
可选地,在步骤S102中,将所述分子哈密顿量中的产生算符和湮灭算符转化为由泡利项表示,包括:
基于如下Jordan-Wigner变换将所述分子哈密顿量中的产生算符和湮灭算符转化为由泡利项表示:
其中,和aj分别表示分子哈密顿量中第j自旋轨道的产生算符和湮灭算符,X、Y和Z分别表示σx泡利算符、σy泡利算符和σz泡利算符。泡利算符下标表示该泡利算符作用于对应下标的量子比特。
具体来讲,Jordan-Wigner变换中,使用了占有数基,用量子比特来表示轨道,由于电子是费米子的,不可能有非零或非一的占有数,如果量子比特对应的轨道未被占据,则处于|0>态;如果被占据,则处于|1>态。除此之外还需要考虑费米子的反对易关系,基于此可以得到上述产生算符和湮灭算符到量子比特的映射关系。JW变换需要消耗的逻辑门个数与量子比特数成线性关系。
可选地,在步骤S102中,将所述分子哈密顿量中的产生算符和湮灭算符转化为由泡利项表示,包括:
基于如下Parity变换将所述分子哈密顿量中的产生算符和湮灭算符转化为由泡利项表示:
其中,表示更新算子,/>和aj分别表示分子哈密顿量中第j自旋轨道的产生算符和湮灭算符,X、Y和Z分别表示σx泡利算符、σy泡利算符和σz泡利算符。
具体来讲,Parity变换应用的是宇称基,第j量子比特存储的是从第0轨道到第j轨道占据数之和的奇偶性,即总宇称。
可选地,在步骤S102中,将所述分子哈密顿量中的产生算符和湮灭算符转化为由泡利项表示,包括:
基于如下Bravyi-Kitaev变换将所述分子哈密顿量中的产生算符和湮灭算符转化为由泡利项表示:
其中,U(j)为更新集,表示第j轨道占据数fj发生改变时,会相应改变的j以外的所有量子比特,P(j)为宇称集,为决定第0轨道至第j-1轨道总宇称pj-1的所有量子比特的集合,R(j)=P(j)\F(j),为翻转集F(j)在P(j)中的补集,翻转集F(j)是决定第j轨道占据数fj与相应BK值bj是否一致的所有量子比特的集合,和aj分别表示分子哈密顿量中第j自旋轨道的产生算符和湮灭算符,X、Y和Z分别表示σx泡利算符、σy泡利算符和σz泡利算符。
具体来讲,变换也称映射,其思想是将费米子算符转化为可以在量子计算中操作的泡利算符。BK变换中的量子比特集包含将费米子算符应用到量子态所需的信息。这些集合中,更新集U(j),可由BK变换矩阵βn定出。宇称集P(j),可由Parity变换矩阵πn与BK变换矩阵之逆的乘积定出。翻转集F(j),可由BK变换矩阵之逆/>定出,余子集R(j),为翻转集F(j)在P(j)中的补集,R(j)=P(j)\F(j)。
在步骤S103中,目标哈密顿量可以是直接通过泡利项表示的哈密顿量,泡利项可以包括一个泡利算符或多个泡利算符的张量积。泡利校验矩阵可以看作多个行向量的集合,每个行向量用于表示目标哈密顿量中对应的一个泡利项,系数集合可以为目标哈密顿量中的泡利项的系数构成的集合。
具体来讲,在一种可能的实施方式中,目标哈密顿量可以为:
其中/>σi∈{I,X,Y,Z}
其中,H为目标哈密顿量,Pi为泡利项,c0和ci为系数,σi为泡利项中的算符,I为恒等算符,X为σx泡利算符,Y为σy泡利算符,Z为σz泡利算符。
可选地,在步骤S103中,获取所述目标哈密顿量的泡利校验矩阵,包括:
S1031,获取所述目标哈密顿量的泡利项集合;
S1032,针对所述泡利项集合中每个泡利项,确定所述泡利项中的算符,基于如下关系获取对应所述算符的表示向量:
I=[0|0],X=[0|1],Y=[1|1],Z=[1|0];
其中,I为恒等算符,X为σx泡利算符,Y为σy泡利算符,Z为σz泡利算符;
S1033,针对所述每个泡利项中的所述算符对应的所述表示向量,将所述表示向量的左侧元素按照对应的所述算符于所述泡利项中的顺序拼接,得到第一行向量,将每个所述表示向量的右侧元素按照所述顺序拼接,得到第二行向量,再将所述第一行向量拼接于所述第二行向量左侧,得到校验行向量;
S1034,基于所述校验行向量得到泡利校验矩阵。
在步骤S1031中,获取目标哈密顿量中的每一个泡利项构成的泡利项集合,例如对于上述的目标哈密顿量,可以获取其中的每一Pi构成的泡利项集合PR={Pi|i∈R}。
获取泡利项集合后,可以进入执行步骤S1032,在步骤S1032中,对于泡利项集合中的每个泡利项,确定其中的算符后,获取每个算符对应的表示向量。
由于后续选取的生成元需要满足互相对易且互相独立的关系,直接利用稳定子的泡利矩阵张量积形式检验这些性质并不便利。在利用稳定子体系构造纠错码的过程中发展了稳定子的另一种表示方式,这就是“校验矩阵”。在这一表示中,单个泡利矩阵用一个两比特的行向量来表示:
I=[0|0],X=[0|1],Y=[1|1],Z=[1|0]
其中,I为恒等算符,X为σx泡利算符,Y为σy泡利算符,Z为σz泡利算符。这些表示向量也即对应恒等算符或泡利算符的所述校验矩阵。
举例来讲,若某泡利项为则可以确定其中的算符为σx泡利算符、σy泡利算符和恒等算符,进而获取每个算符对应的表示向量分别为[0|1]、[1|1]和[0|0]。通过该表示形式可以极大的方便后续稳定子生成元的对易性和独立性的验证。
获取表示向量后,可以进入执行步骤S1033,在步骤S1033中,按照算符在泡利项中的顺序,分别将各个算符对应的表示向量的左侧元素和右侧元素拼接,得到第一行向量和第二行向量,将第一行向量拼接到第二行向量左侧,得到校验行向量。
沿用前述例子,算符在泡利项中的顺序依次为X、Y、I,则将各个算符对应的表示向量的左侧元素按照该顺序拼接为第一行向量[0 1 0],将各个算符对应的表示向量的右侧元素按照该顺序拼接为行向量第二行向量[1 1 0],再将[0 1 0]拼接到[1 1 0]左侧,得到校验行向量[0 1 0|1 1 0]。
得到所有的泡利项的校验行向量后,进入执行步骤S1034,可以将校验行向量按照其对应的泡利项在哈密顿量中的顺序排列得到泡利校验矩阵。
当然,在其它的实施方式中,也可以通过不同方式来获取目标哈密顿量的泡利校验矩阵,例如可以按照泡利项在哈密顿量中的顺序,以及算符在泡利项中的顺序,根据上述算符对应的表示向量,直接生成泡利校验矩阵,泡利校验矩阵的行向量中的[mj|mj+n]表示对应泡利项中第j位的算符即可。如此对于n个泡利算符的张量积,通过将表示单个算符的表示向量推广到2n比特,实现对于泡利项的表示。
在步骤S103中,对于上述的目标哈密顿量,可以获取每个ci构成系数集合cR={ci|i∈R}。
获取泡利校验矩阵和系数集合之后,可以进入执行步骤S104,通过对泡利校验矩阵以及系数集合进行一系列运算,以找出一定数量的对应于目标分子基态的稳定子生成元作为目标分子基态的稳定子。
可选地,在步骤S104中,基于所述泡利校验矩阵和所述系数集合计算对应于所述目标分子的基态的稳定子,包括:
S1041,从所述系数集合中选出绝对值最大的目标系数,并从所述泡利校验矩阵中选出对应所述目标系数的目标行向量;
S1042,在所述目标系数为正数时,将所述目标行向量取反后作为稳定子生成元,在所述目标系数为负数时,直接将所述目标行向量作为稳定子生成元;
S1043,更新所述泡利校验矩阵,以使得更新后的所述泡利校验矩阵中的行向量均与所述稳定子生成元满足对易关系且互相线性无关,并相应更新所述系数集合;
S1044,在得到的所述稳定子生成元数量小于所述目标分子的量子比特数量,且泡利校验矩阵和对应系数集合仍有元素时,返回执行所述从所述系数集合中选出绝对值最大的目标系数,并从所述泡利校验矩阵中选出对应所述目标系数的目标行向量的步骤;
S1045,在得到的所述稳定子生成元数量等于所述目标分子的量子比特数量,或泡利校验矩阵和对应系数集合为空集时,将得到的所有所述稳定子生成元作为对应于所述目标分子的基态的稳定子。
步骤S1041中,确定系数集合中绝对值最大的目标系数,然后将该目标系数从系数集合中选出,即选择该目标系数后,将该目标系数从系数集合中取出,也即将目标系数从系数集合中删除。此外,从泡利校验矩阵中选出对应目标系数的目标行向量,然后将目标行向量从泡利校验矩阵中删除。即目标系数为目标行向量对应的泡利项在目标哈密顿量中的系数。
选出目标系数后,可以进入执行步骤S1042,在步骤S1042中,判断目标系数的正负情况,若目标系数为正数,则将目标行向量取反即整体乘以-1后作为稳定子生成元,若目标系数为负数,则直接将目标行向量作为稳定子生成元。例如,若绝对值最大的目标系数为ck,如果ck>0,可以选择稳定子生成元sk=-Pk,如果ck<0,可以选择稳定子生成元sk=Pk,Pk对应于ck,Pk可以为泡利校验矩阵中表示对应泡利项的行向量。
在步骤S1043中,对泡利校验矩阵进行更新,得到更新后的泡利校验矩阵,使得更新后的泡利校验矩阵中的每个行向量都与稳定子生成元互相对易且互相独立即线性无关。并根据对泡利校验矩阵的更新方式,相应的更新系数集合。
可选地,在步骤S1043中,更新所述泡利校验矩阵,以使得更新后的所述泡利校验矩阵中的行向量均与所述稳定子生成元满足对易关系且互相线性无关,并相应更新所述系数集合,包括:
S10431,从所述泡利校验矩阵中删除每一个与所述稳定子生成元不对易的行向量,并从所述系数集合中删除与该行向量对应的系数;
S10432,基于高斯消元法或施密特正交化对所述泡利校验矩阵进行变换,以消去所述泡利校验矩阵中与所述稳定子生成元线性相关的行向量,并相应更新所述系数集合。
可选地,在步骤S10431中,从所述泡利校验矩阵中删除每一个与所述稳定子生成元不对易的行向量,包括:
S104311,获取扭曲矩阵,所述扭曲矩阵包含分别位于左上方、右下方、右上方和左下方的子矩阵,其中位于左上方和右下方的所述子矩阵为零矩阵,位于右上方和左下方的所述子矩阵为单位矩阵;
S104312,针对所述泡利校验矩阵的每一行向量,计算该行向量乘以所述扭曲矩阵再乘以所述稳定子生成元的转置向量的模2运算结果;
S104313,在所述运算结果不为0时,确定所述泡利校验矩阵中对应于该运算结果的行向量与所述稳定子生成元不对易,并从所述泡利校验矩阵中删除该行向量。
在步骤S104311中,可以定义2n×2n扭曲矩阵:
扭曲矩阵为2n*2n矩阵,可分成四个n*n矩阵。其中左上和右下为零矩阵,左下和右上为单位矩阵,获取扭曲矩阵后,可以进入执行步骤S104312,在步骤S104312中,如果稳定子生成元s与s′的校验矩阵分别是m(s)和m(s′),那么它们对易当且仅当m(s)Λm(s′)T=0,注意这里的矩阵运算是模2运算。因此,可以计算泡利校验矩阵的行向量乘以扭曲矩阵再乘以稳定子生成元的转置向量的模2运算结果,以用于判断其行向量所表示的泡利项是否与稳定子生成元对易。
当然,可以将泡利校验矩阵整体以及多个稳定子生成元组成的矩阵参与该计算过程,根据结果来判断相应的行向量与稳定子生成元是否对易,以提高计算效率。
运算结果计算完成后,进入执行步骤S104313,若运算结果不为0,则表示行向量与稳定子生成元不对易,或者说行向量对应的泡利项与稳定子生成元不对易,进而将该行向量从泡利矩阵中删除,删除所有不对易的行向量后,泡利校验矩阵中仅保留满足对易关系的行向量。
在步骤S10431中,删除不对易的行向量后,确定系数集合中对应于被删除的行向量的系数,进而将这些系数也从系数集合中删除。当然,也可以采用其它方法来删除与稳定子生成元不对易的行向量,本公开对此不做具体限制。
步骤S10431执行后,可以进入执行步骤S10432。在步骤S10432中,高斯消元法(Gaussian elimination)通过对泡利校验矩阵进行初等行变换,将泡利校验矩阵转换为简化行阶梯形式,在变换过程中,可以合并同类项,消去泡利校验矩阵中与稳定子生成元互相线性相关的行向量。相应地,对系数集合中的系数进行更新,以保持原本与行向量的对应关系。
施密特正交化(Schmidt orthogonalization)是求欧氏空间正交基的一种方法,通过施密特正交化对泡利校验矩阵进行初等行变换,将泡利校验矩阵的行向量按照特定的方式转换为另一组相互正交的向量,在变换过程中,可以消去泡利校验矩阵中与稳定子生成元互相线性相关的行向量,即对于当前得到的所有稳定子生成元张成的子空间,若泡利校验矩阵中存在行向量位于该子空间,则将该行向量消去。相应地,对系数集合中的系数进行更新,以保持原本与行向量的对应关系。
可选地,若基于施密特正交化对所述泡利校验矩阵进行变换,所述基于施密特正交化对所述泡利校验矩阵进行变换,以消去所述泡利校验矩阵中与所述稳定子生成元线性相关的行向量,并相应更新所述系数集合,包括:
基于如下公式对所述泡利校验矩阵进行变换以及对所述系数集合进行更新,以消去所述泡利校验矩阵中与所述稳定子生成元线性相关的行向量:
其中,表示已得到的稳定子生成元;/> 表示泡利校验矩阵中的行向量对应的泡利项;/> 和/>分别表示/>Pj和Pk中第r个泡利矩阵;/>为基于泡利校验矩阵中的行向量对应的泡利项Pi original得到稳定子生成元/> 的系数,ci为Pi original的系数。Pi original即/>公式中的Pi。
通过上述方式就可以实现对于泡利校验矩阵的变换,并同时对系数进行更新,需要说明的是,更新的系数包含对应于Pj的原系数cj、选择时的正负性l、以及相乘时可能带来的系数,例如σx×σy=iσz,会生成一个系数i。
高斯消元法和施密特正交化变换前后的向量组等价,在其它可能的实施方式中,也可以采取类似的等价变换方式,对此本公开不做具体限制。
步骤S1043执行完成后,根据得到的稳定子生成元的数量决定进入执行步骤S1044或步骤S1045。
在步骤S1044中,判断稳定子生成元数量与目标分子的量子比特数量n的大小关系,以及判断泡利校验矩阵和对应系数集合中的元素情况,若稳定子生成元数量小于n,且泡利校验矩阵和对应系数集合仍有元素时,则还无法根据得到的所有稳定子生成元确定基态能量,此时可以返回步骤S1041,进入下一次迭代过程,重新执行步骤S1041及后续相关步骤。需要说明的是,泡利校验矩阵可视为校验行向量的集合,故泡利校验矩阵中的元素为校验行向量。
在步骤S1045中,随着相关步骤的多次迭代执行,稳定子生成元的数量逐渐增加,泡利校验矩阵和对应系数集合中的元素逐渐减少,当稳定子生成元的数量达到量子比特数量n,或者泡利校验矩阵和对应系数集合为空集时,将得到的所有稳定子生成元作为对应于目标分子基态的稳定子,以进入执行步骤S105。稳定子是对基态描述的一种方式,因此得到稳定子相当于得到了目标分子的基态。
可选地,在步骤S105中,基于所述稳定子计算所述目标分子的基态能量,包括:
基于如下公式计算所述目标分子的基态能量:
其中,E为所述基态能量,c0是所述目标哈密顿量中仅由恒等算符构成的项的系数,为第k个稳定子生成元被选中时的实时系数。/>
具体来讲,可以在每次得到稳定子生成元时,记录稳定子生成元对应的系数,当得到所有n个稳定子生成元后,计算所有系数的绝对值之和,然后再用目标哈密顿量中仅由恒等算符构成的项的系数减去该绝对值之和,即可得到基态能量。由于得到的稳定子对应的稳定子态很接近真实基态,该基态能量也接近真实基态能量,准确度较高。
化学体系中有电子云,电子云的分布影响分子体系性质,通过上述分子基态的电子结构计算方法求解电子云分布,这个过程就是电子结构计算,其包括对于基态以及基态能量的计算,求解出的稳定子为电子轨道分布情况,可视为对于基态的一种描述方式,求出的能量为电子带来的电势能。
通过上述技术方案,在获取目标分子的由二次量子化形式表示的分子哈密顿量后,将分子哈密顿量中的产生算符和湮灭算符转化为由泡利项表示,得到对应于分子哈密顿量的目标哈密顿量,便于后续通过目标哈密顿量的泡利校验矩阵和系数集合计算目标分子基态的稳定子,以得到通过稳定子描述的基态,进而根据稳定子计算目标分子的基态能量,最终基于二次量子化形式下的哈密顿量实现对于分子基态的电子结构计算,此外由于稳定子对应的稳定子态构成的空间相对于原本分子的多量子比特态构成的希尔伯特空间较小,可以提高近似基态的搜索速度,进而提高分子基态电子结构的计算效率。
相关技术中,利用某些方法如变分量子本征求解器(VQE)算法求解基态时,常常会遇到所谓局部最小(local minimum)和贫瘠高原(barren plateau)问题。而本公开的技术方案直接从哈密顿量出发去寻找稳定子生成元,可以完全避免变分电路中的贫瘠高原困境,并在很大程度上缓解其局部最小问题。并且由于利用了泡利算符的量子编码来进行运算,算法较为高效。
以下以氢分子为例说明本公开的分子基态的电子结构计算过程,并将其与HF(Hartree-Fock)近似进行比较。
从头算(ab initio)方法是量子化学中的一种重要算法。从头算方法的基石是Hartree-Fock(HF)近似。HF近似的核心思想是将多体问题分离成多个单体问题。就分子体系而言,就是把多个电子的耦合行为用单个电子在其他电子(以及原子核)形成的平均场背景中的行为来近似。这就是Hartree近似。进一步考虑到电子是费米子,两两交换必须反对易,就会得到Hartree-Fock近似。在具体实施过程中,每个电子感受到的平均场依赖于它自己与其它电子的相对位置,所以我们必须先对所有电子预设一个初始波函数。利用初始波函数计算出每个电子感受到的平均场,进而求解其单体薛定谔方程,得到改进的波函数。如此循环下去,直到整个体系的观测量收敛到恒定值。简而言之,我们需要用迭代的方式,自洽地进行计算。因而HF计算也被称为自洽场方法。
因为HF近似本质上是一种单体计算,电子和电子之间的关联被完全忽略了。用量子信息的语言来说,HF态是一种电子直积态,电子之间完全不存在量子纠缠。正因如此,HF近似往往只在体系由一个电子直积态主导的时候效果较好,例如简单分子处在基态的稳定构型附近时。而当多个电子直积态对体系的贡献相近时,HF近似的效果会变得很差。这在化学反应或者分子解离过程中表现地极为明显,例如参见图2所示的水分子解离过程,图2中的横坐标和纵坐标分别表示原子间距和基态能量。图2中自洽场SCF表示HF近似,曲线SCF表示HF近似算法求解的不同原子间距的分子基态能量,而完全组态相互作用FCI可视为严格求解,曲线FCI表示严格解下不同原子间距对应的分子基态能量。在平衡构型附近,HF计算的近似程度还算不错;而当分子逐渐远离平衡构型时,近似程度越来越差。
此外,对于在不同位置处对基态波函数有贡献的电子组态数,在平衡构型附近,单个电子组态主导着基态波函数;而随着分子远离平衡构型,越来越多的电子组态在基态中会有贡献,并且这些电子组态的贡献是很接近的。人们把这种由近乎简并的电子构型诱导的电子关联被称为静态关联。如何刻画静态关联是量子化学中的一大难题。尽管人们将HF自洽场计算推广到了多组态自洽场计算,但仍收效甚微。
以氢分子为例,举例说明本公开的分子基态的电子结构计算方法的计算过程,先考虑平衡构型附近,比如氢原子间距为选择JW变换,得到目标哈密顿量为:
这里表示作用在自旋向上轨道上的Pauli门,而I,X,Y,Z表示作用在自旋向下轨道上的Pauli门。利用本公开分子基态的电子结构计算方法的一般步骤,很容易找出稳定子生成元的集合也即稳定子:
进一步根据公式可计算出相应的能量。注意/>为每个稳定子生成元被选中时的实时系数,并非原始系数。此时的稳定子态为|01;01>,是一种HF/直积态。所以此处的解与HF近似的解相同。换句话说,本公开的分子基态的电子结构计算方法涵盖了HF近似。
当分子远离平衡构型,例如在原子间距时,分子哈密顿量为:
再次调用本公开的分子基态的电子结构计算方法,可得稳定子生成元集:
以及相应的能量。此时稳定子态为:
这是四比特Greenberger-Horne-Zeilinger(GHZ)态的一种变种,是一种典型的纠缠态。这当然超出了HF/直积态的范畴,所以本公开的方法确切无疑地推广了HF近似。
在不同原子间距处调用上述分子基态的电子结构计算方法,可以得到氢气分子的解离曲线如图3,从图3中可以看出,因为引入了量子纠缠,本公开方法大大改善了HF近似在远离平衡构型时的性能。当原子间距超过后,本公开方法的稳定子解迅速地趋向严格解,具有显著的进步。
参见图4,很容易将以上计算推广到更复杂的情况,比如前面提到的水分子的解离,跟氢气分子的情况类似,本公开的分子基态的电子结构计算方法得到的结果同样很快地趋向于严格解。事实上,对更大体系例如苯分子的计算也给出了非常类似的结果。图3和图4中,其横坐标分别表示氢原子之间的间距以及氢原子和氧原子间距,曲线HF表示HF近似算法求解的不同原子间距的分子基态能量,曲线FCI表示严格解下不同原子间距对应的分子基态能量,曲线stabilizer表示本公开的分子基态的电子结构计算方法求解的不同原子间距的分子基态能量。
结合费米子到量子比特的变换,本公开的方法可以用于求解分子的近似基态,并可视为HF近似的一种特殊的多组态推广。稳定子态作为一种等几率叠加态,可以很好地描述近乎简并的电子组态,从而很自然地刻画静态关联。进一步以稳定子态为初始/参考态发展各种变分/微扰方法,有望将动态关联也合理纳入进来,从而得到一种有效的高精度计算方案。
图5是根据一示例性实施例示出的一种分子基态的电子结构计算装置的框图,参见图5,该装置500包括:
第一获取模块510,用于获取目标分子的由二次量子化形式表示的分子哈密顿量;
转化模块520,用于将所述分子哈密顿量中的产生算符和湮灭算符转化为由泡利项表示,得到目标哈密顿量;
第二获取模块530,用于获取所述目标哈密顿量的泡利校验矩阵和系数集合,所述泡利校验矩阵的行向量用于表征所述目标哈密顿量的所述泡利项;
稳定子计算模块540,用于基于所述泡利校验矩阵和所述系数集合计算对应于所述目标分子的基态的稳定子,以得到所述目标分子的基态;
能量计算模块550,用于基于所述稳定子计算所述目标分子的基态能量。
可选地,所述转化模块520还用于:
基于如下Jordan-Wigner变换将所述分子哈密顿量中的产生算符和湮灭算符转化为由泡利项表示:
其中,和aj分别表示分子哈密顿量中第j自旋轨道的产生算符和湮灭算符,X、Y和Z分别表示σx泡利算符、σy泡利算符和σz泡利算符。
可选地,所述转化模块520还用于:
基于如下Parity变换将所述分子哈密顿量中的产生算符和湮灭算符转化为由泡利项表示:
其中,表示更新算子,/>和aj分别表示分子哈密顿量中第j自旋轨道的产生算符和湮灭算符,X、Y和Z分别表示σx泡利算符、σy泡利算符和σz泡利算符。
可选地,所述转化模块520还用于:
基于如下Bravyi-Kitaev变换将所述分子哈密顿量中的产生算符和湮灭算符转化为由泡利项表示:
其中,U(j)为更新集,表示第j轨道占据数fj发生改变时,会相应改变的j以外的所有量子比特,P(j)为宇称集,为决定第0轨道至第j-1轨道总宇称pj-1的所有量子比特的集合,R(j)=P(j)\F(j),为翻转集F(j)在P(j)中的补集,翻转集F(j)是决定第j轨道占据数fj与相应BK值bj是否一致的所有量子比特的集合,和aj分别表示分子哈密顿量中第j自旋轨道的产生算符和湮灭算符,X、Y和Z分别表示σx泡利算符、σy泡利算符和σz泡利算符。
可选地,所述稳定子计算模块540还用于:
从所述系数集合中选出绝对值最大的目标系数,并从所述泡利校验矩阵中选出对应所述目标系数的目标行向量;
在所述目标系数为正数时,将所述目标行向量取反后作为稳定子生成元,在所述目标系数为负数时,直接将所述目标行向量作为稳定子生成元;
更新所述泡利校验矩阵,以使得更新后的所述泡利校验矩阵中的行向量均与所述稳定子生成元满足对易关系且互相线性无关,并相应更新所述系数集合;
在得到的所述稳定子生成元数量小于所述目标分子的量子比特数量,且泡利校验矩阵和对应系数集合仍有元素时,返回执行所述从所述系数集合中选出绝对值最大的目标系数,并从所述泡利校验矩阵中选出对应所述目标系数的目标行向量的步骤;
在得到的所述稳定子生成元数量等于所述目标分子的量子比特数量,或泡利校验矩阵和对应系数集合为空集时,将得到的所有所述稳定子生成元作为对应于所述目标分子的基态的稳定子。
可选地,所述稳定子计算模块540还用于:
从所述泡利校验矩阵中删除每一个与所述稳定子生成元不对易的行向量,并从所述系数集合中删除与该行向量对应的系数;
基于高斯消元法或施密特正交化对所述泡利校验矩阵进行变换,以消去所述泡利校验矩阵中与所述稳定子生成元线性相关的行向量,并相应更新所述系数集合。
可选地,所述分子哈密顿量基于如下公式表示:
其中,H为分子哈密顿量,为第p自旋轨道的产生算符,/>为第q自旋轨道的产生算符,/>为第r自旋轨道的湮灭算符,/>为第s自旋轨道的湮灭算符,/>为第q自旋轨道的湮灭算符,hpq为电子从第q自旋轨道跃迁到第p自旋轨道的动能和原子核势能增减总和,hpqrs为两个电子分别从第r和第s自旋轨道跃迁到第q和第p自旋轨道的电子之间相互作用势能的变化,hnuc为原子核之间的相互作用能量。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图6是根据一示例性实施例示出的一种电子设备的框图。如图6所示,该电子设备700可以包括:处理器701,存储器702。该电子设备700还可以包括多媒体组件703,输入/输出(I/O)接口704,以及通信组件705中的一者或多者。
其中,处理器701用于控制该电子设备700的整体操作,以完成上述的分子基态的电子结构计算方法中的全部或部分步骤。存储器702用于存储各种类型的数据以支持在该电子设备700的操作,这些数据例如可以包括用于在该电子设备700上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器702可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件703可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器702或通过通信组件705发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口704为处理器701和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件705用于该电子设备700与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near FieldCommunication,简称NFC),2G、3G、4G、NB-IOT、eMTC、或其他5G等等,或它们中的一种或几种的组合,在此不做限定。因此相应的该通信组件705可以包括:Wi-Fi模块,蓝牙模块,NFC模块等等。
在一示例性实施例中,电子设备700可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的分子基态的电子结构计算方法。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的分子基态的电子结构计算方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器702,上述程序指令可由电子设备700的处理器701执行以完成上述的分子基态的电子结构计算方法。
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。
此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。