하프 클릭-NP 완료 문제


20

숙제 문제라는 점에서 시작 하겠습니다. 조언과 관련 관찰 만 제공하십시오 . 직접적인 답변은 없습니다 . 그 말로, 내가보고있는 문제는 다음과 같습니다.

HALF-CLIQUE = { | 는 적어도 노드 를 가진 완전한 서브 그래프를 갖는 무 방향 그래프 이며, 여기서 n은 } 의 노드 수입니다 . HALF-CLIQUE가 NP- 완료임을 보여줍니다.G N / 2 GGGn/2G

또한 다음을 알고 있습니다.

  • 이 문제의 관점에서, clique 는 입력 그래프의 방향이없는 서브 그래프로 정의되며, 두 노드마다 에지에 의해 연결됩니다. -clique는 포함 파벌 인 노드를.kk
  • 우리 교과서에 따르면 Michael Sipser의 " 계산 이론 입문 ", 268 페이지, CLIQUE = { | 는 -clique}가 NP 인 무 방향 그래프입니다.G KG,kGk
  • 또한 동일한 출처 (283 페이지)에 따르면 CLIQUE는 NP-Complpete에 있습니다 (따라서 NP에도 있음).

나는 여기에 대답의 핵심을 가지고 있다고 생각하지만, 무엇이 잘못되었는지 또는 대답과 관련이있을 수있는 관련 포인트에 대한 표시를 사용할 수 있습니다 . 이것이 제가 지금까지 가지고있는 일반적인 아이디어입니다.

먼저 인증서는 단순히 의 HALF-QLIQUE 일 것입니다 . 이제 내가해야 할 일은 CLIQUE (NP 완료라고 함)에서 HALF-CLIQUE로 다항식 시간 단축 인 검증기를 작성하는 것 같습니다. 내 생각은 이것이 HALF-CLIQUE에 대한 추가 제약 조건으로 CLIQUE에 대한 책에서 튜링 머신 검증기를 실행하는 튜링 머신을 생성하여 수행된다는 것입니다.sizen/2

이것은 나에게 맞는 것처럼 들리지만, 나는이 주제에 대해 아직 자신을 믿지 않습니다. 다시 한 번, 이 문제가 숙제라는 것을 모두에게 상기시켜 드리고자 하므로 질문에 답변하지 않도록 노력하십시오. 이것에 미치지 못하는 지침은 가장 환영받을 것입니다!

답변:


15

설명과 의견으로 판단하면 NP- 완전성을 증명하기 위해 축소를 사용하는 방법에 대한 정확한 설명을 통해 도움을받을 수 있습니다.

문제는 NP에 있고 NP-hard 인 경우 NP-complete입니다. 즉, NP- 완전성 증명은 문제가 NP에 있다는 증거와 그것이 NP-hard라는 증거가 있습니다.

첫 번째 부분에서는 YES 인스턴스가 적절한 인증서를 사용하여 다항식 시간으로 확인할 수 있음을 보여 주어야합니다. 또는 비 결정적 튜링 머신으로 다항식 시간으로 문제를 해결할 수 있음을 보여줄 수 있지만, 일반적으로 실수가 쉽게 이루어지기 때문에 수행되지는 않습니다.

귀하의 경우, 이것은 clique 가있는 모든 그래프에 대해 실제로 그러한 clique가 있다는 증거를 찾을 수 있습니다. 실제로 그러한 파벌이 있습니다.n/2

두 번째 부분에서는 문제가 NP-hard임을 보여 주어야합니다. 이것은 거의 모든 경우에있어 문제가 적어도 다른 NP-hard 문제만큼 어렵다는 것을 증명함으로써 나타납니다. HALF-CLIQUE가 CLIQUE만큼 어렵 으면 NP-hard 여야합니다.

CLICK TO FROM HALF-CLIQUE를 줄임으로써이를 수행 할 수 있습니다. 당신은 문제를 '감소시켜'더 쉽게 만듭니다. "클릭을 해결하는 것은 어렵지만 CLIQUE를 해결하기 위해 HALF-CLIQUE 만 해결하면된다는 것을 증명했습니다." (많은 사람들, 심지어 전문가조차도 때때로 이것을 잘못된 방식으로 말합니다 :))

축소 유형에는 여러 가지가 있습니다. 가장 일반적으로 사용되는 축소는이 경우 CLIQUE 인스턴스를 다항식 시간에서 최대 다항식으로 크기가 가장 큰 HALF-CLIQUE 인스턴스에 매핑하는 축소입니다. 즉, HALF-CLIQUE를 해결할 수 있다면 알고리즘과 축소를 연결하여 CLIQUE를 해결할 수도 있습니다.

