天天看點

量子計算到底是什麼鬼?

這幾天,朋友圈被刷屏的非馬雲的雲栖大會莫屬,在此次大會上,阿裡巴巴進行了一系列重磅的釋出,其中,阿裡雲聯合中國科學院量子資訊與量子科技創新研究院(上海)共同宣布“量子計算雲平台”上線,應該算是衆多釋出中前沿科技味道最濃的一個,老孫有幸參與了阿裡的這次盛會,也摻和着想進阿裡巴巴量子峰會學習學習,但連門都很難擠進去的盛況,給老孫留下了深刻的印象。這也從一個側面說明了量子計算到底有多熱。

那麼,問題來了,量子計算到底是什麼?為何IT業界對它推崇備至?為何它被稱作“自然賦予人類的終極計算能力”? 下面,老孫就試着給大家解釋下。

什麼是量子計算?

百度百科對量子計算的解釋是:量子計算是一種遵循量子力學規律調控量子資訊單元進行計算的新型計算模式。對照于傳統的通用計算機,其理論模型是通用圖靈機;通用的量子計算機,其理論模型是用量子力學規律重新诠釋的通用圖靈機。從可計算的問題來看,量子計算機隻能解決傳統計算機所能解決的問題,但是從計算的效率上,由于量子力學疊加性的存在,目前某些已知的量子算法在處理問題時速度要快于傳統的通用計算機。

這段晦澀的文字老孫試着用通俗的話來解釋一下:量子計算是一種全新的基于量子力學原理的計算模式,而量子計算機則是采用這種模式設計的計算機,其計算速度遠超目前的計算機。

再打個形象的比喻,如果将現在計算機的速度比作“自行車”,那麼,量子計算機的速度則是“飛機”,是以,說量子計算是“自然賦予人類的終極計算能力”并不誇張。

量子計算為什麼這麼快?

那麼,又一個問題來了,量子計算為什麼這麼快?咳咳,這個問題确實很複雜,老孫試着給大家解釋一下。

衆所周知,大家目前使用的計算機(我們暫且稱之為傳統計算機吧),是一個基于二進制的系統,而實際上二進制也是為傳統計算機量身定做的,通過二進制這種計數方式,可以很友善的将電路的通、端,電壓的高、低等,通過“1”和“0”兩種形态在傳統計算機中表示出來,進而通過表現這兩種形态中一種的一系列信号流而形成有意義的資訊。而存儲這兩種形态中的一種的存儲機關就叫做比特。而一個比特裡存儲的資訊必須是“1”或是“0”。是以,1個比特可以表示0或1兩個數之一,2個比特可以表示0、1、2、3四個數之一, n個比特可以表示 2^n 個數之一。是以,n個比特的資訊容量其實就是2的n次方。

而對于量子計算就完全不同了,量子計算機中類似于比特的機關是量子比特(qubit),相對于比特中存儲的資訊隻能是“1”和“0”兩種狀态,量子比特中存儲的資訊可能是“1”也可能是“0”,換句話說,就是量子比特裡存儲的資訊可以既是0,又是1。是以,一個量子比特可以同時表示1和0兩個數,兩個量子比特可以同時表示0、1、2、3四個數,n個量子比特則可以同時表示2^N個數,而且随着n的增加,其表示資訊的能力将指數上升,例如,一個250量子比特的存儲器(由250個原子構成)可能存儲的數将達到2^250,比現有已知的宇宙中全部原子數目還要多。

而計算機能處理的所有資訊實際上都是基于對于數字的數學計算,如果能夠提高計算機數學計算的速度,計算機處理資訊的速度自然就會相應提高。由于數學計算可以同時對存儲器中全部的資料進行,是以,量子計算機在實施一次的運算中可以同時對2^N個輸入數進行數學運算。其效果相當于傳統計算機重複實施2^N次操作,或者采用2^N個不同處理器實行并行操作。而這就是量子計算機為什麼會這麼快的秘密。

如何實作量子計算?

那麼,下一個問題又來了,既然量子計算這麼牛,那我們到底該怎樣實作量子計算呢?或者說,我們該如何利用量子計算強大的并行計算能力呢?

顯然,我們首先必須要找到适用于這種量子計算的有效算法。 Shor于1994年發現第一個量子算法,它可以有效地用來進行大數因子分解。大數因子分解是現在廣泛用于電子銀行、網絡等領域的公開密鑰體系 RSA安全性的依據。采用現有計算機對數 N(二進制長度為logN)做因子分解,其運算步驟(時間)随輸入長度(logN)指數增長。迄今在實驗上被分解的最大數為129位,1994年在世界範圍内同時使用1600個工作站花了8個月時間才成功地完成了這個分解。若用同樣計算功能來分解250位的數則要用80萬年,而對于1000位的數,則要有10^25年。與此相反,量子計算機采用 Shor算法可以在幾分之一秒内實作1000位數的因子分解,而且操作時間僅随輸入數的3次方增長。可見 Shor量子算法将這類“難解”問題變成“易解”問題。在量子計算機面前,現有公開密鑰 RSA體系将無密可保!

