QUBOとイジングモデルの変換

QUBOとイジングモデルの変換

執筆済 最適化QUBOイジング模型

両者は変数の取る値が違うだけで、同じ問題を表す。

QUBO イジング
変数 xi{0,1} si{1,+1}
目的 minxQx minH(s)
出身 数理最適化 統計物理

変換式#

si=2xi1xi=si+12

一次の対応なので、代入して整理すれば係数が移る。

Jij=Qij4,hi=12(Qii+12jiQij)

(符号や係数は H の定義の置き方で変わるので、実装では使うライブラリの規約を確認する。)

定数項が出る#

変換では変数に依存しない定数が現れる。 最適解の位置は変わらないが、エネルギーの値そのものは一致しない

量子アニーラの出力エネルギーを元の目的関数値と比べるときは、 この定数のずれを戻す必要がある。実測値が合わないときに 最初に疑うべき点。

どちらで書くか#

  • ハードウェア(D-Wave など)はイジング形式が素の入力
  • 問題の定式化は x{0,1} で「選ぶ / 選ばない」と書く方が自然

実務では QUBO で定式化してからイジングに変換する流れが多く、 ライブラリ(PyQUBO、D-Wave Ocean など)がこの変換を担う。

参考文献#

ノート一覧を閉じる