0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

はじめてのCoherent Ising Machine:探索と収束のメカニズムを直感的に解説してみた

Last updated at Posted at 2025-11-24

はじめに

この記事では、Coherent Ising Machine(CIM)の方程式に登場する 適応ゲイン ($e_i$) がどのように働き、どの段階で “探索 → 収束” の切り替えを行うのかを、最も単純な 2 スピン系($N = 2$)を例に整理していきます。

この記事では、専門的な厳密性よりも、まず CIM の動きを直感的につかむこと を重視しています。
初学者の私の視点から見た理解の道筋を、これから CIM を触ろうとしている方が一緒に辿っていけるような形でまとめていきます。

CIMの式

まず最初に、今回理解したい対象である CIM の基本方程式を示します。CIM は Ising 問題を解くために、離散的なスピン $\sigma_i \in {\pm1}$ を 連続値のアナログスピン $x_i$ に拡張し、その時間発展から最適解(符号)を得ようとする仕組みです。

そのダイナミクスは以下の 2 つの式で記述されます。

\frac{dx_{i}}{dt}
= (p-1)x_{i} - \mu x_{i}^3 + \epsilon\, e_{i} \sum_{j} J_{ij} x_{j}
\frac{de_{i}}{dt}
= - \beta (x_{i}^2 - a)\, e_{i}

ここで、

  • $(p-1)x_i - \mu x_i^3$ は 1 スピン自身の二重井戸ポテンシャル
  • $\sum_j J_{ij} x_j$ は他スピンとの相互作用(押し合い)
  • $e_i$ はその相互作用の影響を増減させるゲイン

をそれぞれ表します。

この 2 式が連動し、CIMは 初期は探索、後半は収束 という動作を自然に行います。

微分の基本から

微分は知っている人が多いのですが、ここで今一度 イメージとして 理解することは、このようなCIMの問題設定を考える上で非常に有用だと思います。では一緒に考えていきましょう。

まず、

\frac{dx}{dt} = 0

これは簡単だと思うのですが、「これをどうイメージしますか?」と言われると少し詰まる人もいるのではないでしょうか?

私の理解ではこうです。

$x$ という値があったとして、時間を $dt$ だけほんの少し進めてみると、$x$ は変化しないというイメージです。

ここで重要なのは、

  • $dt$ はただの記号ではない
  • 実際に時間を少し進めてみる

という感覚です。


次に、

\frac{dx}{dt} = 1

これはどういう意味でしょうか?

時間を $dt$ だけ進めてみると、$x$ に $+1$ の変化が入るという意味です。
つまり 時間が進むほど $x$ も増える ということです。


続いて、

\frac{dx}{dt} = x

これはどうでしょうか?

時間が $dt$ 進むと増える量が $x$ に比例する、という意味です。

つまり、

  • $x$ が小さい → ゆっくり増える
  • $x$ が大きい → 早く増える

という自己増殖的なフィードバックです。


最後に、

\frac{dx}{dt} = x^2

これは $dt$ 進めると $x^2$ だけ変化するという意味ですよね。

ここで伝えたい重要な感覚は次です。

  • $x$ が小さいうちは変化がほとんどないが
  • $x$ が大きくなると急激に増える

そして、この次の 比較が非常に大事 です。

\frac{dx}{dt} = x, \quad \frac{dx}{dt} = x^2

どちらが強いフィードバックになるでしょうか?

  • $x \approx 0$ では $x$ の方が大きい
  • $x \approx 1$ では同程度
  • $x \gg 1$ では $x^2$ が支配的

となります。

CIM の2重井戸型ポテンシャルの感覚

ここで CIM の式に絡めて少し発展させていきます。ここまでの流れが理解できていれば、この式の挙動も自然に見えてくると思います。

\frac{dx}{dt} = x - x^3

ポイントは次の通りです。

  • $x$ は「進め」
  • $-x^3$ は「戻れ」

となっており、どちらが強く働くかは $x$ の大きさによって決まります。ここでもう一つ重要なのは 符号が逆なので互いに干渉し合う という点です。

