淺談量子電腦

文章推薦指數: 80 %
投票人數:10人

量子電腦與我們使用的傳統電腦有著很大的不同。

在傳統電腦中, ... 在量子電腦裡,最小的計算單位是Qubit... ... 但這也不代表量子電腦就沒缺點。

Rhadow'sTechNote Home Archives TagCloud About Rhadow'sTechNote News,articlesandreviewsofavarietyofwebdevelopmentframeworksandmodules. Home Archives TagCloud About ©Copyright2020|Rhadow'sTechBlog|Allrightsreserved 淺談量子電腦 14Jun2019 什麼是量子電腦? 在現代生活中,人類建立了各種演算法讓電腦去執行並解決複雜的問題,但還是有許多難題是目前的電腦無法解決或是需要執行很長的時間才能得到答案。

舉個簡單的例子,如果有人問你15是哪兩個質數乘出來的,你可以很快的回答3和5。

但如果把15換成一個三百位數的數字呢?有人估計大約需要15萬年才能得出解答。

正是這類型的難題促使了量子電腦的誕生。

量子電腦與我們使用的傳統電腦有著很大的不同。

在傳統電腦中,我們使用bit也就是常聽到的1和0來做計算單位。

在量子電腦裡,最小的計算單位是Qubit(量子比特),它有著一些超乎常理的特性例如疊加態,糾纏態,使量子電腦可以在某些問題的計算上比傳統電腦還要快。

量子電腦的出現並不會取代傳統電腦。

它們之間的關係比較像是車子與船的差別,各自有自己擅長解決的領域。

因此可以期待在未來看到兩種電腦並行一起解決各種難題。

概率與硬幣 在開始討論神奇的qubit之前,讓我們先來玩個猜硬幣正反面的遊戲吧。

把一枚硬幣放到盒子裡搖晃後反蓋在桌上讓你猜那一面向上,你猜對的機率是多少?相信大家都知道會有一半(50%)的機會猜對。

用數學來表示這枚硬幣的機率的話可以寫成以下向量: \[\begin{pmatrix} 0.5\\ 0.5\\ \end{pmatrix}\] 上面的0.5代表出現正面的機率,下面的0.5則是出現反面的機率。

如果硬幣被動了手腳,出現正面的機率變成90%的話,那機率的表示就會變成: \[\begin{pmatrix} 0.9\\ 0.1\\ \end{pmatrix}\] 我們也可以把它寫成下面這種形式: \[\begin{pmatrix} 0.9\\ 0.1\\ \end{pmatrix}=0.9\begin{pmatrix} 1\\ 0\\ \end{pmatrix}+0.1\begin{pmatrix} 0\\ 1\\ \end{pmatrix}\] 之所以要寫成這樣是因為我們把 \(\begin{pmatrix} 1\\ 0\\ \end{pmatrix}\) \(\begin{pmatrix} 0\\ 1\\ \end{pmatrix}\) 給抽了出來,它們分別代表了正面與反面也是硬幣的兩個基本狀態。

這樣一來就可以把硬幣的概率公式化: \[\begin{pmatrix} p_{0}\\ p_{1}\\ \end{pmatrix}=p_{0}\begin{pmatrix} 1\\ 0\\ \end{pmatrix}+p_{1}\begin{pmatrix} 0\\ 1\\ \end{pmatrix}\] \(p_{0}\)是出現正面的機率,\(p_{1}\)是出現反面的機率。

這兩個變數還需要滿足兩個條件: \(p_{0},p_{1}\geq0\),因為機率不會是負的 \(p_{0}+p_{1}=1\),一個事件的所有可能性機率相加是一 當有兩枚硬幣時,公式會變化成如下: \[\begin{pmatrix} p_{00}\\ p_{01}\\ p_{10}\\ p_{11}\\ \end{pmatrix}=p_{00}\begin{pmatrix} 1\\ 0\\ 0\\ 0\\ \end{pmatrix}+p_{01}\begin{pmatrix} 0\\ 1\\ 0\\ 0\\ \end{pmatrix}+p_{10}\begin{pmatrix} 0\\ 0\\ 1\\ 0\\ \end{pmatrix}+p_{11}\begin{pmatrix} 0\\ 0\\ 0\\ 1\\ \end{pmatrix}\] \(p_{00}\)是兩枚正面的機率,\(p_{01}\)是出現正反的機率,\(p_{10}\)是出現反正的機率,\(p_{11}\)是出現都是反面的機率。

這四個機率一樣要滿足上面提到的兩個條件。

以上就是我們所熟悉的機率。

接著再來看看機率跟量子電腦有什麼關係。

量子比特(Qubit)和疊加態(Superposition) 在微觀世界中,我們認知的物理常識並不適用(有興趣的人可以查查看雙縫實驗)。

大部分量子的狀態在實際觀測前都像開箱前的硬幣一樣是用機率來表示的,而這種不確定最後結果的狀態,科學家們給了一個名字叫做疊加態(superposition)。

舉個簡單的例子:我們準備一顆向下自旋的電子,讓它通過一個有一半機率使它往上轉的裝置。

這時,這顆電子就處在疊加態。

在實際觀測這顆電子的自旋前,我們必須用類似上面的機率公式來表示這顆電子自旋的狀態。

直到觀測之後疊加態就會崩塌成其中一種基本狀態。

另一種不那麼準確的說法是這顆電子正同時向上與向下轉,其實最好用來詮釋量子特性的語言是數學。

接下來,我們來看看在數學中是如何表示一個量子或是qubit的狀態。

這邊開始就不再用正面與反面或向下轉與向上轉而用0與1來代表兩個不同的基本狀態。

