コンピュータサイエンスにおいて、パラメータ化複雑性は、入力または出力の複数のパラメータに関して、計算問題をその固有の難しさに基づいて分類することに焦点を当てた計算複雑性理論の一分野です。問題の複雑性は、これらのパラメータの関数として測定されます。これにより、問題の複雑性が入力のビット数の関数としてのみ測定される古典的な設定よりも細かいスケールでNP困難問題を分類できます。これは、Gurevich、Stockmeyer 、およびVishkin(1984)によって最初に実証されたようです。パラメータ化複雑性に関する最初の体系的な研究は、DowneyとFellows(1999)によって行われました。
入力パラメータが固定されていない場合、 NP完全問題、あるいはNP困難問題に対して、効率的で正確かつ決定論的な解法アルゴリズムが存在する可能性は低いと考えられています。これらの問題に対する既知の解法アルゴリズムはすべて、入力の総サイズに対して指数関数的(特に超多項式的)な時間を要します。しかし、一部の問題は、固定パラメータのサイズに対してのみ指数関数的であり、入力のサイズに対しては多項式的なアルゴリズムで解くことができます。
P ≠ NPという仮定の下では、入力サイズのみで複雑さを測定すると超多項式時間を要するものの、入力サイズに対して多項式時間、パラメータkに対して指数関数的、あるいはそれ以上の時間で計算可能な自然な問題が数多く存在する。したがって、k を小さな値に固定し、 kに対する関数の増加が比較的小さい場合、従来「扱いにくい」と分類されてきた問題であっても、「扱いやすい」とみなすことができる。
このようなアルゴリズムは、固定パラメータが一定の値であれば問題を効率的に(すなわち多項式時間で)解くことができるため、固定パラメータ可解(FPT)アルゴリズムと呼ばれます。このようなFPTアルゴリズムが適用可能なパラメータ化された問題は、固定パラメータ可解問題と呼ばれ、 FPTクラスに属します。パラメータ化複雑性理論の初期の名称は、固定パラメータ可解性でした。
多くの問題は次のような形式をとります。オブジェクトxと非負整数kが与えられたとき、x はkに依存する何らかの性質を持つでしょうか?
例えば、頂点被覆問題の場合、パラメータは被覆に含まれる頂点の数となる。最小頂点被覆問題は次のように問う。
多くの応用例、例えば誤差訂正のモデリングにおいては、パラメータは入力全体のサイズに比べて「小さい」と仮定できる。その場合、入力サイズではなくkに対してのみ指数関数的に増加するアルゴリズムを見つけるのは困難である。
このように、パラメータ化された複雑性は、2次元の複雑性理論と見なすことができる。この概念は、以下のように定式化される。
例えば、頂点被覆問題を解決するアルゴリズムが存在します。時間、[ 1 ]ここでnは頂点の数、kは頂点被覆のサイズです。これは、頂点被覆が固定パラメータ扱い可能であり、解のサイズがパラメータ (その自然なパラメータ) であることを意味します。
FPT (固定パラメータ可解)とは、決定論的時間で決定可能な決定問題のクラスのことである。ここで、fは計算可能な関数です。通常、この関数は、例えば、単一指数関数であると考えられています。しかし、定義ではさらに速く増加する関数も許容される。これは、このクラスの初期の歴史の大部分にとって不可欠である。定義の重要な部分は、次の形式の関数を除外することである。、 のような。
FPL (固定パラメータ線形)クラスは、時間内に解ける問題のクラスである。ある計算可能な関数fに対して。[ 2 ]したがって、FPL は FPT のサブクラスである。例として、変数の数によってパラメータ化されたブール充足可能性問題がある。k個の変数を持つサイズmの与えられた式は、総当たりで時間でチェックできる。次数nのグラフにおけるサイズkの頂点被覆は、時間で見つけることができる。つまり、頂点被覆問題もFPLに含まれる。
FPTに含まれないと考えられる問題の一例として、色の数でパラメータ化されたグラフ彩色問題が挙げられます。3彩色問題はNP困難であることが知られており、 k彩色問題に対するアルゴリズムは時間で解けることが知られています。のために入力のサイズに対して多項式時間で実行される。したがって、色の数でパラメータ化されたグラフ彩色が FPT に属する場合、P = NPとなる。
FPTにはいくつかの代替定義があります。たとえば、実行時間要件は次のように置き換えることができます。また、パラメータ化された問題は、いわゆるカーネルを持つ場合、FPT に属します。カーネル化とは、元のインスタンスを「ハードカーネル」と呼ばれる、元のインスタンスと同等でありながら、パラメータ内の関数によってサイズが制限される、場合によってははるかに小さなインスタンスに縮小する前処理技術です。
FPT はfpt-reductionsと呼ばれるパラメーター化された還元概念の下で閉じられています。パラメーター化された問題が 1 つあるとします。fpt 還元して2つの関数が存在する場合、したがって
明らかに、FPTには多項式時間で計算可能な問題がすべて含まれている。さらに、効率的な多項式時間近似スキーム(EPTAS)が適用可能なNP内のすべての最適化問題も含まれている。
XPは、時間内に解決できるパラメータ化された問題のクラスです。ある計算可能な関数fに対して。
これらの問題は、固定されたkの各「スライス」に対して多項式時間アルゴリズムが存在するという意味で、スライス単位多項式問題と呼ばれます。ただし、 kごとに指数が異なる可能性があります。これを、k の各値に対して異なる定数係数を許容するだけの FPT と比較してください。
XPは対角線法によってFPTを厳密に包含する。
para-NPは、非決定論的時間で決定可能な決定問題のクラスである。ある計算可能な関数fに対して。
問題がパラNP困難であるとは、それが-パラメータの定数値に対して既に困難です。つまり、固定されたkの「スライス」があり、-難しい。パラメータ化された問題は-hard はクラスに属しません、 ない限り典型的な例としては、-難しいパラメータ化問題は、色の数kによってパラメータ化されたグラフ彩色であり、これはすでに-難しい(グラフ彩色#計算複雑性を参照)。
パラメータ化された複雑性理論には、複雑性クラスの階層がいくつか存在する。そのようなクラスはそれぞれfpt還元の下で閉じている。最も重要なのはW階層とA階層である。[ 4 ]
一般的に、複雑性クラスを定義する方法は、機械理論的と論理的という2つあります。機械理論では、クラスは、ある種の機械によって解決可能な決定問題の集合として定義されます。論理学では、クラスは、ある種の論理式によって定義可能な決定問題の集合として定義されます。
バイナリ文字列のハミング重み(略して重み)とは、その文字列中に現れる1の数のことである。
ブール回路は、ノードがAND、OR、NOTのいずれかのゲートである非巡回有向グラフです。小さなゲートとは、ファンインが0、1、または2のゲートです。その他のゲートは大きなゲートです。横糸とは、入力から出力までの任意のパス上で実現可能な大きなゲートの最大数です。深さとは、入力から出力までの任意のパス上で実現可能なゲート(小または大)の最大数です。定義により、横糸≦深さです。
ブール回路は、 NOTゲートを使用しない場合に限り単調である。ブール回路は、次の形式である場合に限り反単調である。どここれらはすべて入力であり、単調です。
いずれかが与えられた場合:
定義するこのタプルに対するパラメータ化されたモデル検査問題とする。各問題インスタンスは以下のとおりである。
A式は次の形式です量化子が存在と全量化子を交互に繰り返すように、そして内部の式は量化子を含まない(つまり、変数、ブール論理結合子、および関係のみで記述される)。[ 5 ] [ 6 ]
A式は次の形式ですただし、以下の条件付きで。
機械理論的には、パラメータ化された問題がW[w][d]クラスに属するのは、その問題が次のような fpt 還元によって解決できる場合である。
ここで「W」は「weight」を表していることがわかります。上記の定義では、独立しているしかし、回路自体は、また、どちらかを変更すると変更される可能性がありますまたは。
クラスW[w]は、それらの和集合として定義されます。より簡潔に言うと、W[w]は、weftを持つインスタンス固有のブール回路のファミリーにfpt還元可能な問題の集合である。そして深さは、問題固有の定数によって制限される。
緯糸wと深さdの正規化された回路は、最初の層には小さなゲートしか含まれておらず、最後の層には、ANDゲートとORゲートが交互に配置されています。結合法則とド・モルガンの法則を繰り返し適用することで、fpt時間で回路を正規化できます。したがって、一般性を失うことなく、正規化された回路のみを考慮すればよいことになります。[ 7 ]
モデル理論的には、クラスW[t]は、fpt 還元可能な問題のクラスとして定義される。。
W階層はNPに含まれる階層ですが、 A階層は古典的な複雑性における多項式時間階層により近いものです。機械理論的には、A階層の問題は、特定の種類の交代型チューリングマシンによる計算にfpt還元可能な問題として定義されます。「A」は「交代型」を意味します。[ 6 ]
モデル理論的には、クラスA[t]は fpt 還元可能な問題のクラスとして定義される。。
例えば、k-クリーク問題はモデル検査問題として定式化できる。この言語には単一の二項関係がある。、 どこ手段 "エッジを共有する」。次に、有限モデルはグラフであり、k-クリークを持つのは、、 どここれは、k-クリーク問題が。
問題がA[i]完全であるとは、それがA[i]であり、任意のA[i]問題が fpt-還元されてそれに帰着する場合をいう。
定義により、:
[ 6 ]
直感的に言えば、W[1]クラスの問題は、次のような形式で解釈できます。ある局所的にチェック可能な特性を持つサイズkのオブジェクトは存在するか?数式で表すと、次のようになります。実際、W[1]はW[1, 2]に縮退し、これは次の形式のブール回路にfpt還元可能な問題のクラスである。つまり、2 のファンインの多数の OR に対する大きな AND です。[ 8 ]
W[1]完全問題の例としては、次のものがあります。 [ 8 ]
通常の非ブロッキング問題は FPT であることに注意してください。[ 9 ]
非決定性チューリングマシンに関する注記。マシンは、標準的な定式化のいずれかで指定できます。通常は1テープチューリングマシンを考えますが、f ( k )テープ、さらにはf ( k )次元テープのf ( k )を許容しても、短いチューリングマシン問題はW[1]のままです。しかし、この拡張でも、 f ( k )テープアルファベットサイズへの制限はFPTです。重要なのは、マシンM自体が問題入力の一部であるため、入力サイズnはMの状態数よりも大きいということです。このようにして、チューリングマシンは次のいずれかを取ることができます。ステップごとの可能な計算パス、アクセス時間k内に合計ステップ数。したがって、 W[1]がFPT内に明らかに含まれていないことがわかります。
独立集合問題は次のように符号化できる。各グラフが与えられたとき。その独立集合問題は、次のweft-1ブール回路によって符号化されます。どこはグラフのエッジの集合です。グラフがサイズkの独立集合を持つのは、そのブール回路に重みk の入力があり、出力が 1 になる場合のみです。
クリーク問題は次のようにコード化できます。これは、辺を形成しない頂点のペアは選択できないことを確認するため、選択された頂点の集合は必ずクリークとなる。
短いチューリングマシンの問題は、チューリングマシンの計算トレースをブール式として符号化することでSATがNP完全であることを示すクック・レヴィンの定理と同じ証明方法を用いてブール式に変換できます。以下の証明は[ 8 ] [ 10 ]からのものです。具体的には、命題変数を定義します。
インデックスのうち、時間tとテープ位置p の範囲は1:kです。チューリングマシンの状態i、j、遷移m、および記号a、bへのインデックスの範囲はマシン M の説明によって決定されますが、どちらも1:n の範囲内に制限されます。
次に、その式これは、以下の制約を強制する節の連言です。
チューリングマシンを通る計算トレースは、k 個の変数を設定することによって完全に指定されます。各時点でのチューリングマシンの状態遷移を示すために True に設定し、変数各時点でのテープ状態遷移を示すために True に設定します。これにより、短いチューリングマシンの問題は重みを見つける問題に縮小されます。緯糸1、深さ2、反単調ブール回路への適切な割り当て。
W[2]の問題は直感的には次のような形式です。サイズkのオブジェクトを推測し、オブジェクトに対してローカル処理を実行し、次にグローバル処理を実行します。
W [2]完全問題の例としては、
支配集合問題には次の式がある。
いくつかの問題は、計算的に一般的な形式であるにもかかわらず、W[i]完全であることが知られており、通常はパラメータ化複雑性理論自体の中で研究されています。経験的には、2013年現在、彼らが研究した自然発生的なパラメータ化問題のほぼすべてが、 W[0]完全、W[1]完全、またはW[2]完全であることが判明しています。通常、次のものが使用されます。[ 4 ]
これらの問題は、パラメータ化された複雑性の文脈以外では研究されないという意味で、本質的に「人工的」である。文献では、W[i]完全である自然発生的な問題はほとんど報告されていない。:
W[SAT]は、重み付きSAT問題にfpt還元可能な問題のクラスです。[ 12 ]
これはすべてのW[t]を含みます。
W[P]は、重み付きブール回路問題の問題にfpt還元可能な問題のクラスです。[ 12 ]
ブール式は効率的にブール回路に変換できるため、 W[SAT]が含まれます。ただし、一般的にはその逆は成り立ちません。ブール回路に対応するブール式は、必然的に回路よりも指数関数的に大きくなる可能性があるためです。
言い換えれば、それは非決定論的に決定できる問題のクラスである。最大で計算における非決定論的な選択( k制限チューリングマシン)。[ 13 ] [ 4 ]
FPTがW[P]に含まれることは知られており、その包含関係は厳密であると考えられている。しかし、この問題を解決できれば、 P対NP問題の解決につながるだろう。
パラメータ化されていない計算複雑性とのその他の関連性としては、FPT がW [ P ] に等しいのは、回路充足可能性が時間内に決定できる場合のみである、ということが挙げられる。、または、非決定性多項式時間チューリングマシンによって認識されるすべての言語が、計算可能で非減少かつ非有界な関数 f が存在する場合に限り、非決定論的な選択はPに含まれる。
W [ P ] は、 n個の項目からなる集合S があり、その部分集合を見つけたいという問題のクラスとして大まかに考えることができます。ある性質を満たすサイズkの選択肢。選択肢は、バイナリに格納されたk個の整数のリストとしてエンコードできます。これらの数値の最大値はnなので、各数値にはビットが必要です。したがって選択肢をエンコードするには合計ビット数が必要です。したがって、サブセットを選択できます。と非決定論的な選択。
W *階層はW階層に似ていますが、深さを一定に保つのではなく、パラメータ化します。W *[t]クラスは、この問題にfpt還元可能な問題のクラスとして定義されます。[ 5 ]
これはWと以下の関係にある:[ 4 ]AW階層は、W階層に交代を加えることによって得られます。AW [t]クラスは、この問題にfpt還元可能な問題のクラスとして定義されます。[ 5 ] [ 6 ]
交互に重なる重量は次のように定義されます。
これは2人対戦ゲームと解釈でき、1人目のプレイヤーは回路の出力をTrueにしようとし、2人目のプレイヤーは回路の出力をFalseにしようとします。1人目のプレイヤーは、正確に設定することで動きます。入力を True に、その他を False にすると、2 番目のプレイヤーが次の操作を行います。など。回路は交互の荷重を受けています。条件は、プレイヤー1が必勝戦略を持っている場合のみである。
階層構造が崩壊することが判明した。そのため、文献ではそれらを表す一般的な記号が用いられている。。