点击上方“CSDN”,选择“置顶公众号”
关键时刻,第一时间送达!
作者 | 孟岩
对于很多人来说,量子计算和人工智能一样,一直是个未来时科技:很早就听说,一直在进展,但离目标始终差五年。就开发者而言,幸好量子计算一直“停在未来”,这样一方面我们可以饶有兴致地欣赏巨头们在跑步机上的一路狂奔,另一方面又不必担忧量子计算真的会对自己职业造成什么冲击。
然而最近几年以来,我们已经开始听到火山爆发前岩层的积压破碎之声。IBM、Google 先后宣布了量子计算机的进展,越来越多的学者宣称说量子计算机即将成为现实。根据现在的进展,我们可以肯定地说,当 21 世纪结束的时候,本世纪将会被归纳为“量子计算”的世纪。
但问题在于,量子计算的时代何时真正开始?
这对于技术人员来说,是个至关重要的问题。因为量子计算一旦落地,将从根本上重新定义计算这件事,我们所学的每一个算法都可能要重写,我们在这个领域所取得的所有学位都可能需要回炉,所有成果都需要翻新。
举个例子,今天的区块链和加密数字货币普遍依赖 256 位的哈希函数和非对称加密方案。在经典的冯诺依曼计算机体系中,即便我们调动全球的算力,破解一个密码、或者寻找一次哈希碰撞也需要数万年的时间。这是加密数字货币安全性的根源。比特币的拥趸认为,中本聪通过二次哈希,已经做到了“防量子计算破解”,事实果真如此吗?
在微软 Build 2018 大会的第二天,微软副总裁、量子计算部门的负责人 Todd Holmdahl 向外界透露了微软量子计算的一些最新进展,他直截了当地指出,微软能够在五年内造出第一台拥有 100 个拓扑量子位的量子计算机,并且将其整合到 Azure 当中。而 100 个拓扑量子位的计算能力,最高可以相当于 1000 个逻辑量子位,这意味着 5 年之后,微软已经可以用量子计算机解决很多实际问题了。
这是一个令人感到震惊的消息。微软这个级别的玩家投资研究量子计算机绝对不是什么新闻,事实上早在 2016 年底,Todd Holmdahl 履新不久的时候,他就接受过 ZDNet 的采访,并透露了微软进军量子计算的情况。但令人没想到的是,微软在这个方面的进步速度如此之快,足以促使我们向所有开发者亮起警报。
图1 Todd Holmdahl, Corporate VP, Microsoft
Todd Holmdahl 是一位经验丰富的硬件系统主管,在接手量子计算机部门之前,他负责过 XBox 和 HoloLens 的部门,是将系统产品化投入市场的高手。因此,微软两年前将他放在量子计算部门负责人的位置上,这本身就表明了对量子计算投入实用的一个判断。
根据 Todd 的介绍,微软的量子计算有三大优势。
第一个优势是微软独特的路线,即采用“拓扑量子位(Topological qubit)”进行计算,而不是普通的“逻辑量子位(logical qubit)”。这里的拓扑,就是数学中的拓扑。在数学里,拓扑是研究那些在连续形变过程中保持不变的数学性质,形象的说,如果你有一块某种形状的橡皮泥,在不撕裂和重新粘合的情况下,随便你怎么捏、挤、搓、拉,只要最后能从形状 A 变成形状 B,那么在拓扑数学来看,A 和 B 就是同一个东西。
图2 三组拓扑等价的物体
这事跟量子计算有什么关系呢?
常规的量子计算使用一种所谓“逻辑量子位”来编写程序,放在模拟器上调试和测试,然后再把程序放在量子计算机上,由真正的物理量子位来执行。对于这种常规的量子计算机来说,好消息是物理学家已经找到符合要求的基本物理粒子,你只要把程序写出来,肯定能够造出量子计算机来执行。坏消息是什么呢?坏消息就是这种量子计算机很难造大。
量子计算机能力的“大”和“小”,基本上取决于其量子位的数量。而在传统架构下,量子位的数量一多,错误率就会急剧上升。错误从哪里来?来自所谓的“局部噪音(Local Noise)”。
要知道,量子是微观粒子,哪怕极其微小的电磁场都会对量子构成干扰,产生所谓“局部噪音”。这也就是为什么量子计算机要放在接近绝对零度(约-273摄氏度)的容器里,严严实实地封闭起来,对外界干扰严防死守。尽管如此,当量子位数量迅速增加的时候,这一团基本粒子对于外界的干扰会越来越敏感,导致计算错误率剧增。造量子计算机,这是一个巨大的难题。
而拓扑量子位就不同,它是通过基本粒子的拓扑位置和拓扑运动来处理信息的。刚才说过,无论外界的干扰怎么蹂躏它的运动路径,只要它还是连续变化,从拓扑角度来看,下面两个运动是等价的:
图3 上下两图中,两个基本粒子对换位置,虽然路径不同,但在拓扑来看完全等价
这也就是说,用拓扑量子位进行计算,对于外界的干扰有极强的容错能力。这样一来,基于拓扑量子位的计算机就可以把规模做得很大,能力做得很强。
既然拓扑量子位这么好,为啥 IBM 和 Google 不用呢?原因很简单,符合拓扑量子位设想(非阿贝尔群任意子,Non-abelian Anyons)的基本物理粒子还没有在实验中发现,物理学家也不确定是否一定能够找到这样的基本粒子。如果找不到的话,那么理论上量子计算程序再漂亮,实践中造不出相应的物理量子计算机,那也只能是空欢喜一场。
问题来了,微软是当前唯一一个压宝在拓扑量子计算上的科技巨头,而且 Todd Holmdahl 信誓旦旦几年内就可以造出 100 个量子位的计算机,他的底气何在?难道就不怕空欢喜一场?又或者,他的团队已经偷偷取得了关键的突破,确保能够兑现诺言?
对此我们尚不得而知,但是我们知道的是,Todd 的团队已经在这种量子计算机的计算控制技术和生产技术方面取得了坚实的进步,这大概是他信心的来源,也是微软在这个领域的独门绝技。
这个技术一旦取得突破,长期困扰我们的诸多计算难题,将迎刃而解。例如著名的旅行商问题,各种 NP 完全问题,在量子计算机中将势如破竹地被解决。再比如,广泛应用的 RSA 非对称加密算法,其安全性完全依赖于因式分解难题:就是把两个大素数乘起来得到一个更大的合数,这个计算可以很快,但是反过来,给你一个巨大的合数,让你找到它是哪两个大素数的乘积,这就难比登天了。
对于 2048 位的 RSA 密码,想要破解,就经典的冯诺依曼计算机来说,哪怕是全球最强的超级计算机,也需要花上十亿年才能完成。而对于量子计算机来说,如果量子位数量足够,在 100 秒内就可以破解。这意味着当前几乎所有信息密码学基础设施将完全作废。而前面提到的比特币,尽管中本聪已经针对量子计算的威胁进行了一系列的加密防护,但其可靠性也将大大下降。理论上讲,必须严格遵守“一交易一地址”的模式,才能让比特币在量子计算的威胁下再苟延残喘一段时间。
另一方面,高量子位的量子计算机对于机器学习的优化任务来说,是一个巨大的优势。做过机器学习的人都知道,在模型训练当中,计算时间主要消耗在优化环节上。而优化过程,经常被比喻为爬山(或下山),就是在一个高维空间的曲面里寻找全局最高点(或最低点)。所以很多机器学习算法都会绞尽脑汁构造一个凸曲面,因为这样一来,全局的最优点只有一个,找它就比较简单,单纯跟着坡度上下即可。
但是实践当中大量的问题构造不出那么漂亮的凸曲面,而是起起伏伏,这山望着那山高。虽然算法上也有一些处理办法,但是速度就被严重拖慢了。在这种情况下,量子计算机简直就是救世主,形象地说,量子面对这些起起伏伏的曲面,就好像可以穿山一样,不用一步步地爬,而是一下子穿过去,形成判断,由此大幅度的减少模型训练的时间。
在展示中,Todd 举了一个例子,他的团队对北京市的交通优化进行了一个测试,也就是说如何调度所有的机动车和交通设施来达成某一个特定的交通目标,在我大帝都生活过的人来说,都知道在宇宙中心做一个这样的优化意味着什么。而 Todd 的团队利用量子计算的算法,将本来需要在超级计算机上花费数个小时才能训练出来的模型,在 PC 上用了区区 200 毫秒就给训练出来了,整整提速 4000 倍。这还只是在当前技术水平上,在未来装备了 Brainwave 芯片(微软新推出的基于 FPGA 技术的 AI 芯片)的机器上,可以更快。
微软的第二个优势是会将未来的量子计算机与 Azure 整合,从而使之成为 Azure 的一部分。
在 Build 2018 首日的开场演讲中,微软 CEO Satya Nadella 明确的说,Azure 的愿景是要成为全球计算机。毫无疑问,如果五年之后,Todd 团队研发出来的量子计算机被加入到 Azure 之中,那就意味着全世界的 Azure 用户都有机会使用这台量子计算机解决问题。我们几乎可以设想,到时候会有一大批用户排着队等着使用这台量子计算机,为此不惜付出高昂的“上机费”,这对于 Azure 业务来说意味着什么,当然不言自明。当然,用户们肯定能从中得到更多回报,比如把中本聪的 96 万枚比特币据为己有。
微软的第三个优势是开发工具整合。兵马未动,粮草先行,搞开发工具一向是微软最擅长的。
微软已经推出了 Q# 量子计算编程语言,并集成到 Visual Studio 当中。与此同时,微软也提供了本地和云上的量子计算机模拟器,让你能提前尝鲜,在经典的计算机体系结构上尝试量子计算。当然,微软也提供了大量的文档和案例。感兴趣的开发者今天就可以学习和尝试量子编程。
图4 Visual Studio 中的 Q# 量子程序设计语言
总之,一切都来得比预想的要快。下面的问题就是,什么时候开始学习量子计算是最合适的时机?对此,Todd 的答案非常惊悚:六年前。他介绍说,当自己的儿子只有十七八岁,刚刚进入斯坦福校园学习计算机科学的时候,他给了他儿子一个忠告,让他从大一就开始关注和学习量子计算,因为他们这一代人将注定在量子计算时代工作和生活。也许对于大多数人来说,这件事情还没有那么紧迫,但是不出意外的话,我们中的大多数人将活着作出这样的决定:学习,或是被淘汰。
2018年5月8日于西雅图
作者简介:
孟岩,CSDN 副总裁,柏链道捷(PDJ Education)CEO,负责 CSDN 区块链业务。中国云体系联盟咨询专家,中关村区块链联盟专家。