決定問題と「はい」または「いいえ」ではない「実際の」問題


36

私はいくつかの問題は、(近似することが困難であることを多くの場所で読ん NP-ハード近づけるために それらを)。しかし、近似は決定問題ではありません:答えは実数であり、YesまたはNoではありません。また、各望ましい近似係数に対して、正しい多くの答えと間違った多くの答えがあり、これは望ましい近似係数によって変わります!

それでは、この問題はNP困難であると言えるのでしょうか。

(第二弾に触発有向グラフ内の2つのノード間の単純なパスの数をカウントしているどのようにハード?

回答:


27

あなたが言ったように、決定することはありません。そのため、最適化問題のNP硬さの適切な定義に到達するには、新しい複雑度クラスと新しいタイプの削減が必要です。

これを行う1つの方法は、最適化問題を含む2つの新しいクラスNPOPOを作成し、もちろん決定問題のクラスNPPを模倣することです。新しい削減も必要です。その後、意思決定問題で成功したラインに沿って、最適化問題のNP硬さのバージョンを再作成できます。しかし、最初に最適化問題とは何かに同意する必要があります。

定義:レッツことが最適化問題。は、文字列として適切にエンコードされた入力またはインスタンスのセットです。は、各インスタンスをインスタンス実行可能な解である文字列のセットにマッピングする関数です。最適化の問題には多くの解決策があるため、これはセットです。したがって、インスタンスのすべてのペアとそのコストまたは値を求める目的関数があります。O=(X,L,f,opt)Xのx XLxXx X Y Y L X f(x,y) yL(x)opt 最大化するか最小化するかを示します。

これは何を定義するために私達を可能にする最適解がある:うである最適解インスタンスの最適化問題のと多くの場合、最適解は示されます。のx X O = X L F O 、P 、T 、F X Y O のP T= O 、P 、T { F X Y '| Y 'L X } y yoptL(x)xXO=(X,L,f,opt)

f(x,yopt)=opt{f(x,y)yL(x)}.
y

今、私たちは、クラス定義することができNPOみましょう:すべての最適化問題の集合とするして:O = X L f o p t NPOO=(X,L,f,opt)

  1. XP
  2. すべてのインスタンスおよびすべての実行可能な解、多項式があります。またかどうかを多項式時間で決定する決定論的アルゴリズムが存在するY L xは| y | P | X |のx X 、Y L X p|y|p(|x|)xXyL(x)yL(x)
  3. は多項式時間で評価できます。f

その背後にある直感は次のとおりです。

  1. が実際に最適化問題の有効なインスタンスであるかどうかを効率的に検証できます。x
  2. 実行可能解のサイズは入力の大きさで多項式制限され、そして場合我々は効率的に確認することができインスタンスのfesible溶液であるXyL(x)x
  3. 解の値効率的に決定することができます。yL(x)

どのようにこれは、ミラー今のところ、定義されてPOしてみましょう:P Oはからのすべての問題の集合とするN P O多項式時間で決定性アルゴリズムによって解決することができます。NPPONPO

今、私たちは私たちが電話をかけたいものを定義することができます近似アルゴリズムを近似アルゴリズム最適化問題の実現可能な解を計算するアルゴリズムであるY LをX 例えば、X XO=(X,L,f,opt)yL(x)xX

注:最適なソリューションを要求するのではなく、実行可能ソリューションのみを要求します。

今、我々はエラーの二つのタイプがある:絶対誤差実現可能な解のインスタンスのX X最適化問題のO = XはL F O のp tがです| f x y f x y | yL(x)xXO=(X,L,f,opt)|f(x,y)f(x,y)|

我々は、近似アルゴリズムの絶対誤差呼び出し最適化問題のためのOによって境界K場合、アルゴリズムAのすべてのインスタンスのために計算するのx Xで囲まれた絶対誤差を有する可能溶液KAOkAxXk

例:Vizingの定理によれば、グラフの色指数(使用される色の数が最も少ないエッジカラーリングの色の数)はまたはΔ + 1のいずれかです。ここで、Δは最大ノード次数です。定理の証明から、Δ + 1色でエッジの色付けを計算する近似アルゴリズムを考案できます。したがって、M i n i m u m E d g e C o l o r i nの近似アルゴリズムΔΔ+1ΔΔ+1絶対誤差が 1で制限されている問題。MinimumEdgeColoring1

この例は例外であり、小さな絶対誤差はまれであるため、最適化問題O = X L f o p t )のインスタンスxで近似アルゴリズムA相対誤差 を定義します。F X Y > 0のすべてのためのx XY L X であることがϵA(x)AxO=(X,L,f,opt)f(x,y)>0xXyL(x)

