量子コンピューターができると、今までできなかったような膨大な計算が瞬時に解けてしまうというような話を聞いたことがある人も多いと思います。それでは、量子コンピューターとはどのようなもので、どんなときに使えるのでしょうか。量子コンピューターの基礎になる量子力学はとても難解なものであり、きちんと理解しようとすると大変な作業になりそうです。そこで、ここでは量子コンピューターのほんの入り口をのぞき込んでみることで、その姿や役割を見ていきましょう。
キャリアマップ編集部 文/ITジャーナリスト・ライター 岩元直久
もう1つのコンピューター「量子コンピューター」
コンピューターにはいろいろなタイプがあることは、特に情報系を学習する学生の皆さんはよくご存知のことでしょう。スマートフォンも通信機能を備えた小型コンピューターの一種ですし、パソコンはもちろん学校や企業のサーバーもコンピューターです。クラウド上の大量なデータの保管や大規模なアプリケーションの実行は、クラウド事業者が用意したデータセンターのコンピューター資源を活用して行っています。しかしこうやって思い浮かべるコンピューターは、実は1つの種類に分類されるコンピューターで、「古典コンピューター」と呼ぶものです。
え? スマホはもちろん、SNSのコミュニケーションも動画の撮影、編集、視聴、レポート作成もできていますよ。スーパーコンピューターは膨大な量の計算を超高速で行い気象予測から人工知能(AI)開発まで役立っています。それでも「古典」なのですか?という声が聞こえてきそうです。
高性能なスーパーコンピューターも含めて、「古典コンピューター」と呼ぶのは、もう1つの新しいコンピューターとして「量子コンピューター」があるからです。量子コンピューターは、古典コンピューターとは計算の考え方が全く異なります。「量子コンピューターが実現したら、現在の暗号がすぐに解読されてしまう」といった話を聞いたことがあるかもしれません。量子コンピューターは、これまでの古典コンピューターでは膨大な時間がかかる計算を短時間で実行できてしまう可能性があります。
ただし、量子コンピューターはまだ開発の途上にあります。1980年代に理論が示され、多くの研究開発が続けられていますが、広く実用化されるのは、まだ10年、20年先のことか、さらに先のことになるかといった段階です。それでも、理化学研究所をはじめとした国内の研究機関や大学、企業は、2023年3月に量子コンピューターを利用できる「量子計算クラウドサービス」の提供を開始したように、少しずつ実用段階に進んでいます。量子コンピューターとはどのようなもので、どんなことができるのか、一緒に見ていきましょう。
量子力学の原理を使って、複雑な計算を解けるコンピューター
その名前から想像できるように、量子コンピューターでは「量子力学」の原理を利用しています。原子やそれを構成する素粒子には、私たちの日常生活ではお目にかかることができないような不思議な特性があります。例えば、量子重ね合わせや量子もつれと呼ぶ特性です。量子力学以外の力学(ニュートン力学や相対性理論など)を古典力学と呼ぶため、量子コンピューターに対して従来型のコンピューターを古典コンピューターと呼ぶのです。
皆さんもご存知のように、古典コンピューターは半導体の電圧などから「0」と「1」の状態を取り出します。半導体の状態が「0」か「1」かを1ビットとすることで、2つの状態が表せます。8ビットあれば、256の状態のうち1つを表せるといったものです。一方で量子コンピューターは、「量子ビット」と呼ぶ計算単位を使います。これは「0」「1」だけでなく、「0と1のどちらかに確定しない状態」(重ね合わせ)を示します。「0」と「1」のどちらかになるかは、確率的な数字で示されるのです。わかりやすく簡単に説明すれば、量子ビットはたくさんの状態を同時に示すことができるため、量子コンピューターは古典コンピューターでは数多くの計算が必要な処理を1回の計算で処理できるのです。
量子コンピューターの2つの方式
複雑な計算を高速処理できる量子コンピューターですが、作るのは簡単ではありません。ここで覚えておいてほしいのは、量子コンピューターにはいくつかの種類があることと、それぞれに技術開発の進み方が異なること、そして用途にも違いがあることです。
量子コンピューターの種類は、問題を解く方法の違いにより「量子ゲート方式」と「量子アニーリング方式」に分かれています。
量子ゲート方式は、古典コンピューターでは半導体回路で作成していた計算回路を、量子状態の素子の状態を使って計算する量子回路に置き換えるものです。GoogleやIBMなどが開発競争を続けている方式で、IBMは127量子ビットの量子ゲート方式のプロセッサーを2021年に開発したことを発表し、現在までに実用化しています。量子ゲート方式は、あらゆる量子計算を行える方式です。
量子ゲート方式の量子コンピューターには複数の実現方法が考えられていますが、先行している超電導方式では絶対零度に近い特殊な環境が必要になります。また量子ゲート方式では、エラーが発生しやすく、エラー訂正技術の導入など課題が残っています。理研などのクラウドサービスに用いられている量子コンピューターも超電導方式を採用しています。量子ゲート方式は、規模を大きくしたり精度を高めたりする際の技術的な課題が多く残っているため、広く実用化するまでのハードルは高いといえます。
一方の量子アニーリング方式は、原理はすっ飛ばしますが、「組合せ最適化問題」という複雑な問題を解くために特化した量子コンピューターと覚えておいてください。最適化問題も説明が難しいのですが、その1つの例が「巡回セールスマン問題」です。セールスマンが複数の営業先を訪問する際に、どの経路を選んだら良いかを解くものです。カナダのD-Wave Systemsが開発した量子アニーリングマシンが2011年から提供されています。また日立製作所やNECは、量子アニーリングの仕組みを半導体上で擬似的に再現し、手軽に最適化問題を解けるようにした疑似量子アニーリングのサービスを提供しています。量子アニーリング方式は組合せ最適化問題しか解けない半面、実用化では先に進んでいる方式なのです。
すべてが量子コンピューターに置き換わるわけではない
夢のコンピューターのようなイメージがあったかもしれない量子コンピューターですが、まだまだ開発の途中であり、すぐに実現するわけではなさそうなことはわかっていただけたでしょう。さらに加えれば、量子コンピューターは何でも得意とはいかないのです。
量子アニーリング方式の量子コンピューターは、組合せ最適化問題しか解けません。大量の選択肢がある配送やカーナビのルート計算、シフト勤務の最適化など、有効な用途はたくさんありますが、コンピューターに求める計算のうちでは限られたものです。量子ゲート方式の量子コンピューターが実用化されても、量子計算のアルゴリズムがある計算は高速に処理できますが、私たちが日常的にコンピューターで使っている多くの処理には向きません。量子コンピューターは機械学習や暗号化・復号、金融・市場のシミュレーション、材料開発などの大規模な計算が求められる用途で活躍しても、多くの用途では古典コンピューターが活躍し続けることになるでしょう。
そうは言いながらも、量子コンピューターは今後の時間とともに、着実に実用化が進むと考えられます。量子コンピューターを開発する立場になる人はもちろんですが、それを利用する立場からも量子コンピューターの考え方や用途などの知識を得ておくことは大切です。もし量子コンピューターが機械学習モデルの作成を瞬時に行うようになったら、AIの活用範囲は格段に広がるでしょう。今後の仕事の中でぶつかる課題が組合せ最適化問題であれば、量子アニーリング方式の量子コンピューターで最適解を見つけて、ビジネスを大きく改善できるかもしれません。量子コンピューターは未来のものではありますが、適切なコストで利用できるようになったときの活用の仕方について、学生のうちの今から想像を巡らせておくといいでしょう。