量子编程I:银弹

仿佛一夜之间,量子计算俨然成为比肩人工智能、机器学习、数据科学等概念的一线热词。学术界,经过三十年积累,量子计算革命似乎近在咫尺;产业界,巨头们火力全开,争相抢占量子计算新大陆;科幻作品中,量子计算机是未来世界的算力支柱;创业圈,量子计算概念是吸引投资人的一大法宝。这颗银弹,隐隐淬炼成型,似乎已经开始发出绚烂的光芒、准备接受宗教般的崇拜。


半个世纪以来,经典计算机算力的指数级增长给我们的社会带来巨大的变革。算天算地算人算自己,都成为社会的红利。而今,经典计算机算力增长瓶颈的阴影在地平线上浮现,当前各大厂白热化竞争的7纳米工艺,已经接近摩尔定律的终点。尽管还有一些方法可以进一步榨取制造工艺的能力,比如5纳米制程、多层蚀刻等等,但这些不过是逼近工艺极限,是这条技术路线散发的最后的余辉。


人们对量子计算充满期待,因为快。为什么快?因为量子体系的一个基本原则——量子叠加。经典计算机中,一个bit有两种状态,0和1,在特定时间点,这个bit是确定的,要么是0、要么是1。也就是说,一个经典bit在同一个时间点能表达的信息状态是一个,是0就不能是1,是1就不能是0。如果扩展到n个经典bit,在同一个时间点能表达几个信息状态呢?还是一个,只不过这一个状态的编码序列有n位长。接下来再看量子计算机。一个量子位,称为一个qubit。由于量子状态叠加效应,一个qubit,在同一个时间点,同时有两个状态,即是0、也是1。如果扩展到n个qubit,在同一个时间的,能够表达的信息状态数量急剧增长到n个2连乘,也即2的n次方个状态,同时存在。


量子计算机简直就是计算机界的一股泥石流。粗略的,量子计算机可以类比为一个并行计算系统。神奇之处在于,想让这套并行计算系统算力翻倍,不需要所有硬件成本翻倍,而只需要增加一个计算位。每增长一个qubit,量子计算机算力提升一倍。来做个游戏,猜数。一个数,只知道在1到2的128次减1方范围内。采用经典计算机,平均需要猜2的127次方次。采用127位量子计算机,1次。怎么样,是不是觉得自己的密码不安全了。


最后一点,量子计算真的是银弹吗。理论上,所有的经典算法都可以在量子计算机上跑。但是,只有那些运用到了量子计算机的量子状态叠加特性的算法,才能够在量子计算机上跑出经典计算机望尘莫及的效率。量子计算是一项充满希望的技术,但量子计算并非无所不能。


未经允许请勿转载


猜你喜欢

转载自blog.51cto.com/13763747/2119832