ϵA(x):={0f(x,A(x))=f(x,y)|f(x,A(x))f(x,y)|max{f(x,A(x)),f(x,y)}f(x,A(x))f(x,y)

ここで、は、近似アルゴリズムによって計算された実行可能な解です。AA(x)=yL(x)A

現在、近似アルゴリズムを定義することができ最適化問題のためのであることが -approximationアルゴリズムのための相対誤差があればによって制限されるすべてのインスタンス、したがって O = X L F O 、P T δ O ε AX δ 0 のx X ε AX δAO=(X,L,f,opt)δOϵA(x)δ0xX

ϵA(x)δxX.

選択相対誤差の定義の分母には、最大化及び最小化のために定義対称を作るために選択しました。相対誤差。最大化問題の場合、解の値はより小さくなり、より大きくなることはありません問題を最小化するための。ε AX [ 0 1 ] 1 - ε AX F X Y *1 /1 - ε AX Fmax{f(x,A(x)),f(x,y)}ϵA(x)[0,1](1ϵA(x))f(x,y)1/(1ϵA(x))f(x,y)

多項式時間で実行される -approoximation-algorithmがある場合、最適化問題 -approximable を呼び出すことができます。δ A OδδAO

すべてのインスタンスエラーを調べたくないので、最悪のケースだけを調べます。したがって、私たちは定義、最大のする相対的エラー近似アルゴリズムのの最適化問題のためのなるように ϵ An A O ϵ An = sup { ϵ Ax | x | N } xϵA(n)AO

ϵA(n)=sup{ϵA(x)|x|n}.

どこインスタンスのサイズにする必要があります。|x|

例:グラフ内の最大一致は、一致からのすべてのインシデントノードを頂点カバーに追加することにより、最小ノードカバー変換できます。したがって、エッジが覆われています。最適な頂点を含む各頂点のカバーには、カバーされた各エッジのノードの1つが必要であるため、それ以外の場合はます。その次 したがって、最大マッチングのための貪欲アルゴリズムである -approximatio-アルゴリズム。したがって、は約です。1 / 2 | C | 1 / 2 | C | F X Y *| C | f x y C1/2|C|1/2|C|f(x,y) 1/2MINiは、mはL-VERTEXCOのVEのRMiは、Niは、mはL-VERTEXCOVER1/2

|C|f(x,y)|C|12
1/2MinimalVertexCoverMinimalVertexCover1/2

残念ながら、次の例が示すように、相対誤差は常に近似の品質の最良の概念ではありません。

例:単純な欲張りアルゴリズムは近似できます。分析によると、、したがっては -およそ。| C |MinimumSetCover

|C||C|Hn1+ln(n)
MinimumSetCoverln(n)1+ln(n)

相対誤差が近い場合、次の定義が有利です。1

LETを有する最適化問題である全てに対してととの近似アルゴリズム。インスタンスの実行可能解の近似比は、 O=(X,L,f,opt)f(x,y)>0xXyL(x)AO rA(x)A(x)=yL(x)xX

rA(x)={1f(x,A(x))=f(x,y)max{f(x,A(x))f(x,y),f(x,y)f(x,A(x))}f(x,A(x))f(x,y)

前と同じように、近似比率がすべての入力に対してによって制限されている場合、最適化問題の近似アルゴリズムを近似アルゴリズムと呼びます。 そして、まだ再び我々が持っている場合は -approximation-アルゴリズム最適化問題のためのその後、呼び出された -approximableを。繰り返しますが、最悪の場合にのみ注意を払い、最大近似比を と定義しますArOrA(x)r1xX

rA(x)r
rAOOr rA(n)
rA(n)=sup{rA(x)|x|n}.
したがって、次善の解の場合、近似比はより大きくなります。したがって、優れたソリューションの比率は小さくなります。ため我々は今であることを書き込むことができる -approximable。そして、場合、前の例から、ことがわかります。相対誤差と近似比の間には、単純な関係があります: 1MinimumSetCover(1+ln(n))MinimumVertexCover2
rA(x)=11ϵA(x)ϵA(x)=11rA(x).

最適なおよびからの偏差が小さい場合、相対誤差は近似比よりも有利です。これは、偏差が大きい場合の強度およびます。ϵ<1/2r<2ϵ1/2r2

1つのバージョンには常にあり、もうつのバージョンには必ずため、2つのバージョンの -approximableは重複しません。の場合は、厳密な解を生成するアルゴリズムによってのみ到達し、結果として近似アルゴリズムとして扱う必要がないため、問題はありません。αα1α1α=1

別のクラスはしばしばAPXに表示されます。これは、すべての最適化問題の集合として定義されるからその避難所と-approximationアルゴリズム多項式時間で実行されています。ONPOrr1

もうすぐです。複雑性理論から還元完全性の成功したアイデアをコピーしたいと思います。観察によると、最適化問題のNP困難な決定バリアントの多くは互いに還元可能であり、最適化バリアントは近似可能性に関して異なる特性を持っています。これは、NP完全性の削減で使用される多項式時間のカープ削減のためです。これは、目的関数を保存しません。また、目的関数が保存されている場合でも、多項式時間-カープ削減により解の品質が変わる可能性があります。

必要なのはだけでなく、最適化の問題からインスタンスをマップ化、より強力なバージョンであるのインスタンスにから、だけでなく、優れたソリューションから良いソリューションに戻っ。O1O2O2O1

したがって、からの2つの最適化問題およびの近似保存削減を定義します。2つの関数およびと定数があり、として書かれた -に還元可能を呼び出します。O1=(X1,L1,f1,opt1)O2=(X2,L2,f2,opt2)NPOO1 APO2O1APO2ghc

  1. g(x1,r)X2すべてのおよび有理x1X1r>1
  2. L2(g(x,r1))場合すべてについてと合理L1(x1)x1X1r>1
  3. h(x1,y2,r)L1(x1)すべてのおよび有理およびすべてのx1X1r>1y2L2(g(x1,r))
  4. 固定、関数とは両方とも、入力の長さの多項式時間で2つのアルゴリズムによって計算できます。rgh
  5. 我々はすべてについてと有理およびすべての
    f2(g(x1,r),y2)rf1(x1,h(x1,y2,r))1+c(r1)
    x1X1r>1y2L2(g(x1,r))

この定義では、とは解品質に依存します。したがって、品質が異なると、機能が異なる場合があります。この一般性は必ずしも必要ではなく、とです。ghrg(x1)h(x1,y2)

最適化問題の削減の概念が得られたので、ようやく複雑性理論から知っている多くのことを転送できます。たとえば、わかっていて、と表示されているそのもます。O2APXO1APO2O1APX

最後に、最適化問題の -hardおよび -completeの意味を定義できます。CC

ましょうから最適化問題であるとから最適化問題のクラス次いで呼び出され -hardに対してすべてについてあればが成り立つ。ONPOCNPOOCAPOC OAPO

したがって、クラスで最も困難な問題の概念がもう一度あります。驚くべきことではない -hard問題は呼ばれるに対する-completeそれの要素である場合。CCAPC

したがって、完全性や完全性などについて話すことができます。そしてもちろん、役割を引き継ぐ最初の完全問題を示すように求められます。が完全であることを示すことができるのはほぼ自然です。PCP定理の助けを借りて、があることを示すことさえできます。A P X N P O S A T W eNPOAPXNPOSATWeightedSatisfiabilityNPOMaximum3SATAPX


11
ああ、この比較的長い投稿に対する謝罪を受け入れてください。しかし、短い記事を書く時間はありませんでした。
ウリ

1
パンチラインは、PCP定理により、MAX3SATとSATをリンクできることです。したがって、MAX 3SATをある定数よりも良く近似することはNP困難であることを示しています。それはある意味で、クック・レビンの定理に相当します。
-Suresh

1
@Sureshもちろん、しかし、あなたが言及したこの結果は、私が覚えている限り、ギャップを保持する縮小を必要とします。そして、あなたはすでにあなたの投稿でそれらについて書いているので、ここでそれらを複製したくありませんでした。
ウリ

素晴らしい答え、+ 1!あなたの答えはいくつかの参考文献に基づいているのだろうか?
ティム

もちろん@Tim本がありますが、私は別のコメントでいくつかをリストされている答え
ULI

19

通常、表示されるのは、問題の「ギャップ」バージョンのNP硬さです。たとえば、SET COVERを2倍以内に近づけることが難しいことを示したいとします。

2-GAP-SET-COVERと呼ぶSET COVERの次の「約束」インスタンスを定義します。

数修正します。2-GAP-SET-COVERは、セットカバーのすべてのインスタンスで構成され、最適なセットカバーのサイズは次のいずれかです。

  • せいぜい
  • 少なくとも2

問題が2つのケースのどちらに該当するかを決定する問題がNP完全であることを示すと仮定します。次に、このようなアルゴリズムを使用してこれら2つのケースを区別できるため、SET COVERを2倍以内に近似することはNP困難であることを示しました。


4

2つの既存の答えは非常に有益ですが、どちらも本当に質問に答えるとは思いません。つまり、「NPが決定問題のクラスであるとき、決定問題ではない問題をNP困難にすることができます」 ?」

答えは、NP-hardの意味を思い出すことです。NPのすべての問題をに還元できる場合、問題 は、ある種の縮約ではNP困難  です。(そして、 NP困難でNPの場合、はNP完全です。)非公式に、NP困難は、この問題を解決できれば、NPですべてを解決できることを意味します。 NPのt。NP硬さはNPのメンバーシップを必要としませんが、正しい削減の概念が必要です。LLL

いくつかの例。

  1. NEXPTIMEが完全な問題 は、多項式時間の多対一簡約の下ではNP困難です。NPの問題はNEXPTIMEにあるため、定義により還元でき  ます。時間階層定理により、  ので、NPにすることはできません   NP完全ではありません。LLLL
  2. #SATは、CNF式への満足できる割り当ての数を計算する問題です。あなたが観察するように、NPは決定問題のクラスであり、#SATはそれらの1つではないため、明らかにNPにはありません。ただし、#SATは、SATを削減できるため、多項式時間チューリング削減ではNP困難です。SATインスタンスが与えられた場合、満足のいく割り当てがいくつあるかを尋ねます。少なくとも1つあれば、「満足」と言います。それ以外の場合、「不満足」。
  3. APPROXSATを、CNF式への充足割り当ての数の10倍以内の数を計算する問題とする  。面倒なことに、切り捨てが許可されているとしましょう。  たとえば、に3つの満足できる割り当てがある場合、アルゴリズムは「0.3」と考えてゼロに切り捨てることができます。これは、SATを削減できるため、多項式時間チューリング削減ではNP困難です。CNF式与えられた場合、 への満足できる割り当ての数を求め ます。ここで、は新しい変数です。  は、  が成り立つ場合にのみ充足可能ですが、φ φ φ ' = φ Z 1Z 10Z I φ ' φ φ ' φ φ 'φφφφ=φ(Z1Z10)Ziφφφ  は、1,000を超える満足のいく割り当てがあることが保証されています。したがって、 APPROXSATアルゴリズムが  に少なくとも100の割り当てがあると言った場合にのみ、は充足可能です。φφ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.