• TOP
  • コラム一覧
  • 量子コンピューターの何が「すごい」のか――従来のコンピューターとの違いとは
COLUMNS 先端技術メガトレンド 量子コンピューター
  • URLをコピー コピーしました
量子コンピューター 第1回
量子力学の原理で動くコンピューターを使って、難問を解決する社会

量子コンピューターの何が「すごい」のか
――従来のコンピューターとの違いとは

「量子コンピューター」という言葉が、ここ数年で一般のニュースでも聞かれるようになってきました。
今や量子コンピューターは、学術的なトピックからエンジニアリング上の課題へ、さらには現実社会やビジネス上のツールとして急速な進展を遂げつつあります。一方で、量子コンピューターの計算原理は「量子力学」と呼ばれる物理学の理論を基礎に置いており、多くの人にはイメージすることすら難しいものです。
そこで本コラムでは、量子コンピューターに関心をもち始めた方々を対象とし、その原理や従来のコンピューターとの違い、具体的な開発状況や課題、期待される応用・インパクトについてお伝えしたいと思います。

注目を集める量子コンピューター

理論研究段階からすでに30~40年の歴史をもつ量子コンピューター。一般の人々からも注目を集めるようになったのは21世紀に入ってからのことです。近年は世界中でベンチャー企業が立ち上がり、GoogleやIBMといった巨大企業も研究開発を強力に進めています。また、限定的な用途ではありますが、数年後には現実的な利用が可能になると言われています。日本企業も量子コンピューターの開発・利用に向けて動き出しており、ビジネス面でも無視できない存在となりつつあります。

なぜ今、量子コンピューターなのか?

量子コンピューターが注目される理由は、こうした研究開発の進展が進んでいることだけではありません。現実社会が抱える問題の規模や複雑さ、そして従来のコンピューター(古典コンピューター)の限界が関係しているのです。
ちなみに古典コンピューターとは私たちが日常で利用しているコンピューターのことです。量子コンピューターとの対比で「古典コンピューター」と呼ぶことが多いのですが、これは、物理学において、「量子力学」以前から存在していた力学(高校の物理で習うような力学のこと)を「古典力学」と呼ぶことにちなんでいます。

例えば、現実社会には、スーパーコンピューター(どんなに規模が大きくても、古典コンピューターの一種)がたとえ何万年かかっても解けない問題が数限りなく存在しています。それでは、スーパーコンピューターを何万台も設置して並列計算すればそれらの問題が解けるでしょうか。答えは(並列計算自体が難しいという問題を無視しても)「NO(ノー)」です。スーパーコンピューターの消費電力は莫大(ばくだい)であり、数万台のスーパーコンピューターを動作させるには原子力発電所でも数百基は必要になってしまいます。つまり、古典コンピューターを利用している限り、人類が現実に直面している多くの問題を「解く」ことはできません。問題を解く前に人類が絶滅してしまうのが早いとさえ言えます。

一方で量子コンピューターは、古典コンピューターでは解くことが困難な問題を、劇的に小さな消費電力で、かつ現実的な時間内に解ける可能性をもっています。量子コンピューターが必要とされる本当の理由はここにあります。

量子コンピューターは「速い」?

誤解されがちですが、量子コンピューターは必ずしも1つ1つの計算処理が高速な訳ではありません。その計算原理を巧妙に利用して「計算ステップを劇的に減らす」ことで、計算時間を大幅に短縮できる点に本質があるのです。

古典コンピューターの情報単位は「ビット」ですが、量子コンピューターの情報単位は「量子ビット」と呼ばれるものです。通常の「ビット」では、「0」「1」の状態の「どちらか」しか取ることはできませんが、「量子ビット」では量子力学の「重ね合わせの原理」を利用することで「0」「1」の「どちらも」取りながら計算を行うことができるのです。そのため、「量子ビット」をn個集積させると2n通りの数字を「同時に」表すことができ、しかもそれを1回の計算ステップで扱うことができます。これは、古典コンピューターの「ビット」では膨大な計算ステップが必要な処理を、1回の計算ステップで処理できることを意味しており、結果的に量子コンピューターでは計算ステップを劇的に減らすことが可能となるのです。

図1

古典コンピューターの「ビット」と量子コンピューターの「量子ビット」の違い

出所:三菱総合研究所

量子コンピューターの何が難しいのか?

このような「量子ビット」を現実に作り、それらを使った計算処理をさせることは、技術的に極めて高度で困難な課題ですが、計算結果から正しい「答え」を取り出すアルゴリズムもまた難しい課題です。「量子ビット」は「0」「1」の状態を「どちらも」取りながら計算しますが、最終的に答えを求める(つまり「量子ビット」を測定して値を取り出す)際には、「0」か「1」の「どちらか」一方のみが確率的に測定されることになります。つまり、「重ね合わせの原理」を利用して膨大な種類の「計算結果」が存在しても、最終的に全くランダムに1つの「計算結果」を取り出すだけでは、求めたい真の「正解」を見つけることは実質的にできなくなってしまいます。

量子コンピューター特有の計算ステップを巧妙に工夫し、計算ステップ数を劇的に減らしつつ、多数の「計算結果」の中から「正解」を浮かび上がらせることのできるアルゴリズムが、量子コンピューターには不可欠なのです。ここで注意すべきは、最終的な「正解」は計算前には把握できないということです。計算前には分からない「正解」を、計算によって浮かび上がらせるのが、巧妙なアルゴリズムの働きとなります。

現時点ではこういったアルゴリズムは数十種類程度しか知られていませんが、その中に大きなインパクトをもつ量子化学シミュレーションや、機械学習・AIへの応用が期待されるものも含まれており、量子コンピューターの強力な開発動機となっています。

図2

古典/量子コンピューターの計算手順(イメージ)

出所:三菱総合研究所

量子力学100年の集大成として

量子力学は、物理学者の純粋な好奇心の産物として約100年前に誕生しました。その後エレクトロニクスの分野などで実社会へ次々と応用され、とうとう「量子コンピューター」という形で実体を得るに至りました。量子コンピューターは、量子力学100年の歴史の集大成として、また人間の好奇心がイノベーションを生み出しつつある事例として、象徴的な存在と言えるのではないでしょうか。

【参考】

[1] 科学技術振興機構「戦略プロポーザル みんなの量子コンピューター」(2018)

[2] 科学技術振興機構「科学技術未来戦略ワークショップ報告書 みんなの量子コンピューター」(2018)

[3] Qmedia “量子コンピューターの “よくある誤解” Top10”
https://www.qmedia.jp/misunderstanding-of-qc/
(閲覧日:2019年11月30日)

[4] National Academies of SCIENCE “Quantum Computing Progress and Prospects” (2019)

[5] BCG “The Next Decade in Quantum Computing—and How to Play”
https://www.bcg.com/ja-jp/publications/2018/next-decade-quantum-computing-how-play.aspx
(閲覧日:2019年11月30日)

  • URLをコピー コピーしました