YARIM CLIQUE - NP Komple Sorun


20

Bunun bir ev ödevi sorunu olduğunu belirterek başlayayım , lütfen sadece tavsiye ve ilgili gözlemler verin, DOĞRUDAN CEVAPLAR YOK lütfen . Bununla birlikte, baktığım sorun:

YARIM CLIQUE = { | , en az düğümü olan tam bir alt grafiğe sahip yönlendirilmemiş bir grafiktir; burada n, } içindeki düğüm sayısıdır . YARIM CLIQUE'nun NP-tamamlanmış olduğunu gösterin.Gn / 2 GGn/2G

Ayrıca, aşağıdakileri de biliyorum:

  • Bu problem açısından bir klik , her iki düğümün bir kenarla bağlandığı, giriş grafiğinin yönlendirilmemiş bir altgrafı olarak tanımlanır. Bir klik düğümleri içeren bir kliktir .kk
  • Ders kitabımıza göre, Michael Sipser'in " Hesaplama Teorisine Giriş ", sayfa 268, sorunun CLIQUE = { | , -clique ile yönlendirilmemiş bir grafiktir } NPG kG,kGk
  • Ayrıca, aynı kaynağa göre (sayfa 283'te) CLIQUE'un NP-Complpete'de olduğunu (dolayısıyla açıkça NP'de) not eder.

Sanırım burada bir yanıtın çekirdeği var, ancak neyin yanlış olduğunu veya bir cevapla ilgili olabilecek herhangi bir noktayı belirtmek için kullanabilirim . Şimdiye kadar sahip olduğum genel fikir bu,

Tamam, ilk önce bir sertifikanın YARIM KALİTESİ olacağını unutmayın . Şimdi görünmem gereken şey, CLIQUE'dan (NP-Complete olduğunu bildiğimiz) HALF-CLIQUE'a polinom zaman azaltımı olan bir doğrulama oluşturmaktır. Benim fikrim, bunun CLIQUE için turing makine doğrulayıcısını HALF-CLIQUE için ek kısıtlama ile çalıştıran bir Turing makinesi yaratılmasıyla yapılacaktı.sizen/2

Bu bana doğru geliyor, ama henüz bu konuda kendime gerçekten güvenmiyorum. Bir kez daha, herkese bunun bir ÖDEV SORUNU olduğunu hatırlatmak istiyorum, bu yüzden lütfen soruyu cevaplamaktan kaçının. Bunun altında kalan herhangi bir rehberlik memnuniyetle karşılanacaktır!

Yanıtlar:


15

Açıklamanıza ve yorumlarınıza bakılırsa, NP tamlığını kanıtlamak için indirimlerin nasıl kullanılabileceğinin tam bir açıklamasıyla en iyi şekilde yardımcı olabilirsiniz:

NP'de ise NP-zordur ve NP-zordur. Bu, herhangi bir NP bütünlüğü kanıtının iki bölümden oluştuğu anlamına gelir: sorunun NP'de yattığına dair bir kanıt ve bunun NP-zor olduğuna dair bir kanıt.

İlk bölüm için, EVET örneklerinin bazı uygun sertifikalar kullanılarak polinom zamanında doğrulanabileceğini göstermelisiniz. Alternatif olarak, sorunun belirleyici olmayan bir Turing makinesi tarafından polinom zamanda çözülebileceğini gösterebilirsiniz, ancak bu genellikle hatalar kolayca yapıldığı için yapılmaz.

Sizin durumunuzda, bu, klipsli her grafik için , gerçekten böyle bir klik olduğunu kanıtlayan bir kanıt bulabilir, böylece böyle bir kanıtla donatılmış, polinom zamanını kontrol edebilirsiniz. gerçekten böyle bir klik var.n/2

İkinci kısımda, sorunun NP-zor olduğunu göstermelisiniz. Bu, neredeyse her durumda, probleminizin en azından diğer NP zorluğu kadar zor olduğunu kanıtlayarak gösterilir. YARIM CLIQUE CLIQUE kadar sert ise, NP-sert olmalıdır.

Sen bir azalma kanıtlayarak bunu DAN klik, TO YARIM klik. Sorunu 'azaltır', böylece 'kolaylaştırır'. "CLIQUE'u çözmek zor, ancak CLIQUE'u çözmek için sadece HALF-CLIQUE'u çözmeniz gerektiğini kanıtladım" diyorsunuz. (birçok kişi, hatta uzmanlar, bazen bunu yanlış bir şekilde söyler :))

Farklı indirgeme türleri vardır: en yaygın olarak kullanılan küçültme, bu durumda CLIQUE örneklerini, polinom zamanında boyutu en fazla polinom olarak daha büyük olan HALF-CLIQUE örnekleriyle eşlediğiniz yerdir. Yani YARIM CLIQUE çözebilirsek, algoritmayı ve indirgeme zincirini kullanarak CLIQUE çözebiliriz.