それぞれの変数の立場は以下の通りです。

  • $x \approx 0$ では $x$ の効果が強い → 前に進む
  • $x \approx 1$ を超えたあたりから $x^3$ が効いてブレーキになる

その結果、「どこかで安定するはずだ」という直感が出てきます。


安定するとはどういうことでしょうか?
それは、少し時間を進めても $x$ が変化しない ということです。

考えるのは、

\frac{dx}{dt} = 0

となる場所です。先ほどの式を使えば、

\begin{align}
\frac{dx}{dt} = x - x^3 = 0 \\
\Rightarrow\ x = 0,\ \pm 1
\end{align}

と求まります。

ここで注意したいのは、$x = 0$ は一見それっぽく見えますが、実は安定点ではない という点です。ほんのわずかに $x$ が増えれば、$x$ の項が勝って加速し、すぐにそこから離れてしまいます。

一方で $x = \pm 1$ 付近は、$x$ の正のフィードバックと $x^3$ の負のフィードバックが釣り合い、時間を進めてもほとんど動かない ― これが安定点 です。


この理解を踏まえて CIM の実際の式の一部をみていきます。

\frac{dx_{i}}{dt}
= (p-1)x_{i} - \mu x_{i}^3

$p>1$、$\mu>0$とすると、見てわかる通り先ほどの

\frac{dx}{dt} = x - x^3

とまったく同じような対応関係になります。

  • $x$ が小さいときは第一項が支配的で「進め」と背中を押す
  • $x$ が大きくなると $x^3$ が効いてきて「戻れ」と手を引いて制御する

次の疑問は当然こうなるはずです。

どこで安定するのか?
どの値に落ち着こうとするのか?

安定とは、少し時間を進めても $x_i$ が変化しない ということでしたね。
つまり、

\frac{dx_{i}}{dt} = 0

となる $x_i$ を探すことになります。

\begin{align}
\frac{dx_{i}}{dt} = (p-1)x_{i} - \mu x_{i}^3 = 0 \\
\Rightarrow\ x_i = 0,\ \pm\sqrt{\frac{p-1}{\mu}}
\end{align}

ここで、$x_i = 0$ は見かけ上の解ですが、少しでも $x_i$ が動くと第一項によって押し出されてしまうため実質的に不安定点です。
対して、

x_i = \pm\sqrt{\frac{p-1}{\mu}}

は $x$ と $x^3$ の力が釣り合うため、そこに留まろうとする安定点 になります。

イジングモデルを考える

ついに問題の核であるイジングが登場しますが、まずは相互作用がない場合にどれほど単調かを確認します。

\frac{dx_{i}}{dt}
= (p-1)x_{i} - \mu x_{i}^3

この式では、例えば $x_{i}>0$ で始まればその方向に進み、最終的に正の安定点に落ち着きます。同様に $x_{i}<0$ であればそのまま負の安定点に向かいます。

つまり、

初期値の符号だけで結末が決まる “関係性ゼロの世界”

です。誰とも関わらなければ、実に淡々と進んで終わってしまいます。


そこで、環境に「相手」を導入すると話が一気に変わります。関係性が加わると、挙動に“ドラマ”が生まれます。それがイジング項です。

まずは $\epsilon$、$e_i$ を一旦外します。

\frac{dx_{i}}{dt}
= (p-1)x_{i} - \mu x_{i}^3 + \sum_{j} J_{ij} x_{j}

ここで重要なのは第三項です。

\sum_{j} J_{ij} x_{j}

これが周りのスピンの影響を表している
という点です。

つまり $x_i$ の振る舞いは「自分自身の性質」だけではなく、「周りの存在の影響」も受けるわけです。


では、具体例として $N=2$ のケースを考えます。A さん (index 0) と B さん (index 1) の二人だけの世界です。

もし、

J_{01}=J_{10}=1

であれば、それはどういう関係でしょうか?

 \sum_{j} J_{0j} x_{j}
 = J_{01} x_{1}
 = x_{1}

よって A の更新式は、

