回答:
おそらく数千の例があります。ISGCIには短いリストがあります。Wikipediaの記事は、リンクがたくさんあります。「境界付きツリー幅」と「パラメータ化された複雑性ツリー幅」を検索して、さらに多くのことを行います。
基本的に、問題は境界ツリー幅のグラフで簡単になります。
グラフのツリー幅が最大で [1] かどうかを判断するのはNP完全 ですが、ごとに 、実際にツリー幅持つグラフのツリー分解を計算する線形時間アルゴリズムがあります [2]。
ツリーを分解したら、動的プログラミングによって多くの問題を解決できます。
動的プログラミングさえ使用しない簡単な例は、クリーク問題です。グラフのクリークは、ツリー分解のいくつかのノードに完全に含まれている必要があります。つまり、ツリー幅グラフは よりも大きいサイズのクリークを持つことはできません。最大でサイズのクリークを見つけるには、分解の各ノードに目的のクリークが含まれているかどうかを確認するだけです。探している。が固定定数の場合、線形時間で実行できます。これ は、それぞれが最大で頂点を持つグラフのクリークをチェックしているだけだからです。
より複雑な例として、ツリー幅4のグラフが3色かどうかを知りたいとします 。最初に、ツリー分解を計算します。ツリーの各頂点は、最大5つの頂点のサブグラフに対応し ます。ツリーの葉ごとに、対応するサブグラフのすべての3色を総当たりで計算します。これは多項式時間です。葉は最大で あり、それぞれが最大で5つの頂点を持つサブグラフに対応し、そのようなサブグラフの最大 3色があるためです。さて、各頂点のための 葉に隣接だ木の、に隣接した葉の可能性着色料と互換性のあるすべての3-着色列挙 。(つまり、対応するサブグラフ の3色、およびとそれに隣接するすべての葉に対応するグラフの3色に拡張できます 。)この時点で、葉の色を忘れることができます。あなたがそれらについて知る必要があるすべてが今距離-1の頂点でエンコードされているので。次に、ツリーを反復処理します。サブツリー内のパスを結合してツリー全体のパスを構築し、ハミルトニアンパスに対して同様のことを行うことを想像できます。それはもっと複雑です。
[1]マトリックス分析およびアプリケーション8(2)にArnborg、Corneil、及びProskurowski、 "K-ツリーの埋め込みを見つけるの複雑"、SIAMジャーナル:277-284、1987。DOI。
[2] Bodlaender、「小ツリー幅のツリー分解を求める線形時間アルゴリズム」、コンピューティング25(6)上のSIAMジャーナル:1305年から1317年、1996 DOI。
通常、やなどの多くの「ローカルの問題」(各頂点の近傍を確認することで解を検証できることを意味します)では、標準の動的プログラミングメソッドが実行され時間。ここで、は入力グラフのツリー幅であり、はいくつかの(小さい)定数です。これらの問題の多くでは、いわゆる強い指数時間仮説(SETH)を想定して、最適解の実行時間の上限と下限が一致しています。
ある意味では、「グローバル制約」(接続性など)の問題はより困難に見えます。このような問題の場合、典型的なDPアルゴリズムは、解がツリー分解の対応するセパレーターを横断できるすべての方法、つまりを考慮する必要があります。ここで、はセパレーターのサイズです。詳細については、CyganらのFOCS'11ペーパー、arXivバージョンをこちらで確認できます。彼らは、モンテカルロアルゴリズムをグローバルな制約のある問題について検討しています。この方向には、ランダム性の「必要性」を調査する後続の作業があります。
Fomin、Fedor V.、Dieter Kratschの第5章もご覧ください。正確な指数アルゴリズム。Springer、2010年。
問題の複雑さを制限し、SATインスタンス(硬度)の観点から問題をPに移動するこのツリー幅の現象に関する最近の研究を次に示します。これは、(SATへの削減による)他のNP完全問題全体の単純化を理解するのに役立つより大きなフレームワークの基礎となる可能性があります。
制限付きツリー幅SAT Gaspers / Szeider 2012 への強力なバックドア
分解可能性は、特定のCNF式に関連付けられているグラフのツリー幅の観点から考えることができます。たとえば、節と変数をグラフの頂点と見なし、変数をそれが出現するすべての節に隣接させることによってです。一方、CNF式の強力なバックドアセットは変数のセットであり、このセットへの可能な部分割り当てごとに、式が(#)SATを多項式時間で解決できる固定クラスに移動します。このペーパーでは、上記の2つのアプローチを組み合わせます。特に、関連するグラフのツリー幅が最大でtであるCNF式のクラスW_tに小さな強力なバックドアセットを見つけるというアルゴリズム上の問題を調べます。