而1997年Grover發現了另一種很有用的所謂的量子搜尋算法也是一種量子計算的經典算法,它适用于解決如下問題:從 N個未分類的客體中尋找出某個特定的客體。經典算法隻能是一個接一個地搜尋,直到找到所要的客體為止,這種算法平均地講要尋找 N/2次,成功幾率為1/2,而采用Grover的量子算法則隻需要 Nkk√次。例如,要從有着100萬個号碼的電話本中找出某個指定号碼,該電話本是以姓名為順序編排的。經典方法是一個個找,平均要找50萬次,才能以 1/2幾率找到所要電話号碼。 Grover的量子算法是每查詢一次可以同時檢查所有100萬個号碼。由于100萬量子比特處于疊加态,量子幹涉的效應會使前次的結果影響到下一次的量子操作,這種幹涉生成的操作運算重複1000(即 N √)次後,獲得正确答案的幾率為1/2。但若再多重複操作幾次,那麼找到所需電話号碼的幾率接近于1。Grover算法的用途很廣,可以尋找最大值、最小值、平均值等,也可以用于下棋。最有趣的是可有效地攻擊密碼體系,如 DES體系,這個問題的實質是從n=256≈7×1016個可能的密鑰中尋找一個正确的密鑰。若以每秒100萬密鑰的運算速率操作,經典計算需要1000年,而采用Grover算法的量子計算機則隻需小于4分鐘的時間。

至于另一種經典的量子去火算法,由于比較深奧,老孫在這裡就不給浪費筆墨了,大家可以自行去知乎查閱https://www.zhihu.com/question/26933442。

有了算法,我們必須還要有把算法實作的計算機才能充分發揮量子計算的優勢,那麼,下一個問題又來了,現在有沒有可用的量子計算機呢?

量子計算機在哪裡?

事實上,加拿大量子計算公司D-Wave早在2011年5月11日就正式釋出了全球第一款商用型量子計算機“D-Wave One”。D-Wave公司的口号就是——“Yes,you can have one.”。D-Wave On采用了128-qubit(量子比特)的處理器,理論運算速度已經遠遠超越現有任何超級電子計算機。不過嚴格來說它還算不上真正意義的通用量子計算機,因為它是一台隻能用一些量子力學方法解決特殊問題的機器。通用任務方面還遠不是傳統矽處理器的對手,而且程式設計方面也需要重新學習。另外,為了盡可能降低量子比特的能級,它需要利用低溫超導狀态下的铌産生量子比特,D-Wave 的工作溫度還必須保持在絕對零度附近(20 mK)。

今年年初,D-Wave公司推出D-Wave 2000Q,他們聲稱該系統由2000個量子比特構成,可以用于求解最優化、網絡安全、機器學習、和采樣等問題。對于一些基準問題測試,如最優化問題和基于機器學習的采樣問題,D-Wave 2000Q勝過目前高度專業化的算法1000到10000倍。

IBM對量子計算也很關注,去年IBM釋出了基于5個超導量子比特的量子計算雲平台IBM Research Quantum Experience,公衆都可以注冊一個賬号編寫量子算法,通過雲平台模拟或者實際使用位于IBM實驗室的量子計算機運作自己的算法。然而IBM也僅僅實作了5個量子比特,而且拓撲結構受限制,是由4個位于正方形角落的Qubit和中間一個Qubit組成,雙比特門隻能搭在中間一個與四周任一個之間,算法設計會受影響。IBM的超導量子比特(準确的說,是Superconducting Transmon Qubit)相對其他Qubit的實體實作,優勢在于可擴充性有潛力提升,和目前微電子加工技術相容,缺點是退相幹時間相對較短。近些年IBM在這方面進步很快,呈指數增長,并且實作了有效的錯誤檢測方法,奠定了釋出量子計算機的基礎。

在國内,中國科學院在5月3日也對外宣布了第一台能夠超越人類第一台計算機的量子計算機已經誕生。雖然這個消息并沒有大張旗鼓的對外宣傳,可中國這次低調透露了軍工尖端技術的領域的重大突破。

當然,阿裡雲聯合中國科學院量子資訊與量子科技創新研究院(上海)共同推出的“量子計算雲平台”也是國内在量子計算機領域的重大成果之一。

量子計算的未來

講了這麼多,相信大家應該也能夠基本了解量子計算以及量子計算機能夠給我們帶來的巨大影響和變革,是以,量子計算具有劃時代的意義。300多年前,牛頓力學的誕生不僅完善了現代科學的基礎,更是推動了第一次、第二次産業革命。受益于兩次産業革命,英國、德國、美國跻身世界工業強國。而20世紀初興起的相對論和量子力學,則可以視為繼牛頓力學後的第二次科學革命。以此為基礎推動的第三次産業革命,即資訊技術革命,延續至今。而量子力學和量子計算,就像中國科學院院士潘建偉說的那樣,“量子力學催生了第三次産業變革,目前它又為了解決重大的瓶頸問題做好了準備,這就是說我們量子力學本身正在孕育着新的一次革命。”

至此,老孫這篇文章到此就告一段落,如果大家對深入了解量子計算有興趣的話,可以繼續參看下面參考文章中知乎的相關文章。

原文釋出時間為:2017-10-18

本文作者:科技峰行者

本文來源:

今日頭條

,如需轉載請聯系原作者。

繼續閱讀