了解量子計算

量子運算可承諾解決我們行星的一些最大挑戰,包括環境、農業、健康情況、能源、氣候、材料科學等等。 面對部分問題,因為系統的大小成長,傳統運算逐漸遇到障礙。 當設計為調整時,量子系統可能會有超過現今最強大超級電腦的功能。 身為量子研究人員、科學家、工程師和業務領導者的全球社群,共同合作推動量子生態系統,我們預期會看到量子影響加速到每個產業。

如需量子運算的開始與動機的詳細資訊,請參閱量子運算記錄和背景

Azure Quantum 是一個開放生態系統,可在現今量子硬體的各種選擇上建置量子運算解決方案,並提供彈性來使用您慣用的開發工具,並支援 Cirq、Qiskit 和 Q# 。 您可以使用熟悉且受信任的 Azure 平臺,瞭解如何開發量子演算法,以及如何在多個提供者的實際硬體上進行程式設計及執行。

瞭解如何建立 Azure Quantum 工作區 ,並開始在實際的量子硬體上提交量副程式。 初學使用者自動獲得免費的 Azure Quantum 點數,在建立您的工作區時,可用於每個參與的量子硬體提供者 (各 500 美元)。 如需更多點數,請向 Azure Quantum 點數計劃申請。

提示

免費試用版。 如果您沒有 Azure 訂用帳戶,您可以 建立 Azure 免費帳戶 (查看 學生 的免費 Azure 帳戶) 。

量子運算和 Azure Quantum 可以用於什麼?

量子電腦並非可以更快完成所有運算的超級電腦。 事實上,量子運算研究的其中一個目標是研究量子電腦可以比傳統電腦更快解決哪些問題,以及加速程度有多大。

量子電腦非常適合需要計算大量可能組合的問題。 您可以在許多區域中找到這類問題,例如量子模擬、密碼編譯、量子機器學習和搜尋問題。

如需Microsoft量子運算研究的最新資訊,請參閱Microsoft Research Quantum Computing頁面。

資源估計

現今可用的量子電腦可啟用有趣的實驗和研究,但無法加速解決真實世界問題所需的計算。 雖然產業等候硬體進展,但量子軟體創新正積極進行進度,並為量子未來做好準備。 現今建立演算法,最終將在明天的容錯調整量子電腦上執行,是一項令人困難的工作。 這些創新面臨問題,例如需要哪些硬體資源? 需要多少個實體和邏輯量子位,以及哪種類型? 執行時間多久?

您可以使用 Azure Quantum Resource 估算器來協助回答這些問題。 因此,您將能夠精簡您的演算法,並建置解決方案,以在量子電腦可用時利用調整的量子電腦。

若要開始使用,請參閱 執行您的第一個資源估計值。

深入瞭解如何使用 arXiv:2211.07629中的 Azure Quantum 資源估算器來評估調整到實際量子優勢的需求。

量子模擬

量子機制是宇宙的基礎「作業系統」。 其描述本質的基本構成要素的表現方式。 本質的行為,例如化學反應、生物反應和材質構成物,通常牽涉到許多主體的量子互動。 為了模擬內部量子機械系統,例如量子運算,量子運算是可行的,因為 量子位 (量子位) 可用來表示有問題的自然狀態。 我們可以建立模型的量子系統範例包括光合成、超導性,以及複雜的分子結構。

Quantum Development Kit (QDK) 隨附 量子化學程式庫 ,以模擬量子電腦上的電子結構問題和量子動態。 這類模擬的範例是分子 地面狀態的簡單分子能源估計。 您可以在程式 代碼範例中找到這個和更多 QDK 和 Azure Quantum 範例。

量子加速

量子運算研究的其中一個目標,就是要研究量子電腦可以比傳統電腦更快解決哪些問題,以及加速的速度。 兩個已知的範例是 Grover 的演算法和 Shor 的演算法,分別產生多項式和指數加速,分別代表其傳統對應專案。

在量子電腦上執行的 Shor 演算法可能會中斷傳統密碼編譯配置,例如 Rivest–Shamir–Adleman (RSA) 配置,這在電子商務中廣泛使用以進行安全的資料傳輸。 此機制根據分解質數的實際難度,使用傳統演算法分解質數。 量子加密藉由運用基本物理而非複雜度假設,來保證資訊安全性。

就像 Shor 的分解演算法一樣,隱藏移位問題是量子電腦對於最佳已知傳統演算法具有指數優勢之問題的自然來源。 這最終有助於解決反卷積問題,並讓我們有效率地尋找複雜資料集中的模式。 事實上,量子電腦可以以高速計算卷積,而後者則是以量子電腦計算四ier 轉換的能力為基礎。 在 Azure Quantum 工作區的範例資源庫中,您會發現 Azure 帳戶 (需要 隱藏的 Shifts Jupyter Notebook 範例) 。

