Skip to content

補遺: ハバード・ストラトノビッチ変換と大関法 ​

量子アニーリングを実問題に使うと、しばしば「制約」をどう入れるかが問題になります。たとえば、複数の候補から1つだけ選ぶ、合計が決まった値になるように選ぶ、交通量が特定の道路に集中しないようにする、といった条件です。QUBOやIsing模型では、このような制約を二乗ペナルティとして入れることが多いです。

f(q)=f0(q)+12∑kλk{Fk(q)−Ck}2

ここで q=(q1,…,qN) は0または1をとる変数です。f0 は本来小さくしたい目的関数、Fk(q)=Ck は満たしたい制約、λk は制約違反を罰する強さです。λk を大きくすれば制約は守られやすくなりますが、実機で扱える係数の範囲には限りがあります。さらに Fk が多くの変数の和であるとき、二乗を展開すると多くの変数どうしが互いにつながります。

たとえば

(∑iqi−K)2=∑iqi2+2∑i<jqiqj−2K∑iqi+K2

です。0-1変数では qi2=qi ですが、qiqj の項はすべての組 i,j に出ます。つまり「合計を K にしたい」という素朴な制約が、全結合の相互作用を作ります。量子アニーラやCMOSアニーリングのように結合グラフが疎な装置では、この全結合をそのまま載せることが難しくなります。

1. 二乗を線形にほどく発想 ​

ハバード・ストラトノビッチ変換は、二乗の指数関数を、補助変数についてのガウス積分で書き直す恒等式です。もっとも単純な形は、a>0 に対して

exp⁡(−a2x2)=∫Dzexp⁡(iazx),Dz=dz2πexp⁡(−z22)

です。右辺には x2 がありません。x は補助変数 z と線形にだけ結合しています。ガウス積分を実行すると、z を消した結果として左辺の二乗が戻ってきます。

この式の直観は、「たくさんの変数が互いに直接つながっている相互作用」を、「共通の補助場を介して各変数が独立に感じる力」へ置き換えることです。全員が互いに握手する代わりに、全員が同じ掲示板を見る、と言ってもよいでしょう。掲示板に相当するのが補助変数です。

2. 制約ペナルティへの適用 ​

目的関数 f(q) による分配関数を

Z=∑qexp⁡{−βf(q)}

と書きます。β は逆温度です。最適化だけを見たいときは、最後に β→∞ の低温極限を考えます。

上の目的関数に含まれる二乗ペナルティへハバード・ストラトノビッチ変換を使うと、形式的には

Z=∑q∏k∫Dzkexp⁡[i∑kβλkzk{Fk(q)−Ck}−βf0(q)]

となります。ここで Fk(q)−Ck は、もはや二乗されていません。ただし izk が出てくるので、そのままでは実数の最適化問題として扱いにくいです。そこで積分経路を回す変数変換を行い、実数の補助変数 νk を導入します。

zk→−iβλkνk

すると、定数因子を除いて

Z∝∑q∏k∫dνkexp⁡[∑kβ2λkνk2+β∑kνk{Fk(q)−Ck}−βf0(q)]

と書けます。この指数を −βH(q,ν) と見ると、有効ハミルトニアンは

H(q,ν)=f0(q)−∑kνk{Fk(q)−Ck}−∑kνk22λk

です。重要なのは、q に依存する制約項が −νkFk(q) という線形の形になったことです。νk はラグランジュ乗数として働きます。大きな二乗ペナルティで無理に縛る代わりに、νk を調整しながら制約を満たす方向へ解を動かします。

3. 固定した補助場でアニーラを使う ​

補助変数 ν を固定すると、q について解くべき部分は

Heff(q;ν)=f0(q)−∑kνkFk(q)

です。Ck や νk2/(2λk) は q を変えても一定なので、サンプルを出すだけなら落としてよい項です。

ここで Fk(q) が

Fk(q)=∑iakiqi

のような線形和であれば、−νkFk は各 qi にかかる局所磁場になります。二乗ペナルティから生じていた全結合相互作用は消え、代わりに補助変数で決まる磁場をかける問題になります。疎結合のアニーラにとっては、この違いが大きいです。全結合を無理に埋め込むのではなく、その時々の ν に応じた比較的扱いやすいIsing問題を解けばよいからです。

ただし、これだけでは制約が自動的に満たされるわけではありません。ν が小さすぎれば制約は緩く、大きすぎれば別の方向に偏ります。そこで大関法では、アニーラやサンプラから得たサンプルを使って、ν を反復的に更新します。

4. 期待値が制約に合うように更新する ​

固定した ν に対する分配関数を

Z(ν)=∑qexp⁡[−βf0(q)+β∑kνkFk(q)]

とします。このとき対応する分布は

Qν(q)=1Z(ν)exp⁡[−βf0(q)+β∑kνkFk(q)]

です。制約 Fk(q)=Ck を完全に満たす代わりに、まずはこの分布のもとで平均値が

⟨Fk(q)⟩Qν=Ck

になるように νk を探します。この条件は、双対側の自由エネルギーを最大化する停留条件としても得られます。

G(C)=maxν{∑kνkCk−log⁡Z(ν)}

νk で微分すると、勾配は Ck−⟨Fk⟩ になります。したがって、もっとも素朴な更新は

νk(t+1)=νk(t)+η[Ck−⟨Fk(q)⟩Qt]

