当前位置: 首页 > 新闻中心 > 一文看懂量子计算:原理,应用,行业现状

一文看懂量子计算:原理,应用,行业现状

发布时间:2024-02-04 19:47:40

  1. 量子的基本概念是什么?
  2. 【科普】量子计算通识-4-量子位
  3. 【科普】量子计算通识-7-Deutsch算法解析

一、量子的基本概念是什么?

量子理论是描述微观世界行为的基础理论,它的基本概念包括:

1.量子态:一个物理系统的状态可以用一个复数向量来描述,称为量子态。在量子力学中,一个量子态包含了系统的全部信息。

2.量子叠加态:当一个物理系统处于多个可能的状态之间时,这些状态可以通过线性组合来描述,称为量子叠加态。量子叠加态具有一些奇特的性质,例如当我们测量一个处于叠加态中的系统时,它只会以某种概率坍缩到其中的一个状态上。

3.量子测量:量子测量是量子力学中一个重要的概念,它描述了当我们对一个量子系统进行测量时,会发生什么。在量子力学中,测量会导致量子态坍缩到一个确定的状态上。

4.不确定性原理:量子力学中的不确定性原理表明,我们不能同时精确地知道一个粒子的位置和动量。这意味着我们只能在一定程度上预测物理系统的行为,而不能精确地预测。

5.量子纠缠:当两个或多个物理系统处于相互关联的状态时,它们被称为量子纠缠。这种关联关系在量子通信和量子计算中扮演着重要的角色。

二、【科普】量子计算通识-4-量子位

以下内容参照微软研究院主题演讲《quantum computing for computer scientists(计算机科学家量子计算导读)》的结构进行整理和扩充的。

本篇是第四部分。上一篇 【科普】量子计算通识-3

经典比特位classic bit,简称cbit。

经典位只有0或1两种状态。无论我们使用什么含义,0或1,真或假,开或关,阴或阳...即使我们前几篇文章中使用的向量(1,0)(0,1),也都是经典位,因为它只有两种状态,没有半阴半阳状态。

量子位quantum bit,简称qbit。

量子位只能用二元向量的形式表示,它的定义如下:

从这里可以看出,a和b都是0到1或0到-1之间的数字。下面是几个较为常见的量子位:

经典位是量子位的一种特殊情况 。

在我们熟悉的宏观现实中,只能把足球踢入一个球门,即使对面有两个球门,我们起脚的一刻就已经决定了球只能飞往其中一个。

而在双缝实验中,我们向两条缝发出一个光子,但无法知道它将要飞往哪一条缝,实际上它会像水波一样同时穿过两条缝隙并产生自我干涉。

除非我们在缝隙处安装检测装置进行观测,但结果是在某条缝隙上要么观测到光子通过,要么观测不到,而不可能观测到半个光子通过。

我们的观测行为导致不确定性的光子变为确定性,把可能左可能右变为确定通过某一条特定缝隙。

如果我们把两条缝隙视为0或1,那么在测量之前就是不确定的,有50%可能穿过左边缝隙,也有50%可能穿过右边缝隙,这种状态我们就说它处于 叠加态superposition 。

我们的测量导致叠加态的不确定性变为确定的现实,这个过程叫做 量子坍缩collapse ,就是变为0或1的确定现实。

测量将导致量子坍塌,将不确定性变为确定。

对于量子比特来说就是求每项的平方值:

这里的 表示它有多大可能性(probability)是0,或者说有多大可能穿过左边的缝隙;同样 表示它有多大可能性是1,或者说有多大可能性穿过右边的缝隙。

一定是1,仍然遵循量子位qbit的定义,从概率上我们也能解释,那就是所有可能之和一定是100%,不管有多大概率穿过左边或者右边,概率之和一定是100%,不可能有其他情况。

简单记忆就是,上面一项的平方表示0的可能性,下面一项的平方表示1的可能性。 因为(0,1)有 即100%的可能性是1,0%的可能性是0,所以(0,1)是确定的1,而(1,0)是确定的0:

从这里我们也可以看到向量表示的经典比特也是一种特殊的量子比特。

在量子计算中,更多情况的量子比特测量之后并不能确定成为0或1,而是仍然处于概率性的纠缠状态,比如:

这表示仍然有50%的概率是0,50%的概率是1,仍然是不确定性的,对于一个均匀硬币来说,这里面没有包含有效的信息。但下面的情况就有所不同,它表明了这是一个作弊的硬币:

多比特的定义仍然遵循张量积tensor product算法:

注意,仍然满足各项平方和是1的规则,即:

