近年少しずつですが量子コンピュータの計算に少しずつ進展があります。2022年以降は100量子ビットを超える量子計算が実行できるようになってきており、多くの知識を更新する必要があります。今までの計算との違いを確認しながら進めていきたいと思います。
これまでの量子コンピュータの計算はシミュレーション上では状態ベクトルと呼ばれるすべての量子状態を保管しながら計算するというとても非効率な計算を行っていました。そのため、スパコンで愚直に計算すると量子コンピュータに対して高速性を発揮できないという事態が起きていました。しかし近年新しい手法が開発され、これまで量子コンピュータで行っていた複雑で時間のかかる計算も既存のコンピュータでとても高速に計算できるようになりました。
すべての情報を使って計算をしていた状態ベクトルシミュレータ
従来の量子コンピュータのシミュレータは、量子の状態を状態ベクトルと呼ばれるすべての状態を逐一保存しながら計算をしていました。そして、この量子状態は量子ビット数Nに対して、
従来の状態ベクトルのシミュレータは不要な使っていない回路部分の情報もすべて縦割りにして順番に計算するという時間発展方式を採用していました。
実機ではこの途中の量子状態は取得できませんし、実際には時間発展をしても最後の答えだけを取り出して計算をするのが普通です。そのため、不要な情報まですべて保存しながら総当り的に計算するため、効率的ではなく、既存計算機でとても時間がかかるというものでした。
ほしい情報だけを計算するMPSテンソルネットワークシミュレータ
一方、近年量子コンピュータのアプリケーション開発の見込みも少しずつ進んでおり、必ずしもすべての情報が必要ないということが分かってきました。縦割りの時間発展から解放されるため、無駄な情報をもたず、欲しい答えだけを極めて効率的に求めます。
新しいシミュレータでは、この時間方向の制限をなくして、ビットとゲートをベクトルと行列として扱い、ネットワーク構造を取ります。もはや従来のようにすべての時点における量子状態はメモリ上に保存されておらず、テンソルと呼ばれる線形代数のネットワーク構造となっています。状態ベクトルでは量子ゲートがない部分にも情報を補完して計算をしていましたが、このテンソルネットワーク構造では、テンソル積を使う必要もなく、単なるネットワーク構造として扱えます。
より深層学習に近く
従来の状態ベクトルのように全状態を量子ビットのテンソルを取る必要がなくなり、ノード・エッジ問題として量子コンピュータの計算を扱えるように。そもそもノード数が数百数千なので、量子回路の表記は以前のようなものではもはや表現できず、ただのグラフ表現になります。
より実績的なアプリに近く
より扱える量子ビットの数が大幅に増えることにより社会問題に近づきます。より実践的なアプリが作れるようになります。
より実機に近づく
現在実機は回路深さと呼ばれる、量子回路を実行できるステップ数は10-100ステップ程度で、量子ビットが100を超えると10くらいになっています。従来の状態ベクトルシミュレータでは、シミュレーション故、この回路深さに制限がなく、VQEでの量子化学計算はC2H4のベンゼンで実行すると、必要深さが300,000ステップなど、実機では実行できないサイズを実行していました。
一方、実機で行われているのはせいぜい6量子ビットまでの深さの浅い回路で、到底シミュレータには及ばないものです。そうしたシミュレータを使ったアプリケーション開発は、理想的なマシンでは使えますが、現状のマシンで使える見込みがないため、あまり実践的ではありません。
そのため、depthと量子ビット数のスケーリングが実機に近いテンソルネットワークシミュレータが注目されています。
スパコン界のノーベル賞を取得した技術
こちらの技術は2021年度中国のチームがスパコン界の最高賞をこちらの技術で取得していました。これらのシミュレーション技術は量子ゲート計算での計算の限界を大幅に拡充するものであり、大変期待できるものとおもわれます。
新しい量子計算はノードとエッジのくみあわせからなり、深層学習やグラフ問題とも親和性が高く、これから大きく発展することがきたいされます。以上です。