囲碁の数理について研究を始める.

碁盤

まず,碁盤をどう表すべきか.碁盤が格子状になっていることから,これを数学的に表すにはグラフが最適ではないかと考えた.グラフの表記が書物によって若干異なるが,落合豊行著『グラフ理論入門』に倣うことにする.

3路盤を表す無向グラフ$G$は頂点の集合$V$と辺の集合$E$で次のように表せる.

$$ G = (E, V)\\ V = \{v_1, v_2, ..., v_9\}\\ E = \{e_1, e_2, ..., e_{12}\} \quad ただし \; e_1 = v_1v_2, e_2 = v_2v_3, ..., e_{12} = v_8v_9 $$

3路盤.svg

9頂点$V$のグラフ$G$を9行9列の正方行列$A$で表すことができる. 行列$A=(a_{ij})$のエントリー$a_{ij}$は頂点$v_i$が頂点$v_j$に隣接しているとき$1$,そうでないとき$0$と定める. ただし対角成分は$0$とする.この行列$A$をグラフ$G$の隣接行列という.

$$ A=\begin{bmatrix} 0 & 1 & 0 & 1 & 0 & 0 & 0 & 0 & 0 \\ 1 & 0 & 1 & 0 & 1 & 0 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 & 0 & 1 & 0 & 0 & 0 \\ 1 & 0 & 0 & 0 & 1 & 0 & 1 & 0 & 0 \\ 0 & 1 & 0 & 1 & 0 & 1 & 0 & 1 & 0 \\ 0 & 0 & 1 & 0 & 1 & 0 & 0 & 0 & 1 \\ 0 & 0 & 0 & 1 & 0 & 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 0 & 1 & 0 & 1 & 0 & 1 \\ 0 & 0 & 0 & 0 & 0 & 1 & 0 & 1 & 0 \end{bmatrix} $$

隣接行列$A$はグラフ$G$の形(頂点同士がどう隣接しているか)を実質的に表している. 行列$A$の1行$v_1$に隣接しているのが2列$v_2$と4列$v_4$であることが分かる.

隣接行列$A$の積$A^2$は以下のような行列になる.交点$v_1$の隣のさらに隣がこの行列の1行目に現れている.隣の交点までの距離を1とすると$v_1$からの距離が2の交点は$v_1, v_3, v_5, v_7$の4点であることが分かる.また,行列の要素の値はその経路の組み合わせ数を表している.$v_1$から$v_1$までの経路は2通り,$v_1$から$v_3$までの経路は1通りといった具合である.

$$ A^2 = \begin{bmatrix} 2 & 0 & 1 & 0 & 2 & 0 & 1 & 0 & 0 \\ 0 & 3 & 0 & 2 & 0 & 2 & 0 & 1 & 0 \\ 1 & 0 & 2 & 0 & 2 & 0 & 0 & 0 & 1 \\ 0 & 2 & 0 & 3 & 0 & 1 & 0 & 2 & 0 \\ 2 & 0 & 2 & 0 & 4 & 0 & 2 & 0 & 2 \\ 0 & 2 & 0 & 1 & 0 & 3 & 0 & 2 & 0 \\ 1 & 0 & 0 & 0 & 2 & 0 & 2 & 0 & 1 \\ 0 & 1 & 0 & 2 & 0 & 2 & 0 & 3 & 0 \\ 0 & 0 & 1 & 0 & 2 & 0 & 1 & 0 & 2 \end{bmatrix} $$

隣接行列$A$の$i$行にあるエントリーの総和を$d(v_i)$と表し,頂点$v_i$の次数と呼ぶ.

グラフの最小次数を$\delta(G)$,最大次数を$\Delta(G)$で表す.

次数が3以上の頂点を分岐点と呼ぶことにする.

3路盤のグラフ$G$において,

$$ \delta(G)=d(v_1)=d(v_3)=d(v_7)=d(v_9)=2\\ d(v_2)=d(v_4)=d(v_6)=d(v_8)=3\\ \Delta(G)=d(v_5)=4 $$

であり,それぞれが隅,辺,それ以外を表していて,隅以外は分岐点である.

同じく3路盤のグラフ$G$が与えられたとき,9行12列の行列$M=(m_{ij})$で以下の条件を満たすものを$G$の接続行列と呼ぶ. 辺$e_j$が頂点$v_i$に接続するとき$m_{ij}=1$,そうでないとき$m_{ij}=0$とする.

$$ M=\begin{bmatrix} 1 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 1 & 1 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 1 & 0 & 0 & 1 & 0 & 1 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 1 & 0 & 1 & 1 & 0 & 1 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 1 & 0 & 1 & 0 & 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 & 1 & 1 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 & 1 \end{bmatrix} $$

碁盤の表現として隣接行列 $A$ と接続行列 $M$ のどちらを使うかは,$M$*のほうが情報量が多いので応用範囲が広そうにも思えるが,*しばらく保留することにする.