イジングモデルとは

イジングモデルのハミルトニアン概要

イジングモデルは物理学の一分野「統計力学」における最もシンプルなモデルです。膨大な個数のミクロ要素が相互作用しあい、またそれぞれのミクロ要素に強制力が与えられているとき、全体(マクロ)としてどのような振る舞いを示すかを表現するモデルと言えます。イジングモデルにおけるミクロ要素はスピンと呼ばれ、±1の2つの値を取ります。イジングモデルは無向グラフ$G=(V,E)$上に定義されます。ここで$V$は頂点の集合、$E$は辺の集合です。スピン変数は頂点上に存在し、$s_i$と表現することにします。つまり$s_i=±1$です。

グラフ$G=(V,E)$

アニーリングマシンを用いるためには、組合せ最適化問題のコスト関数と制約条件をイジングモデルのハミルトニアン(エネルギー関数)で表現する必要があります。エネルギー関数は、

$$ E (\lbrace s _i \rbrace) = \sum _ { i \in V } h _ { i } s _ { i } + \sum _ { ( i , j ) \in E } J _ { i j } s _ { i } s _ { j } $$

で与えられます。ここで$h_i$をサイト$i \in V$にかかる磁場、$J_{ij}$をサイト$i \in V$及び$j \in V ( ( i , j ) \in E )$にかかる相互作用と呼びます。物理学の考え方では、エネルギー$E(\lbrace s_i \rbrace)$が最小の状態を安定状態と呼びます。

イジングモデルのハミルトニアン具体例(1つのスピンの場合)

スピンが1個だけある場合を考えてみましょう。
このときエネルギー関数は、

$$ E \left( s _ { 1 } \right) = h _ { 1 } s _ { 1 } $$

で与えられます。$s_1$の値に応じたエネルギー値は以下のようになります。

スピンの状態 エネルギー値
$s_1=+1$ $h_1$
$s_1=-1$ $-h_1$

$h_1>0$のときには、$s_1=-1$が安定となります。逆に$h_1<0$のときには、$s_1=+1$が安定となります。

イジングモデルのハミルトニアン具体例(2つのスピンの場合(1))

スピンが2個だけある場合を考えてみましょう。2個のスピン間に相互作用のみが働いているとします。

このときエネルギー関数は、

$ E \left( s _ { 1 } , s _ { 2 } \right) = J _ { 12 } s _ { 1 } s _ { 2 } $

で与えられます。$s_1$及び$s_2$の値に応じたエネルギー値は以下のようになります。

スピンの状態 エネルギー値
$s_1=+1$ $s_2=+1$ $J_{12}$
$s_1=+1$ $s_2=-1$ $-J_{12}$
$s_1=-1$ $s_2=+1$ $-J_{12}$
$s_1=-1$ $s_2=-1$ $J_{12}$

$J_{12}>0$のときには、$s_1≠s_2$が安定となります。逆に$J_{12}<0$のときには、$s_1=s_2$が安定となります。

イジングモデルのハミルトニアン具体例(2つのスピンの場合(2))

スピンが2個だけある場合を考えてみましょう。2個のスピン間に相互作用があるだけでなく、それぞれのスピンに磁場が印加されているとします。

このときエネルギー関数は、

$$ E \left( s _ { 1 } , s _ { 2 } \right) = J _ { 12 } s _ { 1 } s _ { 2 } + h _ { 1 } s _ { 1 } + h _ { 2 } s _ { 2 } $$

で与えられます。$s_1$及び$s_2$の値に応じたエネルギー値は以下のようになります。

スピンの状態 エネルギー値
$s_1=+1$ $s_2=+1$ $J_{12}+h_1+h_2$
$s_1=+1$ $s_2=-1$ $-J_{12}+h_1-h_2$
$s_1=-1$ $s_2=+1$ $-J_{12}-h_1+h_2$
$s_1=-1$ $s_2=-1$ $J_{12}-h_1-h_2$

$J_{12}, h_1, h_2$の値に応じて、安定状態は変わります。例えば、$J_{12}=1, h_1=-2, h_2=3$とすると、$s_1=+1, s_2=-1$が安定状態となります。

イジングモデルのハミルトニアン具体例(4つのスピンの場合)

最後にスピンが4個だけある場合を考えてみましょう。図のような場合を見ていきます。

つまり、$s_1,s_2$の間、$s_2,s_3$の間、$s_3,s_4$の間にのみ相互作用があり、かつ、$s_1$と$s_4$にのみ磁場がかかっている場合を考えます。

このときエネルギー関数は、

