[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN112073221B - 一种实现网络节点排序的方法及装置 - Google Patents

一种实现网络节点排序的方法及装置 Download PDF

Info

Publication number
CN112073221B
CN112073221B CN202010821253.0A CN202010821253A CN112073221B CN 112073221 B CN112073221 B CN 112073221B CN 202010821253 A CN202010821253 A CN 202010821253A CN 112073221 B CN112073221 B CN 112073221B
Authority
CN
China
Prior art keywords
quantum
matrix
bit
column
logic gate
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
Application number
CN202010821253.0A
Other languages
English (en)
Other versions
CN112073221A (zh
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 CN202010821253.0A priority Critical patent/CN112073221B/zh
Publication of CN112073221A publication Critical patent/CN112073221A/zh
Application granted granted Critical
Publication of CN112073221B publication Critical patent/CN112073221B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design

Landscapes

  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Analysis (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Complex Calculations (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了实现网络节点排序的方法及装置,方法包括:获取数量不大于N的待排序网络节点,其中,N=2n,所述n为正整数;根据所述待排序网络节点间的交互关系,生成N*N维邻接矩阵A;根据所述邻接矩阵A,确定所述邻接矩阵的出度Dout和入度Din;根据所述邻接矩阵A、出度Dout和入度Din,计算厄米矩阵E和
Figure DDA0002634468830000011
其中,所述厄米矩阵E=[Dout+Din‑(A+AT)],
Figure DDA0002634468830000012
根据所述厄米矩阵E和
Figure DDA0002634468830000013
的值,利用HHL算法对应的量子线路,输出包含所述待排序网络节点的排序结果的量子态S*,其中,E、S*
Figure DDA0002634468830000014
的满足线性关系:
Figure DDA0002634468830000015
利用本发明实施例,能够提高大规模网络节点排序效率,实现大规模网络节点的快速排序,并且减少HHL算法对应的量子线路的计算量,提高量子线路的计算效率。

Description

一种实现网络节点排序的方法及装置
技术领域
本发明属于量子计算技术领域,特别是一种实现网络节点排序的方法及装置。
背景技术
量子计算机是一类遵循量子力学规律进行高速数学和逻辑运算、存储及处理量子信息的物理装置。当某个装置处理和计算的是量子信息,运行的是量子算法时,它就是量子计算机。量子计算机因其具有相对普通计算机更高效的处理数学问题的能力,例如,能将破解RSA密钥的时间从数百年加速到数小时,故成为一种正在研究中的关键技术。
量子计算模拟是一个借助数值计算和计算机科学来仿真遵循量子力学规律的模拟计算,作为一个仿真程序,它依据量子力学的量子比特的基本定律,利用计算机的高速计算能力,刻画量子态的时空演化。
现有技术中,提供了一种有效的算法来推断有向网络中节点的分层排名,它能从全局网络出发,对每个节点分配一个全局最佳排名;并且可以在大规模网络节点中,获取没有直接交互关系的节点间的排名,提供更加完善的网络排名信息。
但是,该排序算法对大规模网络节点进行排序时,往往效率不高,耗时较多,基于此,有必要实现一种利用量子叠加特性,对大规模网络节点实现快速排序的方法。
发明内容
本发明的目的是提供一种实现网络节点排序的方法及装置,以解决现有技术中的不足,它能够提高大规模网络节点排序效率,实现大规模网络节点的快速排序,并且减少HHL算法对应的量子线路的计算量,提高量子线路的计算效率。
本申请的一个实施例提供了一种实现网络节点排序的方法,包括:
获取数量不大于N的待排序网络节点,其中,N=2n,所述n为正整数;
根据所述待排序网络节点间的交互关系,生成N*N维邻接矩阵A;
根据所述邻接矩阵A,确定所述邻接矩阵的出度Dout和入度Din
根据所述邻接矩阵A、出度Dout和入度Din,计算厄米矩阵E和
Figure GDA0002757911110000021
其中,所述厄米矩阵E=[Dout+Din-(A+AT)],
Figure GDA0002757911110000022
根据所述厄米矩阵E和
Figure GDA0002757911110000029
的值,利用HHL算法对应的量子线路,输出包含所述待排序网络节点的排序结果的量子态S*,其中,E、S*
Figure GDA0002757911110000023
的满足线性关系:
Figure GDA0002757911110000024
可选的,所述根据所述待排序网络节点间的交互关系,生成N*N维邻接矩阵A,包括:
确定所述待排序网络节点间的有向加权网络Aij,其中Aij表示节点i与节点j的交互数;
根据所述有向加权网络Aij,构造N*N维邻接矩阵A。
可选的,所述确定所述邻接矩阵的出度Dout和入度Din,具体为:
所述邻接矩阵的出度Dout=∑jAij,所述邻接矩阵的入度Din=∑jAji
可选的,
所述根据所述厄米矩阵E和
Figure GDA00027579111100000210
的值,利用HHL算法对应的量子线路,输出包含所述待排序网络节点的排序结果的量子态S*,具体包括:
获得包括辅助量子比特、第一量子比特、第二量子比特的若干量子比特,其中,所述辅助量子比特和所述第一量子比特的初态置为|0>,所述第二量子比特的初态置为
Figure GDA0002757911110000025
所述bj为所述
Figure GDA0002757911110000026
的第j个元素;
确定所述厄米矩阵E对应的酉矩阵U,将所述矩阵U分解成r个携带受控信息的单量子逻辑门对应的酉矩阵;其中,满足Ur…Uk…U1U=IN,所述Uk为第k个携带受控信息的单量子逻辑门对应的酉矩阵,1≤k≤r,所述
Figure GDA0002757911110000027
Figure GDA0002757911110000028
所述IN为N阶单位矩阵;
输出包含所述r个携带受控信息的单量子逻辑门的子量子线路,根据所述子量子线路和各量子比特及其初态,构建HHL算法对应的量子线路并运行所述量子线路,输出包含所述待排序网络节点的排序结果的量子态S*
可选的,所述确定所述厄米矩阵E对应的酉矩阵U,具体为:
确定对应的酉矩阵具体形式为U=eiEt,其中,所述t为常量。
可选的,所述将所述矩阵U分解成r个携带受控信息的单量子逻辑门对应的酉矩阵,包括:
确定所述矩阵U中对角元素下方的、待置0的非对角元素的次序;
针对所述次序中的第k个非对角元素,构造特定量子逻辑门的N阶酉矩阵Uk,以使矩阵Uk…U1U中与该非对角元素同位置的元素置为0,且不改变已置0的非对角元素;
其中,所述特定量子逻辑门包括操作一比特的单量子逻辑门,所述单量子逻辑门携带受其余比特控制的受控信息,1≤k≤r;当所述k=1时,所述单量子逻辑门的酉矩阵由所述量子线路对应的酉矩阵U的元素确定;当1<k≤r时,所述单量子逻辑门的酉矩阵由矩阵Uk-1…U1U的元素确定;并且,当所述第k个非对角元素的次序为所在列最后一个时,同时使矩阵Uk…U1U的相同列中的对角元素置为1。
可选的,所述确定所述矩阵U中对角元素下方的、待置0的非对角元素的次序,包括:
当n=1时,所述酉矩阵U中对角元素下方的、待置0的非对角元素次序为(2,1);其中,所述(2,1)表示坐标为第2行第1列的非对角元素;
当n>1时,根据(n-1)比特量子线路对应的酉矩阵的第一列次序,确定n比特量子线路对应的所述酉矩阵U中对角元素下方的、待置0的非对角元素的第一列次序;其中,第一列中坐标(N/2+1,1)的非对角元素的次序位于第一列最后一个;
基于所述n比特量子线路对应的第一列次序,分别确定所述n比特量子线路对应的第2列至第N/2列中对角元素下方的、待置0的非对角元素的次序;
根据(n-1)比特量子线路对应的酉矩阵中对角元素下方的、待置0的非对角元素的次序,对应确定所述n比特量子线路对应的第(N/2+1)列至第N列中对角元素下方的、待置0的非对角元素的次序。
可选的,所述携带受控信息的单量子逻辑门的表示形式包括:
{Cn…Cm…C1},其中,所述Cm表示0、1、*或单量子逻辑门V,所述m表示量子比特位,m∈[1,n],并且,有且只有一个Cm表示单量子逻辑门V,所述单量子逻辑门V的酉矩阵由所述酉矩阵U确定;
当Cm为0时,表示所述量子线路运行到单量子逻辑门V之前,当该位的量子比特的量子态为0态时,执行单量子逻辑门V;
当Cm为1时,表示所述量子线路运行到单量子逻辑门V之前,当该位的量子比特的量子态为1态时,执行单量子逻辑门V;
当Cm为*时,表示所述量子线路运行到单量子逻辑门V之前,当该位的量子比特的量子态为任意态时,均执行单量子逻辑门V。
可选的,所述根据所述子量子线路和各量子比特及其初态,构建HHL算法对应的量子线路,包括:
根据所述子量子线路,构建相位估计运算对应的第一部分量子线路,以将|b>在所述厄米矩阵E的特征空间上分解为:
Figure GDA0002757911110000041
并将所述第一量子比特和所述第二量子比特的初态|0>|b>转化为:
Figure GDA0002757911110000042
其中,所述第一量子比特的数量h取决于相位估计的精度和成功概率,所述第二量子比特的数量为所述n,所述|μj>为所述厄米矩阵E的特征向量,所述βj为|μj>的振幅,所述λj为所述厄米矩阵E的特征值;
构建受控旋转操作对应的第二部分量子线路,以将基态|λj>中的值提取到所述辅助量子比特的量子态振幅上,得到:
Figure GDA0002757911110000043
Figure GDA0002757911110000044
其中,所述辅助量子比特的数量为1,所述C为常数,
Figure GDA0002757911110000045
构建相位估计逆运算对应的第三部分量子线路,以消除|λj>,得到:
Figure GDA0002757911110000046
构建针对所述辅助量子比特的量子测量操作,以使测量到所述辅助量子比特的量子态为|1>时,得到:
Figure GDA0002757911110000051
所述
Figure GDA0002757911110000052
Figure GDA0002757911110000053
为振幅归一化的对应关系;
将所述第一部分量子线路、所述第二部分量子线路、所述第三部分量子线路和所述量子测量操作,依次组成HHL算法对应的量子线路。
本申请的又一实施例提供了一种实现网络节点排序的装置,包括:
获取模块,用于获取数量不大于N的待排序网络节点,其中,N=2n,所述n为正整数;
生成模块,用于根据所述待排序网络节点间的交互关系,生成N*N维邻接矩阵A;
确定模块,用于根据所述邻接矩阵A,确定所述邻接矩阵的出度Dout和入度Din
计算模块,用于根据所述邻接矩阵A、出度Dout和入度Din,计算厄米矩阵E和
Figure GDA0002757911110000054
其中,所述厄米矩阵E=[Dout+Din-(A+AT)],
Figure GDA0002757911110000055
输出模块,用于根据所述厄米矩阵E和
Figure GDA0002757911110000056
的值,利用HHL算法对应的量子线路,输出包含所述待排序网络节点的排序结果的量子态S*,其中,E、S*
Figure GDA0002757911110000057
的满足线性关系:
Figure GDA0002757911110000058
可选的,所述生成模块,具体用于:
确定所述待排序网络节点间的有向加权网络Aij,其中Aij表示节点i与节点j的交互数;
根据所述有向加权网络Aij,构造N*N维邻接矩阵A。
可选的,所述确定模块,用于:
所述邻接矩阵的出度Dout=∑jAij,所述邻接矩阵的入度Din=∑jAji
可选的,所述输出模块,具体包括:
第二获取模块,用于获得包括辅助量子比特、第一量子比特、第二量子比特的若干量子比特,其中,所述辅助量子比特和所述第一量子比特的初态置为|0>,所述第二量子比特的初态置为
Figure GDA0002757911110000059
所述bj为所述
Figure GDA00027579111100000510
的第j个元素;
第二确定模块,用于确定所述厄米矩阵E对应的酉矩阵U,将所述矩阵U分解成r个携带受控信息的单量子逻辑门对应的酉矩阵;其中,满足Ur…Uk…U1U=IN,所述Uk为第k个携带受控信息的单量子逻辑门对应的酉矩阵,1≤k≤r,所述
Figure GDA0002757911110000061
所述IN为N阶单位矩阵;
第二输出模块,用于输出包含所述r个携带受控信息的单量子逻辑门的子量子线路,根据所述子量子线路和各量子比特及其初态,构建HHL算法对应的量子线路并运行所述量子线路,输出包含所述待排序网络节点的排序结果的量子态S*
可选的,所述确定模块,具体为:
确定对应的酉矩阵具体形式为U=eiEt,其中,所述t为常量。
可选的,所述第二确定模块,具体包括:
第三确定单元,用于确定所述矩阵U中对角元素下方的、待置0的非对角元素的次序;
构造单元,用于针对所述次序中的第k个非对角元素,构造特定量子逻辑门的N阶酉矩阵Uk,以使矩阵Uk…U1U中与该非对角元素同位置的元素置为0,且不改变已置0的非对角元素;
其中,所述特定量子逻辑门包括操作一比特的单量子逻辑门,所述单量子逻辑门携带受其余比特控制的受控信息,1≤k≤r;当所述k=1时,所述单量子逻辑门的酉矩阵由所述量子线路对应的酉矩阵U的元素确定;当1<k≤r时,所述单量子逻辑门的酉矩阵由矩阵Uk-1…U1U的元素确定;并且,当所述第k个非对角元素的次序为所在列最后一个时,同时使矩阵Uk…U1U的相同列中的对角元素置为1。
可选的,所述第三确定单元,具体用于:
当n=1时,所述酉矩阵U中对角元素下方的、待置0的非对角元素次序为(2,1);其中,所述(2,1)表示坐标为第2行第1列的非对角元素;
当n>1时,根据(n-1)比特量子线路对应的酉矩阵的第一列次序,确定n比特量子线路对应的所述酉矩阵U中对角元素下方的、待置0的非对角元素的第一列次序;其中,第一列中坐标(N/2+1,1)的非对角元素的次序位于第一列最后一个;
基于所述n比特量子线路对应的第一列次序,分别确定所述n比特量子线路对应的第2列至第N/2列中对角元素下方的、待置0的非对角元素的次序;
根据(n-1)比特量子线路对应的酉矩阵中对角元素下方的、待置0的非对角元素的次序,对应确定所述n比特量子线路对应的第(N/2+1)列至第N列中对角元素下方的、待置0的非对角元素的次序。
可选的,所述携带受控信息的单量子逻辑门的表示形式包括:
{Cn…Cm…C1},其中,所述Cm表示0、1、*或单量子逻辑门V,所述m表示量子比特位,m∈[1,n],并且,有且只有一个Cm表示单量子逻辑门V,所述单量子逻辑门V的酉矩阵由所述酉矩阵U确定;
当Cm为0时,表示所述量子线路运行到单量子逻辑门V之前,当该位的量子比特的量子态为0态时,执行单量子逻辑门V;
当Cm为1时,表示所述量子线路运行到单量子逻辑门V之前,当该位的量子比特的量子态为1态时,执行单量子逻辑门V;
当Cm为*时,表示所述量子线路运行到单量子逻辑门V之前,当该位的量子比特的量子态为任意态时,均执行单量子逻辑门V。
可选的,所述第二输出模块,具体用于:
根据所述子量子线路,构建相位估计运算对应的第一部分量子线路,以将|b>在所述厄米矩阵E的特征空间上分解为:
Figure GDA0002757911110000071
并将所述第一量子比特和所述第二量子比特的初态|0>|b>转化为:
Figure GDA0002757911110000072
其中,所述第一量子比特的数量h取决于相位估计的精度和成功概率,所述第二量子比特的数量为所述n,所述|μj>为所述厄米矩阵E的特征向量,所述βj为|μj>的振幅,所述λj为所述厄米矩阵E的特征值;
构建受控旋转操作对应的第二部分量子线路,以将基态|λj>中的值提取到所述辅助量子比特的量子态振幅上,得到:
Figure GDA0002757911110000081
Figure GDA0002757911110000082
其中,所述辅助量子比特的数量为1,所述C为常数,
Figure GDA0002757911110000083
构建相位估计逆运算对应的第三部分量子线路,以消除|λj>,得到:
Figure GDA0002757911110000084
构建针对所述辅助量子比特的量子测量操作,以使测量到所述辅助量子比特的量子态为|1>时,得到:
Figure GDA0002757911110000085
所述
Figure GDA0002757911110000086
Figure GDA0002757911110000087
为振幅归一化的对应关系;
将所述第一部分量子线路、所述第二部分量子线路、所述第三部分量子线路和所述量子测量操作,依次组成HHL算法对应的量子线路。
本申请的又一实施例提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项中所述的方法。
本申请的又一实施例提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项中所述的方法。
与现有技术相比,本发明提供的一种实现网络节点排序的方法,首先获取数量不大于N的待排序网络节点,其中,N=2n,所述n为正整数;根据所述待排序网络节点间的交互关系,生成N*N维邻接矩阵A;根据所述邻接矩阵A,确定所述邻接矩阵的出度Dout和入度Din;根据所述邻接矩阵A、出度Dout和入度Din,计算厄米矩阵E和
Figure GDA0002757911110000088
其中,所述厄米矩阵E=[Dout+Din-(A+AT)],
Figure GDA0002757911110000089
根据所述厄米矩阵E和
Figure GDA00027579111100000810
的值,利用HHL算法对应的量子线路,输出包含所述待排序网络节点的排序结果的量子态S*,其中,E、S*
Figure GDA00027579111100000811
的满足线性关系:
Figure GDA00027579111100000812
通过运用量子领域的量子叠加特性,并借助HHL算法的指数级加速效果,从而能够提高大规模网络节点排序效率,实现大规模网络节点的快速排序,并且减少HHL算法对应的量子线路的计算量,提高量子线路的计算效率。
附图说明
图1为本发明实施例提供的一种实现网络节点排序的方法的计算机终端的硬件结构框图;
图2为本发明实施例提供的一种实现网络节点排序的方法的流程示意图;
图3为本发明实施例提供的7个待排序网络节点的有向加权网络示意图;
图4为本发明实施例提供的一种特定量子逻辑门位于量子线路中的示意图;
图5为本发明实施例提供的一种相位估计对应的第一部分量子线路示意图;
图6为本发明实施例提供的一种实现网络节点排序装置的结构示意图。
具体实施方式
下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
需要说明的是,本发明的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
本发明实施例首先提供了一种实现网络节点排序的方法,该方法可以应用于电子设备,如计算机终端,具体如普通电脑、量子计算机等。
下面以运行在计算机终端上为例对其进行详细说明。图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门等等。量子逻辑门一般使用酉矩阵表示,而酉矩阵不仅是矩阵形式,也是一种操作和变换。一般量子逻辑门在量子态上的作用是通过酉矩阵左乘以量子态右矢对应的矩阵进行计算的。
参见图2,图2为本发明实施例提供的一种实现网络节点排序的方法的流程示意图,可以包括如下步骤:
S201:获取数量不大于N的待排序网络节点,其中,N=2n,所述n为正整数。
目前,随着复杂网络小世界特性和无标度特性的发现,复杂网络节点排序研究已成为一个热门的研究领域。实际网络包含众多节点,但由于网络的异质性特征,不同节点在网络中所起的作用不同。对复杂网络节点进行重要性综合评价,探究网络影响力最大化问题,不仅具有理论意义,而且在许多领域有极大的应用价值,如疫情控制、广告投放、通讯网络保障、预测热门研究成果以及蛋白质交互等。
具体的,用户输入的待排序网络节点可以为任意整数Z,再根据待排序网络节点的数量确定N的数值,其中Z≤N,并且满足N=2n,且n为正整数,再根据用户获取的待排序网络节点的数量Z对其进行二进制编号。例如,用户输入的待排序网络节点数量为7,则对用户输入的待排序网络节点进行编号,分别为:000(0)、001(1)、010(2)、011(3)、100(4)、101(5)、110(6),此时N的值为8,则n的值为3,需要至少3个量子比特位进行量子态的编码。
需要说明的是,获取待排序网络节点的数量可以是大于等于2的任意整数,网络节点的数量不设上限,并且对网络节点的编号规则采用二进制编码方式。
S202:根据所述待排序网络节点间的交互关系,生成N*N维邻接矩阵A。
具体的,可以确定所述待排序网络节点间的有向加权网络Aij,其中Aij表示节点i与节点j的交互数;根据所述有向加权网络Aij,构造N*N维邻接矩阵A。
有向加权网络Aij是指一种特殊的复杂网络,其中每条边都有方向,并且包含权重。每条边的方向表示节点i与节点j之间指向关系;权重具体表示节点i与节点j的交互数。例如,在一个有向加权网络中,节点i指向节点j,则表明节点i的排名高于节点j。在不同的应用场景下,有向加权网络Aij表示的具体含义不同,例如Aij可以是节点i赢得的节点i与节点j之间的战斗次数,也可以是节点j认可节点i的次数等,再根据所述有向加权网络Aij,构造N*N维邻接矩阵A。
示例性的,如图3所示的7个待排序网络节点的有向加权网络示意图,从图3中可以看出各个节点间的交互关系。假设7个小圆代表7名运动员,运动员抽象为网络节点并设有编号,有向边表示运动员之间有过对抗,有向边上的数字表示有向边开始节点赢得指向节点的次数,作为交互次数。例如,节点0(000)和节点1(001)之间的交互次数为2,表示节点1运动员赢得节点0运动员的次数为2次。同样的,其余节点间的交互关系与节点0和节点1之间的原理相同,在此不再赘述。
根据所述待排序网络节点间的交互关系,如下表1所示:
表1:图3所示有向加权网络示意图的交互关系表
节点 0(000) 1(001) 2(010) 3(011) 4(100) 5(101) 6(110)
0(000) 0 0 2 0 0 0 0
1(001) 2 0 0 1 0 0 0
2(010) 0 0 0 0 0 0 2
3(011) 0 0 3 0 1 3 0
4(100) 0 0 0 2 0 0 0
5(101) 0 0 1 0 0 0 0
6(110) 0 0 0 0 0 0 0
根据上述表1所示的交互关系,生成邻接矩阵为:
Figure GDA0002757911110000131
需要说明的是,根据所述有向加权网络Aij,构造原始的邻接矩阵有可能不是一个满足2n*2n的矩阵形式,因此在得到邻接矩阵时,需要进行补零操作扩充维度,使其满足2n*2n的矩阵形式。因此,生成N*N(8*8)维邻接矩阵A为:
Figure GDA0002757911110000132
Figure GDA0002757911110000141
S203:根据所述邻接矩阵A,确定所述邻接矩阵的出度Dout和入度Din
具体的,所述邻接矩阵的出度Dout=∑jAij,所述邻接矩阵的入度Din=∑jAji,因此,邻接矩阵的入度即为矩阵的每列元素相加求和;邻接矩阵的出度即为矩阵的每行元素相加求和。示例性的,上述邻接矩阵的入度为:Din=(2,0,6,3,1,3,2,0);出度为:Dout=(2,3,2,7,2,1,0,0)。
S204:根据所述邻接矩阵A、出度Dout和入度Din,计算厄米矩阵E和
Figure GDA0002757911110000142
其中,所述厄米矩阵E=[Dout+Din-(A+AT)],
Figure GDA0002757911110000143
具体的,计算所述厄米矩阵的过程中,出度和入度之和,即Dout+Din会形成一个临时对角矩阵,再用该临时对角矩阵减去邻接矩阵A与邻接矩阵A的转置即可。示例性的,上述邻接矩阵的出度与入度之和形成的临时对角矩阵为:
Figure GDA0002757911110000144
再用该临时对角矩阵减去邻接矩阵A与邻接矩阵A的转置的和,即可得到厄米矩阵E,示例性的,上述厄米矩阵E为:
Figure GDA0002757911110000145
上述
Figure GDA0002757911110000151
S205:根据所述厄米矩阵E和
Figure GDA0002757911110000152
的值,利用HHL算法对应的量子线路,输出包含所述待排序网络节点的排序结果的量子态S*,其中,E、S*
Figure GDA0002757911110000153
的满足线性关系:
Figure GDA0002757911110000154
目前,线性系统是很多科学和工程领域的核心,由于HHL算法在特定条件下相较于经典算法具有指数加速效果,未来能够在数据处理、机器学习、数值计算等场景具有广泛应用。HHL算法解决了一个求解线性方程的问题:利用一个N*N的厄米矩阵E和一个N维向量b,输出n维向量S*,满足
Figure GDA0002757911110000155
即S*=E-1b。由此,厄米矩阵E需要满足为可逆矩阵,且由于下述需要将向量b的数据加载到量子线路的缘故,向量b的维数N能表示为2的正整数次幂。具体包括如下步骤:
S2051:获得包括辅助量子比特、第一量子比特、第二量子比特的若干量子比特,其中,所述辅助量子比特和所述第一量子比特的初态置为|0>,所述第二量子比特的初态置为
Figure GDA0002757911110000156
所述bj为所述
Figure GDA0002757911110000157
的第j个元素。
具体的,可以获得输入的一组量子比特,具体可以量子比特位表示。例如,一位量子比特位上为0,表示该位量子比特的量子态为|0>态,为1则表示|1>态。
为了后续计算需要,该组量子比特区分为辅助量子比特、第一量子比特、第二量子比特,比特数可由用户根据需求确定,在计算资源充足的情况下,可设置较大数量的量子比特,满足多种计算需求。
并且,各量子比特的初态可由现有的振幅编码方式制备得到。其中,辅助量子比特和第一量子比特的初态置为|0>态,第二量子比特的初态置为
Figure GDA0002757911110000158
Figure GDA0002757911110000159
例如,对于4维向量b=[b0,b1,b2,b3],N=4,可得n=2。则,将向量b的数据编码到量子态振幅上,得到:
Figure GDA0002757911110000161
从而实现:将向量b的数据加载到量子线路中2个第二量子比特的量子态振幅上。
S2052:确定所述厄米矩阵E对应的酉矩阵U,将所述矩阵U分解成r个携带受控信息的单量子逻辑门对应的酉矩阵;其中,满足Ur…Uk…U1U=IN,所述Uk为第k个携带受控信息的单量子逻辑门对应的酉矩阵,1≤k≤r,所述
Figure GDA0002757911110000162
所述IN为N阶单位矩阵。
具体的,矩阵E为厄米矩阵,可通过哈密顿量模拟实现厄米矩阵到酉矩阵的转换,得到对应的酉矩阵U=eiEt;其中,t为常量,一般取值2π;
具体的,任意的酉矩阵都可以通过一系列量子逻辑门进行分解,进而转换为量子线路,因为一段量子线路本身就看成一个酉矩阵,当然,该量子线路不能包含任何不可逆操作,比如Measure(测量)或者Reset等操作。将矩阵U分解成r个携带受控信息的单量子逻辑门对应的酉矩阵,可以包括:
S2052-1:确定所述矩阵U中对角元素下方的、待置0的非对角元素的次序。
在一种实现方式中,酉矩阵U中对角元素下方的、待置0的非对角元素的次序可以为:第一列按列号排至最后一列,每一列非对角元素按行号从上至下排序,一种两比特量子线路的4阶酉矩阵的次序示例如表2所示。
表2:一种两比特量子线路的酉矩阵的元素次序
Figure GDA0002757911110000163
Figure GDA0002757911110000171
其中,00、01、10、11表示行或列对应的二进制表示,二进制位与量子比特位一一对应;(1,1)、(2,2)、(3,3)、(4,4)表示坐标对应的对角元素,诸如(2,1)、(3,1)、(4,1)表示坐标对应的非对角元素,括号后边的数字1、2、3表示对应的次序。
需要强调的是,由于量子逻辑门的矩阵形式均为酉矩阵,即酉矩阵与酉矩阵的转置共轭的乘积是单位阵,且酉矩阵之间的乘积也是酉矩阵,故只需关注矩阵对角线下方的非对角元素的置0操作即可,对角元素上方的同一列非对角元素在该对角元素被置1同时会被置0,这是酉矩阵的特性决定的,不再进行赘述。同理,只关注矩阵对角线上方的非对角元素的置0操作也是可行的。
优选的,为了便于后续的矩阵构造,在另一种实现方式中,酉矩阵U中对角元素下方的、待置0的非对角元素的次序可以为:
当n=1时,所述酉矩阵U中对角元素下方的、待置0的非对角元素次序为(2,1);其中,所述(2,1)表示坐标为第2行第1列的非对角元素;
当n>1时,根据(n-1)比特量子线路对应的酉矩阵的第一列次序,确定n比特量子线路对应的所述酉矩阵U中对角元素下方的、待置0的非对角元素的第一列次序;其中,第一列中坐标(N/2+1,1)的非对角元素的排序位于第一列最后一个;
基于所述n比特量子线路对应的第一列次序,分别确定所述n比特量子线路对应的第2列至第N/2列中对角元素下方的、待置0的非对角元素的次序;
根据(n-1)比特量子线路对应的酉矩阵中对角元素下方的、待置0的非对角元素的次序,对应确定所述n比特量子线路对应的第(N/2+1)列至第N列中对角元素下方的、待置0的非对角元素的次序。
示例性的,对于1比特量子线路的2阶酉矩阵,对角元素下方只有一个元素(2,1),故次序有且只有第一列的非对角元素为:(2,1)。
对于2比特量子线路的4阶酉矩阵,第一列次序采用递归的思想,即参考1比特量子线路的第一列次序,且第(N/2+1)行第1列的非对角元素排在该列最后一个,即(2,1)排在第1个、(3,1)排在最后1个,从而确定(4,1)排在第2个,最终可得第1列排序为:(2,1)、(4,1)、(3,1)。
对于3比特量子线路的8阶酉矩阵,第一列次序则参考2比特量子线路的第一列次序,即第1个至第3个为(2,1)、(4,1)、(3,1),且(5,1)位于最后1个,其余(6,1)、(7,1)、(8,1)参考(2,1)、(3,1)、(4,1)的次序为(6,1)、(8,1)、(7,1),最终可得第1列次序为:(2,1)、(4,1)、(3,1)、(6,1)、(8,1)、(7,1)、(5,1)。
以此类推,4比特量子线路的第1列次序参考3比特量子线路的第1列次序,为:(2,1)、(4,1)、(3,1)、(6,1)、(8,1)、(7,1)、(5,1)、(10,1)、(12,1)、(11,1)、(14,1)、(16,1)、(15,1)、(13,1)、(9,1),同理可得更多比特量子线路的第1列次序。
然后,继续以2比特量子线路的4阶酉矩阵为例,确定第2列的次序:
获取第一列中与第2列(3,2)、(4,2)同行的元素(3,1)、(4,1)的次序,即(4,1)、(3,1),对应的行的二进制表示为11和00,分别与第2列对应的二进制表示01进行异或操作:
Figure GDA0002757911110000181
Figure GDA0002757911110000182
可得,2比特量子线路的4阶酉矩阵第2列次序为:(3,2)、(4,2)。
确定第3列至第4列的次序:类比1比特量子线路的酉矩阵排序,为:(4,3),最终得到的次序如表3所示。
表3:另一种2比特量子线路的酉矩阵次序
Figure GDA0002757911110000183
Figure GDA0002757911110000191
同理以3比特量子线路为例,先确定第2列至第4列的次序:
第1列中与第2列同行的非对角元素为的次序为:(4,1)、(3,1)、(6,1)、(8,1)、(7,1)、(5,1),对应的行的二进制分别与第2列的二进制进行异或,由2比特量子线路可知(3,2)、(4,2)的次序不变,在此可省略异或操作,即:
Figure GDA0002757911110000192
Figure GDA0002757911110000193
Figure GDA0002757911110000194
Figure GDA0002757911110000195
可得,3比特量子线路的8阶酉矩阵第2列次序为:(3,2)、(4,2)、(5,2)、(7,2)、(8,2)、(6,2);
第1列中与第3列同行的非对角元素为的次序为:(4,1)、(6,1)、(8,1)、(7,1)、(5,1),对应的行的二进制分别与第3列的二进制进行异或,由2比特量子线路可知(4,3)的次序不变,在此可省略异或操作,即:
Figure GDA0002757911110000196
Figure GDA0002757911110000197
Figure GDA0002757911110000198
Figure GDA0002757911110000199
可得,3比特量子线路的8阶酉矩阵第3列次序为:(4,3)、(8,3)、(6,3)、(5,3)、(7,3);
第1列中与第4列同行的非对角元素为的次序为:(6,1)、(8,1)、(7,1)、(5,1),对应的行的二进制分别与第4列的二进制进行异或操作,即:
Figure GDA00027579111100001910
Figure GDA00027579111100001911
Figure GDA00027579111100001912
Figure GDA00027579111100001913
可得,3比特量子线路的8阶酉矩阵第4列次序为:(7,4)、(5,4)、(6,4)、(8,4)。
接着,对于3比特量子线路的8阶酉矩阵第5列至第8列次序,则类比2比特量子线路的4阶酉矩阵第1列至第4列次序,可得:
第5列次序:(6,5)、(8,5)、(7,5);
第6列次序:(7,6)、(8,6);
第7列次序:(8,7);
第8列次序:无。
同理可确定更多比特量子线路的酉矩阵第2列至最后一列次序。由上述,一种3比特量子线路的酉矩阵的部分列排序,如表4所示。
表4:一种3比特量子线路的酉矩阵的部分列次序
000 001 010 011 ...
000 (1,1) ...
001 (2,1)1 (2,2) ...
010 (3,1)3 (3,2)1 (3,3) ...
011 (4,1)2 (4,2)2 (4,3)1 (4,4) ...
100 (5,1)7 (5,2)3 (5,3)4 (5,4)2 ...
101 (6,1)4 (6,2)6 (6,3)3 (6,4)3 ...
110 (7,1)6 (7,2)4 (7,3)5 (7,4)1 ...
111 (8,1)5 (8,2)5 (8,3)2 (8,4)4 ...
S2052-2:针对所述次序中的第k个非对角元素,构造特定量子逻辑门的N阶酉矩阵Uk,以使矩阵Uk…U1U中与该非对角元素同位置的元素置为0,且不改变已置0的非对角元素;
其中,所述特定量子逻辑门包括操作一比特的单量子逻辑门,所述单量子逻辑门携带受其余比特控制的受控信息,1≤k≤r;当所述k=1时,所述单量子逻辑门的酉矩阵由所述量子线路对应的酉矩阵U的元素确定;当1<k≤r时,所述单量子逻辑门的酉矩阵由矩阵Uk-1…U1U的元素确定;并且,当所述第k个非对角元素的次序为所在列最后一个时,同时使矩阵Uk…U1U的相同列中的对角元素置为1。
为了方便区别,携带受控信息的单量子逻辑门也可理解为特定量子逻辑门,因其酉矩阵不再是普通意义上的单量子逻辑门的2阶酉矩阵,而是N阶酉矩阵Ui,该特定量子逻辑门的表示形式可以为:
{Cn…Cm…C1}
其中,Cm表示0、1、*或单量子逻辑门V,m表示量子比特位,m∈[1,n],并且,有且只有一个Cm表示单量子逻辑门V。该单量子逻辑门V为普通意义上的操作一个量子比特的单量子逻辑门,只不过可额外受量子线路中的其余量子比特控制。对于不同项的待置0的非对角元素,构造的特定量子逻辑门可能不同。
当Cm为0时,表示量子线路运行到单量子逻辑门V之前(即下一步即将执行逻辑门V),当判断出该位的量子比特的量子态为0态时,才执行单量子逻辑门V,简称0控;
当Cm为1时,表示量子线路运行到单量子逻辑门V之前,当该位的量子比特的量子态为1态时,执行单量子逻辑门V,简称1控;
当Cm为*时,表示量子线路运行到单量子逻辑门V之前,当该位的量子比特的量子态为任意态时,均执行单量子逻辑门V,简称无控。
例如,一种特定量子逻辑门的表示形式为{10*V},表示单量子逻辑门V作用在最低位量子比特上,*表示逻辑门V不受第2位的量子比特控制(无控),0表示逻辑门V受第3位的量子比特控制(0控),1表示逻辑门V受第4位的量子比特控制(1控)。另外可知,量子线路为4比特量子线路,该特定量子逻辑门的酉矩阵为24=16阶酉矩阵。
具体的,k为正整数,取值范围为:1≤k≤r。当k=1时,单量子逻辑门V的酉矩阵由量子线路的酉矩阵U的元素确定;当1<k≤r时,单量子逻辑门V的酉矩阵由矩阵Uk-1…U1U的元素确定。
示例性的,对于2比特量子线路,在表3基础上,对应增加特定量子逻辑门的表示形式,可如表5所示,U1={*V},U2={1V},U3={V*},U4={1V},U5={V1},U6={1V}。
表5:一种2比特量子线路对应的特定量子逻辑门
00 01 10 11
00 (1,1)
01 (2,1)1;{*V} (2,2)
10 (3,1)3;{V*} (3,2)1;{1V} (3,3)
11 (4,1)2;{1V} (4,2)2;{V1} (4,3)1;{1V} (4,4)
其中,具体矩阵形式如下:
Figure GDA0002757911110000221
Figure GDA0002757911110000222
Figure GDA0002757911110000223
Figure GDA0002757911110000224
其中,
Figure GDA0002757911110000225
可以补充的是,2比特量子线路相关的{0V}和{V0}的矩阵形式如下:
Figure GDA0002757911110000226
Figure GDA0002757911110000227
一种特定量子逻辑门{0V}、{1V}、{V0}、{V1}位于量子线路中的示意图可如图4所示,空心点及与V的连线表示0控,实心点及与V的连线表示1控,上方横线表示低位量子比特的时间线,下方横线表示高一位的量子比特时间线。
假设2比特量子线路的酉矩阵如下:
Figure GDA0002757911110000231
第一步,将u21同位置的非对角元素置0:
在1比特量子线路情况中,由矩阵乘法可知,V的元素确定与(1,1)项和(2,1)项相关,可看成利用(1,1)项消除(2,1)项,以使矩阵相乘后(2,1)项为0。以类似方式,首先也利用(1,1)项消除(2,1)项,V中各元素v11、v12、v21、v22根据(1,1)项和(2,1)项确定:
Figure GDA0002757911110000232
Figure GDA0002757911110000233
第二步,将u41同位置的非对角元素置0:
以(1,1)项消除(2,1)项类比,左下半部分,利用U1U中的(3,1)项消除(4,1)项,据此确定V:
Figure GDA0002757911110000234
Figure GDA0002757911110000241
第三步,将u31同位置的非对角元素置0,同时将该列对角元素置1:
利用U2U1U中的(1,1)项消除(3,1)项,据此确定V:
Figure GDA0002757911110000242
Figure GDA0002757911110000243
由于
Figure GDA0002757911110000244
Figure GDA0002757911110000245
均为酉矩阵,酉矩阵与其本身的转置共轭的乘积为单位阵,通过该条件,可计算得到:
Figure GDA0002757911110000251
以此类推,对于第2列,类比消除(4,1)项和(3,1)项的方式来消除(3,2)项和(4,2)项,同时不改变第一列中的元素为0的项。之后,矩阵的形式为二阶单位矩阵与二阶矩阵直和的形式,该二阶矩阵可看成1比特量子线路的情形,采用特定量子逻辑门{1V}来处理,这样已置0的前两列就不会受到影响。
对于3比特量子线路的酉矩阵,对于第一列,消除(2,1)、(4,1)、(3,1)项的方式与2比特量子线路的情况一样,只是所使用的特定量子逻辑门不同;对于下半部分,消除(6,1)、(8,1)、(7,1)项可类比为消除(2,1)、(4,1)、(3,1)项,最后利用(1,1)项消除(5,1)项。对于第二列,消除(3,2)、(4,2)项与2比特量子线路的情况一样,类比消除(6,1)、(8,1)、(7,1)、(5,1)项的方式来消除(5,2)、(7,2)、(8,2)、(6,2)项。其余列同理。
更具体的,利用元素为a的项消除元素为b的项,如果a项位置在b项上方,则:
Figure GDA0002757911110000252
否则,在a项位于b项下方的情况下:
Figure GDA0002757911110000253
其中,a*、b*表示a、b的共轭。
示例性的,对于3比特量子线路,在表3基础上,对应特定量子逻辑门的表示形式如下表6所示:
表6:一种3比特量子线路对应的特定量子逻辑门
Figure GDA0002757911110000261
第一列,(2,1):U1={**V};(4,1):U2={*1V};(3,1):U3={*V*};(6,1):U4={1*V};(8,1):U5={*1V};(7,1):U6={1V*};(5,1):U7={V**};
第二列,(3,2):U8={*1V};(4,2):U9={*V1};(5,2):U10={1*V};(7,2):U11={*1V};(8,2):U12={1V*};(6,2):U13={V*1};
第三列,(4,3):U14={*1V};(8,3):U15={1*V};(6,3):U16={10V};(5,3):U17={1V*};(7,3):U18={V1*};
第四列,(7,4):U19={1*V};(5,4):U20={10V};(6,4):U21={1V*};(8,4):U22={V11};
第五列,(6,5):U23={1*V};(8,5):U24={11V};(7,5):U25={1V*};
第六列,(7,6):U26={11V};(8,6):U27={1V1};
第七列,(8,7):U28={11V};第八列无。
本领域技术人员可以理解的是,待置0的非对角元素的排序及特定量子逻辑门的N阶酉矩阵Uk的构造不限以上方式,具体以实现Ur…U1U=IN为准。
矩阵构造存在一些基本规律。例如,2比特量子线路,对原酉矩阵U的行列根据对应的量子比特数进行二进制编码(前述的二进制表示),即从00至11,一个{0V}矩阵作用在4阶酉矩阵U的左侧,则只会影响U的00和01部分(即前两行前两列),同理可以得到{1V}只会影响U的10和11部分,{V0}只会影响U的00和10部分,{V1}只会影响U的01和11部分。对于{*V}和{V*}矩阵,其中不包含任何控制,由其矩阵形式可知,左乘原矩阵时会影响原矩阵的所有行和列。
特定量子逻辑门的矩阵表示形式的构造规律可概括如下:
一、首先说明量子线路酉矩阵第一列对应的矩阵构造:
1,一比特量子线路:
线路酉矩阵仅有一个元素(2,1)待置0,构造特定量子逻辑门{C1}={V}即可,以使{V}·U=IN
2,两比特量子线路:
采用递归思想,参考1比特量子线路,线路酉矩阵除最后一个待置0元素(3,1)外,对应的特定量子逻辑门{Cn…Cm…C1}={C2C1}={C2V};
对于酉矩阵上半部分(2,1),最高位量子比特设为不受控,即(2,1):{C2V}={*V};
对于下半部分(4,1),判断低位量子比特对应的C1是否为1,若不为1,则(4,1):{C2V}={1V},否则{C2V}={*V};判断可得:
(4,1)对应1比特量子线路的(2,1):{C2C1}={C2V}={1V};
最后一个待置0元素(3,1)直接设为:{C2C1}={V*};
3,三比特量子线路:
对应构造的特定量子逻辑门{Cn…Cm…C1}={C3C2C1},线路酉矩阵上半部分参考2比特量子线路,仍将最高位量子比特设为不受控,即{C3C2C1}={*C2C1},可得:
(2,1)对应2比特量子线路的(2,1):{C3C2C1}={*C2C1}={**V};
(4,1)对应2比特量子线路的(4,1):{C3C2C1}={*C2C1}={*1V};
(3,1)对应2比特量子线路的(3,1):{C3C2C1}={*C2C1}={*V*};
对于下半部分除最后一个待置0元素(5,1)外,与上半部分按顺序一一对应,判断上半部分的、低2位量子比特对应的C2、C1是否均不为1,若均不为1,则{C3C2C1}={1C2C1},否则{C3C2C1}={*C2C1};判断可得:
(6,1)对应的{C3C2C1}中,C2、C1与(2,1)对应的C2、C1相同,即为*、V,且均不为1,可得:{C3C2C1}={C3*V}={1*V};
同理,(8,1)对应(4,1):{C3C2C1}={C31V}={*1V};(7,1)对应(3,1):{C3C2C1}={C3V*}={1V*};
最后一个待置0元素(5,1)直接设为:{C3C2C1}={V**};
以此类推,可实现任意比特量子线路酉矩阵的第一列对应的矩阵构造;
二、量子线路酉矩阵第二列至第N/2列对应的矩阵构造:
1,两比特量子线路,n=2:
第2列,列下标l=2,二进制表示01,二进制低位l1=1、高位l2=0;根据预设不等式2x-1<l≤2x,求得x=1;下半部分按顺序与前一列下半部分相对应,矩阵{C2C1}构造如下:
(3,2):参考(4,1)对应的{1V}:若j=n,且{1V}中Cn,…,Cx+1均不为1,则(3,2)对应的{C2C1}中的Cj=1;若1≤j≤x,且{1V}中对应的Cj=lj=1,则(3,2)对应的{C2C1}中的Cj=0;否则,(3,2)对应的Cj与{1V}中对应的Cj保持一致;判断可得:
j=1时,满足Cj与{1V}中对应的Cj保持一致的条件,即C1=V;
j=2时,满足Cj与{1V}中对应的Cj保持一致的条件,即C2=1;
可得,(3,2)对应的{C2C1}={1V};
(4,2):其为本列最后一个待置0元素,参考第一列(3,1)对应的{V*}:将{V*}中的*视为0,进行二进制加1操作,*变为1,得到(3,2)对应的{C2C1}={V1};
2,三比特量子线路,n=3:
第2列,列下标l=2,二进制表示01,l1=1、l2=0;根据2x-1<l≤2x,求得x=1,上半部分(3,2)、(4,2)参考两比特量子线路:
(3,2)对应的{C3C2C1}中,C2C1取值与两比特量子线路的(3,2)对应的{C2C1}={1V}相同,C3设为*,即:(3,2)对应的{C3C2C1}={*1V};
(4,2)对应的{C3C2C1}中,C2C1取值与两比特量子线路的(4,2)对应的{C2C1}={V1}相同,C3设为*,即:(3,2)对应的{C3C2C1}={*V1};
下半部分按顺序与第一列下半部分进行对应,矩阵{C3C2C1}构造如下:
(5,2):参考(6,1)对应的{1*V}:若j=n,且{1*V}中Cn,…,Cx+1均不为1,则(5,2)对应的{C3C2C1}中的Cj=1;若1≤j≤x,且{1*V}中对应的Cj=lj=1,则(5,2)对应的{C3C2C1}中的Cj=0;否则,(5,2)对应{C3C2C1}中的Cj与{1*V}中对应的Cj保持一致;判断可得:
j=1时,满足Cj与{1*V}中对应的Cj保持一致的条件,即C1=V;
j=2时,满足Cj与{1*V}中对应的Cj保持一致的条件,即C2等于*;
j=3时,满足Cj与{1*V}中对应的Cj保持一致的条件,即C3=1;
可得,(5,2)对应的{C3C2C1}={1*V};
同理可得,(7,2)对应的{C3C2C1}={*1V};(8,2)对应的{C3C2C1}={1V*};
(6,2):其为本列最后一个待置0元素,参考第一列(5,1)对应的{V**}:将{V**}中的*视为0,进行二进制加1操作,00变为01,即**变为*1,得到(6,2)对应的{C3C2C1}={V*1};
同理可得,第3列:
上半部分:(4,3)对应{*1V};下半部分:(8,3)对应{1*V},(6,3)对应{10V},(5,3)对应{1V*};本列最后一个待置0元素(7,3)对应{V1*};
第4列不进行赘述;可见,下半部分除每列最后一个待置0元素外,偶数列与前一列(奇数列)的矩阵构造对应相同,奇数列的矩阵则参考第一列确定;
三、量子线路酉矩阵第(N/2+1)列至最后一列对应的矩阵构造:
参考第1列至第N/2列的上半部分,按顺序一一对应,将最高位的*变为1,其余不变,以上述3比特量子线路为例,可得:
第5列:(6,5)对应(2,1),可得{1*V};(8,5)对应(4,1),可得{11V};(7,5)对应(3,1),可得{1V*};
第6列:(7,6)对应(3,2),可得{11V};(8,6)对应(4,2),可得{1V1};
第7列:(8,7)对应(4,3),可得{11V};第8列无;
以此类推,可实现任意比特量子线路酉矩阵的所有列对应的矩阵构造,在此不对其进行赘述。
具体的,
Figure GDA0002757911110000301
其中,Vm等于:
|0><0|,若Cm=0;|1><1|,若Cm=1;V-I2,若Cm=V;I2,若Cm为*。
S2053:输出包含所述r个携带受控信息的单量子逻辑门的子量子线路,根据所述子量子线路和各量子比特及其初态,构建HHL算法对应的量子线路并运行所述量子线路,输出包含所述待排序网络节点的排序结果的量子态S*
具体的,由Ur…U1U=IN,可得:
Figure GDA0002757911110000302
为U1、Ur的转置共轭,即分解出的r个携带受控信息的单量子逻辑门(特定量子逻辑门)是处于转置共轭dagger状态的。
在特定量子逻辑门的矩阵形式确定后,特定量子逻辑门随即确定(例如图4所示的特定量子逻辑门位于量子线路中的示意图),根据从
Figure GDA0002757911110000303
依次至
Figure GDA0002757911110000304
的执行时序,构建并输出分解后的、包括
Figure GDA0002757911110000305
Figure GDA0002757911110000306
的子量子线路。相比动辄包括成百上千量子逻辑门且存在较大数量的多比特量子逻辑门的复杂量子线路,子量子线路结构大为精简,运行量子线路时的计算复杂度和资源占用显著下降。
具体的,根据子量子线路和各量子比特及其初态,构建HHL算法对应的量子线路,可以包括:
根据所述子量子线路,构建相位估计运算对应的第一部分量子线路,以将|b>在所述厄米矩阵E的特征空间上分解为:
Figure GDA0002757911110000307
并将所述第一量子比特和所述第二量子比特的初态|0>|b>转化为:
Figure GDA0002757911110000308
本领域技术人员可以理解的是,相位估计(Phase estimation)是量子傅里叶变换QFT的一个重要应用,它的重要性体现在它是很多量子算法的基础。如图5所示,相位估计对应的第一部分量子线路,可以包括:H门操作模块、C-Uj操作(受控U算子操作)模块和量子傅里叶逆变换模块,其中,该U算子即为矩阵E对应的酉矩阵U,前述子量子线路即为该U算子对应的量子线路实现,在此不对其进行赘述。经过第一部分量子线路,辅助量子比特(对应图5最上的时间线)的量子态不变、第一量子比特(对应图5中间的时间线)的初态|0>转化为|λj>、第二量子比特(对应图5最下的时间线)的初态|b>分解
Figure GDA0002757911110000311
其中,所述第一量子比特的数量h取决于相位估计的精度和成功概率,所述第二量子比特的数量为所述n,所述|μj>为所述厄米矩阵E的特征向量,所述βj为|μj>的振幅,所述λj为所述厄米矩阵E的特征值。
实际上,输出的λj是估计值,可以通过增加第一量子比特的数量,提高相位估计的输出精度。并且,在实际应用中,可以设置辅助量子寄存器、第一量子寄存器、第二量子寄存器,分别存储辅助量子比特、第一量子比特、第二量子比特的量子态。
构建受控旋转操作对应的第二部分量子线路,以将基态|λj>中的值提取到辅助量子比特的量子态振幅上,得到:
Figure GDA0002757911110000312
其中,辅助量子比特的数量为1,所述C为常数,
Figure GDA0002757911110000313
具体的,受控旋转又可称“提取占比”,因为经过相位估计运算之后,第一量子寄存器会存储一系列的特征值λj(具体存储在基态|λj>中),而第二量子寄存器存储的输入态即初态|b>会在矩阵E的特征空间上进行分解,然后通过受控旋转操作,将基态中的λj值提取到了振幅上,将辅助量子比特的量子态|0>转化为得到
Figure GDA0002757911110000314
各量子比特的量子态经过第二部分量子线路由
Figure GDA0002757911110000315
转化为
Figure GDA0002757911110000316
为了减少资源占用,辅助量子比特可设1位,且C为常数,一般取1。
构建相位估计逆运算对应的第三部分量子线路,以消除|λj>,得到:
Figure GDA0002757911110000321
本领域技术人员可以理解的是,相位估计逆运算是前述相位估计的还原过程,或称相位估计的转置共轭运算,目的是消除|λj>,具体以将量子态
Figure GDA0002757911110000322
转化为如下为准:
Figure GDA0002757911110000323
构建针对所述辅助量子比特的量子测量操作,以使测量到所述辅助量子比特的量子态为|1>时,得到:
Figure GDA0002757911110000324
所述
Figure GDA0002757911110000325
Figure GDA0002757911110000326
为振幅归一化的对应关系。
具体的,量子测量操作施加在辅助量子比特上,以在相位估计逆运算后,对辅助量子比特进行测量。测量后,辅助量子比特的状态会塌缩至一个确定的状态,其中,塌缩至|0>的概率是
Figure GDA0002757911110000327
塌缩至|1>的概率是
Figure GDA0002757911110000328
当测量辅助量子比特的量子态为|1>、且C=1时,即可得到确定的量子态:
Figure GDA0002757911110000329
Figure GDA00027579111100003210
可见是
Figure GDA00027579111100003211
进行振幅归一化的对应结果。在实际应用中,可以根据用户所需的应用场景,对应得到|x>,或者直接将|x′>用于后续的场景计算。
将所述第一部分量子线路、所述第二部分量子线路、所述第三部分量子线路和所述量子测量操作,依次组成HHL算法对应的量子线路。
具体的,根据第一部分量子线路、第二部分量子线路、第三部分量子线路和量子测量操作的执行时序,依次组成一条完整的量子线路,即为HHL算法对应的总量子线路。如前述,第一部分、第二部分、第三部分及总量子线路包含的量子比特总数均相同,可以为1+h+n。
可见,由于输出的子量子线路中量子逻辑门数量有限,且消除了酉矩阵形式复杂的多比特量子逻辑门,使得量子逻辑门形式得以简化,从而减少构建的HHL算法的量子线路复杂度,提高量子线路的模拟效率,同时减少硬件资源的占用。
示例性的,接上述图3所示的示例,通过构建并运行HHL算法对应的总量子线路,求解满足线性关系:
Figure GDA0002757911110000331
中S*的结果,可以求得:
S*=0.0000642651|000>+0.345572|001>-0.345245|010>+0.043767|011>+0.154088|100>-0.219033|101>-0.675713|110>+0.000642322|111>
需要说明的是,由于在进行HHL算法求解时,有时并不满足2n*2n的矩阵形式,因此在得到邻接矩阵时,需要进行维度扩充,使其满足2n*2n的矩阵形式,由此造成的结果是,经过HHL算法得到的S*的结果也含有2n个量子态的振幅,但是在分析待排序网络节点的排序时,只取所需待排序网络节点的振幅值进行大小的比较即可。
示例性的,上述7个待排序网络节点,只取所需待排序网络节点的振幅值进行大小的比较即可,由于量子态|111>对应的节点111即节点8不存在,故最后量子态|111>所对应的振幅值需忽略。同样的,当待排序网络节点数量较大时,亦只取所需待排序网络节点的振幅值进行大小的比较即可,在此不再赘述。包含所述待排序网络节点的排序结果的量子态S*振幅值大小为:0.345572>0.154088>0.043767>0.0000642651>-0.219033>-0.345245>-0.675713,因此通过包含待排序网络节点的排序结果的量子态S*的振幅值大小,得出待排序网络节点的排序为:节点1、节点4、节点3、节点0、节点5、节点2、节点6。
与现有技术相比,本实施例提供的一种实现网络节点排序的方法,首先获取数量不大于N的待排序网络节点,其中,N=2n,所述n为正整数;根据所述待排序网络节点间的交互关系,生成N*N维邻接矩阵A;根据所述邻接矩阵A,确定所述邻接矩阵的出度Dout和入度Din;根据所述邻接矩阵A、出度Dout和入度Din,计算厄米矩阵E和
Figure GDA0002757911110000341
其中,所述厄米矩阵E=[Dout+Din-(A+AT)],
Figure GDA0002757911110000342
根据所述厄米矩阵E和
Figure GDA0002757911110000343
的值,利用HHL算法对应的量子线路,输出包含所述待排序网络节点的排序结果的量子态S*,其中,E、S*
Figure GDA0002757911110000344
的满足线性关系:
Figure GDA0002757911110000345
通过运用量子领域的量子叠加特性,并借助HHL算法的指数级加速效果,从而能够提高大规模网络节点排序效率,实现大规模网络节点的快速排序,并且减少HHL算法对应的量子线路的计算量,提高量子线路的计算效率。
参见图6,图6为本发明实施例提供的一种实现网络节点排序装置的结构示意图,与图2所示的流程相对应,可以包括:
获取模块601,用于获取数量不大于N的待排序网络节点,其中,N=2n,所述n为正整数;
生成模块602,用于根据所述待排序网络节点间的交互关系,生成N*N维邻接矩阵A;
确定模块603,用于根据所述邻接矩阵A,确定所述邻接矩阵的出度Dout和入度Din
计算模块604,用于根据所述邻接矩阵A、出度Dout和入度Din,计算厄米矩阵E和
Figure GDA0002757911110000346
其中,所述厄米矩阵E=[Dout+Din-(A+AT)],
Figure GDA0002757911110000347
输出模块605,用于根据所述厄米矩阵E和
Figure GDA0002757911110000348
的值,利用HHL算法对应的量子线路,输出包含所述待排序网络节点的排序结果的量子态S*,其中,E、S*
Figure GDA0002757911110000349
的满足线性关系:
Figure GDA00027579111100003410
具体的,所述生成模块,用于:
确定所述待排序网络节点间的有向加权网络Aij,其中Aij表示节点i与节点j的交互数;
根据所述有向加权网络Aij,构造N*N维邻接矩阵A。
具体的,所述确定模块,用于:
所述邻接矩阵的出度Dout=∑jAij,所述邻接矩阵的入度Din=∑jAji
具体的,所述输出模块,包括:
第二获取模块,用于获得包括辅助量子比特、第一量子比特、第二量子比特的若干量子比特,其中,所述辅助量子比特和所述第一量子比特的初态置为|0>,所述第二量子比特的初态置为
Figure GDA0002757911110000351
所述bj为所述
Figure GDA0002757911110000352
的第j个元素;
第二确定模块,用于确定所述厄米矩阵E对应的酉矩阵U,将所述矩阵U分解成r个携带受控信息的单量子逻辑门对应的酉矩阵;其中,满足Ur…Uk…U1U=IN,所述Uk为第k个携带受控信息的单量子逻辑门对应的酉矩阵,1≤k≤r,所述
Figure GDA0002757911110000353
所述IN为N阶单位矩阵;
第二输出模块,用于输出包含所述r个携带受控信息的单量子逻辑门的子量子线路,根据所述子量子线路和各量子比特及其初态,构建HHL算法对应的量子线路并运行所述量子线路,输出包含所述待排序网络节点的排序结果的量子态S*。具体的,所述确定模块,用于:
确定对应的酉矩阵具体形式为U=eiEt,其中,所述t为常量。
具体的,所述第二确定模块,包括:
第三确定单元,用于确定所述矩阵U中对角元素下方的、待置0的非对角元素的次序;
构造单元,用于针对所述次序中的第k个非对角元素,构造特定量子逻辑门的N阶酉矩阵Uk,以使矩阵Uk…U1U中与该非对角元素同位置的元素置为0,且不改变已置0的非对角元素;
其中,所述特定量子逻辑门包括操作一比特的单量子逻辑门,所述单量子逻辑门携带受其余比特控制的受控信息,1≤k≤r;当所述k=1时,所述单量子逻辑门的酉矩阵由所述量子线路对应的酉矩阵U的元素确定;当1<k≤r时,所述单量子逻辑门的酉矩阵由矩阵Uk-1…U1U的元素确定;并且,当所述第k个非对角元素的次序为所在列最后一个时,同时使矩阵Uk…U1U的相同列中的对角元素置为1。
具体的,所述第三确定单元,用于:
当n=1时,所述酉矩阵U中对角元素下方的、待置0的非对角元素次序为(2,1);其中,所述(2,1)表示坐标为第2行第1列的非对角元素;
当n>1时,根据(n-1)比特量子线路对应的酉矩阵的第一列次序,确定n比特量子线路对应的所述酉矩阵U中对角元素下方的、待置0的非对角元素的第一列次序;其中,第一列中坐标(N/2+1,1)的非对角元素的次序位于第一列最后一个;
基于所述n比特量子线路对应的第一列次序,分别确定所述n比特量子线路对应的第2列至第N/2列中对角元素下方的、待置0的非对角元素的次序;
根据(n-1)比特量子线路对应的酉矩阵中对角元素下方的、待置0的非对角元素的次序,对应确定所述n比特量子线路对应的第(N/2+1)列至第N列中对角元素下方的、待置0的非对角元素的次序。
具体的,所述携带受控信息的单量子逻辑门的表示形式包括:
{Cn…Cm…C1},其中,所述Cm表示0、1、*或单量子逻辑门V,所述m表示量子比特位,m∈[1,n],并且,有且只有一个Cm表示单量子逻辑门V,所述单量子逻辑门V的酉矩阵由所述酉矩阵U确定;
当Cm为0时,表示所述量子线路运行到单量子逻辑门V之前,当该位的量子比特的量子态为0态时,执行单量子逻辑门V;
当Cm为1时,表示所述量子线路运行到单量子逻辑门V之前,当该位的量子比特的量子态为1态时,执行单量子逻辑门V;
当Cm为*时,表示所述量子线路运行到单量子逻辑门V之前,当该位的量子比特的量子态为任意态时,均执行单量子逻辑门V。
具体的,所述第二输出模块,用于:
根据所述子量子线路,构建相位估计运算对应的第一部分量子线路,以将|b>在所述厄米矩阵E的特征空间上分解为:
Figure GDA0002757911110000361
并将所述第一量子比特和所述第二量子比特的初态|0>|b>转化为:
Figure GDA0002757911110000362
其中,所述第一量子比特的数量h取决于相位估计的精度和成功概率,所述第二量子比特的数量为所述n,所述|μj>为所述厄米矩阵E的特征向量,所述βj为|μj>的振幅,所述λj为所述厄米矩阵E的特征值;
构建受控旋转操作对应的第二部分量子线路,以将基态|λj>中的值提取到所述辅助量子比特的量子态振幅上,得到:
Figure GDA0002757911110000371
Figure GDA0002757911110000372
其中,所述辅助量子比特的数量为1,所述C为常数,
Figure GDA0002757911110000373
构建相位估计逆运算对应的第三部分量子线路,以消除|λj>,得到:
Figure GDA0002757911110000374
构建针对所述辅助量子比特的量子测量操作,以使测量到所述辅助量子比特的量子态为|1>时,得到:
Figure GDA0002757911110000375
所述
Figure GDA0002757911110000376
Figure GDA0002757911110000377
为振幅归一化的对应关系;
将所述第一部分量子线路、所述第二部分量子线路、所述第三部分量子线路和所述量子测量操作,依次组成HHL算法对应的量子线路。
与现有技术相比,本实施例提供的一种实现网络节点排序的方法,首先获取数量不大于N的待排序网络节点,其中,N=2n,所述n为正整数;根据所述待排序网络节点间的交互关系,生成N*N维邻接矩阵A;根据所述邻接矩阵A,确定所述邻接矩阵的出度Dout和入度Din;根据所述邻接矩阵A、出度Dout和入度Din,计算厄米矩阵E和
Figure GDA0002757911110000379
其中,所述厄米矩阵E=[Dout+Din-(A+AT)],
Figure GDA00027579111100003710
根据所述厄米矩阵E和
Figure GDA00027579111100003711
的值,利用HHL算法对应的量子线路,输出包含所述待排序网络节点的排序结果的量子态S*,其中,E、S*
Figure GDA00027579111100003712
的满足线性关系:
Figure GDA00027579111100003713
通过运用量子领域的量子叠加特性,并借助HHL算法的指数级加速效果,从而能够提高大规模网络节点排序效率,实现大规模网络节点的快速排序,并且减少HHL算法对应的量子线路的计算量,提高量子线路的计算效率。
本发明实施例还提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项中方法实施例中的步骤。
具体的,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S201:获取数量不大于N的待排序网络节点,其中,N=2n,所述n为正整数;
S202:根据所述待排序网络节点间的交互关系,生成N*N维邻接矩阵A;
S203:根据所述邻接矩阵A,确定所述邻接矩阵的出度Dout和入度Din
S204:根据所述邻接矩阵A、出度Dout和入度Din,计算厄米矩阵E和
Figure GDA0002757911110000381
其中,所述厄米矩阵E=[Dout+Din-(A+AT)],
Figure GDA0002757911110000382
S205:根据所述厄米矩阵E和
Figure GDA0002757911110000383
的值,利用HHL算法对应的量子线路,输出包含所述待排序网络节点的排序结果的量子态S*,其中,E、S*
Figure GDA0002757911110000384
的满足线性关系:
Figure GDA0002757911110000385
具体的,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
与现有技术相比,本实施例提供的一种实现网络节点排序的方法,首先获取数量不大于N的待排序网络节点,其中,N=2n,所述n为正整数;根据所述待排序网络节点间的交互关系,生成N*N维邻接矩阵A;根据所述邻接矩阵A,确定所述邻接矩阵的出度Dout和入度Din;根据所述邻接矩阵A、出度Dout和入度Din,计算厄米矩阵E和
Figure GDA0002757911110000386
其中,所述厄米矩阵E=[Dout+Din-(A+AT)],
Figure GDA0002757911110000387
根据所述厄米矩阵E和
Figure GDA0002757911110000388
的值,利用HHL算法对应的量子线路,输出包含所述待排序网络节点的排序结果的量子态S*,其中,E、S*
Figure GDA0002757911110000389
的满足线性关系:
Figure GDA00027579111100003810
通过运用量子领域的量子叠加特性,并借助HHL算法的指数级加速效果,从而能够提高大规模网络节点排序效率,实现大规模网络节点的快速排序,并且减少HHL算法对应的量子线路的计算量,提高量子线路的计算效率。
本发明实施例还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项中方法实施例中的步骤。
具体的,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
具体的,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S201:获取数量不大于N的待排序网络节点,其中,N=2n,所述n为正整数;
S202:根据所述待排序网络节点间的交互关系,生成N*N维邻接矩阵A;
S203:根据所述邻接矩阵A,确定所述邻接矩阵的出度Dout和入度Din
S204:根据所述邻接矩阵A、出度Dout和入度Din,计算厄米矩阵E和
Figure GDA0002757911110000391
其中,所述厄米矩阵E=[Dout+Din-(A+AT)],
Figure GDA0002757911110000392
S205:根据所述厄米矩阵E和
Figure GDA0002757911110000393
的值,利用HHL算法对应的量子线路,输出包含所述待排序网络节点的排序结果的量子态S*,其中,E、S*
Figure GDA0002757911110000394
的满足线性关系:
Figure GDA0002757911110000395
与现有技术相比,本实施例提供的一种实现网络节点排序的方法,首先获取数量不大于N的待排序网络节点,其中,N=2n,所述n为正整数;根据所述待排序网络节点间的交互关系,生成N*N维邻接矩阵A;根据所述邻接矩阵A,确定所述邻接矩阵的出度Dout和入度Din;根据所述邻接矩阵A、出度Dout和入度Din,计算厄米矩阵E和
Figure GDA0002757911110000396
其中,所述厄米矩阵E=[Dout+Din-(A+AT)],
Figure GDA0002757911110000397
根据所述厄米矩阵E和
Figure GDA0002757911110000398
的值,利用HHL算法对应的量子线路,输出包含所述待排序网络节点的排序结果的量子态S*,其中,E、S*
Figure GDA0002757911110000399
的满足线性关系:
Figure GDA00027579111100003910
通过运用量子领域的量子叠加特性,并借助HHL算法的指数级加速效果,从而能够提高大规模网络节点排序效率,实现大规模网络节点的快速排序,并且减少HHL算法对应的量子线路的计算量,提高量子线路的计算效率。
以上依据图式所示的实施例详细说明了本发明的构造、特征及作用效果,以上所述仅为本发明的较佳实施例,但本发明不以图面所示限定实施范围,凡是依照本发明的构想所作的改变,或修改为等同变化的等效实施例,仍未超出说明书与图示所涵盖的精神时,均应在本发明的保护范围内。

Claims (12)

1.一种实现网络节点排序的方法,其特征在于,包括:
获取数量不大于N的待排序网络节点,其中,N=2n,所述n为正整数;
根据所述待排序网络节点间的交互关系,生成N*N维邻接矩阵A;
根据所述邻接矩阵A,确定所述邻接矩阵的出度Dout和入度Din
根据所述邻接矩阵A、出度Dout和入度Din,计算厄米矩阵E和
Figure FDA0003607000000000011
其中,所述厄米矩阵E=[Dout+Din-(A+AT)],
Figure FDA0003607000000000012
根据所述厄米矩阵E和
Figure FDA0003607000000000013
的值,利用HHL算法对应的量子线路,输出包含所述待排序网络节点的排序结果的量子态S*,其中,E、S*
Figure FDA0003607000000000014
的满足线性关系:
Figure FDA0003607000000000015
2.根据权利要求1所述的方法,其特征在于,所述根据所述待排序网络节点间的交互关系,生成N*N维邻接矩阵A,包括:
确定所述待排序网络节点间的有向加权网络Aij,其中Aij表示节点i与节点j的交互数;
根据所述有向加权网络Aij,构造N*N维邻接矩阵A。
3.根据权利要求2所述的方法,其特征在于,所述确定所述邻接矩阵的出度Dout和入度Din,具体为:
所述邻接矩阵的出度Dout=∑jAij,所述邻接矩阵的入度Din=∑jAji
4.根据权利要求3所述的方法,其特征在于,所述根据所述厄米矩阵E和
Figure FDA0003607000000000018
的值,利用HHL算法对应的量子线路,输出包含所述待排序网络节点的排序结果的量子态S*,具体包括:
获得包括辅助量子比特、第一量子比特、第二量子比特的若干量子比特,其中,所述辅助量子比特和所述第一量子比特的初态置为|0>,所述第二量子比特的初态置为
Figure FDA0003607000000000016
所述bj为所述
Figure FDA0003607000000000017
的第j个元素;
确定所述厄米矩阵E对应的酉矩阵U,将所述矩阵U分解成r个携带受控信息的单量子逻辑门对应的酉矩阵;其中,满足Ur…Uk…U1U=IN,所述Uk为第k个携带受控信息的单量子逻辑门对应的酉矩阵,1≤k≤r,所述
Figure FDA0003607000000000021
所述IN为N阶单位矩阵;
输出包含所述r个携带受控信息的单量子逻辑门的子量子线路,根据所述子量子线路和各量子比特及其初态,构建HHL算法对应的量子线路并运行所述量子线路,输出包含所述待排序网络节点的排序结果的量子态S*
5.根据权利要求4所述的方法,其特征在于,所述确定所述厄米矩阵E对应的酉矩阵U,具体为:
确定对应的酉矩阵具体形式为U=eiEt,其中,所述t为常量。
6.根据权利要求4所述的方法,其特征在于,所述将所述矩阵U分解成r个携带受控信息的单量子逻辑门对应的酉矩阵,包括:
确定所述矩阵U中对角元素下方的、待置0的非对角元素的次序;
针对所述次序中的第k个非对角元素,构造特定量子逻辑门的N阶酉矩阵Uk,以使矩阵Uk…U1U中与该非对角元素同位置的元素置为0,且不改变已置0的非对角元素;
其中,所述特定量子逻辑门包括操作一比特的单量子逻辑门,所述单量子逻辑门携带受其余比特控制的受控信息,1≤k≤r;当所述k=1时,所述单量子逻辑门的酉矩阵由所述量子线路对应的酉矩阵U的元素确定;当1<k≤r时,所述单量子逻辑门的酉矩阵由矩阵Uk-1…U1U的元素确定;并且,当所述第k个非对角元素的次序为所在列最后一个时,同时使矩阵Uk…U1U的相同列中的对角元素置为1。
7.根据权利要求6所述的方法,其特征在于,所述确定所述矩阵U中对角元素下方的、待置0的非对角元素的次序,包括:
当n=1时,所述酉矩阵U中对角元素下方的、待置0的非对角元素次序为(2,1);其中,所述(2,1)表示坐标为第2行第1列的非对角元素;
当n>1时,根据(n-1)比特量子线路对应的酉矩阵的第一列次序,确定n比特量子线路对应的所述酉矩阵U中对角元素下方的、待置0的非对角元素的第一列次序;其中,第一列中坐标(N/2+1,1)的非对角元素的次序位于第一列最后一个;
基于所述n比特量子线路对应的第一列次序,分别确定所述n比特量子线路对应的第2列至第N/2列中对角元素下方的、待置0的非对角元素的次序;
根据(n-1)比特量子线路对应的酉矩阵中对角元素下方的、待置0的非对角元素的次序,对应确定所述n比特量子线路对应的第(N/2+1)列至第N列中对角元素下方的、待置0的非对角元素的次序。
8.根据权利要求4所述的方法,其特征在于,所述携带受控信息的单量子逻辑门的表示形式包括:
{Cn…Cm…C1},其中,所述Cm表示0、1、*或单量子逻辑门V,所述m表示量子比特位,m∈[1,n],并且,有且只有一个Cm表示单量子逻辑门V,所述单量子逻辑门V的酉矩阵由所述酉矩阵U确定;
当Cm为0时,表示所述量子线路运行到单量子逻辑门V之前,当该位的量子比特的量子态为0态时,执行单量子逻辑门V;
当Cm为1时,表示所述量子线路运行到单量子逻辑门V之前,当该位的量子比特的量子态为1态时,执行单量子逻辑门V;
当Cm为*时,表示所述量子线路运行到单量子逻辑门V之前,当该位的量子比特的量子态为任意态时,均执行单量子逻辑门V。
9.根据权利要求4所述的方法,其特征在于,所述根据所述子量子线路和各量子比特及其初态,构建HHL算法对应的量子线路,包括:
根据所述子量子线路,构建相位估计运算对应的第一部分量子线路,以将|b>在所述厄米矩阵E的特征空间上分解为:
Figure FDA0003607000000000031
并将所述第一量子比特和所述第二量子比特的初态|0>|b>转化为:
Figure FDA0003607000000000041
其中,所述第一量子比特的数量h取决于相位估计的精度和成功概率,所述第二量子比特的数量为所述n,所述|μj>为所述厄米矩阵E的特征向量,所述βj为|μj>的振幅,所述λj为所述厄米矩阵E的特征值;
构建受控旋转操作对应的第二部分量子线路,以将基态|λj>中的值提取到所述辅助量子比特的量子态振幅上,得到:
Figure FDA0003607000000000042
其中,所述辅助量子比特的数量为1,所述C为常数,
Figure FDA0003607000000000043
构建相位估计逆运算对应的第三部分量子线路,以消除|λj>,得到:
Figure FDA0003607000000000044
构建针对所述辅助量子比特的量子测量操作,以使测量到所述辅助量子比特的量子态为|1>时,得到:
Figure FDA0003607000000000045
所述|x′>与
Figure FDA0003607000000000046
Figure FDA0003607000000000047
为振幅归一化的对应关系;
将所述第一部分量子线路、所述第二部分量子线路、所述第三部分量子线路和所述量子测量操作,依次组成HHL算法对应的量子线路。
10.一种实现网络节点排序的装置,其特征在于,包括:
获取模块,用于获取数量不大于N的待排序网络节点,其中,N=2n,所述n为正整数;
生成模块,用于根据所述待排序网络节点间的交互关系,生成N*N维邻接矩阵A;
确定模块,用于根据所述邻接矩阵A,确定所述邻接矩阵的出度Dout和入度Din
计算模块,用于根据所述邻接矩阵A、出度Dout和入度Din,计算厄米矩阵E和
Figure FDA0003607000000000051
其中,所述厄米矩阵E=[Dout+Din-(A+AT)],
Figure FDA0003607000000000052
输出模块,用于根据所述厄米矩阵E和
Figure FDA0003607000000000053
的值,利用HHL算法对应的量子线路,输出包含所述待排序网络节点的排序结果的量子态S*,其中,E、S*
Figure FDA0003607000000000054
的满足线性关系:
Figure FDA0003607000000000055
11.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至9任一项中所述的方法。
12.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行所述权利要求1至9任一项中所述的方法。
CN202010821253.0A 2020-08-14 2020-08-14 一种实现网络节点排序的方法及装置 Active CN112073221B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010821253.0A CN112073221B (zh) 2020-08-14 2020-08-14 一种实现网络节点排序的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010821253.0A CN112073221B (zh) 2020-08-14 2020-08-14 一种实现网络节点排序的方法及装置

Publications (2)

Publication Number Publication Date
CN112073221A CN112073221A (zh) 2020-12-11
CN112073221B true CN112073221B (zh) 2022-08-16

Family

ID=73661740

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010821253.0A Active CN112073221B (zh) 2020-08-14 2020-08-14 一种实现网络节点排序的方法及装置

Country Status (1)

Country Link
CN (1) CN112073221B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114819168B (zh) * 2021-01-29 2023-08-04 本源量子计算科技(合肥)股份有限公司 一种矩阵特征值的量子比较方法及装置
CN114819169B (zh) * 2021-01-29 2023-08-08 本源量子计算科技(合肥)股份有限公司 一种矩阵条件数的量子估计方法及装置
CN115879558B (zh) * 2021-09-28 2024-06-14 本源量子计算科技(合肥)股份有限公司 一种多个量子态之间的大小比较方法及装置
CN115879557B (zh) * 2021-09-28 2024-06-14 本源量子计算科技(合肥)股份有限公司 基于量子线路的数据大小比较方法、装置及量子计算机
CN115879559B (zh) * 2021-09-28 2024-06-14 本源量子计算科技(合肥)股份有限公司 多个量子态之间的等值关系判断方法、装置及量子计算机
CN116108593A (zh) * 2021-11-11 2023-05-12 合肥本源量子计算科技有限责任公司 基于量子技术的作战网络节点的重要性判断方法及装置
CN114511092B (zh) * 2022-02-07 2023-04-18 上海图灵智算量子科技有限公司 一种基于量子线路的图注意力机制实现方法
CN115905778B (zh) * 2022-11-15 2024-08-09 四川大学 一种基于量子计算的线性方程加速方法及系统
CN116681138B (zh) * 2023-05-29 2024-06-14 本源量子计算科技(合肥)股份有限公司 一种数据大小比较任务的处理方法、装置、存储介质及电子装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019078907A1 (en) * 2017-10-18 2019-04-25 Google Llc SIMULATION OF QUANTUM CIRCUITS
CN109962775A (zh) * 2017-12-22 2019-07-02 山东量子科学技术研究院有限公司 量子密码网络密钥生成控制方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104376015B (zh) * 2013-08-15 2020-03-17 腾讯科技(深圳)有限公司 关系网络中节点的处理方法及装置
WO2015179753A1 (en) * 2014-05-23 2015-11-26 The Regents Of The University Of Michigan Methods for general stabilizer-based quantum computing simulation
CA3053531A1 (en) * 2017-02-17 2018-08-23 Kyndi, Inc. Method and apparatus of machine learning using a network with software agents at the network nodes and then ranking network nodes
US10581762B2 (en) * 2017-12-06 2020-03-03 Mellanox Technologies Tlv Ltd. Packet scheduling in a switch for reducing cache-miss rate at a destination network node
CN110719106B (zh) * 2019-09-27 2021-08-31 华中科技大学 一种基于节点分类排序的社交网络图压缩方法及系统
CN110826719B (zh) * 2019-10-14 2022-08-16 合肥本源量子计算科技有限责任公司 一种量子程序的处理方法、装置、存储介质和电子装置
CN111259206B (zh) * 2020-01-16 2024-03-22 中国传媒大学 一种有向加权网络中多重影响力矩阵赋权方法
CN111461334B (zh) * 2020-03-30 2021-10-15 北京百度网讯科技有限公司 量子电路的处理方法、装置及设备

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019078907A1 (en) * 2017-10-18 2019-04-25 Google Llc SIMULATION OF QUANTUM CIRCUITS
CN109962775A (zh) * 2017-12-22 2019-07-02 山东量子科学技术研究院有限公司 量子密码网络密钥生成控制方法

Also Published As

Publication number Publication date
CN112073221A (zh) 2020-12-11

Similar Documents

Publication Publication Date Title
CN112073221B (zh) 一种实现网络节点排序的方法及装置
CN112068798B (zh) 一种实现网络节点重要性排序的方法及装置
CN113850389A (zh) 一种量子线路的构建方法及装置
CN111563599A (zh) 一种量子线路的分解方法、装置、存储介质及电子装置
CN111582491B (zh) 一种量子线路的构建方法及装置
CN114418105B (zh) 一种基于量子线路处理量子应用问题的方法及装置
CN112633508B (zh) 一种量子线路的生成方法、装置、存储介质及电子装置
CN112232513B (zh) 一种量子态的制备方法及装置
CN114764549B (zh) 基于矩阵乘积态的量子线路模拟计算方法、装置
CN112114776A (zh) 一种量子乘法运算方法、装置、电子装置及存储介质
CN113222155B (zh) 一种量子线路的构建方法、装置、电子装置和存储介质
CN112633507A (zh) 一种将复向量编码到量子线路的方法及装置
CN115311515A (zh) 混合量子经典的生成对抗网络的训练方法及相关设备
CN113222150A (zh) 一种量子态的变换方法及装置
CN114764619A (zh) 一种基于量子线路的卷积操作方法及装置
CN115346080B (zh) 基于量子计算的图像处理方法及相关设备
CN114418104B (zh) 一种量子应用问题的处理方法及装置
CN113222151A (zh) 一种量子态的变换方法及装置
CN115879562B (zh) 一种量子程序初始映射的确定方法、装置及量子计算机
CN114881238A (zh) 量子鉴别器的构造方法、装置、介质及电子装置
CN114372539A (zh) 基于机器学习框架的分类方法及相关设备
CN115983392A (zh) 量子程序映射关系的确定方法、装置、介质及电子装置
CN115809707A (zh) 量子比较运算方法、装置、电子装置及基础算术组件
CN114819167A (zh) 一种稀疏线性系统的稀疏近似逆量子预处理方法及装置
CN114692880A (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