意思決定問題の最適化バージョン


26

各最適化/検索問題には同等の決定問題があることが知られています。たとえば、最短経路問題

  • 最適化/検索バージョン: 無向無加重グラフと2つの頂点与えられた場合、と間の最短経路を見つけます。G=(V,E)v,u∈Vvu
  • 決定版: 無向無加重グラフ、2つの頂点、および非負の整数与えられた場合、長さが最大でであると間にパスがありますか?G=(V,E)v,u∈VkGuvk

一般に、「 stを見つけてください!」「x \ in X st f(x)\ leq kがありますか?」になります。x∗∈XX ∈ X F (X )≤ Kf(x∗)=min{f(x)∣x∈X}x∈Xf(x)≤k

しかし、その逆も真です。つまり、すべての決定問題に対して同等の最適化問題がありますか?そうでない場合、同等の最適化問題がない決定問題の例は何ですか?


6
このビットはゼロに等しいですか?
— -JeffE

5
「等価」をより詳細に説明する必要があります。たとえば、一方を多項式時間(または対数空間)でオラクル/ブラックボックスとして使用して解決できるということですか?\ sf {NP}内のすべての問題を気にしますか、それとも問題のみを気にしますNPか?
— カヴェー

1
あなたの視点に応じて、質問はささいなもの(「」を持たない決定問題をとる)または答えられない(「同等の最適化問題がないことを証明する方法」)。k
— ラファエル

回答:


28

コメントですでに述べたように、それはいつものように定義に依存します。私がこれに答えるにはかなりの数の定義が必要なので、これは簡潔な答えを出すことができないもう一つの例になります。


定義:最適化問題がタプルであると(X,F,Z,⊙)

  • X適切にエンコードされた(文字列)インスタンスまたは入力のセット。
  • X ∈ X F (X )XF各インスタンスマッピングする関数である集合にの実行可能解の。x∈XF(x)x
  • (X 、Y )のx ∈ X 、Y ∈ F (X )Z (X 、Y )YZ各ペアをマッピング目的関数である、と、実数に呼ばれる値の。(x,y)x∈Xy∈F(x)Z(x,y)y
  • 最小最大⊙は最適化の方向で、またはいずれかです。minmax

