이것은 문제 (즉, 언어 )가 NP- 완전 인지 아닌지를 결정하기위한 개인적 접근 입니다. 이 두 조건이 모두 확인되면 :엘
- 인스턴스 경우 그 시험을 느낄 에 L이 의미하는 나는 어떤 종류의 모든 조합을 확인할 필요가나는엘
- 그리고 이 작은 것들로 이러한 조합을 분할 할 수있는 방법이 없다는 것을
다음 매우 잘 NP-어려울 수 있습니다.엘
예를 들어 부분 집합 합계 문제의 경우 모든 부분 집합을 나열하고 합계가 0 인 항목이 있는지 확인해야합니다. 나는 나눌 수 S를 두 개의 작은 하위 집합으로 S 1 과 S 2가 되는 내가 비슷한 속성을 확인할 것인가? 흠 ... 정말. 어쩌면 S 1 과 S 2 의 모든 조합을 확인 했지만 실제로는 길어질 것입니다 ...에스SS1S2S1S2
일반적으로 작은 조각으로 나누는 능력은 문제가 P에 있다는 것을 나타내는 좋은 지표입니다. 이것은 나누기 및 정복 접근법입니다. 예를 들어 두 점 사이의 최단 경로를 찾으려면 에서 C 까지의 최단 경로가 B 를 통과 하면 A 에서 B 까지의 최단 경로에 B 에서 C 까지 의 최단 경로보다 길지 않은 속성을 사용할 수 있습니다 .ACBABBC
솔직히이 접근법은 매우 기본입니다. 주어진 문제에 대한 (다항식) 알고리즘을 찾으려고합니다. 찾을 수 없으면 문제가 "어려워"집니다. 그런 다음 모든 NP- 완전성 추론이 온다. 기존의 NP- 완전 문제를이 문제로 인코딩 할 수 있을까? (그리고 이것은 일반적으로 훨씬 어렵 기 때문에 다항식 알고리즘을 찾기 위해 한 번 더 시도합니다.)
나는 이것이 일반적인 사고 방식이라고 생각합니다. 그러나 알려지지 않은 문제에는 적용하기가 여전히 어렵습니다. 나는 개인적으로 내가 들었던 NP- 완전성의 첫 번째 예 중 하나 인 놀림 문제 에 놀란 것을 기억 합니다. 확인하기가 너무 간단 해 보였습니다! 그래서 나는 경험이 그것과 관련이 있다고 생각합니다. 또한 직관은 때때로 쓸모가 없습니다. 나는 두 번의 거의 동일한 문제를 여러 번 들었을 때 기억하지만 하나는 P에 있었고 다른 하나는 작은 차이로 NP- 완전했습니다.
아직 좋은 예를 찾지 못했습니다 (여기에서 도움이 필요합니다) . 이것은 사후 대응 문제와 같습니다 : 이것은 결정 불가능한 문제이지만 일부 변형 은 결정 가능합니다.