運動方程式とグラフ上の波動方程式

  • このエントリーをはてなブックマークに追加
  • Pocket
  • LINEで送る

グラフで表現できるネットワークにおいて、各ノードが隣接するノードから力を受ける場合、グラフ上の波動方程式を定義することができます。

この記事ではノードの状態量が運動方程式に従い、隣接するノードから力を受ける状況において、グラフ上の波動方程式がラプラシアン行列を使って表せることを示します。

運動方程式の復習

ある時点\( t\)における状態量(位置や温度など)を\( x(t)\)と表します。\( x(t)\)はスカラーでもよいですし、ベクトルでも構いません。たとえば、状態量として温度を表す場合にはスカラー、位置を表す場合には(縦・横・高さの)ベクトルとして表すのが都合がいいでしょう。

状態量\( x(t)\)が運動方程式を満たすとは、状態量を変化させる力\(F \)が存在して

\begin{equation} \begin{split}
\frac{ d^2}{ dt^2}x(t)=F
\end{split} \end{equation}

が成り立つことをいいます。

以下ではグラフにおけるノードが状態量を持つという設定において、状態量が運動方程式を満たすようなケースを考えます。

 

グラフ上の波動方程式

ある有限の頂点(ノード)をもつネットワーク(グラフ)を考えます。

時点\( t\)におけるノード\(i \)の状態量を\( x_i(t)\)と表し、このノードと隣接するノードの集合を\( \partial_i\)と表します。ノード\( j\in \partial_i\)とノード\( i\)とは辺で結ばれているということです。

各ノードの状態量\( x_i(t)\)は運動方程式を満たすと仮定します。つまり\( \frac{ d^2}{ dt^2}x_i(t)=F_i\)となる力\( F_i\)がノード\( i\)に加わっているとします。

いまノード\( i\)に対して、隣接ノードとの状態量の差に比例する力が加わっていると考えましょう。つまり

\begin{equation} \begin{split}
F_i=-k_{ij}(x_i(t)-x_j(t))
\end{split} \end{equation}
であるような状況です。\( -k_{ij}\)はノード\( i\)と\( j\)の間に働く力を規定する比例定数です。

ノード\( i\)に対して働く力は、隣接するノードすべてから加わる力の和として

\begin{equation} \begin{split}
\frac{ d^2}{ dt^2}x_i(t)=-\sum_{j\in \partial_i}k_{ij}(x_i(t)-x_j(t))
\end{split} \end{equation}
であると仮定します。

この運動方程式をすべてのノード\( i=1,\cdots,n\)について並べて書くと

\begin{equation} \begin{split}
\left(
\begin{array}{c}
\frac{ d^2}{ dt^2}x_1(t) \\
\vdots\\
\frac{ d^2}{ dt^2}x_n(t)
\end{array}
\right)& = \left(
\begin{array}{c}
-\sum_{j\in \partial_1}k_{1j}(x_1(t)-x_j(t)) \\
\vdots\\
-\sum_{j\in \partial_n}k_{nj}(x_n(t)-x_j(t))
\end{array}
\right)\\
\Leftrightarrow
\frac{ d^2}{ dt^2}\left(
\begin{array}{c}
x_1(t) \\
\vdots\\
x_n(t)
\end{array}\right)
&=
-\left( \begin{array}{ccccc}
\sum_j k_{1j}& -k_{1,2}& \cdots &-k_{1n-1}& -k_{1n} \\
-k_{2,1}& \sum_j k_{2j}&\ddots & -k_{2n-1}& -k_{2n} \\
-k_{n1} & -k_{2n}&\cdots & -k_{nn-1}&\sum_j k_{nj}
\end{array} \right)
\left(
\begin{array}{c}
x_1(t) \\
\vdots\\
x_n(t)
\end{array}
\right)
\end{split} \end{equation}
となります。

この式を\( \frac{ d^2}{ dt^2}\boldsymbol{ x(t)}=-\boldsymbol{ \mathcal{L}x(t)}\)と書くとき、この\( \boldsymbol{ \mathcal{L}}\)はグラフのラプラシアン行列になっています。

この方程式は波動方程式と同じ形をしているため、グラフ上の波動方程式といいます。

参考文献

この記事の内容は以下の書籍を参考にしました。ネットワークをグラフとして扱い、グラフの構造をラプラシアン行列を通じて把握することで、SNSの「炎上」問題に工学的にアプローチする方法を論じています。ネットワーク分析の教科書としてとても勉強になります。

  • このエントリーをはてなブックマークに追加
  • Pocket
  • LINEで送る

SNSでもご購読できます。

コメントを残す

*