RE: What is the actual effect of quantum computing simulators (quantum virtual machines)?
一句话:只能用作科普,无法实用化。
目前(<2018-05-04 Fri 11:27:31 UTC+08:00>)已有的量子计算模拟器:
- 本源量子计算云服务平台: https://qcode.qubitonline.cn/QCode/index.html
32位的量子虚拟机,仅能运行指定的量子程序,不由得让人怀疑这些程序的结果是由普通的编程语言所产生的。 - 用 150 行 Python 代码写的量子计算模拟器: https://zhuanlan.zhihu.com/p/35493216
只能作为科普用,了解量子计算机如何遵循线性代数来计算的。 - QGAME: Quantum and Gate Measurement Emulator: http://faculty.hampshire.edu/lspector/qgame.html
在传统计算机上用Common Lisp来模拟量子算法,所谓的量子算法也只是相应编程语法的封装。 - Setting up the Q# development environment | Microsoft Docs: https://docs.microsoft.com/en-us/quantum/quantum-installconfig?view=qsharp-preview&tabs=tabid-vs2017
在微软的量子程序开发里,也只是给普通编程语言穿上量子算法的外衣。
这些所谓的量子计算模拟器,本质是用传统的编程语言来尽可能地实现量子算法,也许这样的模拟看起来是有效的,因为它们无一例外都能成功操纵所谓的虚拟量子,但这些并不能说明任何问题,虚拟量子与量子有着天壤之别,由普通计算机创建的虚拟量子只能以二进制方式存储,根本无法同时存在量子的两种状态,即使有,但根本就没有即使,二进制数据只能以一种状态存在,同时存在两种状态的二进制数据已经就是量子而不再是二进制。
而在量子虚拟机里所进行的测量输出操作,得到的也将只是二进制数据,不管测量之前还是之后,都是二进制数据,这些数据从头到尾就是确定无疑的二进制数据,就算没有进行所谓的测量操作,答案就在那里。那为什么还要测量呢?为了证明用了所谓的量子算法?就算不用量子计算,普通的计算过程也照样能得到该结果,有何作用?实在是自欺欺人。
那么,在普通计算机上进行量子模拟计算,将只能是用人类残存的那点自信来说服自己,看,这就是量子计算。如果虚拟的量子计算机能得到商用,那置早已存在数亿年的宇宙量子计算机于何地?二进制数据本身已经是宇宙量子计算所产生的结果,大自然里的量子经过自然的测量早就已经固定为二进制数据,如此逆向操作,妄图收回覆水,其代价可想而知。
对于想要在普通计算机上运行量子计算的人,想想看那收回覆水的成本,那可是相当之高,而这些努力却不能从本质上提升原有程序的性能,收益还不如脚踏实地地用传统方法优化程序,或者寻求其它方法产生水。
所以,结论就是,在普通计算机上模拟的量子虚拟机将只能作为科普作用,如果手头没有真正的量子计算机,那些所设计的量子算法和所创造的量子程序,只会无端消耗普通计算机资源,不如弃之,量子程序只有运行在量子计算机上才能发挥最大的作用。