初识量子计算
写在前面:
目前作者处于研一初步阶段,研究方向基本确定,就是量子计算相关研究,由于理论相对比较新,相关语言的教程资料比较少。
作者最开始是在b站看量子计算基础概念相关的视频,进行一些初步了解,但是感受到数学要求比较大,经过和导师进行讨论,导师的建议是前期按照微软官方文档中的案例进行学习。
发布这一量子计算学习系列的文章的目的是希望通过分享自己的学习过程和自己在学习过程中遇到的问题以及解决方法来帮助对量子计算感兴趣的朋友解决问题,避免出现不必要的麻烦。
可能大多朋友们对量子计算还不是很了解,所以我将以量子计算的简介和量子计算中一些基本概念的介绍作为本系列文章的开篇。
那么,让我们开始漫游在量子的宇宙吧!
量子计算简介:
量子计算是一种遵循量子力学规律调控量子信息单元进行计算的新型计算模式。对照于传统的通用计算机,其理论模型是通用图灵机;通用的量子计算机,其理论模型是用量子力学规律重新诠释的通用图灵机。从可计算的问题来看,量子计算机只能解决传统计算机所能解决的问题,但是从计算的效率上,由于量子力学叠加性的存在,某些已知的量子算法在处理问题时速度要快于传统的通用计算机。
通过上述百度百科的描述,我们可以看到量子计算中的量子算法是通过量子的叠加性来更加快速,效率更高地解决一有问题。
那么,什么是量子的叠加性呢?
在介绍之前,请读者设想一下如下场景:假设你正在客厅中锻炼身体,你先向左转动拉伸,再向右转动拉伸,这是可以做到的,但是如果要同时向左或者向右转动,你无法做到这一点(至少要将自己一分为二)。 显然,你无法同时处于这两种状态,即无法同时向左和向右转动。
但是,如果你是一个微观粒子的话,你就同时具有一定的向左的概率和一定的向右的概率。这就是量子叠加(也称为相干性)的现象。
大家看到这一定会联想到那只量子物理学中经典的薛定谔的猫,即猫的生死叠加。下图就很形象的表现出盒子里的这只猫的状态,关于薛定谔的猫具体的思想实验思路大家可以自行搜索查看。

正如“比特”是传统计算中信息的基本单位一样,“量子比特”是量子计算中信息的基本单位。 比特(或称为二进制数)的值可以为 0 或 1,而量子比特的值可以是 0、1 或 0 和 1 的量子叠加。
其数学表现形式是:
|ψ⟩=a|ψ1⟩+b|ψ2⟩.
|ψ1⟩ 和 |ψ2⟩ 的线性组合称为 |ψ1⟩ 和 |ψ2⟩ 的叠加。 在此,a 和 b 分别是 |ψ1⟩ 和 |ψ2⟩ 的概率振幅。而a²和b²分别代表量子坍缩为 0 状态或 1 状态的概率。所以a²+ b² = 1.
后续将具体通过量子程序来具体体现量子的叠加性。
微观粒子除了具有叠加性,还具有量子之间的相互纠缠的特性:
量子力学中有个十分有趣的现象就是两个或多个量子系统会发生彼此纠缠,互相影响的情况。 纠缠是量子系统之间的量子关联。 当量子比特纠缠时,它们会形成一个全局系统,因此无法相互独立地描述各个子系统的量子状态。 同时,当我们无法将全局系统的状态写入为子系统状态的组合时,两个系统也就纠缠在一起了。
即使相隔较远,纠缠量子系统也能保持这种相关性。这意味着,对一个子系统应用的任何操作或过程也会与其他子系统关联。 由于纠缠的量子比特之间存在相干性,因此测量一个量子比特的状态可以提供有关其他量子比特的状态的信息,这种特殊的属性在量子计算中非常有用。
后续也会将具体通过量子程序来具体体现量子间是如何相互纠缠的。
最后浅谈一下量子计算中的量子算法如何提高经典算法的效率:
首先,计算效率上:对于传统比特,由于其值只能是1或0,所以要至少经过两次“ +1 ”运算才能得到2种不同的结果。但是对于量子比特,由于其都有某一概率探索为0或1,所以我们只需要经过一次“ +1 ”运算就能够得到两种不同的结果。(下图截取自其他网站作为举例说明)

同样,对于n个量子比特我们也仅需一次操作就可以同时表示2ⁿ个数。(下图截取自其他网站作为举例说明)

所以这种以概率作为基础的量子算法的计算效率就相较于传统比特更高效一些。
其次,信息传输效率上:由于纠缠的量子比特之间存在相干性,因此测量一个量子比特的状态可以提供有关其他量子比特的状态的信息,这种特殊的属性在量子计算中增加了信息传输效率,进而提高量子算法的效率。

浙公网安备 33010602011771号