Grover 的演算法 可加速非結構化資料搜尋的解決方案,以比任何傳統演算法少的步驟執行搜尋。 其實,任何問題讓您可以檢查指定的 $x$ 值是否為有效解決方案 (是非題),即可制定搜尋問題的公式。 以下是一些範例:

  • 布林值可滿足性問題 \(英文\):這組布林值 $x$ 是否為滿足指定之布林值公式的轉譯 (指派給變數的值)?
  • 旅行推銷員問題 \(英文\):$x$ 是否說明連接所有城市的最短可能迴圈?
  • 資料庫搜尋問題:資料庫資料表是否包含記錄 $x$?
  • 整數分解問題:固定數字 $N$ 是否可被數字 $x$ 整除?

如需解決數學問題的 Grover 演算法的實際實作,請參閱 Azure Quantum 工作區範例庫中 的 Grover 搜尋 Jupyter 筆記本 , (需要 Azure 帳戶) ,或參閱本教學課程 來實作 Grover 的搜尋演算法

如需更多量子演算法範例,請參閱程式 代碼範例

量子機器學習

傳統電腦上的機器學習革新了科學界和企業界。 不過,由於將模型定型的運算成本高昂,因此會阻礙其發展和適用領域。 量子機器學習的領域會探索如何設計和實作量子軟體,以便讓機器學習的執行速度快過傳統電腦。

Quantum Development Kit (QDK) 隨附 量子機器學習程式庫 ,可讓您執行混合式量子/傳統機器學習實驗。 此程式庫包含範例和教學課程,並且會提供必要工具供您實作新的量子和傳統混合演算法 (以電路為中心的量子分類器),以解決受監督的分類問題。

量子運算如何解決問題?

量子電腦是可控制的量子機械裝置,其會利用量子物理的屬性來執行計算。 針對某些運算工作,量子運算可提供指數型加速。 這些加速可能歸功於量子力學的三種現象:疊加、干擾與糾纏。

疊加

想像一下,您正在客廳運動。 您先把身體往左轉到底,然後再往右轉到底。 現在,同時往左和往右轉到底。 您不可能做到這一點 (至少不把自己切成兩半是辦不到的)。 很明顯地,您無法同時處於這兩種狀態,您不可能同時間既面向左邊又面向右邊。

不過,如果您是量子粒子,由於有稱為疊加 (也稱為相干性) 的現象,您會有一定的概率面向左邊以及一定的概率面向右邊

就如同位是傳統運算中資訊的基本單位, 量子位 是量子運算中資訊的基本單位。 雖然位元 (或二進位位數) 可包含 0 或 1 的值,但量子位元可包含 0、1 或 0 與 1 的量子疊加值。

不同於傳統的粒子,如果兩個狀態 $A$ 和 $B$ 是量子粒子的有效量子狀態,即任何狀態的線性組合也是有效的量子狀態:$\text{qubit state}=\alpha A + \beta B$。 量子狀態 $A$ 和 $B$ 的線性組合即為疊加。 以下 $\alpha$ 和 $\beta$ 各為 $A$ 和 $B$ 的機率幅,例如 $|\alpha|^{2} + |\beta|^{2} = 1$。

只有離子、電子超導電路等量子系統可存在於疊加狀態,並啟用量子運算的能力。 例如電子的量子物件有自己的「向左或向右」屬性,也就是 旋轉,稱為向上或向下,因此電子的量子狀態是「向上」和「向下旋轉」的迭加。

一般而言,為了附會傳統的二進位運算,如果量子系統可能處於兩種量子狀態,這些狀態即稱為 0 狀態和 1 狀態。

量子位元和概率

傳統電腦會以位元儲存和處理資訊,位元的狀態可以是 1 或 0,但不會同時是兩者。 量子運算的等價物是量子位元。 量子位元是可疊加兩個量子狀態 (0 和 1) 的任何量子系統。 每個可能的量子狀態都有相關的機率幅。 只有在測量量子位元後,量子位元的狀態會根據相關的機率,塌縮為 0 狀態或 1 狀態,所以特定機率會取得其中一個可能的狀態。

量子位元會塌縮向哪一方的概率則由量子干涉決定。 測量期間為了干涉特定結果的機率,量子干涉會影響量子位元的狀態,而此機率狀態便是量子運算卓越的能力。

例如,傳統電腦有兩個位元,每個位元會儲存 1 或 0,因此合起來您可以儲存四個可能值:00011011,但一次只會儲存其中一個。 但對於疊加的兩個量子位元來說,每個量子位元可以是 1 或 0 或兩者,因此您可以同時表示相同的四個值。 如果有三個量子位元,您就可以表示八個值,有四個量子位元就可以表示 16 個值,依此類推。

如需詳細資訊,請參閱量子運算的量子位元

糾纏

量子力學最有趣的現象是兩個以上的量子系統糾纏的能力。 糾纏是量子系統間的量子相互關聯。 量子位元糾纏時,會形成全域系統,使個別子系統的量子狀態無法獨立描述。 當全域系統的狀態無法寫入為子系統狀態的組合時,兩個系統會糾纏,特別是當全域系統的狀態無法寫入為子系統狀態的 張量乘 積時,就會糾纏兩個系統。 產品狀態不包含相互關聯。

