サンプルベース量子対角化(SQD)
このパッケージは、量子系ハミルトニアンなどの量子演算子の固有値および固有ベクトルを求める手法である、サンプルベース量子対角化(SQD)を実装しています [1–6]。 これは、パウリ演算子または第2量子化されたフェルミオン演算子の線形結合として表されるハミルトニアンを対象とすることができる。 SQDに基づくワークフローは、現在の量子コンピュータ上で実行可能であり、変分法では達成できなかった問題規模、さらには古典的な厳密な対角化法でも処理できない規模にまで拡張可能であることが示されている。
SQD に基づくワークフローでは、まず量子デバイス上で 1 つまたは複数の量子状態を準備し、そこからサンプリングを行います。 その後、これらのノイズの多いサンプルを処理するために、従来の分散計算が用いられる。 この処理は、2つのステップで反復的に行われる。まず、構成回復ステップにおいて、入力問題に関する情報を用いてノイズの多いサンプルを補正する。次に、それらのサンプルによって張られる部分空間において、ハミルトニアンを射影し、対角化する。 これらの手順は、収束するまで自己一貫性を持って繰り返される。 その結果、与えられたハミルトニアンの近似的な最小固有値(エネルギー)および最小エネルギー固有状態が得られる。 SQDは、量子ノイズによって破損したサンプルに対しても頑健です。実際、量子コンピュータから有用な信号を取り出すことができる限り、SQDの結果はノイズの混入したビット列の影響を受けません。
qiskit-addon-sqd 実際には、さまざまな量子回路から抽出したサンプルを、従来の方法で処理するために利用することができる。 例:
- パラメータが、その回路をサンプリングすることで、目標波動関数(例えば基底状態)が有意な支持を持つ電子配置が得られるように選択された、変分回路アンザッツ。 これは、ハミルトニアンに数百万もの相互作用項が含まれる可能性のある化学分野の応用において、非常に魅力的である [1]。 LUCJ回路を用いてこの手法を化学に応用した例については、 N2 分子の基底状態エネルギーを近似するチュートリアルを参照してください。
- 時間間隔を徐々に長くしながら、一連のクリロフ基底状態が準備される。 初期状態が適切であり、基底状態が疎であることを仮定すれば、この手法は効率的に収束することが証明されている。 量子デバイス上でトロッター化された時間発展回路を構築する必要があるため、このアプローチは、量子化学のような複雑な多体ハミルトニアンではなく、格子モデル [2] への応用に最も適している。 このアプローチをフェルミオン格子ハミルトニアンに適用した例については、 単純化された単一不純物アンダーソンモデルの基底状態エネルギーを近似するためのチュートリアルを参照してください。
- qDRIFT による時間発展演算子のランダム化コンパイルを用いて実装された、クリロフ基底状態のセット。 このアプローチは、時間発展のトロッター法に基づく分解と比較して、深さの浅い回路を生成するため、量子化学のハミルトニアンに適用することができる。 この手法は、多環芳香族炭化水素の基底状態エネルギーに適用されてきた [6]。
始めに
このパッケージをすぐに使い始めるための簡単なガイドは、「 クイックスタートガイド 」に掲載されています。
ユースケース例
サンプルベースの量子対角化手法は、多様なワークフローの実装に活用できる。 これまでに活用された事例としては、次のようなものがあります:
- 鉄-硫黄クラスター の基底状態エネルギーの電子構造計算
- 誘電体のバンドギャップを予測するための基底状態エネルギーの推定
- 低エネルギー分子励起状態の推定
- 分子間の相互作用のシミュレーション
- 電子構造のシミュレーションにおける溶質・溶媒相互作用の研究
- 分子解離のオープンシェル解析
- 光化学問題における反応経路のモデル化
- エンタングルメント・フォーギングと組み合わせ、水素抽出を介した材料劣化の反応経路を研究する
- 量子クリロフ基底状態から部分空間を構築し、フェルミオン系における不純物モデルの基底状態シミュレーションを行う
- qDRIFT によるランダム化コンパイルを用いた、 化学ハミルトニアンに対するクリロフ基底状態の実装に伴うオーバーヘッドの低減、およびハーフメビウス電子トポロジー を示す分子への応用
- SQDをソルバーとして用い、分子系における埋め込み法や断片化法に応用する。具体的には、水素環やシクロヘキサン、 および二金属・三金属錯体のエネルギー計算、 酸素還元反応の研究、 タンパク質およびタンパク質・リガンド錯体のエネルギーの推定、ならびにトリチウムの種分布の予測などを行う。
技術的な議論
システムの規模と計算要件
SQDの計算コストは、主に固有状態ソルバーの呼び出しによって占められている。 自己一貫性のある構成復元反復の各ステップにおいて、n_batches回の固有状態ソルバーの呼び出しが行われる。 これらの呼び出しは、恥ずかしいほど並列化されています。 このチュートリアルでは、それらの呼び出しは for ループ内にあります。 これらの呼び出しは並行して実行することを強くお勧めします。
この qiskit_addon_sqd.fermion.solve_fermion() 関数はマルチスレッド対応であり、約25個の空間軌道と約10個の電子、サブスペースの次元が約$10^7$のシステムを、約10~30個のコアを使用して処理することができます。
部分空間の次元数の決定
部分空間の次元をどのように選ぶかは、固有状態ソルバーの精度と実行時間に影響を与えます。 部分空間が大きければ大きいほど、計算の精度は高くなりますが、その代償として実行時間とメモリ要件が増加します。 特定のシステムにおける最適な部分空間のサイズは不明である。したがって、 本ガイドで説明されているように、部分空間の次元を用いた収束解析を行うことができる。
部分空間の次元は間接的に設定される
qiskit_addon_sqd.subsampling.postselect_and_subsample()このパッケージでは、ユーザーは samples\_per\_batch 引数を用いて、各部分空間に含まれるビットストリングの数を制御します。 この引数の値は、量子化学への応用において、部分空間の次元の上限を定める。 詳細については、こちらの例をご覧ください。
Solver
投影および対角化の処理は、従来のソルバーによって行われる。 ここでは、フェルミオン系用と量子ビット系用の2つの汎用ソルバーを提供しています。 特定のシステムにおいてより効率的と思われる他のソルバーについては、ユーザーがインターフェースを構築することができます。
寄稿
ソースコードは GitHub で公開されています。
開発者向けガイドは、このプロジェクトのリポジトリのルートディレクトリにある CONTRIBUTING.md にあります。 参加される際は、Qiskitの行動規範を遵守していただくようお願いいたします。
リクエストやバグの追跡には、 GitHub のイシュー を利用しています。
このパッケージを参照する
研究でこのパッケージを使用する場合は、本プロジェクトのリポジトリにある CITATION.bib ファイルを参照し、適切な参考文献を記載してください。
ライセンス
非推奨ポリシー
私たちはセマンティック・バージョニングを採用しています。 ユーザー体験を向上させるため、時折、互換性を損なう変更を行う場合があります。 可能な限り、古いインターフェースは、新しいインターフェースと共存できるのであれば、そのまま残し、非推奨としてマークします。 大幅な機能改善、互換性を損なう変更、または非推奨となる機能については、すべてリリースノートに記載されます。
参照
-
ハビエル・ロブレド=モレノら、 「量子中心型スーパーコンピュータにおける厳密解を超えた化学 」、 arXiv:2405.05068[ quant-ph]。
-
ジェフリー・ユーほか、 サンプルベースのクリロフ対角化のための量子中心アルゴリズム、 arXiv:2501.09702[ quant-ph]。
-
菅野圭太ほか、 量子選択型構成相互作用:量子コンピュータによって選択された部分空間におけるハミルトニアンの古典的対角化、 arXiv:2302.11320 [quant-ph].
-
杉崎健二ほか、 量子コンピュータを用いた大規模電子構造計算のための、ハミルトニアンシミュレーションに基づく量子選択型構成相互作用、 arXiv:2412.07218 [quant-ph].
-
Mathias Mikkelsen、Yuya O. Nakagawa、 「時間発展状態を用いた量子選択型構成相互作用 」、 arXiv:2412.13839[ quant-ph]。
-
サミュエレ・ピッチネッリほか、 ランダム化されたサンプルベースのクリロフ量子対角化法による収束性が証明可能な量子化学、 arXiv:2508.02578 [quant-ph]。