Başka bir deyişle, YARIM CLIQUE'yu çözebilirsek CLIQUE'u çözebileceğimizi göstermeliyiz. Bunu CLIQUE için her örnek için, HALF-CLIQUE örneği bir 'yes' örneği olduğunda CLIQUE örneğinin 'yes' örneği olacağı şekilde bir HALF-CLIQUE örneği tasarlayabileceğimizi göstererek yaparız.

Kanıt, bu nedenle bu gibi başlar: bir grafiktir verilen , bazı grafik oluşturmak bu şekilde bir içeren IFF -clique içeriyorsa -clique. Bu kısmı size bırakacağım (bu yaratıcılık gerektiren kısım, eldeki belirli problemle ilgili kısım).H = ( V , E ) G k H n / 2G=(V,E)H=(V,E)GkHn/2


Mükemmel kurulum, bir cevap vermeden ve bunu etkili bir şekilde yapmadan yönlendirmek için yeterli bilgi sağlamada çok iyi bir iş çıkardığınızı düşünüyorum. Teşekkür ederim.
BrotherJack

1
Bunun gibi bir şey , ileride başvurmak üzere np-complete etiketine eklenmelidir . Sakıncası yoksa?
Raphael

8

Biraz kaybolmuş gibisin. HALF-CLIQUE CLIQUE değerini göstermek istiyorsunuz , bu da "yes" girişlerinin "yes" ile eşleştiği özelliğe sahip HALF-CLIQUE örneklerini girdi olarak ve CLIQUE örneklerini alan bir çoklu zaman algoritması aradığınız anlamına gelir. es ve "no" girişleri "no" s ile eşleşir.

Yani, temel olarak, görev bir grafiği ve bir sayısı almak ve yeni bir grafiği (ve sayı yok) çıkarmaktır, böylece , boyutunda bir klik değerine sahip olduğunda köşelerinin en az yarısında bir klik vardır . k H H G kGkHHGk

Aşağıdaki spoyler bu azaltmanın nasıl yapılacağı hakkında bir ipucu içeriyor:

(bir şekilde) uygun büyüklükte bir klişe ve hiçbir şeye bağlı olmayan bazı köşeleri ekleyerek yapmaya çalışın .GHG


Ne dediğini anlamıyorum. Yapmaya çalıştığım, CLIQUE'nun NP olduğunu kanıtlamak, giriş grafiği G'de çalışmasını sağlamak ve eğer bir CLIQUE içerip içermediğini görmek için bir CLIQUE bulup bulmadığını görmek için kitapta kullanılan varyasyonu değiştirerek HALF-CLIQUE'yu CLIQUE'ya azaltmaktı. en az n / 2 düğüm, burada n, G'deki düğüm sayısıdır. HALF-CLIQUE'un böyle bir doğrulayıcısı CLIQUE doğrulayıcısının azaltılmış bir formu olduğunu göstermez (HALF-CLIQUE'u çözmenin bir alt probleminde olduğu gibi) )?
BrotherJack

Yoksa geriye doğru sahip olduğumu mu ve CLIQUE'nun YARIM CLIQUE'ya düşürülmesi gerektiğini kanıtlamaya mı ihtiyacınız olduğunu söylüyorsun? Ben de tamamen spoiler almıyorum. Cevabı vermeden açıklamanın bir yolu var mı?
BrotherJack

3
Evet, bir sorun göstermek için NP-tamamlandığında yapmanız gerekenler (a) NP olduğu ve (b) bazı bilinen NP-zor problemi azaltmak göstermek için ona. İndirgeme için doğru yönü hatırlamak için, yeni sorunu bilinen bir NP-C problemini etkili bir şekilde çözmek için "kara kutu" olarak kullanmaktır.
Louis

Tamam, sanırım şimdi anlıyorum. Yardımın için teşekkürler!
BrotherJack

+1 Sanırım anladım. Ne yaptığımı anladığımda ipucun çok öğreticiydi. Tekrar teşekkürler!
BrotherJack

0

Köşe kapağı sorununu azaltabilirsiniz. Verilen grafiğin tamamlayıcı grafiğinde n / 2 düğümden daha az bir tepe noktası kapağı varsa, bu grafiğin n / 2 düğümden daha fazla bir kliksi olacaktır, yani yarım bir klik olacaktır. Sadece Vertex Cover sorununu çözmenin zor olduğunu belirtin.


1
Herhangi bir NP-tamamlama sorununu azaltabileceğiniz için , bu çok yararlı değildir. Azalışla ilgili ayrıntılar bekleniyor.
Raphael

Bu, genel tepe kapağı problemi değil, en fazla boyutunda bir tepe kapağı bulma özel durumundan kaynaklanan bir azalmadır . Bu özel durum hala NP-zor olsa da, büyük olasılıkla genel tepe örtüsü sorunundan kaynaklanan bir azalma ile bunu kanıtlamanız gerekir. Bu orijinal ile hemen hemen aynı soru, sadece şimdi klişe yerine tepe kapağı için, ancak yöntem çok benzer. n/2
Ayrık kertenkele
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.