ハミルトニアンシミュレーションとトロッター分解
量子コンピュータ本来の使い道である「自然のシミュレーション」を原理から把握。分子や磁性体の時間発展をゲート列へ落とすトロッター分解の仕組みと、刻み幅が誤差を決める理由まで腑に落ちます。
- 1.ハミルトニアンシミュレーションは、系のハミルトニアンHから時間発展作用素 U(t)=exp(-iHt) を量子回路で近似実装し、量子系の時間発展そのものを別の量子計算機で追う手法。Feynmanが量子計算を提唱した本来の動機がここにある。
- 2.Hが H=A+B のように和で書けても exp(-iHt) は一般に exp(-iAt)exp(-iBt) と等しくない(A,B が非可換だから)。トロッター・スズキ分解は時間tを小さな刻みΔtに分けて交互に適用し、Δt→0 で厳密解へ収束させる近似法。
- 3.1次トロッターの1ステップ誤差は Δt の2乗、全体では時間tに対し O(Δt) に比例する。刻みを細かくすれば精度は上がるがゲート数(回路の深さ)が増える。この精度と深さのトレードオフが実装の要で、高次スズキ公式で緩和する。
Feynman の動機:自然は量子でできている
量子コンピュータの起源をたどると、1982年に Feynman が投げかけた問いに行き着きます——量子力学に従う自然を、古典計算機で効率よくシミュレートできるか。答えは否でした。n 個の量子系(例えば n 個のスピン)の状態は 2^n 次元のベクトルで表され、その時間発展を古典計算機で厳密に追うにはメモリも計算も指数的に膨らみます。40個程度のスピンで既に手に負えません。
Feynman の提案は逆転の発想でした。量子系のシミュレーションには、同じく量子力学に従う計算機を使えばよい。制御可能な量子系(量子コンピュータ)を、シミュレートしたい系のハミルトニアンを模倣するように動かせば、指数的な状態空間を指数的なコストなしに扱える。この「自然を量子で解く」という着想こそ、量子コンピュータ本来の使い道であり、化学・物性への応用の土台です。本稿では、その中核をなすハミルトニアンシミュレーションと、それを回路に落とすトロッター分解を原理から解きます。
問題設定:時間発展作用素を実装する
量子系の時間発展は、シュレディンガー方程式の解として時間発展作用素(ユニタリ演算子) U(t) で書けます。系のエネルギーを表すハミルトニアン H(エルミート演算子)が時間に依らないとき、次の形になります。
|ψ(t)⟩ = U(t) |ψ(0)⟩ , U(t) = exp(-i H t)
ハミルトニアンシミュレーションの目標は明快です。与えられた H と時間 t に対し、この U(t) = exp(-iHt) を量子ゲートの列として(十分な精度で)実装すること。これができれば、初期状態 |ψ(0)⟩ を用意して回路を通すだけで、時刻 t の状態 |ψ(t)⟩ が量子計算機の中に現れます。
exp(-iHt) は 2^n × 2^n のユニタリ行列です。これを行列指数として直接計算し、任意ユニタリとして回路にコンパイルすることは、行列サイズが指数的なので現実的ではありません。鍵は、物理的なハミルトニアンが持つ局所性にあります。多くの H は「少数の粒子だけに作用する項の和」に書けるため、その構造を突いて exp(-iHt) を小さく扱える部品の積へ分解できます。トロッター分解はこの分解を数学的に正当化する道具です。
非可換性という壁
物理的なハミルトニアンは、たいてい局所的な項の和で与えられます。例えば1次元スピン鎖なら、隣り合うスピン間の相互作用項の和です。
H = Σ_j H_j = H_1 + H_2 + … + H_L
各 H_j は数個の量子ビットにしか作用しないので、exp(-i H_j t) は個別なら小さな回路で厳密に実装できます。ならば exp(-iHt) も、単純に各項の指数の積に分ければよい——と考えたくなります。しかしここに量子力学特有の壁があります。
exp(-i(A+B)t) = exp(-iAt) · exp(-iBt) ← A と B が可換なときだけ成立
この等式は、演算子 A と B が可換(AB = BA、つまり交換子 [A,B] = AB - BA がゼロ)のときにしか成り立ちません。ところがハミルトニアンの項どうしは一般に非可換です(例えばパウリ演算子の X と Z は反可換)。非可換だと、指数の積は元の指数とずれます。このずれを、時間を細かく刻むことで制御可能な誤差に抑え込むのがトロッター分解です。
トロッター・スズキ分解
トロッターの積公式(Lie–Trotter product formula)の核心は、時間 t を r 個の小さな刻み Δt = t/r に分割し、各刻みで項を順番に適用することです。刻みが十分小さければ、非可換によるずれは高次の微小量となって効きが弱まります。1次のトロッター公式は次の形です。
exp(-iHt) = exp(-i(A+B)t)
≈ [ exp(-iA·Δt) · exp(-iB·Δt) ]^r , Δt = t/r
意味するところは、「Aだけを短時間 Δt 進める」「次にBだけを Δt 進める」を交互に r 回繰り返す、という近似です。項が L 個あるなら、1ステップは exp(-iH_1·Δt) … exp(-iH_L·Δt) という L 個の小回路の連なりになり、それを r ステップ積み上げます。各因子は局所的で回路化済みなので、全体が実装可能なゲート列に落ちます。
1ステップ = ─[exp(-iH_1 Δt)]─[exp(-iH_2 Δt)]─ … ─[exp(-iH_L Δt)]─
全回路 = ( 1ステップ ) を r 回反復 → 近似 U(t)
厳密な収束はトロッターの定理が保証します。刻み数 r を無限に増やす(Δt → 0)極限で、この積は真の exp(-iHt) に収束します。
lim_{r→∞} [ exp(-iA·t/r) · exp(-iB·t/r) ]^r = exp(-i(A+B)t)
直感的には、非可換な操作を同時に進める代わりに「AをちょっとだけしてからBをちょっとだけ」と細かく交代すれば、両者が影響し合う暇を与えず、同時進行に近づけられます。数学的には、exp(-iAΔt)exp(-iBΔt) を Δt で展開すると、1次の項 -i(A+B)Δt は正しく再現され、ずれは交換子 [A,B] を含む Δt の2次以上の項として現れます。刻みを小さくするほど、この2次以上の誤差が急速に小さくなる——これがトロッター近似の効く理由です。
誤差と刻み幅:精度と深さのトレードオフ
ここが実装上もっとも重要な点です。トロッター分解の誤差は刻み幅 Δt(あるいは刻み数 r)で決まり、精度と回路の深さが真正面からトレードオフします。
1次トロッター公式の1ステップあたりの誤差は、Δt の2乗のオーダーで、その係数は非可換性の度合い(交換子のノルム)に比例します。
1ステップ誤差: ‖ exp(-iHΔt) - exp(-iAΔt)exp(-iBΔt) ‖ = O( ‖[A,B]‖ · Δt² )
全体の時間 t = r·Δt を得るにはこのステップを r 回重ねるので、誤差はおよそ r 倍に積み上がります。r = t/Δt を代入すると、全体誤差は Δt の1次(言い換えれば 1/r の1次)で減っていきます。
全体誤差 ≈ r · O(Δt²) = O( t · Δt ) = O( t² / r )
この式が実装の勘所を凝縮しています。目標精度 ε を達成するには r = O(t²/ε) ステップ必要で、刻みを細かくして誤差を半分にするたび、ステップ数すなわちゲート数(回路の深さ)が倍になる。深い回路はそれだけ実行時間もノイズ蓄積も増える——ここが後述のハードウェア制約と直結します。
| 観点 | 刻みを粗く(Δt 大 / r 小) | 刻みを細かく(Δt 小 / r 大) |
|---|---|---|
| トロッター誤差 | 大きい(近似が粗い) | 小さい(真値に接近) |
| 回路の深さ(ゲート数) | 浅い・少ない | 深い・多い(rに比例) |
| 実行時間 | 短い | 長い |
| ノイズ蓄積 | 少ない | 多い(深さに比例) |
| 実機での妥当点 | 誤差が許容範囲なら有利 | 誤差訂正がある将来機で有利 |
高次スズキ公式:誤差を構造で潰す
r = O(t²/ε) という1次公式のコストは、精度を上げるほど急速に重くなります。これを改善するのがスズキ(Suzuki)の高次公式です。発想は、項を対称に並べ替えて低次の誤差項を打ち消すことにあります。最も基本的な2次公式(対称トロッター、ストラング分割)は、半刻みで前後を対称化します。
2次(対称): exp(-iAΔt/2) · exp(-iBΔt) · exp(-iAΔt/2)
前後を鏡写しに配置することで、Δt の偶数次の誤差が相殺され、1ステップ誤差が Δt³、全体誤差が O(Δt²) に改善します。同じ精度を得るのに必要なステップ数が減り、深さを節約できます。スズキはこれを再帰的に組み上げ、任意の偶数次 2k の公式を構成する方法を与えました。次数を上げるほど、時間 t と精度 ε に対する必要ゲート数のスケーリングが良くなります。
高次公式は Δt 依存の誤差を急速に小さくしますが、代償があります。第一に、1ステップに含める指数因子の数が増えるため、1ステップ自体が長くなります。第二に、誤差の係数には交換子の高次のネスト([A,[A,B]] など)が現れ、ハミルトニアンによっては係数が大きくなり得ます。したがって「次数は高いほど良い」とは限らず、目標時間 t・精度 ε・ハミルトニアンの構造に応じて最適な次数と刻み数が決まる。実務ではこのバランス設計が肝要です。近年はトロッター以外に、量子ウォークや LCU(線形結合ユニタリ)に基づく、t と ε へのスケーリングがさらに良い手法も研究されています。
パウリ項の指数を回路にする
分解の各因子 exp(-i H_j Δt) は、実際にはどんなゲートになるのでしょうか。物性・化学のハミルトニアンは、量子ゲートと量子回路で扱うパウリ演算子のテンソル積の重み付き和に書き下せます。
H = Σ_k c_k · P_k (P_k は I, X, Y, Z のテンソル積、c_k は実係数)
各パウリ列の指数 exp(-i c_k P_k Δt) は、決まった定型回路で厳密に実装できます。作用するビットを CNOT の連なりでパリティ(偶奇)を集約し、中央の1量子ビットに角度 2 c_k Δt の Z 軸回転 RZ を1個入れ、CNOT を逆順に戻すだけです(X・Y 成分は基底変換ゲートで Z に揃えてから同じ手順を使います)。
exp(-i c_k (Z⊗Z⊗Z) Δt) の回路例:
─●───────────────●─
│ │
─X──●─────────●──X─
│ │
─────X──RZ──X────── RZ の角度 = 2 c_k Δt
つまり、ハミルトニアンシミュレーションの回路は突き詰めれば大量の CNOT と1量子ビット回転の繰り返しであり、その反復回数がトロッターのステップ数 r で決まる、という構造です。
化学・物性への応用と NISQ の制約
ハミルトニアンシミュレーションの主戦場は量子化学と量子物性です。分子の電子ハミルトニアンをシミュレートすれば、化学反応のエネルギー地形や反応速度の予測につながり、触媒・電池材料・創薬の設計を加速し得ます。物性では、高温超伝導や磁性といった強相関電子系——古典計算機が最も苦手とする領域——のダイナミクスを直接追えます。
ただし現状の量子ハードウェアには重い制約があります。精度を上げるにはトロッターのステップ r を増やして回路を深くする必要がありますが、NISQとデコヒーレンスで述べるとおり、いまの誤り訂正なしの実機では回路が深くなるほどノイズが蓄積して結果が壊れます。つまりトロッター誤差を減らそうと刻みを細かくすると、今度はハードウェアノイズが増える——二つの誤差が逆向きに効くのです。
exp(-iHt) を実装できても、そこから何を引き出すかは応用しだいです。時間発展そのもの(ダイナミクスの観測)が目的なら直接シミュレートすれば済みますが、多くの実務課題は基底状態エネルギーを求めます。この場合、時間発展作用素をショアの素因数分解アルゴリズムでも使われる**量子位相推定(QPE)**に組み込み、exp(-iHt) の固有位相からエネルギー固有値を読み出します。ただし QPE は深い回路と高いコヒーレンスを要求するため誤り訂正世代向きで、NISQ 実機では回路を浅く保てる変分量子アルゴリズム(VQE・QAOA)が現実的な代替となります。VQE と QPE は「同じハミルトニアンの基底エネルギーを、深さの制約に応じて別の道具で狙う」関係にあります。
- 目的:
Hから時間発展作用素U(t) = exp(-iHt)を量子回路で近似実装し、量子系のダイナミクスを追う。Feynman が量子計算を提唱した本来の動機。 - 非可換性の壁:
H = A + Bでもexp(-i(A+B)t) ≠ exp(-iAt)exp(-iBt)(A,Bが非可換だから)。可換なときだけ等号成立。 - トロッター分解:時間
tを刻みΔt = t/rに分け、[exp(-iAΔt)exp(-iBΔt)]^rと交互適用。r → ∞で厳密解に収束。 - 誤差:1次公式は1ステップ誤差
O(Δt²)、全体誤差O(t·Δt) = O(t²/r)。精度εにr = O(t²/ε)ステップ、深さと精度がトレードオフ。 - 高次化:対称(2次)公式で全体誤差
O(Δt²)。スズキ公式で任意偶数次に拡張しコストを改善。 - 応用:量子化学(分子エネルギー・反応)、強相関物性(超伝導・磁性)。基底エネルギーは QPE か VQE で抽出。
まとめ
ハミルトニアンシミュレーションは、「自然を量子で解く」という Feynman の着想を形にした、量子コンピュータ本来の応用です。核心は時間発展作用素 exp(-iHt) を量子回路で近似実装することにあり、その障害はハミルトニアンの項どうしが非可換なため指数を単純な積に分けられない点にあります。トロッター・スズキ分解は時間を刻み Δt に分けて項を交互に適用し、Δt → 0 で厳密解へ収束させることでこの壁を越えます。ただし1次公式の全体誤差は O(t·Δt) = O(t²/r) で、刻みを細かくして精度を上げるほど回路が深くなるという避けられないトレードオフを抱えます。対称化や高次スズキ公式はこのコストを構造的に緩和する道具です。応用は量子化学と強相関物性に広がりますが、深い回路がノイズに弱い現状では、トロッター誤差とハードウェアノイズが逆向きに効く綱引きが実装の現実であり、基底エネルギー抽出には QPE と VQE という深さ制約に応じた使い分けが要になります。より広い量子計算の枠組みは量子コンピューティングの各記事も合わせて参照してください。
量子コンピューティング Article
ハミルトニアンシミュレーションとトロッター分解を実務で読む
TL;DRは入口です。実際に選ぶ・使う段階では、何を解決するか、何と比較するか、導入後にどこで詰まるかまで見る必要があります。
解決すること
量子コンピュータ
比較で見る軸
難易度: advanced / カテゴリ: 量子コンピューティング / タグ数: 6
導入後に効く点
Hが H=A+B のように和で書けても exp(-iHt) は一般に exp(-iAt)exp(-iBt) と等しくない(A,B が非可換だから)。トロッター・スズキ分解は時間tを小さな刻みΔtに分けて交互に適用し、Δt→0 で厳密解へ収束させる近似法。
先に潰すリスク
用語だけ覚えても、設計・実装・運用でどこに効くかを確認しないと判断を誤る。
- 難易度
- advanced
- カテゴリ
- 量子コンピューティング
- タグ数
- 6
判断チェックリスト
- 自社の用途が「量子コンピュータ / 量子シミュレーション」に近いか確認する。
- 強みである「ハミルトニアンシミュレーションは、系のハミルトニアンHから時間発展作用素 U(t)=exp(-iHt) を量子回路で近似実装し、量子系の時間発展そのものを別の量子計算機で追う手法。Feynmanが量子計算を提唱した本来の動機がここにある。」が本当に評価軸になるか確認する。
- 注意点の「用語だけ覚えても、設計・実装・運用でどこに効くかを確認しないと判断を誤る。」を運用で吸収できるか確認する。
- 公開値や仕様値は、対象プラン・対象機種・対象リージョンまで確認する。
- 既存システム、ID、ネットワーク、監視、バックアップとの接続方法を先に洗い出す。
- 小さく試してから、本番移行、権限設計、障害時手順、コスト監視を決める。