这就好像我们向双缝发射了两个光子,那么它们穿过双缝就有四种可能情况,【左左,左右,右左,右右】,而最终这四种情况的可能性之和一定是100%。例如:

所以它有25%可能坍塌到|00>,也有25%可能坍塌到|01>,也有25%可能坍塌到|10>,也有25%可能坍塌到|11>。

在现实中,能否在不进行测量的前提下对量子进行操作?答案是肯定的。

科学家们可以利用一些透镜或者仪器对飞行中处于纠缠态的量子进行操作,而且操作之后量子仍然处于纠缠态。这其实是量子计算机的科学实验基础。

在量子计算中,我们也可以利用矩阵数学算法对纠缠态的量子比特进行计算,比如前两篇文章介绍过的各项翻转或cnot门操作。这和现实中科学家所做的实验是一致的。

实际上有很多量子计算的重要操作都是在叠加态状态下进行的,我们只在最后一步的时候才会进行求平方的测量操作,以尝试获取坍塌后的确定值。

下一篇: 【科普】量子计算通识-5

end

三、【科普】量子计算通识-7-Deutsch算法解析

这一篇我们来看一下多伊奇算法是怎么推导出来的。

我们用 表示 是由0或1组成的任意 位二进制数,比如 位的011、 位的1010011。

我们又知道对于单比特的四种操作可以分为两类:

综合上面两个情况,我们就可以描述为, ,对于0和1组成的任意 位长度二进制数的两种操作:

多伊奇的问题就是,如果有一个符合以上条件的未知函数,那么如何尝试最少且足够的次数,来确定它是constant操作还是balanced操作。

位2进制最多表示 个数字,比如2位的00、01、10、11共有 种,可以表示十进制的0 ~ 3;同样3位的000、001、010、011、100、101、110、111共可以表示0 ~ 7,即 种;同样8位可以表示 。

所以,对于经典计算机来说,需要尝试 次(也就是一半多一次),才能确保足够可以判断未知函数属于哪一种,因为前提已经承诺,如果是balanced类型,那么一半多一次恰好刚刚超过50%,如果这么多情况的结果都是相同的,那么它就是constant类型操作(因为constant类型操作所有结果都一样),否则就是balanced类型操作。

这就好比一共8张卡片,要么都一样颜色,要么黑白各一半。这时我们只要最多翻开5张,就能知道属于那种情况了。

如前面文章所述,在量子计算机中,只需要一次尝试就可以做出准确判断。当然我们要进行一些特殊处理。

首先我们需要设计一个电路 ,它包含我们需要进行判断的函数 ,可以说是我们在 的基础上又增加了一些处理使其成为函数 。

的作用就是可以传入一些量子比特,然后输出另外一些比特量子比特,并且可以让我们从输出的量子比特中一眼就可以看出其中 是constant操作还是balanced操作。

听上去这个 电路一定很难设计,实际却是不难,它只要满足能够把 映射成为 即可:

这里的圆圈加号 的意思是异或,即:

异或即相同得0,相异得1 。这里有些有趣的规律:

总之我们先记住 操作就是把输入的两个量子位变成输出的另外两个量子位,输出中的后一位是第二个输入位和 函数输入第一位的异或结果:

实际上我们只要根据输出的 就可以判断出 属于constant还是balanced操作,下面我们进行推理演算 即2个比特位的情况。

如图,我们输入两个量子比特,一个0一个1,所以

下面来计算两个比特分别经过hadamard门之后的 。

针对函数 ,由于我们有:

所以经过 把 替换为 之后的 就变为 :

我们注意到按照约定, 只能取0或1,那么

当 时, ,并且有:

当 时, ,并且有:

结合这两种情况,一定有:

同样的道理, 也可以等于0或1,所以也会有:

把这两个式子带入 得到:

对 乘以hadamard矩阵,即 变为 ,即 变为 ,这就得到 。注意如图所示,是整体进行操作而不是每一位分别hadamard操作:

式子有点长,但我们只关注前面括号内的部分,也就是 要被 测量的部分:

注意 和 对应系数的两个分母实际是a+b和a-b的格式,那么假设 是constant即 那么这个结果就是:

如果 ,那么结果也类似的:

对于 测量操作求平方计算结果来说, 和 结果都是0。

但是,如果 是个balanced操作,即 结果会怎样?

如果 , ,那么:

如果 , ,那么:

综上,如果我们最后 测量的结果是0,那么 一定是constant操作,如果我们最后 测量的结果是1,那么 一定是balanced操作。

下一篇: 【科普】量子计算通识-8-deutsch-jozsa算法解析

end