《アレンジメント》
【あれんじめんと (arrangement) 】
超平面のアレンジメント(hyperplane arrangement) とは, 超平面による空間の 分割である. 双対変換によって, 点集合は超平面集合に変換されるので, 点集合の問題にも対応する. また, 離散システムの観 点からは, 線形有向マトロイドの1つの表現である. 組合せ幾何とアルゴリズ ムからの詳しい解説が [1] にある.
$$次元ユークリッド空間$$内の$$個の超平面($$の場合は直線) の集合$$を考える. この$$によって, $はいろいろな次元のフェイス (face) に分割される. 例えば, 2次元内の有限個の直線の集合は, 2次元, 1次元, 0次元のフェイス (面, 辺, 点) に平面を自然に分割する. これらのフェイスの集合とその接続関係, 各フェイスに対しそれを含む超平面の情報を合わせたものを$$のアレンジメントといい, $$と書く. フェイスの次元を明記したいときは, $$次元構文解析に失敗 (不明な関数「\allowbreak」): {\displaystyle $(0\allowbreak \le k\le d)$} のフェイスを$$-フェイスと書く. $$-フェイスを頂点, $$-フェイスを辺, $$-フェイスを ファセット (facet), $$-フェイスをセル (cell) とも呼ぶ.
フェイス$$がフェイス$の部分フェイスであるとは, $$の次元が$$の次元 より1だけ小さく, $$が$$の境界に含まれていることである. $が$$の部 分フェイスならば, $$と$$は (互いに) 接続しているといい, この関係 を接続関係という. フェイスの接続関係全体は束をなし, アレンジメントは, 各フェイスの座標など幾何情報と, このフェイスのなす束で表される.
$$内の$$個の超平面のアレンジメントが単純 (simple) である とは, $$に属する任意の$個の超平面は1点で交わり, どの$$個の超平面 も交点をもたないことである. アレンジメントの$$-フェイスの最大数$$は, アレンジメントが単純であるとき達成され,
で与えられる. 特に, $$-フェイス, すなわちセルの数は$$を定数とみなすと $構文解析に失敗 (不明な関数「\allowbreak」): {\displaystyle f_d(H)\allowbreak =\sum_{i=0}^d {n\choose d-i}={\rm O}(n^d)}
$となる.
アレンジメントは逐次添加法で構成できる. 超平面を1つずつ付け加え, アレンジメントの接続関係を更新していく方法である. 2次元の場合で, 平面上の$本の直線からなる単純なアレンジメントを構成する方法を述べる.
$$本の直線の集合を$とし, $$平面上にあるとする. $$本の直線$$からなるアレンジメントに$$番目の 直線$を加えてアレンジメントを更新する. 各頂点には, この頂点に接続している4つの辺を反時計回りの 順で貯えておく. 各辺には, その辺を含む直線の式と辺の両端点の頂点を覚えておく. $$で$$のすぐ上にある直線を左から辿り, この辺の下に接続している面の境界を時計回りに回って行く. $$と交わった時は, その交点から始めて, 今度は隣の面の境界 を時計回りに辿る. これを$$がすでにアレンジメントに存在していた $$本の直線と交わるまで行なう. この操作により, $$上に新たに現れる頂点もすべて列挙することができ, そこでアレンジメントを更新していくことができる. その手間は, 直線$$と交わる面の境界上で 辿る辺の数に比例する.
$$次元の$$個の超平面のアレンジメントにおいて, 新たに1つ超平面$$を加え, $$と交わる各セルのフェイスの集合をゾーンと定義すると, 次のゾーン定理が成り立つ.
ゾーン定理. $$次元空間内の$$個の超平面から成るアレンジメントにおいて, 1つの超平面のゾーンのフェイスの総数は$$である.
このゾーン定理より, アレンジメントを逐次添加法で構成したときの計算量を $$でおさえることができる.
ゾーン定理の離散幾何への応用を1つ上げておく. $$次元の$$超平面のアレンジメントのセルの集合を $$, 各セル$$のファセットの数を$$としたとき, $$ が成り立つ. $ $ であるから, 各セルのファセットの数はそんなに分散が大きくないことが わかる. 2次元の場合には, このような関係から複数のセルの辺の数を評価することができる.
$$次元超平面アレンジメントにおいて, $$軸に平行な直線で貫いたときに下から$$番目となる交点をもつフェイス全体の集合を$$-レベル, または単にレベル という. 2次元の場合, 高々$$までのレベルのサイズは$$であり, $$-レベルのサイズは$$となる. 双対性より, これは平面の$$点を直線で等分割する方法の数が$$であることも 意味する. $$-レベルを $$時間で求める 平面走査法アルゴリズムが知られている.
3次元の平面のアレンジメントでもレベルのサイズは$$である. 4次元以上の 場合, 全体より小さいオーダであるかどうかはわかっていない. また, 高次元の場合 は, 0, 1次元フェイスの頂点, 辺で構成されるスケルトンをたどるアルゴリズムも知られており, 特に3次元ではアレンジメント全体を 求めるよりも効率よく計算できる. レベルや1つのセルのスケルトンも 有用で, 点集合の問題を双対変 換して解いている場合, スケルトンのみで十分な場合もある.
曲線・曲面のアレンジメントも有用であり, このアレンジメントの1つのセルやゾーンの 組合せ複雑度の解析は, Davenport-Schinzel列の理論としてまとめられている. 定数次数の代数曲線のアレンジメントでは, セルのフェイス数は 一般次元で全体のオーダよりほぼ1つ小さな次数の数でおさえられる.
参考文献
[1] H. Edelsbrunner, Algorithms in Combinatorial Geometry, Springer-Verlag, 1987. 邦訳 (今井浩, 今井桂子訳), 『組合せ幾何学のアルゴリズム』, 共立出版, 1995.