量子計算遠沒到可收割的時候 | 袁嵐峰
關注風雲之聲提升思維層次
解讀科學,洞察本質
戳穿忽悠,粉碎謠言
導讀
我們重視量子計算,是因為它的潛力,而不是它的現狀。它確實有革命性的潛力,只是還需要艱苦的努力,絕不是一蹴而就的,更不是已經處在商業盈利的邊緣,等著大家一哄而上。建議大家對量子計算採取這樣的態度:積極關注;冷靜分析;以及作為基礎的,認真學習。
——————————————————————————————————————
隨著量子信息科技的發展,公眾對這個領域的關注與日俱增。一個例子是,最近不少企業界人士在轉發這樣一篇文章《太快了!真的,太快了!》,裡面說:
「新消息紛至沓來,指向了一個中心思想:IBM量子計算機的商業化時代,正式宣告開始了。
……奇點正在迅速到來。量子計算機+人工智慧,將不斷迭代出更高級的量子計算機+人工智慧,發展的斜率將一下子陡峭起來。很可能,在不遠的將來,人類在量子計算機+人工智慧面前,就可能像螞蟻面對人類一樣無力和脆弱。」
如何看待這類文章?正確的態度是:量子計算確實很重要,但在引申它的意義之前,應該先搞清楚它是什麼,以及不是什麼。
最基本的問題是:量子計算為什麼有用?
這要從量子力學說起,即描述微觀世界的基本物理理論。
狄拉克《量子力學原理》
在傳統的信息科學中,基本單元叫做「比特」,即一個體系有且僅有兩個狀態。我們現在用的計算機、手機等等,內部都是大量的比特,即大量的兩狀態系統。
而在量子力學中,有一條原理叫做「疊加原理」,它說的是:如果有兩個狀態是一個體系可以處於的狀態,那麼這兩個狀態的任意「線性疊加」也是這個體系可以處於的狀態,這樣的體系稱為「量子比特」。兩個狀態的線性疊加有無窮多個,因此一個量子比特就是一個有無窮多個狀態的體系。
打個比方,傳統的比特相當於「開關」,只有開和關兩個狀態,而量子比特相當於「旋鈕」,是連續可調的,有無窮多個狀態。顯然,旋鈕包含的信息量比開關大得多。用這樣的量子比特組合成量子計算機,它肯定可以做到所有的傳統計算機能做到的事,還有可能做到一些傳統的計算機做不到的事。這些傳統計算機做不到的事,就是量子計算機的價值所在。
量子比特
然而,在這裡需要做一個理論說明。量子計算機能做的事是不是真的比傳統計算機能做的事多?在數學上還沒有確定。這涉及到計算機科學中最大的未解之謎「P對NP問題」,即「能夠快速驗證的問題是不是都能快速求解」。(快速的意思是,計算量隨著問題的規模只是多項式增長,不是指數增長。)
舉個例子,一個填數字遊戲(例如「數獨」)的解是很容易驗證的,你把這個解填進去看看對不對就知道了。但找到這個解卻可能是非常困難的,目前沒有快速的解法。
一個典型的數獨遊戲
上述數獨遊戲的解(紅色的數字)
所有的能夠快速求解的問題(也就是傳統計算機能處理的問題)的集合叫做P,所有的能夠快速驗證的問題的集合叫做NP。顯然,屬於P的問題都屬於NP,但NP是不是大於P呢?
P對NP問題的兩種可能答案
大多數計算機科學家都認為NP大於P,因為這符合直覺。但這個問題意外的複雜,至今還沒有得到證明。如果NP大於P,我們就能證明量子計算機能處理的問題比傳統計算機能處理的問題多。
但如果最終發現答案是P等於NP,即「所有能夠快速驗證的問題都能快速求解」(雖然這看起來很不可思議),就會在許多領域產生顛覆性的後果。其中一個後果,就是量子計算機會失去意義,因為它能處理的問題就跟傳統計算機能處理的問題完全重合了,都是P。另一個例子,是密碼學也會被顛覆,因為基於數學問題困難性的密碼也都會失效,這樣的密碼我們上網時一直在用。
【作者更正:如果有兩個集合被證明相等,那麼量子計算機能處理的問題就跟經典計算機能處理的問題完全重合。但這兩個集合不是文中說的P和NP,而是P和PSPACE(用多項式的存儲空間和不限時間能夠處理的問題)。特此更正。】
目前大家認為的量子計算機做到的超過傳統計算機的事,都是在實踐意義上,即傳統計算機沒有發現快速的演算法,而量子計算機發現了。但是,對這些問題將來會不會發現快速的傳統計算機演算法?誰也不知道。所以,這類成果的數學基礎還不夠牢靠。
在這些前提下,我們可以明白一個要點:量子計算機也是需要演算法的,而演算法與問題有關。因此,量子計算機並不是對什麼問題都比傳統計算機快,而是只對一些特定的問題比傳統計算機快。對特定的問題設計出快速的量子演算法,是一件非常需要創造力的事,發明出這些演算法的科學家都受到了很高的崇敬。
《太快了!真的,太快了!》一文中,對於量子計算機為什麼比傳統計算機快,解釋是:「它可以像孫悟空變出很多個小孫悟空走不同的路一樣,搞平行計算。」這其實是一種粗淺的比喻,看了上文你就知道這種比喻的缺點了:沒有表現出,這種加速只對特定的問題才能實現。
在這些特定的問題中,最著名的一個是「因數分解」,即把一個合數分解成兩個質因數的乘積,類似於21 = 3 × 7。
在傳統的演算法中,分解一個n位數的計算量是n的指數函數,增長得極快。因此,當n達到上千的時候,分解因數就成了一件非常困難的事。現在最常用的密碼體系之一叫做RSA,就是建立在因數分解困難性的基礎上的。
RSA密碼體系的三位發明者
但是,1994年,美國數學家肖爾(Peter Shor)提出了因數分解的量子演算法,可以把這個問題的計算量減少到n的平方。這意味著什麼呢?在原理上,分解300位和5000位的數字,量子演算法會把所需時間從15萬年減到不足1秒鐘,從50億年減到2分鐘!
因數分解是量子計算機威力的一個最顯著的例子,這也是《太快了!真的,太快了!》一文中舉的例子。不過,目前這隻在理論層面成立。迄今為止在實驗上用量子演算法分解的最大的數是一個六位數,291,311 = 523 × 557,是由中國科學技術大學的杜江峰院士和彭新華教授等人在2017年實現的。這離分解上千位的數,還有很遠的距離。
在這些背景下,你就可以理解,《太快了!真的,太快了!》一文中提到50個量子比特的量子計算機等等,都是很好的學術成果,但這些離解決文中提到的金融、汽車、半導體、化工等行業的實際問題還差得很遠。奇點云云,更是純屬腦洞,販賣恐慌。
不過,這是不是說量子計算不值得重視,甚至是個騙局呢?當然不是。
我們重視量子計算,是因為它的潛力,而不是它的現狀。它確實有革命性的潛力,只是還需要艱苦的努力,絕不是一蹴而就的,更不是已經處在商業盈利的邊緣,等著大家一哄而上。
關於量子計算的遠景,我覺得比爾·蓋茨的格言很有啟發性:「我們總是高估未來兩年的變化,而低估未來十年的變化。」
比爾·蓋茨
如果你問我:量子計算屬於一種爆炸式科技進步嗎?會持續不斷加速度爆炸嗎?
回答是:它如果成功了,即造出了超越最強的傳統計算機的量子計算機,效果就是爆炸式的。但在當前的技術條件下,我們不知道它什麼時間能成功,甚至不知道能不能成功。這跟社交媒體、網購等產業不一樣,那些是原理早已清晰了,一切技術條件都可以實現,所以一定會爆炸式發展。而量子計算,還遠遠不到收割的時候。
馬雲
因此,我建議大家對量子計算採取這樣的態度:積極關注;冷靜分析;以及作為基礎的,認真學習。
背景簡介:本文作者為袁嵐峰,中國科學技術大學化學博士,中國科學技術大學合肥微尺度物質科學國家實驗室副研究員,科技與戰略風雲學會會長,微博@中科大胡不歸,知乎@袁嵐峰(https://www.zhihu.com/people/yuan-lan-feng-8)。2017年12月22日,本文應邀發表於《環球時報》(http://hqtime.huanqiu.com/share/article/a-XCXVR4940B6F862B5A142E),由於篇幅限制有較多刪減,此為全文。責任編輯:郭尖尖
歡迎關注風雲之聲
知乎專欄:
http://zhuanlan.zhihu.com/fengyun
一點資訊:
http://www.yidianzixun.com/home?page=channel&id=m107089
今日頭條:
http://toutiao.com/m6256575842
推薦閱讀:
※如果一件物品變透明了,不能看到,那麼我們能摸到感受到么?
※第五屆索爾維會議,愛因斯坦、薛定諤、德布羅意為首的少數派與玻爾為首的多數派到底發生了什麼?
※如何用通俗易懂的語言解釋「弱相互作用中宇稱不守恆」理論?
※如何理解密度矩陣鑲嵌理論(DMET)?
※量子力學的基本理論是什麼?