糾纏的量子系統仍會維持這種相互關聯性,即使以大型距離分隔也一定。 所以無論您對單一子系統套用什麼作業或程序,都會相互關聯另一個子系統。 由於糾纏在一起的量子位元之間會相互關聯,因此測量某個量子位元的狀態,就會提供另一個量子位元狀態的相關資訊,這個特性對於量子運算非常有用。

注意

兩個量子位元之測量間的關聯性,並不一定代表這兩個量子位元是糾纏的。 除了量子相互關聯之外,也有傳統相互關聯。 傳統與量子相互關聯之間的差異很細微,但對於量子電腦所提供的加速而言非常重要。 如需詳細資訊,請參閱 瞭解傳統相互關聯

如果您想要深入瞭解,請參閱 使用 和 Azure Quantum 探索量子糾纏 Q#的教學課程。

量子電腦和量子模擬器

量子電腦是結合傳統和量子運算能力的電腦。 目前的量子電腦對應混合式模型:控制量子處理器的傳統電腦。

量子電腦的開發仍在其開發階段中。 量子硬體成本很高,而且大部分的系統都位於大學和研究實驗室中。 傳統電腦使用的是我們熟悉的矽基晶片,量子電腦所使用的則是量子系統,例如原子、離子、光子或電子。 不過,這項技術正在前進,但量子系統的公用雲端存取有限。

Azure Quantum 可讓您一次為多個平臺建立量子演算法,同時保留針對特定系統調整相同演算法的彈性。 您可以從許多程式設計語言中選擇,例如 Qiskit、Cirq,以及在 Q# 多個量子系統上執行您的演算法。 在 Azure Quantum 上,您可以輕鬆地同時探索現今的量子系統,並準備好在未來調整的量子系統。

提示

第一次使用者會自動取得免費 $500 (美元) Azure Quantum 點數,以便與每個參與的量子硬體提供者搭配使用。 如果您已使用所有點數,但還需要更多,可以申請 Azure Quantum 點數方案

Azure Quantum 硬體

量子電腦有三個主要部分:

  • 裝載量子位的裝置
  • 在量子位上執行量子運算的方法 (也稱為量子閘道) 並加以測量
  • 執行程式並傳送指示的傳統電腦

量子位對環境干擾很弱且高度敏感。 對於某些量子位元儲存方法來說,裝載量子位元的單位會保持在比絕對零度略高的溫度,以便其能夠達到最大相干性。 其他類型的量子位元裝載則會使用真空室以便將震動降到最低,並使量子位元保持穩定。
您可以根據量子位的類型,使用各種方法執行作業,包括電壓、雷射和電壓。

量子電腦面臨許多挑戰,因此難以正常運作。 量子電腦的錯誤修正是一大問題,而且擴大 (新增更多量子位元) 時將會提高錯誤發生率。 基於這些限制,桌上型量子電腦想要問世仍是遙遙無期,但具有商業可行性的實驗室型量子電腦會比較早問世。

Microsoft與量子硬體公司合作,以提供量子硬體的雲端存取權。 透過 Azure Quantum 平臺和 QDK,您可以在不同類型的量子硬體上探索和執行量副程式。 以下是目前可用的量子目標:

  • Quantinuum離子阱系統有高精確度、完全連線的量子位元,及執行中間量子電路測量的能力。
  • IonQ:動態重新設定最多 23 個完全連線量子位的 可截獲電電 量子電腦,可讓您在任何配對之間執行兩個量子位閘道。
  • Rigetti:使用 Quantum Intermediate Representation (QIR) 的閘道型超導處理器,以啟用低延遲和平行執行。

如需詳細資訊,請參閱完整的 量子運算目標清單

Azure Quantum 模擬器

目前真正的量子硬體使用受限於資源和預算。 量子模擬器的目的是為了執行量子演算法,讓您輕鬆地測試和偵錯演算法,然後在實際硬體上執行,並確信結果符合預期。

量子模擬器是在傳統電腦上執行的軟體程式,可讓您在環境中執行及測試量副程式,以預測量子位對不同作業的回應方式,讓您輕鬆地測試及偵錯演算法,然後在真實硬體上執行,並確信結果符合預期。

Quantum Development Kit (QDK) 包含不同類別的量子模擬器,這些模擬器代表模擬相同量子演算法的不同方式,例如模擬大型系統的 疏鬆模擬器 、模擬量子演算法的雜訊 模擬器 , 如需詳細資訊,請參閱 量子模擬器

此外,每個Microsoft量子硬體合作夥伴都會提供量子模擬器作為目標。

如果您有 Azure 帳戶,請在 Azure Quantum 工作區的範例資源庫中,找到數個使用量子模擬器的Jupyter Notebook範例。 瞭解如何 開始使用 Q# 和 Azure Quantum Notebook

後續步驟