发明内容
本发明的目的在于避免现有技术中的不足之处而提供一种能够计算选票的叠加状态的基于量子选票的多数制计票方法。
因此,根据本发明公开的一个方面,一种基于量子选票的多数制计票方法,包括以下步骤:
S1:获取各个投票者的量子选票;量子选票采用二维希尔伯特空间上的密度算子来表示相互对立的二元所对应的量子态;
S2:把获取的量子选票分别发送到各个量子计票单元中;
S3:根据多数制投票模型计算出对应的量子运算表达;多数制投票模型由Toffoli门和泡利X门构成;
S4:各个量子计票单元根据对应的量子运算表达分别进行计算基的测量,确定对应的计算基的量子比特状态;
S5:获取各个计算基的对应量子比特状态,统计出投票结果。
具体的,计算基为由|0>和|1>组成的正交基{|0>,|1>};其中|0>和|1>为量子比特的两种纯态。
更具体的,步骤S5包括以下步骤:
S51:分别把各个计票器的测量结果发送到其它的各个计票器中。
更具体的,步骤S5还包括:
S52:各个计票器分别对测量结果进行统计;测量结果为“1”的数量超过设定的闽值,则则投票结果为“通过”;反之则投票结果为“不通过”。
更具体的,闽值为50%。
其中,ρ表示二维希尔伯特空间上的密度算子,
AND和0R均为逻辑运算符号,分别表示逻辑与的运算和逻辑或的运算。
具体的,当且仅当ρ
1,…,ρ
n中的n个量子态中至少存在
个的量子比特状态为|1><1|时,计票器的测量结果为“1”。
一种采用上述基于量子选票的多数制计票方法的装置,包括:信息采集模块、量子选票生成模块、信息汇总模块以及多个量子计票单元;信息采集模块用于采集选票信息;量子选票生成模块内置有量子选票模型,用于根据确定的选票信息生成量子选票,并分别把选票发送到各个量子计票单元;量子计票单元用于根据确定的量子运算表达进行计算基的测量,确定计算基的量子比特状态;信息汇总模块用于根据各个计算基的量子比特状态,计算出投票结果。
根据本发明公开的再一方面,提供了一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,处理器执行指令时实现如上基于量子选票的多数制计票方法的步骤。
根据本发明公开的另一方面,提供了一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现如上基于量子选票的多数制计票方法的步骤。
本申请的有益效果:一种基于量子选票的多数制计票方法,采用二维希尔伯特空间上的密度算子来表示相互对立的二元所对应的量子态;并通过多个计算单元分别对获取的所有选票根据确定的量子运算表达进行计算基的测量,确定计算基的量子比特状态;最终根据各个计算基的量子比特状态,计算出投票结果;实现了选票量子态化的应用,且计算简单,易于实现。
具体实施方式
以下将描述本发明的具体实施方式,需要指出的是,在这些实施方式的具体描述过程中,为了进行简明扼要的描述,本说明书不可能对实际的实施方式的所有特征均作详尽的描述。应当可以理解的是,在任意一种实施方式的实际实施过程中,正如在任意一个工程项目或者设计项目的过程中,为了实现开发者的具体目标,为了满足系统相关的或者商业相关的限制,常常会做出各种各样的具体决策,而这也会从一种实施方式到另一种实施方式之间发生改变。此外,还可以理解的是,虽然这种开发过程中所作出的努力可能是复杂并且冗长的,然而对于与本发明公开的内容相关的本领域的普通技术人员而言,在本发明揭露的技术内容的基础上进行的一些设计,制造或者生产等变更只是常规的技术手段,不应当理解为本发明的内容不充分。
除非另作定义,权利要求书和说明书中使用的技术术语或者科学术语应当为本发明所属技术领域内具有一般技能的人士所理解的通常意义。本发明专利申请说明书以及权利要求书中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“一个”或者“一”等类似词语并不表示数量限制,而是表示存在至少一个。“包括”或者“包含”等类似的词语意指出现在“包括”或者“包含”前面的元件或者物件涵盖出现在“包括”或者“包含”后面列举的元件或者物件及其等同元件,并不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,也不限于是直接的还是间接的连接。
请参阅图1,本实施例提出一种基于量子选票的多数制计票方法,包括以下步骤:
S1:获取各个投票者的量子选票;所述量子选票采用二维希尔伯特空间上的密度算子来表示相互对立的二元所对应的量子态;
S2:把获取的量子选票分别发送到各个量子计票单元中;
S3:根据多数制投票模型计算出对应的量子运算表达;多数制投票模型由Toffoli门和泡利X门构成;
S4:各个量子计票单元根据对应的量子运算表达分别进行计算基的测量,确定对应的计算基的量子比特状态;
S5:获取各个计算基的对应量子比特状态,统计出投票结果。
具体的,所述计算基为由|0>和|1>组成的正交基{|0>,|1>};其中所述|0>和|1>为量子比特的两种纯态。
更具体的,所述步骤S5包括以下步骤:
S51:分别把各个计票器的测量结果发送到其它的各个计票器中。
S52:各个计票器分别对所述测量结果进行统计;测量结果为“1”的数量超过设定的闽值,则则投票结果为“通过”;反之则投票结果为“不通过”。所述闽值为50%。
通过步骤S51和S52,能让该投票方法更具备一般性,可通过调节计票器的数量来调控计票效率与计票的精确性。如假定有n台计票器。当n=1时,则不需要将测量结果发给其他计票器,从而计票效率会比较高,但另一方面,这种情况下投票的结果完全就由一次测量的结果而决定,无法通过单次的测量结果得到一个较精确的0和1的概率分布。当n是个比较大的整数时(比如100),一方面计票的效率降低了,但另一方面投票的结果是由100次测量的结果共同决定的,而这100次测量所产生的0和1的概率分布比1次测量所产生的0和1的概率分布更精确地反映了投票的结果。
具体的,在一个量子计票单元中,每一台计票器都是台小型量子计算设备,能够执行3个量子比特的Toffoli门和泡利X门,利用Toffoli门和泡利X门来构成上述多数制投票模型;因此,利用Toffoli门,确定量子合取运算模型:
其中,其中,ρ和σ均表示二维希尔伯特空间上的密度算子,
为矩阵间的运算符号,表示张量积的运算,AND为逻辑运算符号,表示逻辑与的运算,TOF为量子门的运算符号,表示Toffoli门运算,Tr
1,2表示作用于第一和第二个量子比特上的偏轨迹运算,简单的说就是抛弃第一和第二个量子比特同时对第三个量子比特不做任何改变。
量子合取运算可以很自然地扩展到多个量子比特:
利用泡利X门来定义量子否定运算,泡利X门的矩阵表示如下:
通过泡利X门,确定量子否定运算模型NOT(ρ)=XρX;
其中,NOT(|0><0|)=X|0><0|X=|1><1|。
结合量子否定运算模型和量子合取运算模型确定量子析取运算模型:
其中,ρ和σ均表示二维希尔伯特空间上的密度算子,
为矩阵间的运算符号,表示张量积的运算,AND、0R、NOT均为逻辑运算符号,分别表示逻辑与的运算、逻辑或的运算和否定运算。
量子析取运算可以很自然地扩展到多个量子比特:
利用量子合取、析取运算,我们进一步定义多数制投票公式。我们从3个投票者的多数制投票公式开始。3个投票者的多数制投票模型为:
进一步的,再将投票者的数量从3个拓展到任意奇数n个。n个投票者的多数制投票模型为:
其中,ρ表示二维希尔伯特空间上的密度算子,
AND和OR均为逻辑运算符号,分别表示逻辑与的运算和逻辑或的运算;
每一个
都对应从n个数中取出
个数的一个组合;形如
这样的合取公式有
个。每一个ρ
i都在上述公式中出现了
次。
更进一步的,在本实施例中,设定的通过的闽值为50%,因此,在上述多数制投票模型中,当且仅当ρ
1,…,ρ
n中的n个量子态中至少存在
个的量子比特状态为|1><1|时,计票器的测量结果为“1”。
例如有一个提案,m台计票器{C1,…,Cm},n个投票者{V1,…,Vn}。
1、每一个投票者都将他的选票都用一个2维希尔伯特空间上的密度算子表示,记为{ρ1,…,ρn}。
选票ρn采用二维希尔伯特空间上的密度算子来表示,即ρn=a|1><1|+b|0><0|,a表示该选票赞成的程度,b表示该选票反对的程度,其中,a>0,b>0,且满足a+b=1。以1表示赞成提案,0表示反对提案,若投票者对提案持80%赞成,20%反对的态度,这种态度可以用0.8|1><1|+0.2|0><0|这样的量子态来表示。
由于量子态是不可克隆的,因此,需要对每一台投票器C
i,每一个投票者V
j都制备
个ρ
n并将他们发送给C
i。
2、每一台计票器C
i都对它所收到的选票(包括
个ρ
1,
个ρ
2,…,
个ρ
n)根据确定的多数制投票模型
进行运算,计算出对应的量子运算表达。
3、每一台计票器C
i都对
进行计算基{|0>,|1>}测量。如果测量结果为0,则记录0;如果测量结果为1,则记录1。其中,当且仅当ρ
1,…,ρ
n中的n个量子态中至少存在
个的量子比特状态为|1><1|时,计票器的测量结果为“1”;反之为0。
4、每一台计票器都将上一步记录的数字发给其他计票器。
5、每一台计票器都根据它所收到的所有记录而输出:若有一半以上的记录为1,则输出“通过”;反之则输出“不通过”。
其中,上述的各台计票器可分布在不同的地方或区域,因此,实现多台计票器的获得相同的记录结果,并同时输出记录,可保证不同地方的选民都能在同一时间很方便的知道投票的结果。
请继续参阅图2,示出了一种基于量子选票的多数制计票装置,在本实施例中,该装置可以包括或被分割成一个或多个程序模块,一个或者多个程序模块被存储于存储介质中,并由一个或多个处理器所执行,以完成本发明,并可实现上述基于量子选票的多数制计票方法。本发明所称的程序模块是指能够完成特定功能的一系列计算机程序指令段,比程序本身更适合于描述上述基于量子选票的多数制计票方法在存储介质中的执行过程。以下描述将具体介绍本实施例各程序模块的功能。上述装置包括:信息采集模块、量子选票生成模块、信息汇总模块以及多个量子计票单元。
信息采集模块用于采集选票信息。
量子选票生成模块内置有量子选票模型,用于根据确定的选票信息生成量子选票,并分别把选票发送到各个量子计票单元。
量子计票单元用于根据确定的量子运算表达进行计算基的测量,确定计算基的量子比特状态。
信息汇总模块用于根据各个计算基的量子比特状态,计算出投票结果。
具体的,多个量子计票单元可以分置与多个不同的计票器中,也可以集成在同一个计票器中。若分置于不同的计票器中,每一个计票器只要能够执行3个量子比特的运算,就能满足运算需求。
现有的量子投票机制所需要操纵的量子比特数会随着投票者的数量的增长而指数增长,这就令其物理实现变得极为困难。而本发明中,所需操纵的量子比特数只有3个,从而在物理上较为容易实现。
本实施例还提供一种计算机设备,如可以执行程序的智能手机、平板电脑、笔记本电脑、台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。本实施例的计算机设备20至少包括但不限于:可通过系统总线相互通信连接的存储器21、处理器22,如图3所示。需要指出的是,图3仅示出了具有组件21-22的计算机设备20,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
本实施例中,存储器21(即可读存储介质)包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器21可以是计算机设备20的内部存储单元,例如该计算机设备20的硬盘或内存。在另一些实施例中,存储器21也可以是计算机设备20的外部存储设备,例如该计算机设备20上配备的插接式硬盘,智能存储卡(SmartMediaCard,SMC),安全数字(SecureDigital,SD)卡,闪存卡(FlashCard)等。当然,存储器21还可以既包括计算机设备20的内部存储单元也包括其外部存储设备。本实施例中,存储器21通常用于存储安装于计算机设备20的操作系统和各类应用软件,例如实施例中的基于量子选票的多数制计票装置的程序代码等。此外,存储器21还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器22在一些实施例中可以是中央处理器(CentralProcessingUnit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器22通常用于控制计算机设备20的总体操作。本实施例中,处理器22用于运行存储器21中存储的程序代码或者处理数据,例如运行基于量子选票的多数制计票装置,以实现实施例一的基于量子选票的多数制计票方法。
本实施例还提供一种计算机可读存储介质,如闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘、服务器、App应用商城等等,其上存储有计算机程序,程序被处理器执行时实现相应功能。本实施例的计算机可读存储介质用于存储基于量子选票的多数制计票装置,被处理器执行时实现实施例一的基于量子选票的多数制计票方法。
综上所述,根据示例性实施例,本申请的一种基于量子选票的多数制计票方法,采用二维希尔伯特空间上的密度算子来表示相互对立的二元所对应的量子态;并通过多个计算单元分别对获取的所有选票根据确定的量子运算表达进行计算基的测量,确定计算基的量子比特状态;最终根据各个计算基的量子比特状态,计算出投票结果;实现了选票量子态化的应用,其能表达出选民的不确定的、模糊的偏好,不被局限在二元的确定性的表达中,且计算简单,易于实现。
以下为与本申请相关的定义的说明:
定义1【希尔伯特空间】一个有穷维希尔伯特空间H是:
一个复向量空间,也就是说,对于任意φ,ψ∈H以及任意
都有aφ+bψ∈H。带有标量积运算<·|·>:
使得对任意φ,ψ,χ∈H以及任意
都有
<φ|φ>≥0,
<φ|φ>=0当且仅当φ=0,
<φ|aψ+bχ>=a<φ|ψ>+b<φ|χ>。
一个量子系统在数学上由一个希尔伯特空间表示。一个量子系统的状态由希尔伯特空间里的向量表示。用狄拉克记号|φ>表示一个向量,用||φ||表示|φ>的范数,并通过如下方式计算:
范数为1的向量称之为单位向量。
定义2【正交基】一个希尔伯特空间H的一个正交基是一个两两正交的单位向量集合{|φi>},也就是说,对于任意|φi>,|φj>我们都有<φi|φj>=0并且<φi|φi>=1。
量子比特是量子信息的基本单位,正如比特是经典信息的基本单位。量子比特作为一个物理系统在数学上由2维希尔伯特空间
表示。常用的量子比特状态有|0>和|1>,其中
量子比特的计算基是指由|0>和|1>组成的正交基。
给定一个希尔伯特空间H上的向量|φ>,它的对偶<φ|是一个从H到复数集
的函数,其作用方式是将|ψ>∈H映射成<φ|ψ>。等价的,<φ|可以看做是|φ>转置共轭:若
则
这里c
1,…,c
n是复数,
表示他们的共轭。例如<0|=[1 0],<1|=[0 1],
多个量子比特所形成的系统由单个量子比特的张量积表示:
比如|0>和|1>的张量积是
通常为了简便我们将
记作|a,b>。
除了向量,矩阵也可以做张量积运算:
|0>和|1>是量子比特的两个常用的纯态,更一般的量子比特的混合态在数学上由密度算子来表示。密度算子的定义较为复杂,我们需要先介绍算子、伴随、投影、轨迹等概念:
定义4【算子】一个希尔伯特空间H上的算子是一个从H到H的线性映射。
若H是个n维希尔伯特空间,则每一个n×n矩阵都是H上的算子.例如
是
上的算子
定义5【伴随】给定一个希尔伯特空间H上的算子A,它的伴随A*是一个满足如下条件的H上的算子:对任意φ,ψ∈H都有<A*φ|ψ>=<φ|Aψ>。
定义6【投影】一个希尔伯特空间H上的投影P是一个满足如下条件的算子:PP=P并且P=P*。
定义7【轨迹】给定一个希尔伯特空间H上的算子A,其轨迹由如下方式计算:
Tr(A)=∑i<i|A|i>,其中{|i>}是H的一个正交基。
根据概念,定义半正定算子和密度算子:
定义8【半正定算子】一个希尔伯特空间H上的算子A是个半正定算子当如下条件满足:存在H上的算子B使得A=B*B。
定义9【密度算子】一个希尔伯特空间H上的半正定算子A是个密度算子当如下条件满足:A=A*并且Tr(A)=1。
例如
和
都是密度算子。事实上,对任何一个单位向量|v>,|v><v|都是一个密度算子。
定义10【Toffoli门】Toffoli门是个希尔伯特空间
上的算子,其计算方式如下:
其中x
i∈{0,1}。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
流程图中或在此以其它方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
本技术领域的普通技术人员可以理解,实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。