
グラフ理論において、ツリー分解とは、グラフのツリー幅を定義し、グラフ上の特定の計算問題を高速化する ために使用できるツリーへのグラフのマッピングです。
木分解はジャンクションツリー、クリークツリー、ジョインツリーとも呼ばれ、確率的推論、制約充足、クエリ最適化、[1]、行列分解などの問題で重要な役割を果たします。
ツリー分解の概念は、もともとルドルフ・ハリン(1976)によって導入されました。その後、ニール・ロバートソンとポール・シーモア(1984) によって再発見され 、それ以来多くの研究者によって研究されてきました。[2]
意味
直感的には、木分解は、与えられたグラフGの頂点を木のサブツリーとして表し、G内の頂点は、対応するサブツリーが交差する場合にのみ隣接します。したがって、G はサブツリーの交差グラフのサブグラフを形成します。完全な交差グラフは弦グラフです。
各サブツリーは、グラフの頂点をツリーノードの集合に関連付けます。これを正式に定義するには、各ツリーノードをそれに関連付けられた頂点の集合として表します。したがって、グラフG = ( V , E )が与えられた場合、ツリー分解は( X , T )のペアです。ここで、X = { X 1 , …, X n }はVのサブセットの族 (バッグと呼ばれることもあります) であり、T はノードがサブセットX iであるツリーであり、次のプロパティを満たします。[3]
- すべての集合X iの和集合はV に等しくなります。つまり、各グラフ頂点は少なくとも 1 つのツリー ノードに関連付けられます。
- グラフ内のすべてのエッジ( v、w )には、 vとw の両方を含むサブセットX iが存在します。つまり、対応するサブツリーに共通のノードがある場合にのみ、頂点はグラフ内で隣接します。
- X iとX j の両方に頂点v が含まれる場合、X iとX jの間の (一意の) パスにあるツリーのすべてのノードX kにもvが含まれます。つまり、頂点vに関連付けられたノードは、 Tの接続されたサブセットを形成します。これは、一貫性、または実行交差プロパティとも呼ばれます。 X i、X j 、およびX kがノードであり、X kがX iからX jへのパス上にある場合、と同等に述べることができます。
グラフのツリー分解は決して一意ではありません。たとえば、単純なツリー分解では、グラフのすべての頂点が単一のルート ノードに含まれます。
基になるツリーがパス グラフであるツリー分解はパス分解と呼ばれ、これらの特殊なタイプのツリー分解から導出される幅パラメーターはパス幅と呼ばれます。
木幅kの木分解( X , T =( I , F ))は、すべてのに対してであり、すべてのに対してであるとき、滑らかである。[4]
ツリー幅
木分解の幅は、その最大集合 X i のサイズから 1 を引いた値です。グラフGのツリー幅tw ( G )は、 Gのすべての可能な木分解の中で最小の幅です。この定義では、ツリーのツリー幅が 1 になるように、最大集合のサイズが 1 だけ減少します。木分解以外の構造、たとえば弦グラフ、ブランブル、ヘイブンなどから木幅を定義することもできます。
与えられたグラフG のツリー幅が最大で与えられた変数kであるかどうかを判断することは NP 完全です。[5] しかし、k が任意の固定定数である場合、ツリー幅kのグラフを認識し、それらの幅k のツリー分解を線形時間で構築できます。 [4]このアルゴリズムのkへの時間依存性は、k 3の指数関数です。
動的プログラミング
1970年代初頭、グラフ上で定義された多くの組み合わせ最適化問題は、グラフが木幅に関連するパラメータである有限次元を持っている限り、非シリアル動的計画法によって効率的に解くことができることが観察されました[6]。その後、1980年代末に、数人の著者が独立して、[7]任意のグラフに対してNP完全である多くのアルゴリズム問題は、これらのグラフのツリー分解を使用して、有限木幅のグラフに対して動的計画法によって効率的に解くことができることを観察しました。
例として、木幅kのグラフで最大の独立集合を見つける問題を考えてみましょう。この問題を解くには、まず木分解のノードの 1 つを任意にルートとして選択します。木分解のノードX iについて、D i をX iから派生する集合X jの和集合とします。独立集合について、A ( S、i ) がD iの最大の独立サブセットIのサイズを表し、次の式が成り立つものとします。同様に、隣接するノードのペアX iとX jで、X i が木のルートからX jよりも遠い場合、独立集合について、 B ( S、i、j )がD iの最大の独立サブセットIのサイズを表し、次の式が成り立つものとします。木を下から上へ走査することで、 これらのA値とB値を計算できます。
ここで、計算における合計はノードX iの子に対して行われます。
各ノードまたはエッジには、これらの値を計算する必要がある最大2 k個のセットSがあるため、 kが定数であれば、計算全体にはエッジまたはノードごとに一定の時間がかかります。最大独立セットのサイズは、ルート ノードに格納されている最大値であり、最大独立セット自体は、この最大値から開始してこれらの格納された値をバックトラックすることで見つけることができます (動的プログラミング アルゴリズムの標準どおり)。したがって、木幅が制限されているグラフでは、最大独立セットの問題は線形時間で解決できます。同様のアルゴリズムは、他の多くのグラフの問題にも適用されます。
この動的計画法のアプローチは、機械学習において、木幅が制限されたグラフにおけるビリーフプロパゲーションのためのジャンクションツリーアルゴリズムを介して使用されます。また、木幅を計算して木分解を構築するアルゴリズムにおいても重要な役割を果たします。通常、このようなアルゴリズムでは、木幅を近似し、この近似幅で木分解を構築する最初のステップと、近似木分解で動的計画法を実行して木幅の正確な値を計算する2番目のステップがあります。[4]
参照
- BramblesとHaven – グラフのツリー幅を定義する際にツリー分解の代替として使用できる 2 種類の構造。
- ブランチ分解 – 幅がツリー幅の定数倍以内である密接に関連した構造。
- 分解法 - ツリー分解は、制約充足問題を解決するための分解法で使用されます。
注記
- ^ Gottlob et al. (2012).
- ^ ディーステル (2005) 354–355 ページ
- ^ ディーステル(2005)セクション12.3
- ^ abc ボドランダー(1996年)。
- ^ アーンボルグ、コルニール、プロスクロフスキー(1987)。
- ^ ベルテレー&ブリオスキ(1972年)。
- ^ アーンボーグとプロスクロウスキー (1989);ベルン、ローラー、ウォン (1987)。ボードレンダー (1988)。
参考文献
- Arnborg, S.; Corneil, D .; Proskurowski, A. (1987)、「k木における埋め込みの検出の複雑さ」、SIAM Journal on Matrix Analysis and Applications、8 (2): 277–284、doi :10.1137/0608024。
- Arnborg, S.; Proskurowski, A. (1989)、「部分k木に限定された NP 困難問題に対する線形時間アルゴリズム」、離散応用数学、23 (1): 11–24、doi : 10.1016/0166-218X(89)90031-0。
- Bern, MW; Lawler, EL ; Wong, AL (1987)、「分解可能グラフの最適サブグラフの線形時間計算」、Journal of Algorithms、8 (2): 216–235、doi :10.1016/0196-6774(87)90039-3。
- ベルテレ、ウンベルト。 Brioschi、Francesco (1972)、Nonserial Dynamic Programming、Academic Press、ISBN 0-12-093450-7。
- Bodlaender, Hans L. (1988)、「木幅が制限されたグラフの動的プログラミング」、Proc. 15th International Colloquium on Automata, Languages and Programming、Lecture Notes in Computer Science、vol. 317、Springer-Verlag、pp. 105–118、doi :10.1007/3-540-19488-6_110、hdl : 1874/16258、ISBN 978-3-540-19488-0。
- Bodlaender, Hans L. (1996)、「小さなツリー幅のツリー分解を見つけるための線形時間アルゴリズム」、SIAM Journal on Computing、25 (6): 1305–1317、CiteSeerX 10.1.1.113.4539、doi :10.1137/S0097539793251219。
- ディーステル、ラインハルト(2005)、グラフ理論(第3版)、シュプリンガー、ISBN 3-540-26182-6。
- Gottlob, Georg; Lee, Stephanie Tien; Valiant, Gregory; Valiant, Paul (2012)、「結合クエリのサイズとツリー幅の境界」、Journal of the ACM、59 (3): A16:1–A16:35、doi :10.1145/2220357.2220363、MR 2946220
- ハリン、ルドルフ(1976)、「グラフのS関数」、ジャーナルオブジオメトリ、8(1–2):171–186、doi:10.1007 / BF01917434、S2CID 120256194。
- ロバートソン、ニール;シーモア、ポール D. (1984)、「グラフマイナー III: 平面ツリー幅」、組み合わせ理論ジャーナル、シリーズ B、36 (1): 49–64、doi : 10.1016/0095-8956(84)90013-3。