다시 말해 HALF-CLIQUE를 해결할 수 있다면 CLIQUE를 해결할 수 있음을 보여 주어야합니다. CLIQUE의 모든 인스턴스에 대해 HALF-CLIQUE의 인스턴스가 'yes'인스턴스가되도록 CLIQUE의 인스턴스가 'yes'인스턴스가되도록 HALF-CLIQUE의 인스턴스를 설계 할 수 있습니다.

증명은 따라서 다음과 같이 시작한다 : 그래프 주어진 , I 일부 그래프 만들 수 되도록 유효 성분으로서 단백질이나 IFF에 -clique를 유효 성분으로서 단백질이나 -clique한다. 나는이 부분을 당신에게 맡길 것입니다 (이것은 창의성을 요구하는 부분, 현재의 특정 문제에 관한 부분입니다).H = ( V ' , E ' ) G K H N / 2G=(V,E)H=(V,E)GkHn/2


훌륭한 설정, 나는 당신이 대답을하지 않고 웅변 적으로 안내하지 않고 안내 할 수있는 충분한 정보를 제공하는 데 아주 좋은 일을했다고 생각합니다. 감사합니다.
BrotherJack April

1
나중에 참조 할 수 있도록 np-complete 의 태그 위키에 이와 같은 것을 넣어야합니다 . 해도 괜찮을까요?
Raphael

8

조금 길을 잃은 것 같습니다. HALF-CLIQUE CLIQUE 를 표시하려고합니다 . 이는 CLIQUE 인스턴스를 입력으로 사용하고 "yes"입력이 "yes"로 맵핑되는 특성으로 HALF-CLIQUE 인스턴스를 출력하는 다중 시간 알고리즘을 찾고 있음을 의미합니다. es 및 "no"입력은 "no"로 매핑됩니다.

따라서, 기본적으로, 태스크 그래프 수행하는 및 다수의 및 출력 새로운 그래프 되도록 않음 (참조) 될 때마다 그 정점의 적어도 절반에 도당 갖는 크기의 도당 갖는 . k H H G kGkHHGk

아래 스포일러에는이 축소를 수행하는 방법에 대한 힌트가 있습니다.

어떤 방식 으로든 적절한 크기의 도둑을 에 연결하고 어떤 것에도 연결되지 않은 정점 수를 추가 하여 를 만드십시오 .GHG


나는 당신이 말하는 것을 이해하지 못합니다. 내가 시도한 것은 책에 사용 된 varifier를 수정하여 CLIQUE가 NP임을 증명하고 입력 그래프 G에서 실행했는지 확인하고 CLIQUE가 포함되어 있는지 확인하는 CLIQUE가 있는지 확인하여 HALF-CLIQUE를 CLIQUE로 줄이는 것입니다. 적어도 n / 2 노드, 여기서 n은 G의 노드 수입니다. HALF-CLIQUE의 그러한 검증기는 CLIQUE의 검증자가 축소 된 형태임을 보여주지 않습니다 (HALF-CLIQUE 해결의 하위 문제에서와 같이) )?
BrotherJack

아니면 내가 그것을 가지고 있고 CLIQUE가 HALF-CLIQUE로 축소되어야한다는 것을 증명해야한다고 말하고 있습니까? 나는 또한 당신의 스포일러를 완전히 얻지 못했습니다. 답을주지 않고 설명 할 수있는 방법이 있습니까?
BrotherJack

3
예, 문제가 NP- 완료임을 나타내려면 (a) 문제가 NP에 있음을 표시하고 (b) 알려진 NP-hard 문제 줄여야 합니다. 축소의 올바른 방향을 기억하려면 요점은 알려진 NP-C 문제를 효율적으로 해결하기 위해 새 문제를 "블랙 박스"로 사용하는 것입니다.
Louis

알았어, 이제 이해하고있는 것 같아 당신의 도움을 주셔서 감사합니다!
BrotherJack April

+1 생각합니다. 내가 잘못하고있는 것을 이해하면 힌트가 매우 유익했습니다. 다시 감사합니다!
BrotherJack

0

정점 표지 문제를 줄일 수 있습니다. 주어진 그래프의 보수 그래프가 n / 2 노드 미만의 정점 커버를 갖는 경우,이 그래프는 n / 2 노드 초과의 크리크를 가질 것입니다. 정점 표지 문제를 해결하기 어렵다고 말하면됩니다.


1
당신이에서 줄일 수 있기 때문에 어떤 NP 완전 문제, 이것은 정말 유용하지 않습니다. 축소에 대한 세부 사항이 예상됩니다.
Raphael

이것은 일반적인 버텍스 커버 문제가 아니라 최대 크기의 버텍스 커버를 찾는 특별한 경우에 대한 감소 일뿐 입니다. 이 특수한 경우는 여전히 NP-hard이지만 일반적인 정점 커버 문제를 줄임으로써이를 증명해야합니다. 이것은 원래의 질문과 거의 같은 질문이며, 지금은 도당 대신 정점 표지에만 해당되지만 방법은 매우 유사합니다. n/2
이산 도마뱀
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.