发明内容
基于现有设计的不足,需要对现有的量子算法的量子连通图谱,例如量子连通图谱中存在的交叉连线,再进行进一步改良。本申请提供一种量子连通图的交叉连线处理方法、装置、终端及存储介质,通过优化消除交叉连线,使得不包含交叉连线的目标量子连通图谱在二维结构的量子芯片上实现时,可以有效缩短量子算法的深度,进而提高量子算法的执行效果。
根据本申请的第一方面,提供一种量子连通图的交叉连线处理方法,应用于计算机终端,所述方法包括:
获取目标量子算法的量子连通图谱,所述量子连通图谱包括多个图谱节点以及两个图谱节点之间的连线,其中,所述图谱节点用于表示所述目标量子算法中的逻辑比特,所述连线用于表示两个所述逻辑比特之间的量子比特逻辑门;
判断所述量子连通图谱中是否存在交叉连线;
当所述量子连通图谱存在交叉连线时,确定所述量子连通图谱中的中介节点,并保留所述中介节点与其它图谱节点之间的连线,以获得不包含交叉连线的目标量子连通图谱。
在第一方面的一种可能的实施方式中,所述确定所述量子连通图谱中的中介节点,并保留所述中介节点与其它图谱节点之间的连线,以获得不包含交叉连线的目标量子连通图谱的步骤,包括:
计算所述量子连通图谱中各个图谱节点的节点价值参数,并根据所述量子连通图谱中各个图谱节点的节点价值参数,从所述各个图谱节点中确定中介节点,其中,所述节点价值参数用于表征所述图谱节点在所述量子连通图谱中参与量子算法的价值程度;
保留所述中介节点与其它图谱节点之间的连线,以获得不包含交叉连线的目标量子连通图谱。
在第一方面的一种可能的实施方式中,所述计算所述量子连通图谱中各个图谱节点的节点价值参数,并根据所述量子连通图谱中各个图谱节点的节点价值参数,从所述各个图谱节点中确定中介节点的步骤,包括:
计算所述量子连通图谱中各个图谱节点的连通度、总重量以及重量分散度中的至少一种,作为所述节点价值参数;其中,所述连通度用于表示所述图谱节点连接的连线数量,所述总重量用于表示所述图谱节点连接的所有连线的连线量化值之和,所述重量分散度用于表示所述图谱节点连接的所有连线的连线量化值的方差,所述连线的连线量化值用于表示两个所述量子比特之间的施加的量子比特逻辑门的次数;
根据所述节点价值参数,从所述各个图谱节点中确定中介节点。
在第一方面的一种可能的实施方式中,所述节点价值参数包括第一参数,所述根据所述节点价值参数,从所述各个图谱节点中确定中介节点的步骤,包括:
将所述连通度、总重量以及重量分散度中的其中一种作为所述第一参数,并选择所述第一参数最大的图谱节点作为所述中介节点。
在第一方面的一种可能的实施方式中,所述节点价值参数还包括第二参数,所述根据所述节点价值参数,从所述各个图谱节点中确定中介节点的步骤,还包括:
当存在所述第一参数相同且最大的第一目标图谱节点时,计算每个第一目标图谱节点的连通度、总重量以及重量分散度中除所述第一参数之外的另一参数,作为所述第二参数;
在各个第一目标图谱节点中,选择所述第二参数最大的图谱节点作为所述中介节点。
在第一方面的一种可能的实施方式中,所述节点价值参数还包括第三参数,所述根据所述节点价值参数,从所述各个图谱节点中确定中介节点的步骤,还包括:
当存在所述第一参数相同且最大,同时所述第二参数相同且最大的第二目标图谱节点时,计算每个第二目标图谱节点的连通度、总重量以及重量分散度中除所述第一参数和所述第二参数之外的剩余一参数,作为所述第三参数;
在各个第二目标图谱节点中,选择所述第三参数最大的图谱节点作为所述中介节点。
在第一方面的一种可能的实施方式中,所述确定所述量子连通图谱中的中介节点的步骤,包括:
计算所述量子连通图谱中各个图谱节点的连通度、总重量以及重量分散度中的至少两种参数,作为组合节点价值参数;其中,所述连通度用于表示所述图谱节点连接的连线数量,所述总重量用于表示所述图谱节点连接的所有连线的连线量化值之和,所述重量分散度用于表示所述图谱节点连接的所有连线的连线量化值的方差,所述连线的连线量化值用于表示两个所述量子比特之间的施加的量子比特逻辑门的次数;
获取预先配置的所述组合节点价值参数中每个成员节点价值参数的价值权重;
分别计算各个图谱节点的每个成员节点价值参数与所述成员节点价值参数的价值权重的加权值;
基于每个成员节点价值参数对应的加权值计算所述各个图谱节点的总加权值;
根据所述各个图谱节点的总加权值,选择总加权值最大的图谱节点作为所述中介节点。
在第一方面的一种可能的实施方式中,所述保留所述中介节点与其它图谱节点之间的连线,以获得不包含交叉连线的目标量子连通图谱的步骤,包括:
保留所述中介节点与其它图谱节点之间的连线,并将除所述中介节点之外的其它图谱节点之间的目标连线删除,以获得不包含交叉连线的目标量子连通图谱;
其中,所述目标连线为所述其它图谱节点之间的所有连线,或者所述其它图谱节点之间除所述量子连通图谱的外围连线之外的剩余连线。
根据本申请的第二方面,提供一种量子连通图的交叉连线处理装置,应用于计算机终端,所述装置包括:
获取模块,用于获取目标量子算法的量子连通图谱,所述量子连通图谱包括多个图谱节点以及任意两个图谱节点之间的连线,其中,所述图谱节点用于表示所述目标量子算法中的逻辑比特,所述连线用于表示任意两个所述量子比特之间的量子比特逻辑门;
判断模块,用于判断所述量子连通图谱中是否存在交叉连线;
交叉处理模块,用于当所述量子连通图谱存在交叉连线时,确定所述量子连通图谱中的中介节点,并保留所述中介节点与其它图谱节点之间的连线,以获得不包含交叉连线的目标量子连通图谱。
根据本申请的第三方面,提供一种计算机终端,包括机器可读存储介质和处理器,所述机器可读存储介质中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行第一方面中任意一种可能的实施方式中所述的量子连通图的交叉连线处理方法。
根据本申请的第四方面,提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,当所述计算机程序被计算机执行时,实现第一方面中任意一种可能的实施方式中所述的量子连通图的交叉连线处理方法。
基于上述任一方面,本申请通过优化消除交叉连线,使得不包含交叉连线的目标量子连通图谱在二维结构的量子芯片上实现时,可以有效缩短量子算法的深度,并且在实现过程中可以减少施加交换门的次数,进而提高量子算法的执行效果。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,应当理解,本申请中附图仅起到说明和描述的目的,并不用于限定本申请的保护范围。另外,应当理解,示意性的附图并未按实物比例绘制。本申请中使用的流程图示出了根据本申请实施例的一些实施例实现的操作。
应该理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本申请内容的指引下,可以向流程图添加一个或多个其它操作,也可以从流程图中移除一个或多个操作。
基于前述背景技术所获知的技术问题可知,当量子算法编译到量子芯片上时,可能会出现多个量子比特之间的耦合(即量子比特逻辑门)交叉的情况,导致量子算法的深度较高,在二维结构的量子芯片上的执行效果不佳。
例如,请参阅图1所示,示出了一种量子算法的量子连通图谱的示意图,所述量子连通图谱可以包括多个图谱节点以及两个图谱节点之间的连线。其中,图谱节点可以用于表示目标量子算法中的逻辑比特,连线可以用于表示两个量子比特之间的量子比特逻辑门。可以看出,在该量子连通图谱中,图谱节点1、图谱节点2、图谱节点3、图谱节点4、图谱节点5以及图谱节点6之间存在诸多连线之间的交叉。
发明人研究发现,现阶段能够生产出来的量子芯片都属于带噪声的中小规模芯片,过短的量子态寿命与极高的错误率使得大规模长深度运算在现有技术条件下无法完成。又由于量子纠错算法(QEC)所需比特数太多,在短期内实现的几率很小,所以目前量子计算只能专注小规模无纠错领域。为了提高计算结果正确率,需要尽可能降低量子算法的深度。
然而,相关技术中的量子芯片通常属于二维结构,而量子比特之间的耦合通常是通过具体的耦合结构(例如电容、电感、谐振腔等)实现的,因此两个耦合结构在实际实现时是无法交叉的。
为了改善上述问题,发明人在进一步的研究过程中发现,目前常规的方法,是通过施加交换门来改变量子比特之间的映射关系。例如,请参阅图2所示,图2a是量子算法对应的量子线路图,q1、q2、q3、q4分别代表4个逻辑比特,逻辑比特之间的连线代表需要施加量子逻辑门的两个逻辑比特;图2b是量子芯片的二维点阵结构,Q1、Q2、Q3、Q4代表量子比特,量子比特之间的连线代表具体的耦合结构。在执行量子程序时,量子算法中的逻辑比特数目nq和量子芯片的比特数nQ之间必须服从nq≤nQ,每一个逻辑比特都映射到一个量子比特上。两个逻辑比特只有被映射到两个直接连接的量子比特上时,才能执行两比特门操作。否则,只能使用交换门,让原本映射到两个不直接连接的量子比特上的两个逻辑比特重新映射到两个直接连接的量子比特上。
示例性地,结合图2b中Q1、Q2、Q3、Q4之间的依次连线,图2a中的q1和q4之间可以直接施加量子比特逻辑门,在q1和q3之间施加量子比特逻辑门时需要施加交换门操作,例如将q1和q2的位置交换,进而施加量子比特逻辑门;再例如,q2和q4之间也是无法进行量子比特逻辑门操作的,同样需要施加一个交换门。需要说明的是,交换门的施加都是成对出现的,即通过施加一个交换门将q1和q2的位置叫唤并施加了相应的量子比特逻辑门之后,还需要再施加一个交换门将q1和q2的位置恢复。因此引入交换门来改善量子连通图的交叉连线带来的问题时,会导致算法深度的增加,当交换门次数较多的时候,会明显延长算法运行时间,仍然无法达到较好的算法执行效果。
所应说明的是,图2b中仅列举出了包括4个量子比特的量子芯片的二维点阵结构,当量子比特数量较多的时候,在量子算法中需要施加的交换门的数量也会大大增加,从而极大增加了量子算法的复杂度,在后续量子芯片运行量子算法时计算结果的保真度也难以保证。以上现有技术中的方案所存在的缺陷,均是发明人在经过实践并仔细研究后得出的结果,因此,上述技术问题的发现过程以及下文中本申请实施例针对上述问题所提出的解决方案,都应该是发明人在发明创造过程中对本申请做出的贡献,而不应当理解为本领域技术人员所公知的技术内容。
基于发明人发现的上述技术问题,本申请实施例提供一种改进的量子连通图的交叉连线处理方法、装置、终端及存储介质,旨在对常规量子算法的量子连通图谱中存在的交叉连线进行进一步改良。当量子连通图谱存在交叉连线时,通过确定量子连通图谱中的中介节点,并保留中介节点与其它图谱节点之间的连线,以获得不包含交叉连线的目标量子连通图谱。如此,通过优化消除交叉连线,使得不包含交叉连线的目标量子连通图谱在二维结构的量子芯片上实现时,可以有效缩短量子算法的深度,并且在实现过程中可以减少施加交换门的次数,进而提高量子算法的执行效果。
下面结合说明书附图详细介绍上述量子连通图的交叉连线处理方法的一些示例性的实现方案。
请参阅图3,示出了本申请实施例提供的量子连通图的交叉连线处理方法的交互流程示意图,应当理解,在其它实施例中,本实施例的量子连通图的交叉连线处理方法其中部分步骤的顺序可以根据实际需要相互交换,或者其中的部分步骤也可以省略或删除。该量子连通图的交叉连线处理方法的详细步骤介绍如下。
步骤S110,获取目标量子算法的量子连通图谱。
本实施例中,量子连通图谱可以包括多个图谱节点以及两个图谱节点之间的连线,图谱节点可以用于表示目标量子算法中的逻辑比特,连线用于表示两个逻辑比特之间的量子比特逻辑门。
其中,该量子连通图谱可以基于该目标量子算法中的逻辑比特以及任意两个量子比特上施加的量子比特逻辑门的次数获得。其中,量子比特可以是指一种可以同时处于基态|0>、激发态|1>以及叠加态(α|0>+β|1>)的的物理体系。在数学上,量子比特可以由希尔伯特空间上的态矢量表示。量子线路是通过同时操纵若干个量子比特实现的。
量子线路是量子程序的一种表示形式,可以由一连串初始位于|0>态的量子比特以及后续的若干个量子逻辑门组成,由测量操作作为结尾(不一定每个比特都需要被测量)。通常,每个量子程序可以最终被分解为只由基本量子逻辑门序列构成的量子程序。此外,量子比特逻辑门可以是指一些可逆的幺正变换,可以用于操纵若干个量子比特,让这些量子比特向目标态演化,演化最终态即为量子计算的结果。
步骤S120,判断量子连通图谱中是否存在交叉连线。
例如,在一些可能的示例中,可以检测量子连通图谱是否为可平面图谱,即检测量子连通图谱中的各个连线之间是否存在交叉点。即当存在任意两个连线之间存在交叉点时,则可判定量子连通图谱中存在交叉连线;当所有连线之间均不存在任何交叉点时,则可判定量子连通图谱中不存在交叉连线。
步骤S130,当量子连通图谱存在交叉连线时,确定量子连通图谱中的中介节点,并保留中介节点与其它图谱节点之间的连线,以获得不包含交叉连线的目标量子连通图谱。
当量子连通图谱不是可平面图谱的时候,表示量子连通图谱存在交叉连线,即对应的量子芯片结构中需要实现交叉耦合的情况,而实际的量子芯片结构是二维点阵结构,是无法实现量子比特之间的交叉耦合对应的具体结构。相关技术中针对该交叉连线并没有采取优化处理,即在后续通过量子芯片来运行量子算法的过程中并没有改变量子芯片的二维点阵结构,而是通过施加交换门的方式来改变量子比特之间的映射关系,这样一来当施加的交换门过多时会提高算法深度,并且增加算法运行时间。
而在本实施例中,当量子连通图谱存在交叉连线时,通过确定量子连通图谱中的中介节点,并保留中介节点与其它图谱节点之间的连线,以获得不包含交叉连线的目标量子连通图谱。
例如,在一些可能的示例中,在确定量子连通图谱中的中介节点的过程中,中介节点可以表示该量子连通图谱中优先级最高的中介节点,由此可以选择该量子连通图谱中优先级最高的图谱节点作为中介节点,该优先级的计算方式可以结合图谱节点在该量子连通图谱中的节点价值进行确定。
又例如,在保留中介节点与其它图谱节点之间的连线的过程中,可以选择删除掉中介点之外的其它图谱节点之间的连线,具体可以删除其它图谱节点之间的所有连线,或者仅删除其它图谱节点之间的交叉连线。
如此,通过优化消除交叉连线,使得不包含交叉连线的目标量子连通图谱在二维结构的量子芯片上实现时,可以有效缩短量子算法的深度,并且在实现过程中可以减少施加交换门的次数,进而提高量子算法的执行效果。
在一种可能的实施方式中,在获取目标量子算法的量子连通图谱的过程中,可以获得该量子算法中的逻辑比特以及任意两个量子比特上施加的量子比特逻辑门的次数,然后,基于任意两个量子比特上施加的量子比特逻辑门的次数可以获得反映逻辑比特相互作用关系的邻接矩阵,邻接矩阵可以表示任意两个量子比特上施加的量子比特逻辑门的次数,从而将邻接矩阵转换为量子连通图谱。
可以理解,在其它可能的实施方式中,目标量子算法的量子连通图谱也可以采用其它任意可行的方式获得,例如还可以直接获取到反映逻辑比特相互作用关系的邻接矩阵来确定量子连通图谱。
在一种可能的实施方式中,发明人在研究过程中发现,考虑到量子连通图谱中的每个图谱节点的重要性不一样,在优化交叉连线的过程中,需要尽可能避免改动该量子连通图谱中重要性高的图谱节点,否则后续可能会引入过多的交换操作。基于此,针对步骤S130,可以通过以下示例性的子步骤来实现,详细描述如下。
子步骤S131,计算量子连通图谱中各个图谱节点的节点价值参数,并根据量子连通图谱中各个图谱节点的节点价值参数,从各个图谱节点中确定中介节点。
子步骤S132,保留中介节点与其它图谱节点之间的连线,以获得不包含交叉连线的目标量子连通图谱。
本实施例中,节点价值参数具体可以用于表征图谱节点在量子连通图谱中参与量子算法的价值程度,节点价值参数越大,对应的该图谱节点在量子算法中的优先级越高。在具体实施过程中,可以选择计算每个图谱节点在量子连通图谱中的任意可以表征该图谱节点的价值程度的参数作为节点价值参数。例如,节点价值参数可以包括但不限于连通度、总重量、重量分散度等。
这样,通过基于量子连通图谱中各个图谱节点的节点价值参数来选择中介节点,可以使得选择的中介节点为在该量子连通图谱中相对价值程度较高的图谱节点,从而可以选择保留中介节点与其它图谱节点之间的连线,避免后续可能引入过多的交换操作的情况。
值得说明的是,对于本领域技术人员而言,可以理解上述的节点价值参数并不作具体的限制,可以基于实际的设计需求进行灵活选择。
例如,本申请实施例接下来将给出一些可能的示例,对子步骤S131中如何基于节点价值参数确定中介节点的实施方式进行示例性说明。应当理解,在接下来的描述中仅为示例,不应当理解为对于上述的节点价值参数的限制性说明,本领域技术人员可以在此基础上结合实际需求,选择以下示例之外的节点价值参数,均在本申请的保护范围之内。
例如,针对子步骤S131,首先可以计算量子连通图谱中各个图谱节点的连通度、总重量以及重量分散度中的至少一种,作为节点价值参数。
其中,值得说明的是,连通度可以用于表示图谱节点连接的连线数量,总重量可以用于表示图谱节点连接的所有连线的连线量化值之和,重量分散度可以用于表示图谱节点连接的所有连线的连线量化值的方差。
例如,请参阅图1所示,以图谱节点6为例,图谱节点6连接的连线分别包括与图谱节点1、图谱节点2、图谱节点3、图谱节点4、图谱节点5之间的连线,共有5条,即图谱节点6的连通度为5。
本实施例中,上述连线的连线量化值可以用于表示两个量子比特之间的施加的量子比特逻辑门的次数,在图1中所示的量子连通图谱中,可以理解为两个图谱节点之间的连线的粗细程度。那么仍旧以图谱节点6为例,图谱节点6的总重量可以用于表示图谱节点6与图谱节点1、图谱节点2、图谱节点3、图谱节点4、图谱节点5之间的连线量化值之和,图谱节点6的重量分散度可以用于表示图谱节点6与图谱节点1、图谱节点2、图谱节点3、图谱节点4、图谱节点5之间的连线量化值的方差。
在此描述的基础上,关于其它图谱节点2、图谱节点3、图谱节点4、图谱节点5的连通度、总重量以及重量分散度的计算方式,可以参照上述对于图谱节点6的描述即可,此处不再一一赘述。
在选择连通度、总重量以及重量分散度中的至少一种确定为价值参数之后,即可根据节点价值参数,从各个图谱节点中确定中介节点。
例如,在一种可能的实施方式中,节点价值参数可以仅包括第一参数,那么在根据节点价值参数,从各个图谱节点中确定中介节点的过程中,可以将连通度、总重量以及重量分散度中的其中一种作为第一参数,并选择第一参数最大的图谱节点作为中介节点。
比如,假设选择连通度作为第一参数,那么则可以选择连通度最大的图谱节点作为中介节点。又比如,假设选择总重量作为第一参数,那么则可以选择总重量最大的图谱节点作为中介节点。再比如,假设选择重量分散度作为第一参数,那么则可以选择重量分散度最大的图谱节点作为中介节点。
在上述描述的基础上,发明人在研究过程中发现,在某些特定的情况下可能会存在多个第一参数相同且最大的第一目标图谱节点的情形,在这一基础上需要进一步结合第二参数来筛选中介节点。
例如,在一种可能的实施方式中,节点价值参数还可以包括第二参数。当存在第一参数相同且最大的第一目标图谱节点时,可以计算每个第一目标图谱节点的连通度、总重量以及重量分散度中除第一参数之外的另一参数,作为第二参数,从而可以在各个第一目标图谱节点中,选择第二参数最大的图谱节点作为中介节点。
比如,假设在前述实施例中,选择连通度作为第一参数,那么则可以计算每个第一目标图谱节点的总重量和重量分散度中的一个参数,作为第二参数,然后在各个第一目标图谱节点中,选择第二参数最大的图谱节点作为中介节点。如将每个第一目标图谱节点的总重量作为第二参数,可以在各个第一目标图谱节点中,选择总重量最大的图谱节点作为中介节点,或者如将每个第一目标图谱节点的重量分散度作为第二参数,可以在各个第一目标图谱节点中,选择重量分散度最大的图谱节点作为中介节点。
又比如,假设选择总重量作为第一参数,那么则可以计算每个第一目标图谱节点的连通度和重量分散度中的一个参数,作为第二参数,然后在各个第一目标图谱节点中,选择第二参数最大的图谱节点作为中介节点。如将每个第一目标图谱节点的连通度作为第二参数,可以在各个第一目标图谱节点中,选择连通度最大的图谱节点作为中介节点,或者如将每个第一目标图谱节点的重量分散度作为第二参数,可以在各个第一目标图谱节点中,选择重量分散度最大的图谱节点作为中介节点。
再比如,假设选择重量分散度作为第一参数,那么则可以计算每个第一目标图谱节点的连通度和总重量中的一个参数,作为第二参数,然后在各个第一目标图谱节点中,选择第二参数最大的图谱节点作为中介节点。如将每个第一目标图谱节点的连通度作为第二参数,可以在各个第一目标图谱节点中,选择连通度最大的图谱节点作为中介节点,或者如将每个第一目标图谱节点的总重量作为第二参数,可以在各个第一目标图谱节点中,选择总重量最大的图谱节点作为中介节点。
进一步地,发明人在研究过程中还发现,在又一特定的情况下也可能会存在多个第一参数相同且最大,同时第二参数相同且最大的第二目标图谱节点的情形,在这一基础上需要进一步结合第三参数来筛选中介节点。
例如,在一种可能的实施方式中,节点价值参数还可以包括第三参数。当存在第一参数相同且最大,同时第二参数相同且最大的第二目标图谱节点时,可以计算每个第二目标图谱节点的连通度、总重量以及重量分散度中除第一参数和第二参数之外的剩余一个参数,作为第三参数,从而可以在各个第二目标图谱节点中,选择第三参数最大的图谱节点作为中介节点。
比如,假设在前述实施例中,选择连通度作为第一参数、总重量作为第二参数,那么则可以计算每个第二目标图谱节点的重量分散度,作为第三参数,然后在各个第二目标图谱节点中,选择重量分散度最大的图谱节点作为中介节点。或者,选择连通度作为第一参数、重量分散度作为第二参数,那么则可以计算每个第二目标图谱节点的总重量,作为第三参数,然后在各个第二目标图谱节点中,选择总重量最大的图谱节点作为中介节点。
又比如,假设选择总重量作为第一参数、连通度作为第二参数,那么则可以计算每个第二目标图谱节点的重量分散度,作为第三参数,然后在各个第二目标图谱节点中,选择重量分散度最大的图谱节点作为中介节点。或者,选择总重量作为第一参数、重量分散度作为第二参数,那么则可以计算每个第二目标图谱节点的连通度,作为第三参数,然后在各个第二目标图谱节点中,选择连通度最大的图谱节点作为中介节点。
再比如,假设选择重量分散度作为第一参数、总重量作为第二参数,那么则可以计算每个第二目标图谱节点的连通度,作为第三参数,然后在各个第二目标图谱节点中,选择连通度最大的图谱节点作为中介节点。或者,选择重量分散度作为第一参数、连通度作为第二参数,那么则可以计算每个第二目标图谱节点的总重量,作为第三参数,然后在各个第二目标图谱节点中,选择总重量最大的图谱节点作为中介节点。
基于上述示例,通过选择连通度、总重量和分散度作为节点价值参数,从而衡量图谱节点在量子算法中的优先级,使得在进行中介节点选择时,可以选择对应的优先级最高的图谱节点作为中介节点,在后续优化过程中避免对中介节点进行改动,避免施加过多的交换门操作而导致的量子线路深度的增加和量子算法运行时间的延长。
此外,在另一种可能的实施方式中,接下来给出另一种示例来确定量子连通图谱中的中介节点。
首先,计算量子连通图谱中各个图谱节点的连通度、总重量以及重量分散度中的至少两种参数,作为组合节点价值参数。
然后,获取预先配置的组合节点价值参数中每个成员节点价值参数的价值权重。
在此基础上,分别计算各个图谱节点的每个成员节点价值参数与成员节点价值参数的价值权重的加权值,从而可以基于每个成员节点价值参数对应的加权值计算各个图谱节点的总加权值。
最后,可以根据各个图谱节点的总加权值,选择总加权值最大的图谱节点作为中介节点。
例如,假设量子连通图谱中各个图谱节点的组合节点价值参数为连通度和总重量,那么连通度和总重量可以理解为组合节点价值参数中的成员节点价值参数。其中,可以预先配置连通度和总重量的价值权重,从而可以计算各个图谱节点的连通度与其价值权重的加权值以及总重量与其价值权重的加权值,由此可以基于连通度与其价值权重的加权值以及总重量与其价值权重的加权值计算各个图谱节点的总加权值。
又例如,假设量子连通图谱中各个图谱节点的组合节点价值参数为连通度和重量分散度,那么连通度和重量分散度可以理解为组合节点价值参数中的成员节点价值参数。其中,可以预先配置连通度和重量分散度的价值权重,从而可以计算各个图谱节点的连通度与其价值权重的加权值以及重量分散度与其价值权重的加权值,由此可以基于连通度与其价值权重的加权值以及重量分散度与其价值权重的加权值,计算各个图谱节点的总加权值。
又例如,假设量子连通图谱中各个图谱节点的组合节点价值参数为总重量和重量分散度,那么总重量和重量分散度可以理解为组合节点价值参数中的成员节点价值参数。其中,可以预先配置总重量和重量分散度的价值权重,从而可以计算各个图谱节点的总重量与其价值权重的加权值以及重量分散度与其价值权重的加权值,由此可以基于总重量与其价值权重的加权值以及重量分散度与其价值权重的加权值,计算各个图谱节点的总加权值。
再例如,假设量子连通图谱中各个图谱节点的组合节点价值参数为连通度、总重量和重量分散度,那么连通度、总重量和重量分散度可以理解为组合节点价值参数中的成员节点价值参数。其中,可以预先配置连通度、总重量和重量分散度的价值权重,从而可以计算各个图谱节点的连通度与其价值权重的加权值、总重量与其价值权重的加权值以及重量分散度与其价值权重的加权值,由此可以基于连通度与其价值权重的加权值、总重量与其价值权重的加权值以及重量分散度与其价值权重的加权值,计算各个图谱节点的总加权值。
这样,当对连通度、总重量和重量分散度的价值权重进行预先配置之后,针对不同的量子算法,均可以适用;在对量子算法相应的量子连通图谱进行优化时,直接读取各个图谱节点的各个连通度、总重量和重量分散度即可获得量子算法中各个图谱节点的总加权值,进而通过排序,选择总加权值最大的图谱节点作为中介节点。
在一种可能的实施方式中,当确定中介节点后,接下来可以对该目标量子连通图谱中的交叉连线进行优化操作,例如,可以保留中介节点与其它图谱节点之间的连线,并将除中介节点之外的其它图谱节点之间的目标连线删除,以获得不包含交叉连线的目标量子连通图谱。
其中,在一种可能的示例中,目标连线可以为其它图谱节点之间的所有连线。
例如图4所示,假设最终确定的中介节点为图1中所示的图谱节点6,那么可以保留图谱节点6与图谱节点1、图谱节点2、图谱节点3、图谱节点4、图谱节点5之间的连线,并将图谱节点1、图谱节点2、图谱节点3、图谱节点4、图谱节点5之间的所有连线删除,以获得不包含交叉连线的目标量子连通图谱,也即图4所示的量子连通图谱。
或者,在另一种可能的示例中,发明人考虑到一些外围连线并不存在交叉连线的情况,为了尽可能保留更多的连线,从而减少后续的交换门操作,目标连线可以为其它图谱节点之间除量子连通图谱的外围连线之外的剩余连线。
例如图5所示,仍旧以最终确定的中介节点为图1中所示的图谱节点6为例,那么可以保留图谱节点6与图谱节点1、图谱节点2、图谱节点3、图谱节点4、图谱节点5之间的连线,并将图谱节点1、图谱节点2、图谱节点3、图谱节点4、图谱节点5之间除外围连线之外的连线删除,以获得不包含交叉连线的目标量子连通图谱,也即图5所示的量子连通图谱。
基于同一发明构思,请参阅图6,示出了本申请实施例提供的量子连通图的交叉连线处理装置110的功能模块示意图,本实施例可以根据上述计算机终端100执行的方法实施例对量子连通图的交叉连线处理装置110进行功能模块的划分。例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。比如,在采用对应各个功能划分各个功能模块的情况下,图6示出的量子连通图的交叉连线处理装置110只是一种装置示意图。其中,量子连通图的交叉连线处理装置110可以包括获取模块111、判断模块112以及交叉处理模块113,下面分别对该量子连通图的交叉连线处理装置110的各个功能模块的功能进行详细阐述。
获取模块111,用于获取目标量子算法的量子连通图谱,量子连通图谱包括多个图谱节点以及任意两个图谱节点之间的连线,其中,图谱节点用于表示目标量子算法中的逻辑比特,连线用于表示任意两个量子比特之间的量子比特逻辑门。可以理解,该获取模块111可以用于执行上述步骤S110,关于该获取模块111的详细实现方式可以参照上述对步骤S110有关的内容。
判断模块112,用于判断量子连通图谱中是否存在交叉连线。可以理解,该判断模块112可以用于执行上述步骤S120,关于该判断模块112的详细实现方式可以参照上述对步骤S120有关的内容。
交叉处理模块113,用于当量子连通图谱存在交叉连线时,确定量子连通图谱中的中介节点,并保留中介节点与其它图谱节点之间的连线,以获得不包含交叉连线的目标量子连通图谱。可以理解,该交叉处理模块113可以用于执行上述步骤S130,关于该交叉处理模块113的详细实现方式可以参照上述对步骤S130有关的内容。
在一种可能的实施方式中,交叉处理模块113具体可以用于:
计算量子连通图谱中各个图谱节点的节点价值参数,并根据量子连通图谱中各个图谱节点的节点价值参数,从各个图谱节点中确定中介节点,其中,节点价值参数用于表征图谱节点在量子连通图谱中参与量子算法的价值程度;
保留中介节点与其它图谱节点之间的连线,以获得不包含交叉连线的目标量子连通图谱。
在一种可能的实施方式中,交叉处理模块113具体可以用于:
计算量子连通图谱中各个图谱节点的连通度、总重量以及重量分散度中的至少一种,作为节点价值参数;其中,连通度用于表示图谱节点连接的连线数量,总重量用于表示图谱节点连接的所有连线的连线量化值之和,重量分散度用于表示图谱节点连接的所有连线的连线量化值的方差,连线的连线量化值用于表示两个量子比特之间的施加的量子比特逻辑门的次数;
根据节点价值参数,从各个图谱节点中确定中介节点。
在一种可能的实施方式中,节点价值参数包括第一参数,根据节点价值参数,交叉处理模块113具体可以用于:
将连通度、总重量以及重量分散度中的其中一种作为第一参数,并选择第一参数最大的图谱节点作为中介节点。
在一种可能的实施方式中,节点价值参数还包括第二参数,述交叉处理模块113具体可以用于:
当存在第一参数相同且最大的第一目标图谱节点时,计算每个第一目标图谱节点的连通度、总重量以及重量分散度中除第一参数之外的另一参数,作为第二参数;
在各个第一目标图谱节点中,选择第二参数最大的图谱节点作为中介节点。
在一种可能的实施方式中,节点价值参数还包括第三参数,交叉处理模块113具体可以用于:
当存在第一参数相同且最大,同时第二参数相同且最大的第二目标图谱节点时,计算每个第二目标图谱节点的连通度、总重量以及重量分散度中除第一参数和第二参数之外的剩余一个参数,作为第三参数;
在各个第二目标图谱节点中,选择第三参数最大的图谱节点作为中介节点。
在一种可能的实施方式中,交叉处理模块113具体可以用于:
计算量子连通图谱中各个图谱节点的连通度、总重量以及重量分散度中的至少两种参数,作为组合节点价值参数;其中,连通度用于表示图谱节点连接的连线数量,总重量用于表示图谱节点连接的所有连线的连线量化值之和,重量分散度用于表示图谱节点连接的所有连线的连线量化值的方差,连线的连线量化值用于表示两个量子比特之间的施加的量子比特逻辑门的次数;
获取预先配置的组合节点价值参数中每个成员节点价值参数的价值权重;
分别计算各个图谱节点的每个成员节点价值参数与成员节点价值参数的价值权重的加权值;
基于每个成员节点价值参数对应的加权值计算各个图谱节点的总加权值;
根据各个图谱节点的总加权值,选择总加权值最大的图谱节点作为中介节点。
在一种可能的实施方式中,交叉处理模块113具体可以用于:
保留中介节点与其它图谱节点之间的连线,并将除中介节点之外的其它图谱节点之间的目标连线删除,以获得不包含交叉连线的目标量子连通图谱;
其中,目标连线为其它图谱节点之间的所有连线,或者其它图谱节点之间除量子连通图谱的外围连线之外的剩余连线。
基于同一发明构思,请参阅图7,示出了本申请实施例提供的用于执行上述量子连通图的交叉连线处理方法的计算机终端100的结构示意框图,该计算机终端100可以包括量子连通图的交叉连线处理装置110、机器可读存储介质120和处理器130。
本实施例中,机器可读存储介质120与处理器130均位于计算机终端100中且二者分离设置。然而,应当理解的是,机器可读存储介质120也可以是独立于计算机终端100之外,且可以由处理器130通过总线接口来访问。可替换地,机器可读存储介质120也可以集成到处理器130中,例如,可以是高速缓存和/或通用寄存器。
量子连通图的交叉连线处理装置110可以包括存储在机器可读存储介质120的软件功能模块(例如图6中所示的获取模块111、判断模块112以及交叉处理模块113),当处理器130执行量子连通图的交叉连线处理装置110中的软件功能模块时,以实现前述方法实施例提供的量子连通图的交叉连线处理方法。
由于本申请实施例提供的计算机终端100是上述计算机终端100执行的量子连通图的交叉连线处理方法实施例的另一种实现形式,且计算机终端100可用于执行上述方法实施例提供的量子连通图的交叉连线处理方法,因此其所能获得的技术效果可参考上述方法实施例,在此不再赘述。
以上所描述的实施例仅仅是本申请的一部分实施例,而不是全部的实施例。通常在附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,在附图中提供的本申请的实施例的详细描述并非旨在限制本申请的保护范围,而仅仅是表示本申请的选定实施例。因此,本申请的保护范围应以权利要求的保护范围为准。此外,基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下可获得的所有其它实施例,都应属于本申请保护的范围。