カットヒル・マキー法
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2023/11/17 07:48 UTC 版)
![]() |


行列を扱う数学分野において、カットヒル・マキー法 (カットヒル・マッキー並べ替えとも、Cuthill–McKee algorithm, CM) は Elizabeth Cuthill と J. McKee[1] に因んで名付けられた、対称なパターンを持つ疎行列を帯幅の小さい帯行列の形に並べ替えるアルゴリズムである。同じアルゴリズムだが、添字が逆順となる、逆カットヒル・マキー法 (Reverse Cuthill–McKee algorithm, RCM) と呼ばれる Alan George によるアルゴリズムもある。実用上は、RCM法をガウス消去法と共に適用した場合には CM 法による並べ替えよりもフィルイン(非零要素の発生)が少くなることが知られている[2]。
カットヒル・マキー法 はグラフ理論において標準的に用いられる、幅優先探索アルゴリズムの一変種である。レベルRi (i=1,2,..) を、外縁ノードから始め、全てのノードを被覆するまで生成する。集合 Ri+1 は集合 Ri 内の全ノードの隣接頂点から生成される。 これらのノードは次数が昇順になるよう並べられる。この点のみが幅優先探索アルゴリズムとの違いである。
アルゴリズム
ある n × n 対称行列が与えられ、この行列をグラフの隣接行列として可視化するものとする。カットヒル・マキー法は、隣接行列の帯幅を、グラフの頂点を再配列することにより減少させるアルゴリズムである。
このアルゴリズムにより、再配列された頂点の順序つき n-タプル R が生成される。
始めに、外縁頂点(最低次数をもつ頂点) x を選ぶ。集合 R := ({x}) とする。
そして、 i = 1,2,.. に対して、|R| < n が成り立つ限り次のステップを繰り返す。
- Ri (R の i 番目の要素)の隣接集合 Ai を構築し、R に既に含まれる頂点を除外する
- カットヒル・マキー法のページへのリンク