です。η は更新幅です。もし現在のサンプルで ⟨Fk⟩ が Ck より大きすぎるなら、括弧の中は負になり、νk は下がります。有効ハミルトニアンでは −νkFk が効いているので、νk が下がると大きな Fk を選ぶ力が弱まります。逆に ⟨Fk⟩ が小さすぎるなら、νk は上がり、Fk を増やす方向に磁場が傾きます。

大関法の1ステップは、この説明をそのまま手順にしたものです。

  1. ν を固定します。
  2. 二乗ペナルティを含まない Heff(q;ν) をアニーラやサンプラで解きます。
  3. 得られたサンプルから ⟨Fk⟩ を見積もる。
  4. Ck−⟨Fk⟩ に従って νk を更新します。
  5. 制約違反と目的関数が十分小さくなるまで繰り返します。

この見方では、アニーラは元の巨大な制約付き問題を一発で解く装置ではありません。補助変数で作られた、その時点の有効Ising模型をサンプルする装置です。外側ではラグランジュ乗数がゆっくり更新され、内側ではアニーラが離散変数の候補を返します。連続変数と離散変数が交互に歩く、二重の反復法になっています。

5. 一番小さい例: K個だけ選ぶ ​

具体例で見ると、仕組みはかなり素直です。N 個の候補からちょうど K 個を選びたいとします。各候補のコストを hi とすると、二乗ペナルティを使った目的関数は

f(q)=∑i=1Nhiqi+λ2(∑i=1Nqi−K)2

です。普通に展開すると、∑iqi の二乗が全結合を作ります。大関法では、制約の和に対応するラグランジュ乗数 ν を導入し、固定した ν のもとで

Heff(q;ν)=∑i=1N(hi−ν)qi

を解きます。これは各ビットに局所磁場がかかっただけの問題です。もしサンプルで選ばれた個数が K より多ければ、ν を下げます。すると hi−ν が大きくなり、qi=1 を選びにくくなります。選ばれた個数が少なければ、ν を上げます。すると qi=1 が選ばれやすくなります。この反復で、選ぶ個数を K に近づけながら、コストの小さい候補を選ぶ方向へ進みます。

数分割問題も同じ形で見えます。数 ni を2つのグループに分け、和の差を小さくしたいとき、

f(σ)=12(∑i=1Nniσi)2,σi=±1

と書けます。大関法では補助変数 ν を入れて、

Heff(σ;ν)=−ν∑i=1Nniσi

のような局所磁場の問題に落とします。二乗で全員を結合する代わりに、各スピンが同じ ν に応じた磁場を感じます。ν は、現在の分割で和がどちらに偏っているかを見て更新されます。

6. 交通流最適化での読み方 ​

交通流最適化では、車 i が候補経路 μ のどれを選ぶかを qμ,i で表します。道路 e をどれだけ混ませるかは、経路と道路の対応を表す Sμ,i,e を使って

∑e(∑μ,iSμ,i,eqμ,i)2

のように書けます。この二乗は、同じ道路を使う車どうしを広く結合させます。大関法では、道路ごとの補助変数 νe を入れて

∑e(∑μ,iSμ,i,eqμ,i)2⟶−∑eνe(∑μ,iSμ,i,eqμ,i)

と読み替えます。すると各経路には

hμ,i=∑eνeSμ,i,e

という局所的な重みがかかり、有効ハミルトニアンには −∑μ,ihμ,iqμ,i が入ります。混みやすい道路に対応する νe が変われば、その道路を通る経路の重みも変わります。アニーラは、その時点の道路重みに従って各車の経路候補をサンプルし、外側の更新が道路ごとの混雑を見ながら νe を調整します。

この構造があるため、全結合をそのままハードウェアへ埋め込む場合よりも大きな問題を扱いやすくなります。代表的な応用には、K個選択、数分割、線形方程式からの復元、二次元構造の復元、仙台市・京都市の交通流最適化があります。いずれも、二乗ペナルティを直接載せる代わりに、補助変数を更新しながら線形化された問題を繰り返し解く、という同じ骨格を持っています。

7. 何が解けて、何が残るのか ​

大関法は、難しい問題を簡単な問題へ魔法のように変える方法ではありません。二乗ペナルティから来る全結合や係数レンジの問題を、補助変数の更新問題へ移す方法です。元の f0(q) が難しければ、固定した ν のもとで Heff をサンプルする部分は依然として難しいです。双対自由エネルギーにも局所解があり、ν の履歴や更新幅 η によって収束の速さや到達する解が変わります。

それでも、この置き換えには大きな意味があります。制約を大きな二乗ペナルティで押さえ込む代わりに、制約違反を観測し、そのずれに応じて外場を調整します。全結合相互作用をハードウェアに埋め込む代わりに、補助変数が作る局所場として実装します。統計力学で二体・多体相互作用を補助場にほどく発想が、量子アニーリングの実装上の制約を避けるアルゴリズムに変わっています。

この観点から見ると、大関法は「制約を罰する」方法から「制約を満たす外場を学習する」方法への移行です。アニーラは高速なサンプラとして働き、ラグランジュ乗数はサンプルの平均を見て更新されます。ハバード・ストラトノビッチ変換は、その2つをつなぐ翻訳辞書です。

参考文献: [1]。

参考文献 ​

  1. Masayuki Ohzeki, “Breaking limitation of quantum annealer in solving optimization problems under constraints,” Scientific Reports 10, 3126 (2020). 出典