首先來定義基本狀態: \[\left|0\right>=\begin{pmatrix} 1\\ 0\\ \end{pmatrix}\] \[\left|1\right>=\begin{pmatrix} 0\\ 1\\ \end{pmatrix}\] 上面那個奇怪的括弧叫做bra-ketnotation,是物理學家用來表示向量的一種方法。

量子狀態的表示公式: \[\left|\psi\right>=\psi_{0}\left|0\right>+\psi_{1}\left|1\right>\] 是不是和之前看到用來表示硬幣機率的公式非常類似?他們之間唯一的差別就在於滿足條件的差別,在這裡只有一個條件需要滿足: \[\psi_{0}^2+\psi_{1}^2=1\] \(\psi_{0}^2\)代表觀測到0的機率,\(\psi_{1}^2\)代表觀測到1的機率。

糾纏態(Entanglement) 接著來看看當有兩個qubit時公式會有什麼樣的變化,基本狀態變成四種可能: \[\left|00\right>=\begin{pmatrix} 1\\ 0\\ 0\\ 0\\ \end{pmatrix}\] \[\left|01\right>=\begin{pmatrix} 0\\ 1\\ 0\\ 0\\ \end{pmatrix}\] \[\left|10\right>=\begin{pmatrix} 0\\ 0\\ 1\\ 0\\ \end{pmatrix}\] \[\left|11\right>=\begin{pmatrix} 0\\ 0\\ 0\\ 1\\ \end{pmatrix}\] 公式變成: \[\left|\psi\right>=\psi_{00}\left|00\right>+\psi_{01}\left|01\right>+\psi_{10}\left|10\right>+\psi_{11}\left|11\right>\] 看起來與雙硬幣的概率公式也差不多,但讓我們來看看兩個例子: 第一個例子假設有兩個qubit的狀態如下: \[\left|\psi\right>=\frac{1}{2}\left|00\right>+\frac{1}{2}\left|01\right>+\frac{1}{2}\left|10\right>+\frac{1}{2}\left|11\right>\] 如同一個qubit時,觀測機率是該組合前方係數的平方,例如\(\left|00\right>\)的機率是\((\frac{1}{2})^2\)。

我們可以很輕易地預測每種組合出現的機率都是\(\frac{1}{4}\),而且全部加起來也是一,符合條件。

來試著做分解: \[\left|\psi\right>=\frac{1}{2}\left|00\right>+\frac{1}{2}\left|01\right>+\frac{1}{2}\left|10\right>+\frac{1}{2}\left|11\right>=(\frac{1}{\sqrt{2}}\left|0\right>+\frac{1}{\sqrt{2}}\left|1\right>)(\frac{1}{\sqrt{2}}\left|0\right>+\frac{1}{\sqrt{2}}\left|1\right>)\] 可以發現分解後小括弧內其實是一個一半機率出現0一半機率出現1的qubit,因此我們可以把這兩個qubit看成是兩個獨立的qubit組合而成的。

用猜硬幣的例子來說,一次丟兩枚硬幣,和一次丟一枚丟完兩枚後再來猜正反面並不影響各種組合的機率。

再來看看第二個例子: \[\left|\psi\right>=\frac{1}{\sqrt{2}}\left|00\right>+\frac{1}{\sqrt{2}}\left|11\right>\] 恩…有\(\frac{1}{2}\)機率出現00和\(\frac{1}{2}\)機率出現11,兩個機率加起來是一,符合公式的限制條件。

接著來試著分解它,首先從兩個單獨的qubit來組組看: \[(a\left|0\right>+b\left|1\right>)(c\left|0\right>+d\left|1\right>)= ac\left|00\right>+ad\left|01\right>+bc\left|10\right>+bd\left|11\right>\] 如果要組成目標的話ad和bc一定是0,假設a是0的話,那 \(\left|00\right>\) 那項就也會消失,說明d是0囉?但如果d是0的話, \(\left|11\right>\) 也會消失。

也就是說,例子二的狀態時無法被分解的。

我們的確有兩個qubit但這兩個qubit沒辦法獨立,這種狀態科學家稱它為糾纏態(Entanglement)。

應用 看到這裡你可能會想說這到底能做什麼?其實聰明的科學家們已經想出了一些酷炫玩法。

例如: 超密編碼(Superdensecoding):兩台電腦之間只需要傳送一個qubit就能夠帶著兩個bit的資訊。

量子傳送(QuantumTeleportation):一種利用量子糾纏態特性來傳送量子至任意距離的技術。

還有一些利用疊加態的演算法,讓量子在計算過程中都保持在疊加態,直到最後才實際測量並拿出最後的結果。

因為疊加態的特性,n個qubit可以同時代表\(2^n\)個數字並同時進行運算。

有興趣的人可以搜尋deutschjozsaalgorithm和shoralgorithm。

但這也不代表量子電腦就沒缺點。

由於得出答案需要測量,每次測量的結果並不一定是正確答案,因此要多跑幾次找出最常出現的值才認定它是解答。

最後,畢竟我不是物理專家,許多資訊也是從書籍中與網路得來。

如有錯誤,還請各位大大指正。

:QuantumComputing Hello,I'mRhadow.Asoftwareengineercuriousabouthownatureworks.Dreamingtosimulateourworldincomputeroneday. RelatedPosts 量子電腦系列:量子力學真的能做到瞬間移動嗎? 19Jul2020 工程師面試攻略-為何FLAG要逼你刷題? 09Nov2019 QuantumKata(1)-BasicGates 27Jun2019 commentspoweredbyDisqus



請為這篇文章評分?