$$ E (\lbrace s_i \rbrace) = J _ { 12 } s _ { 1 } s _ { 2 } + J _ { 23 } s _ { 2 } s _ { 3 } + J _ { 34 } s _ { 3 } s _ { 4 } + h _ { 1 } s _ { 1 } + h _ { 4 } s _ { 4 } $$

$s_1,s_2,s_3,s_4$の値に応じたエネルギー値は以下のようになります。

スピンの状態 エネルギー値
$s_1=+1$ $s_2=+1$ $s_3=+1$ $s_4=+1$ $J_{12}+J_{23}+J_{34}+h_1+h_4$
$s_1=+1$ $s_2=+1$ $s_3=+1$ $s_4=-1$ $J_{12}+J_{23}-J_{34}+h_1-h_4$
$s_1=+1$ $s_2=+1$ $s_3=-1$ $s_4=+1$ $J_{12}-J_{23}-J_{34}+h_1+h_4$
$s_1=+1$ $s_2=+1$ $s_3=-1$ $s_4=-1$ $ J_{12}+J_{23}+J_{34}+h_1-h_4$
$s_1=+1$ $s_2=-1$ $s_3=+1$ $s_4=+1$ $-J_{12}-J_{23}+J_{34}+h_1+h_4$
$s_1=+1$ $s_2=-1$ $s_3=+1$ $s_4=-1$ $-J_{12}-J_{23}-J_{34}+h_1-h_4$
$s_1=+1$ $s_2=-1$ $s_3=-1$ $s_4=+1$ $-J_{12}+J_{23}-J_{34}+h_1+h_4$
$s_1=+1$ $s_2=-1$ $s_3=-1$ $s_4=-1$ $-J_{12}+J_{23}+J_{34}+h_1-h_4$
$s_1=-1$ $s_2=+1$ $s_3=+1$ $s_4=+1$ $-J_{12}+J_{23}+J_{34}-h_1+h_4$
$s_1=-1$ $s_2=+1$ $s_3=+1$ $s_4=-1$ $-J_{12}+J_{23}-J_{34}-h_1-h_4$
$s_1=-1$ $s_2=+1$ $s_3=-1$ $s_4=+1$ $-J_{12}-J_{23}-J_{34}-h_1+h_4$
$s_1=-1$ $s_2=+1$ $s_3=-1$ $s_4=-1$ $-J_{12}-J_{23}+J_{34}-h_1-h_4$
$s_1=-1$ $s_2=-1$ $s_3=+1$ $s_4=+1$ $J_{12}-J_{23}+J_{34}-h_1+h_4$
$s_1=-1$ $s_2=-1$ $s_3=+1$ $s_4=-1$ $J_{12}-J_{23}-J_{34}-h_1-h_4$
$s_1=-1$ $s_2=-1$ $s_3=-1$ $s_4=+1$ $J_{12}+J_{23}-J_{34}-h_1+h_4$
$s_1=-1$ $s_2=-1$ $s_3=-1$ $s_4=-1$ $J_{12}+J_{23}+J_{34}-h_1-h_4$

$J_{12}, J_{23}, J_{34}, h_1, h_4$の値に応じて、安定状態は変わります。例えば、$J_{12}=1, J_{23}=3, J_{34}=-1, h_1=2, h_4=3$とすると、$s_1=-1, s_2=+1, s_3=-1, s_4=-1$が安定状態となります。

組合せ最適化問題をアニーリングマシンで解決する具体的な事例を知りたい人は

組合せ最適化問題とは

組合せ最適化を身近な組合せ最適化問題として分かりやすい2つの例を用いて解説します。また、IoT社会における組合せ最適化処理の高速解法の重要性について述べます。

COVID-19感染対策を考慮し研究員シフトを最適化する

COVID-19の流行に伴い、感染リスクを考慮した制約条件の下、研究員のシフト作成をアニーリングマシンで行うユースケースを紹介しています。

保険会社の再保険ポートフォリオを最適化する

自然災害リスクに対応するため、保険会社が保有する膨大なデータを活用した再保険ポートフォリオ策定をアニーリングマシンで行うユースケースを紹介しています。

アニーリングマシンの使い方が知りたい人は

易しく学ぶ最適化フロー

初級者向けに、アニーリングマシンで最適化問題を解く工程を、「課題整理と要件定義」「定式化」「入力データ作成」「アニーリングマシン実行」の4段階に分けて手順やポイントを解説します。

アニーリングマシンのための数学

アニーリングマシンが得意とする問題の特徴である「二次」「離散」を中心に、知っておくべき数学的前提を易しく解説します。