量子コンピュータ —イントロ—
量子コンピュータとは
量子コンピュータとの対比で、現在私たちが普段使っているコンピュータのことを古典コンピュータと呼びます。
量子コンピュータについて理解するために、まずは古典コンピュータについて振り返ります。
古典コンピュータは、データをbitという最小単位で扱います。この1bitは”0″または”1″の状態をとることができます。この”0″または”1″という状態は、具体的にはコンピュータ内部で電圧が高いか低いかで表されます。
古典コンピュータはこのbitに様々な処理をすることでいろいろな計算をすることができます。
一方、量子コンピュータで扱うデータの最小単位はqbit(Quantum bit; 量子ビット)です。qbitとは具体的には一体何なんだ、という疑問は一旦置いておきます。
古典コンピュータではbitが”0″または”1″の2つの状態をとることができましたが、qbitはさらに”0″と”1″の間の状態もとることができます。ここでいう「間の状態」とは状態”0″が3割、状態”1″が7割というように、”0″と”1″がある割合で混ざっている状態です。この混ざった状態を「重ね合わせ状態」と言います。
量子コンピュータは重ね合わせ状態にあるqbitに処理をすることで、”0″と”1″の2つの状態に同時!に処理をすることができます。これを量子並列性と言い、古典コンピュータにはない量子コンピュータの大きなメリットです。
方式について
量子コンピュータには現在大きく分けて量子ゲート方式と、量子アニーリング方式があります。
量子ゲート方式は、古典コンピュータの論理ゲートと同じようなものを用いて計算を行う方式です。従来の古典コンピュータと同様に様々な計算を実行することができる汎用コンピュータです。さらにゲート方式の量子コンピュータ上で古典コンピュータと同等な処理を行うこともできます。
量子アニーリング方式は、汎用型コンピュータではありません。最適化問題を解くことに特化した専用計算機です。しかし最適化問題が解けるというのは大きなことです。配送トラックが配送先をどの順番で回るのが最善かという問題は巡回セールスマン問題といわれ、最適化問題の1つです。巡回セールスマン問題のほかにも最適化問題は、実社会に対して大きな影響力のある問題を数多く含んでいます。
本当の意味での量子コンピュータは量子ゲート方式です。しかし量子ゲート方式は現状数十qbit 程度の規模のものしか実現できていません。
一方、量子アニーリング方式は2011年にカナダのD-waveが世界で初めて商用の量子アニーリングマシンを販売しました。
量子ゲート方式の今後の発展に期待ですね!
何ができるのか
量子コンピュータを使えば何でも速くなるわけではありません。
しかし、量子コンピュータを使った方が計算が圧倒的に速くなることが示されている例があります。
特に重要なのがshorのアルゴリズムという、素因数分解をするアルゴリズムです。
現在主流となっている暗号方式であるRSA暗号の安全性は、大きな数の素因数分解には膨大な時間がかかる、という点に依っています。したがって、量子コンピュータが完成して素因数分解があっという間にできてしまうと、RSA暗号が成り立たなくなる可能性があります。
量子コンピュータを使う方が速くなるアルゴリズムはほかにも見つかっていますし、今後さらに見つかるでしょう。そうなれば量子コンピュータの重要性はますます高まります。
機械学習と物理、最近は量子計算に興味があります。