ITmedia NEWS > 科学・テクノロジー >

「量子理論の副産物に過ぎなかった」──東芝の「量子コンピュータより速いアルゴリズム」誕生秘話「量子コンピュータとは何か」を問う“新たな壁”(3/5 ページ)

» 2019年07月30日 07時00分 公開
[井上輝一ITmedia]

各マシンの変数と結合方式 制限のない“SB”

 2019年現在のD-Waveマシンは、量子ビットの個数が2048個で隣接結合だ。「隣接結合のマシンで、全ての変数同士に相互作用がある『全結合』の問題を解く場合、扱える変数の個数はおよそ2乗根で減ってしまう」と後藤さんはいう。つまり、D-Waveで全結合の問題を解くなら扱えるのは約45変数までということになる。

 その一方で、2000変数・全結合問題を扱えるとして登場したのがコヒーレント・イジングマシンだった。全結合で2000変数という巨大な問題を高速に解ける上、光を用いるために超電導のように冷やす必要がない。ただ、量子光学を専門とする後藤さんは「光で安定を保つのは難しい」と見ている。

 より多くの変数を扱う取り組みとしては、量子アニーリングをデジタル回路で模倣する「シミュレーテッドアニーリング」(SA)があり、富士通と日立がそれぞれ研究している。富士通の「デジタルアニーラ」は8192変数・全結合、日立の「CMOSアニーリングマシン」は10万変数・隣接結合だ。

 変数の個数と結合方式だけに注目すれば、富士通が最も秀でているように見えるが、「SAで全結合を扱うと、並列計算できないために高速化が難しい」と後藤さんは指摘する。「並列化の点では、隣接結合であれば並列計算を行えるため日立の手法の方が良い」(後藤さん)。しかし隣接結合は前述しているように、全結合に置き換えると2乗根で変数が減る。10万変数・隣接結合は300変数・全結合とほぼ等しい。

東芝による各社方式の比較

 そんな中、後藤さんが考案したのは専用マシンではなく、汎用的な計算機でイジングモデルを解く、並列計算可能なアルゴリズムだ。つまりマシンパワーの増強で扱う変数をいくらでも増やせる上、変数の結合方式は全結合。汎用マシンであるため超電導のような冷却は必要なく、計算の再現性も汎用マシンと同じだ。

 FPGA1台で2000変数・全結合問題を解くと、コヒーレント・イジングマシンが5ミリ秒で出していた精度の解を、0.5ミリ秒という10倍の速度で導けた。

シミュレーテッド分岐アルゴリズム搭載FPGAとコヒーレント・イジングマシンの比較

 アルゴリズムはGPUでも高速に計算できる。NVIDIAのデータセンター向けGPU「Tesla V100」を8台つないだGPUクラスタで、10万変数・全結合問題を数秒で解けた。FPGAではなくGPUを使う理由は、「計算速度はFPGAの方が速いが、扱う問題が大きくなるとFPGAのメモリに収まらないから」(後藤さん)。

 理論的にはGPUをさらに増やせばより大きな問題を計算できる。ただ、「NVIDIAの高速リンクで接続できるのが8台までだった」と後藤さん。「これより増やすならGPU同士の接続を自作しないといけない」と話す。

確かに速いが「初めは原理が分からなかった」

 量子性を用いない古典アルゴリズムながら、並列計算といった特徴もあることから高速で組合せ最適化問題を解けるシミュレーテッド分岐アルゴリズム(SB)だが、「そもそもどんな原理で速く計算できているのか、初めは分からなかった」と、考案者であるはずの後藤さんは意外なことを口にする。

Copyright © ITmedia, Inc. All Rights Reserved.