의견에서 이미 언급했듯이 평소와 같이 정의에 따라 다릅니다. 이에 대한 나의 시도는 상당히 정의가 필요하므로 간결한 대답을 할 수없는 또 다른 예가 될 것입니다.
정의 : 의 최적화 문제는 튜플 와(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
- 최대 분⊙ 은 IS 최적화 방향 중, 또는 .minmax
정의 : 최적화 문제 의 인스턴스 에 대한 최적의 솔루션 은 실현 가능한 솔루션 입니다. 입니다. 최적 해의 값은 로 표시되며 최적 이라고합니다 .P O y ∈ F ( x ) Z ( x , y ) = ⊙ { Z ( x , y ′ ) ∣ y ′ ∈ F ( x ) } O p t ( x )x∈XPOy∈F(x)지( x , y) = ⊙ { Z( x , y') ∣ y'∈ F( x ) }O의 P는 t ( X )
정의 : 평가 문제는 , 표시 최적화 문제에 대응 다음과 같다 : 인스턴스가 주어지면 , 컴퓨팅 경우 최적의 솔루션의 출력, 그렇지 않으면 '아니오 최적 솔루션 "을 갖는다.P O x ∈ X O p t ( x ) x피이자형피영형x ∈ XO의 P는 t ( X )엑스
이것은 전체 솔루션 자체가 아니라 모든 세부 정보가 포함 된 최적 솔루션 의 가치 를 요구합니다 .
정의 : 결정 문제는 , 표시 최적화 문제에 대응 은 다음과 같다 : 한 쌍의 주어 여기서 및 , 결정할 실현 가능한 솔루션을 가지고 되도록 경우 및 그 경우 .P O ( x , k ) x ∈ X k ∈ Q x y Z ( x , y ) ≤ k ⊙ = min Z ( x , y ) ≥ k ⊙ = max피디피영형( x , k )x ∈ Xk ∈ Q엑스와이지( x , y) ≤ k⊙ = 분지( x , y) ≥ k⊙ = 최대
첫 번째 관찰은 입니다. 증거는 어렵지 않으며 여기서 생략됩니다.피영형∈ N P O ⇒ P디∈ N P
이제 직관적으로 및 에 해당하는 보다 더 어렵지 않다 자체. 이 느낌을 공식적으로 표현하기 위해 (그에 상응 하는 것이 무엇 을 의미 하는지 정의 ) 축소를 사용합니다.P D P O P O피이자형피디피영형피영형
언어 리콜 것을 다른 언어에 대한 다항식 시간 환원성이다 기능이있는 경우 다항식 시간을 계산할 수, 모든 단어에 대한 , . 이러한 종류의 환원은 Karp 또는 다 대일 환원이라고하며 , 을 이런 식으로 로 환원 할 수 작성하여 표현합니다 . 이것은 NP- 완료의 정의에서 중심 개념입니다.L 2 f x x ∈ L 1 ⇔ f ( x ) ∈ L 2 L 1 L 2 L 1 ≤ m L 2엘1엘2에프엑스x ∈ L1⇔ f( x ) ∈ L2엘1엘2엘1≤엠엘2
불행히도, 다 대일 축소는 언어 사이에서 진행되며 최적화 문제와 관련하여 언어를 사용하는 방법이 명확하지 않습니다. 그러므로 우리는 다른 종류의 환원, 튜링 환원 을 고려해야합니다 . 먼저 우리는 이것을 필요로합니다 :
정의 : 문제 의 오라클 은 인스턴스를 일정한 시간에 풀 수있는 (가설적인) 서브 루틴입니다 .P피피
정의 : 문제 다항식 시간 튜링 환원 문제에 작성, 의 인스턴스 경우, 위한 오라클에 액세스 할 수있는 알고리즘에 의해 다항식 시간에 해결할 수 .P 2 P 1 ≤ T P 2 P 1 P 2피1피2피1≤티피2피1피2
비공식적으로 과 마찬가지로 관계 는 이 보다 어렵지 않다는 것을 표현 합니다. 가 다항식 시간에 풀 수 있다면 도 알 수 있습니다 . 다시 는 전이 관계입니다. 다음과 같은 사실이 명백합니다.P 1 ≤ T P 2 P 1 P 2 P 2 P 1 ≤ T≤엠피1≤티피2피1피2피2피1≤티
하자 , 다음 .P D ≤ T P E ≤ T P O피영형∈ N P O피디≤티피이자형≤티피영형
전체 솔루션이 제공되므로 값을 계산하고 바운드 충족하는지 여부를 결정하는 것은 간단합니다.케이
정의 : 두 문제 과 대해 두 관계 , 유지되면 ; 동등성에 대한 우리의 개념 .P 2 P 1 ≤ T P 2 P 2 ≤ P 1 P 1 ≡ T P 2피1피2피1≤티피2피2≤ P1피1≡티피2
이제 해당 최적화 문제가 이고 가 정수 값인 경우 를 증명할 준비가되었습니다 . 보유하고 있음을 보여 주어야합니다 . 우리는 확인할 수 있습니다 이진과를위한 orcale usign 검색 . 의 정의는 일부 다항식 대해 를 보장 하므로 이진 검색의 단계 수는 다항식입니다 . P O ∈ N P O Z P E ≤ T P D ⊙ { Z ( x , y ) ∣ y ∈ F ( x ) } P D N P O | Z ( x , y ) | ≤ 2 q ( | x | ) q | x | ◻피디≡티피이자형피영형∈ N P O지피이자형≤티피디⊙ { Z( x , y) ∣ y∈ F( x ) }피디NPO|Z(x,y)|≤2q(|x|)q|x|□
최적화 문제를 들어 에 관계 덜 분명하다. 많은 구체적인 경우, 직접 보여줄 수 있습니다 . 이것이 일반적으로 여기에 주어진 프레임 워크 내에 있음을 증명하려면 추가 가정이 필요합니다.P E P D ≡ T P E ≡ T P OPOPEPD≡TPE≡TPO
먼저 언어 쌍에서 해당 의사 결정 문제 쌍으로 을 확장해야합니다 . 그런 다음 것을 쉽게 알 수있다 보다 일반적이다 .≤ T ≤ m≤m≤T≤m
하자 와 의사 결정 문제가 될; 다음 . 다 대일 축소는 매우 제한된 방식으로 오라클을 사용하는 것으로 해석 될 수 있기 때문에 유지됩니다. 오라클은 마지막에 한 번 호출되고 그 결과도 전체 결과로 반환됩니다. P ' P ≤ m의 P ' ⇒ P ≤ T P ' ◻PP′P≤mP′⇒P≤TP′□
이제 피날레를위한 준비가되었습니다 :
하자 과 가정하자 정수 값이며, 그 NP-완료 후입니다이전 관찰에서 를 보여줍니다 . 이를 위해 와 같은 문제가 발생 합니다. 그리고두 번째 및 세 번째 는 이전에 증명 된 결정 및 평가 버전의 동등성으로 인해 합니다. 세 번째 는 P_D의 및 앞에서 언급 한 두 가지 사실, 즉 Z P D P D ≡ T P E ≡ T P O . P O ≤ T P E P ' O ∈ N P O P O ≤ T P ' E P O ≤ T P ' E ≤ T P ' D ≤ T P D ≤ T P E .PO∈ N P O지피디
피디≡티피이자형≡티피영형.
피영형≤티피이자형피'영형∈ N P O피영형≤티피'이자형피영형≤티피'이자형≤티피'디≤티피디≤티피이자형.
≤ T P D P O ∈ N P O ⇒ P D ∈ N P≤티≤티피디피영형∈ N P O ⇒ P디∈ N P 및 .
피≤엠피'영형⇒ P≤티피'영형
이제 세부 사항 : 의 가능한 솔루션이 가 장착 된 알파벳 사용하여 인코딩 되었다고 가정하십시오 . 하자 의 단어 수 일반적인 길이 단어의 블록 내에서 길이와 사전 식 순서를 비 감소의 순서로 나열. (따라서 빈 워드이다.) 모든 내용 하자 고유 정수를 나타낸다 되도록 . 두 및 다항식 시간 내에 계산 될 수있다. 를 모든 대해 다항식으로 하자 Σ w 0 , w 1 , … Σ ∗ w 0 y ∈ Σ ∗ σ ( y ) i y = w i σ σ - 1 q x ∈ X피영형Σ승0, w1, ...Σ※승0와이∈ Σ※σ( y)iy=wiσσ−1qx∈X 모든 에는 있습니다.σ ( y ) < 2 q ( | x | )y∈F(x)σ(y)<2q(|x|)
이제 문제 는 수정 된 목적 함수 제외하고 동일합니다 . 들면 및 우리가 가지고 . 는 다항식 시간으로 계산 가능하므로 입니다. P O Z ' X ∈ X , Y ∈ F ( X ) Z ' ( 여기서 x , y는 ) = (2) Q ( | X | ) ⋅ Z ( X , Y ) + σ ( Y ) Z ' P ' O ∈ N P OP′OPOZ′x∈Xy∈F(x)Z′(x,y)=2q(|x|)⋅Z(x,y)+σ(y)Z′P′O∈NPO
그 표시하려면 우리가 관찰 에 대한 가능하다 경우 그것을 위해 가능한 경우에만 . 반대의 경우는 다루기가 쉽지 않기 때문에이 경우라고 가정 할 수 있습니다. X P O P ' EPO≤TP′ExPOP′E
의 substituion 에 대한 의미에서 단순하다 모든 , 만약 다음 . 이것은마다 최적의 솔루션을 의미 에서 최적 솔루션 에 . 따라서 우리의 과제 는 에서 의 최적 해 의 계산으로 줄 입니다. Z의 Y 1 , Y 2 ∈ F ( X ) Z ( X , Y 1 ) < Z ( X , Y 2 ) Z ' ( X , Y 1 ) < Z ' ( X , Y 2 ) X P ' O X P O y x P ' OZ′Zy1,y2∈F(x)Z(x,y1)<Z(x,y2)Z′(x,y1)<Z′(x,y2)xP′OxPOyxP′O
위한 오라클 쿼리 우리의 값을 얻을 수 . 이 수의 나머지 모듈로 하면 다항식 시간으로 를 계산할 수있는 가 생성 됩니다. Z ' ( x , y ) = 2 q ( | x | ) ⋅ Z ( x , y ) + σ ( y ) 2 q ( | x | ) σ ( y ) yP′EZ′(x,y)=2q(|x|)⋅Z(x,y)+σ(y)2q(|x|)σ(y)y