\frac{dx_{0}}{dt}
= (p-1)x_{0} - \mu x_{0}^3 + x_{1}

となります。


ここでの読み方はこうです:

  • B が正の側にいれば
    → $x_{1}>0$
    → $\frac{dx_{0}}{dt}$ が正に作用
    → A も正方向へ押される(可能性が高まる)

  • B が負の側にいれば
    → $x_{1}<0$
    → $\frac{dx_{0}}{dt}$ が負に作用
    → A も負方向へ押される(可能性が高まる)

つまり、

J_{01}=J_{10}=1

という関係は、

A と B が「同じ方向を向いて歩調を合わせたい関係」

ということです。お互いが相手の方向性を感じ、寄り添うように動く関係です。


一方で、

J_{01}=J_{10}=-1

となると意味は逆転します。

  • B が正なら → A は負へいく(可能性が高まる)
  • B が負なら → A は正へいく(可能性が高まる)

つまり、

A と B は「お互い反対側に位置したい関係」

になります。


ここで面白い現象が出てきます。例えば $J_{01}=J_{10}=1$ の場合、A と B が、

  • A が負側スタート
  • B が正側スタート

というように、最初は反対の側にいたとしても、お互いの方向に引き込もうとする力が働くため、徐々にどちらかの側に寄り添っていきます。

そして、もしその途中で符号の反転を許す壁を乗り越えることができれば、最後には同じ符号を持つように、協調しながら安定的な位置へ落ち着いていくのです。

つまり、CIM とは “お互いの関係性を大切にしながら、全体として安定できる方向へ自然にまとまっていく” 仕組みだと解釈できます。

e_i が探索から収束への切り替えを担う

あとは、CIM の最後の砦である $e_{i}$ を含んだ式を理解するだけです。

\frac{dx_{i}}{dt}
= (p-1)x_{i} - \mu x_{i}^3 + \epsilon\, e_{i} \sum_{j} J_{ij} x_{j}
\frac{de_{i}}{dt}
= - \beta (x_{i}^2 - a)\, e_{i}

まず式の意味をイメージします。
CIM はスタート地点では各 $x_i$ が適当な初期値にいます。そこから時間発展するわけですが、$\epsilon$ は単に、周りとの関係性をどれくらい重視するかの強さです。


しかし、関係性を大事にすると言っても、いつまでも他人に同調しすぎてしまうのは、「自分を失って振り回されている状態」ですよね。数学的にもそのような過剰依存は不安定です。

ここで重要なのが、$e_i$ のダイナミクスです。

\frac{de_{i}}{dt}= - \beta (x_{i}^2 - a)\, e_{i}

この式は、$e_i$ が状況に応じて自然に調整されるしくみを表しています。
ただし $e_i$ の動きは $x_i(t)$ に依存しており、$x_i$ 自体も別の式で動いているため、この式だけで完結して理解することはできません。
そのうえで、ここで捉えておきたい本質は次の通りです。

  • $x_i^2 = a$
    → $e_i$ の増加と減衰の境界
  • $x_i^2 < a$
    → $e_i$ は増える(関係性の重みが強まる)
  • $x_i^2 > a$
    → $e_i$ は減る(関係性の重みが弱まる)

つまり $e_i$ は、$x_i$ の状態に応じて
「どれくらい周りのスピンの影響を受けるか」
を調整する役目を持っています。

$x_i$ がまだ定まっていない初期段階では影響を大きくし、
$|x_i|$ が安定してきたら徐々にその比重を下げる。
そんな自然な “探索 → 収束” を担っていると理解できます。

おわりに

CIM の動作をあれこれ数学的に眺めていると難しく見えるのですが、その本質はとても素直です。

「最初は周りの影響を受けながら方向性を探り、
やがてそれぞれが安定できる場所へ静かに落ち着いていく」

この流れさえ掴めていれば、自然と理解できると思います。

この記事が、CIM の式を見るときにただ式を追うのではなく、
その “動きの感覚” を捉える、
そしてそこには人間ドラマに似たものがあるということを意識するきっかけになれば幸いです。

関連記事

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?