定義:最適化問題インスタンスの最適解は、ある実行可能な解です。。最適解の値は示され、最適と呼ばれます。P O Y ∈ F (X )Z (X 、Y )= ⊙ { Z (X 、Y ')| Y ' ∈ F (X )} O P T (X )x∈XPOy∈F(x)Z(x,y)=⊙{Z(x,y′)∣y′∈F(x)}Opt(x)

定義:評価の問題は、表記最適化問題に対応し、以下の通りです:インスタンスを考えると、計算場合そうでない「何の最適解を」最適解と出力を持っていません。P Oのx ∈ X O P T (X )XPEPOx∈XOpt(x)x

これは、すべての詳細を含むソリューション全体ではなく、最適なソリューションの値を求めるだけであることに注意してください。

定義:決定問題は、示さ最適化問題に対応ペアが与えられると、次される、とかどうかを決定する、実行可能解有し、場合は、場合はます。P O(X 、K )のx ∈ X のk ∈ Qは、 xはY Z (X 、Y )≤ K ⊙ = 分Z (X 、Y )≥ K ⊙ = 最大PDPO(x,k)x∈Xk∈QxyZ(x,y)≤k⊙=minZ(x,y)≥k⊙=max

最初の観察結果は、です。証明は難しくなく、ここでは省略します。PO∈NPO⇒PD∈NP

今直感的とに対応するより難しくありませんそのもの。この感情を形式的に表現するために(それによって同等なものが意味するものを定義するために)削減を使用します。P D P O P OPEPDPOPO

すべての単語に対してように、多項式時間で計算可能な関数がある場合、言語は別の言語に対して多項式時間還元可能であることを。この種の還元性はKarpまたは多対1還元性として知られており、 がこの方法でに還元可能である場合、書くことでこれを表現します。これは、NP完全性の定義における中心的な概念です。L 2 F X のx ∈ L 1 ⇔ F (X )∈ L 2 L 1 L 2 L 1 ≤ m個のL 2L1L2fxx∈L1⇔f(x)∈L2L1L2L1≤mL2

残念ながら、多対1の削減は言語間で行われ、最適化の問題のコンテキストでそれらをどのように使用するかは明確ではありません。したがって、異なる種類の還元性、チューリング還元性を考慮する必要があります。最初にこれが必要です:

定義:問題のオラクルは、一定の時間でインスタンスを解決できる(仮想の)サブルーチンです。PPP

定義:問題多項式時間であるチューリング還元性の問題に書かれ、のインスタンスならば、用のOracleへのアクセス権を持つアルゴリズムで多項式時間で解くことができる。P 2 P 1 ≤ T P 2 P 1 P 2P1P2P1≤TP2P1P2

非公式には、に、関係は、がほど難しくないことを表しています。を多項式時間で解くことができれば、も解けることも簡単にわかります。繰り返しが、は推移的な関係です。次の事実は明らかです。P 1 ≤ T P 2 P 1 P 2 P 2 P 1 ≤ T≤mP1≤TP2P1P2P2P1≤T

LET、次いで。P D ≤ T P E ≤ T P OPO∈NPOPD≤TPE≤TPO

完全なソリューションが与えられているため、その値を計算し、境界満たすかどうかを判断するのは簡単です。k

定義: 2つの問題と両方の関係、成り立つ場合、記述します。同等性の概念。P 2 P 1 ≤ T P 2 P 2 ≤ P 1 P 1 ≡ T P 2P1P2P1≤TP2P2≤P1P1≡TP2

対応する最適化問題があり、が整数値である場合、ことを証明する準備ができました。が成り立つことを示さなければなり。我々は決定することができるバイナリとのためorcale usign検索。の定義により、多項式に対してが保証されるため、バイナリ検索のステップ数は多項式になります。P O ∈ N P O Z P E ≤ T P DPD≡TPEPO∈NPOZPE≤TPDP D N P O | Z (x 、y )| ≤ 2 Q (| X |) Q | x | ◻⊙{Z(x,y)∣y∈F(x)}PDNPO|Z(x,y)|≤2q(|x|)q|x|◻

最適化の問題についてとの関係それほど明確ではありません。多くの具体的なケースでは、直接示すことができます。ここで与えられたフレームワーク内でこれが一般的に成り立つことを証明するために、追加の仮定が必要です。P E P D ≡ T P E ≡ T P OPOPEPD≡TPE≡TPO

最初に、言語のペアから対応する決定問題のペアにを拡張する必要があります。そうすると、がより一般的であることが簡単にます。≤ T ≤ M≤m≤T≤m

ましょうと決定問題であること。次に。これは、多対1の削減が非常に制限された方法でオラクルを使用すると解釈できるためです。オラクルは最後に1回呼び出され、その結果も全体的な結果として返されます。P ' P ≤ M P ' ⇒ P ≤ T P ' ◻PP′P≤mP′⇒P≤TP′◻

これでフィナーレの準備ができました。

ましょうと仮定する整数値であり、その NP完全、その後で以前の観測では、を表示するために残っています。これを行うには、ような問題をます。次に、2番目と3番目の成立するのは、以前に証明された決定と評価バージョンが同等であるためです。3番目のは、のNPと前述の2つの事実、つまり Z P D P D ≡ T P E ≡ T P O。P O ≤ T P E P "PO∈NPOZPD

PD≡TPE≡TPO.
PO≤TPE、PO≤TP ' E PO≤TP ' E ≤TP ' D ≤TPD≤TPE。PO′∈NPOPO≤TPE′
PO≤TPE′≤TPD′≤TPD≤TPE.
≤ T P D P O ∈ N P O ⇒ P D ∈ N P P ≤ M P ' O ⇒ P ≤ T P ' O≤T≤TPDPO∈NPO⇒PD∈NP及び。P≤mPO′⇒P≤TPO′

詳細は次のとおりですの実行可能なソリューションは、全順序付きのアルファベットを使用してエンコードされていると仮定します。ましょうからの言葉も共通の長さを持つ単語のブロック内の長さと辞書式順序を非減少順にリストされています。(したがって空単語である。)すべてについてせ一意の整数示すように、。とは両方とも多項式時間で計算できます。してみましょうすべてのそれの多項式ようにすることが Σ W 0、W 1、... Σ * W 0、Y ∈ Σ *POΣw0,w1,…Σ∗w0y∈Σ∗I yは= wはI σ σ - 1、Q のx ∈ X 、Y ∈ F (X )、σ (Y )< 2 Q (| x |)σ(y)iy=wiσσ−1qx∈Xすべてのにはます。y∈F(x)σ(y)<2q(|x|)

問題は、修正された目的関数を除いてと同一です。以下のためにと我々が取る。 は多項式時間で計算できるため、です。 P O Z 'のx ∈ XPO′POZ′x∈XZ '(X 、Y )= 2 Q (| X |) ⋅ Z (X 、Y )+ σ (Y )Z ' P ' O ∈ N P Oy∈F(x)Z′(x,y)=2q(|x|)⋅Z(x,y)+σ(y)Z′PO′∈NPO

ことを示すために私たちは、ことを確認しために実現可能である場合、それがために実現可能である場合にのみ。反対のケースは扱いにくいため、これがケースであると想定できます。 X P O P ' EPO≤TPE′xPOPE′

substituionのためのすべてのためにという意味で単調である、もし次いで。これはごとに最適なソリューションことを意味しでの最適解であるで。したがって、タスクはの最適解計算になります。 ZのY 1、Y 2 ∈ F (X )Z (X 、Y 1)< Z (X 、Y 2)ZZ′Zy1,y2∈F(x)Z(x,y1)<Z(x,y2)xはP ' O X P O y x P ′ OZ′(x,y1)<Z′(x,y2)xPO′xPOyxPO′

のオラクルをクエリすると、の値を取得できます。この数の剰余をを法として形成すると、得られ、そこから多項式時間でを計算できます。 Z '(X 、Y )= 2 Q (| X |) ⋅ Z (X 、Y )+ σ (Y )2 Q (| X |) σ (Y )YPE′Z′(x,y)=2q(|x|)⋅Z(x,y)+σ(y)2q(|x|)σ(y)y


「問題Pのオラクルは、一定の時間でPのインスタンスを解決できる(仮想の)サブルーチンです。」オラクルは一定の時間しかかかりませんか?
— ティム

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

オラクルについて@Tim:あなたが発見した場合は/縮小構想二つの問題の間でとあなたがしている縮小のための効率的なアルゴリズム見つける問題するための効率的なアルゴリズム見つけるに。または、言い換えれば、還元は、を解くためにを使用できることを示しています。アルゴリズムでサブルーチンを使用するようなものです。ただし、問題とA B A B A B B A A BA≤TBABABABBAAB多くの場合、効率的な解決策がわからない問題です。そして、チューリング還元可能性の場合、関連する問題をまったく決定できない場合にも使用します。
— ウリ

@Timしたがって、は未知のサブルーチンです。複雑さの理論では、還元から導出されたの仮説アルゴリズムをoracleアルゴリズムと呼ぶことが習慣になっています。以下のための未知のサブルーチンを呼び出す Oracleはちょうど私達がのために効率的なアルゴリズムを見つけることを期待することができないことを表現私たちは用のOracle得ることを期待することはできません同じように。この選択は、不思議な能力を暗示しているため、やや不幸です。オラクルのコストは必要があります サブルーチンは少なくとも入力を読み取る必要があるためです。A B B B B | x | バツBABBBB|x|x
— ウリ

3
すべての周りの優れた答え。(別の質問を経て今に来て)私が追加することになります唯一のものは、「最適化の方向は、」複雑さの不必要ビットで、具体性のために、我々は常に目的関数と推測できるということである最大化することです。意図は最小限に抑えることであるならば、我々はちょうど新しい目的関数を定義することができして、すべての最小化書き換える最大化として、。Z ′ = − Z Z Z ′ZZ′=−ZZZ′
— スティーブンスタドニッキー

5

コメントが言うように、答えは正確な定義に依存します。質問を非常に基本的な(単純な)方法で解釈させてください。

LETあり、いくつかの関係であっても。S ⊆ { (、B )| 、B ∈ Σ * }SS⊆{(a,b)∣a,b∈Σ∗}

ここで、検索問題を定義します。S

与えられ場合、ような見つけます。B (、B )∈ Sab(a,b)∈S

そして、決定問題のための:S

与えられたかどうかを答えます。(、B )∈ S(a,b)(a,b)∈S

(例えば、当該与えられた例では、すべてのペアを保持する との間の経路が存在するように、とより短い。)(u 、v 、k )u v kS(u,v,k)uvk

これら2つの問題はよく定義されていることに注意してください。 この定義では、2つの問題が任意のに対して「同等」であるかどうかを確認できます。「同等」とは、それらの1つが計算可能であれば(つまり、それを解決するアルゴリズムが存在する場合)、他の1つも計算可能であれば意味します。一般的に、そうではありません。S

クレーム1:決定は検索を意味します。

証明:を決定問題を解決するアルゴリズムとします。入力が与えられ、我々は実行することができますいずれかのために、次々 、または並列インチ ようなが存在する場合、最終的にそれを見つけます。そうでない場合、アルゴリズムは停止しない可能性があります。 S D S(、X )のx ∈ Σ * B (、B )∈ S †DSSaDS(a,x)x∈Σ∗b(a,b)∈S†

クレーム2:検索は決定を意味しません。

その理由は、検索アルゴリズムが必要なは異なる返す可能性があるためです。つまり、すべてのには、見つけるのが非常に簡単ながありますが、見つからないはあります。たとえば、決定不可能な言語とし、定義します すべての、検索アルゴリズムはを返すことができ。ただし、すべてのペアについて、であるかどうかを正しく判断できる決定アルゴリズムはありません。もし可能なら、それは決定不可能な問題を決定したでしょう、それは不可能です。a b b ′ L S = { (babb′LX 0 (X 、1 )∈ S (X 、1 )

S={(x,0)∣x∈Σ∗}∪{(x,1)∣x∈L}.
x0(x,1)∈S(x,1)


S S†これは依存します。たとえば、が制限されている場合、停止するアルゴリズムが存在する可能性があります。SS


2
正しい決定の問題は、 stです。⟨ 、B ⟩ ∈ Sb⟨a,b⟩∈S
— カベ

決定がの存在として定義されている場合、検索は決定を意味します。b
— ランG.

1
弱い意味では、複雑さではなくiewrtの計算可能性はよりデリケートな問題です。
— カベ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.