【《四量子比特压缩电路IBM QE云平台仿真分析案例》7000字】_第1页
【《四量子比特压缩电路IBM QE云平台仿真分析案例》7000字】_第2页
【《四量子比特压缩电路IBM QE云平台仿真分析案例》7000字】_第3页
【《四量子比特压缩电路IBM QE云平台仿真分析案例》7000字】_第4页
【《四量子比特压缩电路IBM QE云平台仿真分析案例》7000字】_第5页
已阅读5页,还剩6页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

四量子比特压缩电路IBMQE云平台仿真分析案例目录TOC\o"1-3"\h\u7196四量子比特压缩电路IBMQE云平台仿真分析案例 1239261.1IBMQE量子计算云平台使用说明 1137611.2IBMQE云平台运行四量子比特压缩电路 7122951.3运行结果及分析 10在经典计算机的制作过程中,当芯片电路做的足够小,最后到达量子极限之后,电子的行为就不能简单地用“电流”这样的简单概念来描述了。电子会展示它的量子特性,现有的集成电路设计规则也就不再适用于这类新情况的出现。这个极限就是经典计算机的极限,随着蚀刻技术的不断进步和发展,芯片电路的大小正在一步步靠近这个极限。现如今只能在工艺技术上尽可能降低量子效应对电路性能的影响,从而延长摩尔定律的寿命。另一方面,就是学会接受和利用量子特性,使用粒子的特殊量子特性来进行计算。这就不仅仅局限于半导体里的电子了,超导线圈,冷原子,光子都有望发展成为信息计算的载体,以此为基础建立起来的计算机就是量子计算机。目前,量子计算机的研究热度越来越高,许多国家和研究机构都在花费大量的人力物力尝试突破量子计算机的制作和使用。但由于存在造价费昂贵,对环境要求高等原因,量子计算机暂时还无法进行大范围的建造和使用。所以云平台的出现可以改善这一问题对科研工作的影响,可以为研究人员提供远程快捷的方法使用量子计算机进行量子计算和量子信息方面的研究。IBM公司在2016年发布了通用量子计算机云平台:IBMQuantumExperience,这是第一个由IBM公司提供的商业量子计算服务,科研人员可以通过云计算技术远程使用该量子计算平台进行量子电路搭建和运行。用户只需要在官方平台上注册账号信息,就可以立刻免费使用五量子比特以内的量子计算机。目前,IBMQE量子计算云平台共包括数十余个量子芯片、量子模拟器、Qiskit框架、应用层等全栈量子云结构。IBMQE平台是建立在云计算的基础上,先分解用户提交的待执行计算任务,然后按照算法运算分配到服务器进行数据处理和计算,最后给用户返回计算结果。在利用云计算的基础上,可以使用云平台上的虚拟内存和主流架构技术对量子计算进行仿真,从而降低了研究成本。1.1IBMQE量子计算云平台使用说明IBMQE量子计算云平台有非常简洁明了的界面,使用用户名和密码登录账号之后,有多种选择,选择Composer选项卡即可看到电路编辑界面。单击淡蓝色Circuits按钮,可以新建量子电路设计面板,也可以对之前存储过的量子电路图进行调用和修改。第一栏选项卡包括对文件打开存储、编辑、检查、辅助视图设置和帮助查询功能。紧接着是所有可用量子逻辑门,IBMQE量子计算云平台为用户提供了非常丰富的逻辑门,包括Classicalgates、Phasegates、Non-unitaryoperations、Hadamardgate和Quantumgates。点击Operationsglossary按钮就可以获得每一个量子逻辑门的功能和使用方法。灰色方框内的Non-unitaryoperations并不是真正意义上的量子逻辑门,而是在电路设计过程中有可能会用到的一些操作,比如置零和测量。之后IBMQE云平台进行了更新,将量子逻辑门进行精简整理,并且页面布局进行了更改。逻辑门功能并没有减少,而是增加了用户使用时的自主权。例如在Non-unitaryoperations中增加了“控制”操作,也就是CNOT门当中的实心圆表示控制比特,与其他量子逻辑门操作进行组合,就可以实现控制逻辑门的效果。图SEQ图\*ARABIC1IBMQE量子云平台功能栏和逻辑门选择区这里,本文用一个最简单的电路进行举例介绍,如图6所示。这是一个三量子比特电路,并且随机放置了非门、CNOT门和一个测量操作。在编辑量子电路界面中,可以看到用来摆放量子逻辑门的横线,并且每条横线表示了一个量子比特的运算过程。左侧显示了未命名的量子比特,从零开始编号:q0、q1、q2,依次表示量子位1、量子位2和量子位3,点击加号即可增加量子比特数量。需要注意的是每个量子比特的初始状态为“|0⟩”,如果需要特定的初始态,需要使用量子逻辑门进行初始态的制备。最下方是折叠起来的经典寄存器c3,无论是多少数量的量子比特,都是用两条紧挨着的横线表示,而c旁边的数字则表示了该经典寄存器的大小。最后是Z方向上对量子位3进行测量操作,测量符号有一根箭头指向经典寄存器,并且标有该量子比特的序号,表示对该量子比特进行测量,并且将测量结果保存在经典寄存器中。每个量子电路中应至少有一次测量操作才可以在云平台上运行。图SEQ图\*ARABIC2(a)示例电路量子电路图(b)示例电路的OpenQASM代码一方面可以使用量子编辑器(QuantumComposer)界面上的模块进行量子电路中各逻辑门的放置和设置,另一方面还可以使用量子汇编语言(OpenQuantumAssemblyLanguage,OpenQASM)表示量子电路设置的全部内容。量子汇编语言是一种专门设计用于描述量子电路的自定义编程语言。与量子编辑器相同的是,OpenQASM是一种比计算机代码更高级的用于指定量子程序的语言。但与量子编辑器不同的则是,它既不是图形用户界面,也不是特定于用户界面的,更容易实现可以直接复制一段特定程序的这个目标。这些程序可以复制到很多量子模拟器或者IBMQX云平台中使用,例如QuantumComposer可以将OpenQASM中的程序作为输入,并将其转换为图形视图。同样,对于QuantumComposer中指定的每个程序而言,也可以在IBMQX用户界面上轻松访问OpenQASM中的等效程序。在量子编辑器中进行量子逻辑门放置和设置时,OpenQASM的代码区域会自动生成所对应的代码。例如,在三量子比特的量子电路中,在左边竖列中增加量子比特的数目时,OpenQASM中的量子寄存器声明和经典寄存器声明中的数值都会由3变为4。在量子电路中增加或者减去量子逻辑门时,OpenQASM中也会出现或者减少相应语句。这里使用的是OpenQASM2.0,如图6所示。OpenQASM2.0的语法类似于C语言:注释是每行一个,并以“//”开头;空格不重要;区分大小写;程序中的每一行都必须以分号结尾。此外还需满足,每个程序都必须要以OpenQASM2.0开头;使用IBMQX时,必须给出include"qelib1.inc";头文件。OpenQASM所做的只是在include位置复制文件的内容。该文件的路径时当前程序的相对路径。表7中给出常用的OpenQASM2.0操作说明。表SEQ表\*ARABIC1读写OpenQASM2.0程序涉及的操作说明操作include头文件include"qelib1.inc";声明一个量子寄存器(qregname可以任意自取;k为量子比特总数目)qregqregname[k];声明一个经典寄存器(cregname可以任意自取;k为量子比特总数目)cregcregname[k];单量子比特逻辑门(在IBMQX上包含了qelib1.inc头文件时可用)h,t,a,x,y,z等单量子比特逻辑门操作语法(gate表示量子逻辑门名称,i表示量子位)gateqregname[i];两个量子比特的CNOT门操作(control与target表示量子位)cxqregname(control),qregname(target);可用的测量操作(i表示量子位)measureqregname[i]->cregname[i];屏障操作(args是以逗号分隔的量子比特列表)Barrierargs;将量子比特重置为|0⟩resetqregname[i](注:i是从0开始的整数计数器,它指定程序要引用的量子寄存器或着经典寄存器中的量子比特或者量子位;k是大于0的整数计数器,用于指定声明时经典寄存器或是量子寄存器的大小。qregname为量子寄存器名称;cregname表示经典寄存器名称)。IBMQX云平台还提供了多种辅助功能:结果预测和检查功能。在放置量子电路元件的过程中,屏幕下方会实时出现一个直方图(如图7所示)用来显示该量子电路的预测结果,以方便用户对电路仿真结果与理论结果进行对比,从而对电路结构进行及时的调整和补充。需要重点注意的是,预测结果直方图的横坐标所表示的量子态状态不是普遍情况下从左向右表示量子位0,1和2,而是从右向左表示量子位0,1和2。也就是说,预测直方图中的第二列“001”表示的量子态为|100⟩,而不是|001⟩。这与我们常用的数学习惯有些不同,所以需要格外注意。预测结果直方图的横坐标为可能出现量子态的所有情况,这与量子比特的数量有关。对于一个n个量子比特参与计算的量子电路而言,其预测结果直方图的横坐标的数量为2n图SEQ图\*ARABIC3示例电路的预测结果直方图检查功能(Inspector)是IBMQX云平台另一个独具特色并且实用性很强的功能,如图8所示。在功能栏中点击“Inspector”按键,就可以对当前的量子电路进行每个步骤的检查。但是开启检查功能时的量子电路是无法进行更改的,如需更改必须退出检查功能界面。开启检查功能之后,所在的量子电路元件的颜色会发生变化,量子比特数量、量子逻辑门的放置和设置并不会发生任何变化。检查功能是通过控制量子门的运算数量以及此情况下的预测测量概率直方图实现的。在图8当中,左侧的非门和CNOT门显示彩色,而右侧的Toffoli门以及对q2的测量操作为灰色,这表示此时所显示的预测测量概率直方图只表示电路运行了非门和CNOT门这两个量子逻辑门操作的结果,并不执行后方的Toffoli门以及对q2的测量操作。其中CNOT门被蓝色方框选中,这表示该量子逻辑门为此次运算预测时,量子电路所运行的最后一个量子逻辑门。检查功能的优势在于,当量子电路中的量子逻辑门数量较多并且量子电路的最终预测结果与计算结果出现偏差时,可以通过对量子电路进行逐步运行,从而找出量子电路存在的逻辑错误。其中,按钮“|<”表示只运行量子电路中的第一个操作;按钮“<”表示将量子电路所运行的最后一个量子逻辑门向左移一位;按钮“>”表示将量子电路所运行的最后一个量子逻辑门向右移一位;按钮“>|图SEQ图\*ARABIC4示例电路的检查操作演示量子电路设计完成后,就需要提交到IBMQE云平台上进行运算。点击右上角蓝色按钮“setupandrun”后,需要先对运行环境进行设置。用户第一步需要选择运行的系统或是模拟器,他们有的是用地点进行命名,有的是通过可实现功能进行命名。在每一个系统或是模拟器的下方,都展示了它们的详细信息,比如模拟器状态是处于在线还是离线;待处理的工作总数为多少个,方便用户选择待处理工作数较少的系统或是模拟器以减少排队等待的时间;可提供的最多量子位数量,免费注册用户可使用的最大量子比特数量为5个。用户第二步需要设置“shots”值,由于量子信息的特殊性质,“shots”值的不同会对实验结果产生一些影响,选择合适的“shots”值有利于使用者得到更好的实验效果。还有一些可选的内容可以进行设置,包括此次运行任务的命名和备注,可以方便多次试验之后查找结果。设置完成后继续点击右下角的蓝色运行按钮,此次实验内容完成所有的设置和提交部分,此时左边的任务栏会显示所提交的运行申请。如果选择的系统或模拟器的待处理工作总数为零,则会直接运行用户所提交的任务申请;如果选择的系统或模拟器的待处理工作总数不为零,则会显示任务被挂起,需要排队等待,系统或模拟器会逐一执行队列中的任务。运行结束后,此项任务中会显示一个绿色的对号标记,说明提交的任务已经执行完毕,点击查看详情按钮即可查看所有运行数据结果。运行结果页面的第一部分显示系统默认为此次任务的命名,用户可以根据提示对此次实验名称进行修改,并且添加标签进行备注。运行结果页面的第二部分显示实验的具体细节的数据,例如提交任务到任务完成的总时长、运行时间、运行系统名称、“shots”数,电路转换时间,排队等待时间以及运行时间等内容。运行结果页面的第三部分显示该量子电路的测量结果直方图,如图9所示。其中,测量结果直方图的横坐标表示测量得到的量子态,纵坐标表示测量中该量子位的测量频率。测量结果直方图的横坐标为测量所得的量子态的所有情况,这与量子比特的数量和测量操作的数量有关。对于一个n个量子比特参与计算的量子电路而言,对它的所有量子位进行测量,也就是说设置n个测量操作,其测量结果直方图的横坐标的数量为2n个,也就是该量子态空间的希尔伯特空间的维度。如果只对它的部分量子比特进行测量操作,只设置k(0<k<n)个测量操作,则系统会将未设置测量操作的量子位直接设置成0,所得到的量子比特状态数量为2k个。由于在演示电路当中只对第三个量子位执行测量操作,所以在横坐标上的量子位中第一个量子位和第二个量子位都被显示为默认值0。由于IBMQE云平台上对量子位的表示顺序为从右至左,所以横坐标有两种情况分别为“000”和“100”,分别表示第三个量子位测量结果为|0⟩和|1⟩。如果对三个量子位都执行测量操作(在量子电路设计图中在三个量子比特的最后都放置一个测量操作),此时的测量结果直方图的横坐标就会有8种量子态(三量子比特系统的希尔伯特空间维度是8):000,001,010,011,100,101,110和111。对比图7预测结果直方图和图9测量结果直方图,在预测直方图中,只有量子态|111⟩的预测概率为100%,这是符合量子电路运算结果的。但是在测量结果直方图中出现了测量结果为|0⟩的情况,并且出现的频率是测量结果为图SEQ图\*ARABIC5示例电路运行后的测量结果运行结果页面的第四部分显示原电路和转换后电路的三种形式,分别是电路图示、Qasm和Qiskit。对于Toffoli门这类较为复杂的量子逻辑门而言,需要将其分解为CNOT门、RZ门和X门等简单量子逻辑门的组合。在提交运行任务后,系统会首先对提交的量子电路图进行转换,将复杂的量子逻辑门转换为可以在云平台上运行的量子逻辑门的组合。如图10所示,除去第一列的非门和第二列的CNOT门是原电路逻辑门的直接应用,剩余的所有量子逻辑门都是对Toffoli门的转换结果。IBMQE云平台将复杂量子逻辑门集合到一个按钮上,增加量子电路和代码的可读性,方便了用户在使用时设置和调整逻辑门。图SEQ图\*ARABIC6示例电路的转换后电路图1.2IBMQE云平台运行四量子比特压缩电路IBMQE云平台中对每个量子比特设定的的初始状态都是“|0⟩”,而本文设计的四量子比特压缩电路需要有四个相同制备的量子态输入:|ψ⟩=α|0⟩ |σ⟩1,2,3,4= 14|1100⟩+ 14|0011⟩+此四维量子比特系统的密度矩阵如图11所示,每个量子态的z值都相同为116将每个量子比特初始态设定为|ψ⟩=12|0⟩+12|1⟩有两个好处。首先,易于在IBMQE云平台上实现初始态的设置,只需增加Hadamard门就可以实现,无需其他的参数设置。其次,在量子电路搭建过程中方便检查电路功能正确性。根据式3-12可得,压缩后的得到的五个量子态为α4|0000⟩、2α3β|0100⟩、6α2β2|1000⟩图SEQ图\*ARABIC7四量子比特压缩前密度矩阵将四维量子比特系统状态|σ⟩1,2,3,4 |ϕ⟩1,2,3,4=四量子比特压缩后的密度矩阵如下图12所示。与压缩前等概率的密度矩阵进行比较可以发现,压缩后的信息内容主要集中约全部区域的四分之一处,并且呈现中心数值最高,由中心向外部递减的特点,压缩后的效果十分明显。图SEQ图\*ARABIC8四量子比特压缩后密度矩阵1.3运行结果及分析创建一个空白四量子比特的量子电路任务,对每一个量子位执行Hadamard门进行初始态制备。根据图3完成CNOT门、Toffoli门、C-Hadamard门搭建,SWAP门和CU门的调用和设置(U3的参数设置为-pi*61/100,pi*61/100,pi*1/1000)。最后对每个量子比特进行测量操作,将测量结果存储在经典存储器中。图SEQ图\*ARABIC9四量子比特压缩电路图图14和图15为分别四量子比特压缩电路设置完成前后显示的预测结果直方图。通过对每个量子位执行Hadamard门操作,此四量子比特系统由默认态|0000⟩设置为16个概率幅相同的量子态的叠加,而且这16个量子态的预测测量结果均为6.25%。需要注意图中横坐标中的量子态从右到左表示量子位一到量子位四,例如第二个横坐标为“0001”,其实表示量子态|1000⟩。经过四量子比特压缩电路的压缩之后,剩余五个量子态:|0000⟩、|1000⟩、|0100⟩、|0010⟩和|0110⟩。预测测量结果呈现为:量子态|1000⟩的预测测量结果最高为37.5%,量子态|0100⟩和量子态|0110⟩的预测测量结果相同为25%,数值次之;量子态|0000

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论