Yönlendirilmiş grafik teşhisinin NP açısından zor olduğunu kanıtlamak


11

Bir süredir kafama dayandığım bir ödevim var ve ipuçlarını takdir ediyorum. NP tamlığı kanıtlanmış bilinen bir problemi seçmekle ve bu problemden aşağıdaki soruna bir azalma oluşturmakla ilgili DGD (yönlendirilmiş grafik teşhisi) diyeceğim.

Sorun

Dgd bir örneği köşe oluşur , yönlendirilmiş kenarları ve pozitif bir tam sayı . Üç tür köşe vardır: yalnızca gelen kenarları olan köşeler , yalnızca giden kenarları köşeler ve hem gelen hem de giden kenarları köşeler . Dahası .V = I . O . B e k I O B D = O x I(V,E,k)V=I.O.BEkIOBD=O×I

Şimdi sorun, tüm düğümleri en fazla kaplayıp , yaniDkD

SD,|S|k. vV. (v1,v2)S. v1vv2

burada bir yönlendirilmiş yol olduğunu vasıtasıyla için .a babab


Hakim Küme sorununun azaltmam gereken sorun olduğunu düşünüyorum, çünkü bu da bir düğüm alt kümesini başka bir alt kümeyle kaplamakla ilgilidir. Önce hakim kümenin her öğesi için iki düğüm oluşturarak, tüm kenarları kopyalayarak ve sonra DGD örneğinin DS örneğininkine eşit olarak ayarlayarak bir DGD örneği oluşturmayı denedim .k

Düğüm , ve ve kenarları ve olan basit bir DS örneğini varsayalım . Bu, olan bir evet örneğidir ; bu durumda hakim küme sadece düğüm oluşur . Az önce açıklanan yöntemle azaltılması, bu iki yol ve olan bir DGD örneğine yol açacaktır ; tüm düğümleri kapsamak için sadece bir çift yeterli olacaktır. DS örneğinin hakim kümesinin, elbette, burada bir gereklilik olan polinom zamanında belirlenememesi gerçeği olmasaydı, bu mükemmel bir şekilde işe yarardı.2 3 ( 1 , 2 ) ( 1 , 3 ) k = 1 1 ( 1 2 1 ) ( 1 3 1 ) ( 1 , 1 )123(1,2)(1,3)k=11(121)(131)(1,1)

Ben kenarları ve köşeleri azaltarak dönüştürmek için birçok iyi görünümlü yolları olduğunu bulduk ama benim sorunum bir türlü DGD en dile getiriyor DS'nin açısından . Hükmetmek Set azaltmak için uygun bir sorun gibi görünüyordu, ama bu nedenle belki böyle bir olan bir sorundan azaltmak için denemek gerektiğini düşünüyorum ?k kkkk


Hoşgeldiniz! Sorun bildirimini açıklığa kavuşturmaya çalıştım; Öyle mi demek istiyorsun? Btw, "user8879" dan daha tanınabilir bir kullanıcı adı seçmek isteyebilirsiniz. :)
Raphael

Evet, teşekkürler, bu gerçekten daha kompakt bir versiyon.
user8879

Yanıtlar:


9

Bunun yerine NP-komple SET-COVER'dan azaltın .

Let ile k K grubu kapağının bir örneği. DGD'nin bir örneğini ( V , E , k ) şu şekilde tanımlayın :S1,,Sm{1,,n}kN(V,E,k)

  • V={s1,,sm,o1,,om,e1,,en,o}
  • E={(si,oi)i=1,,n}{(si,ej)jSi}{(ej,o)j=1,,n}
  • k=m+k

Oluşturulan DGD örneğinin, ancak verilen set kapak örneğinin olumlu bir cevabı varsa olumlu bir cevabı olduğunu görmek kolaydır. Özellikle, tüm çiftlerini ( s i , o i ) , tüm o i'yi kapsamak için ne olursa olsun seçilmelidir ; Daha sonra k ve m çiftleri ( s ı , o ) her kapsayacak şekilde , e j , ve seçilen bu ilk bileşenleri set-KAPAK örneğinin bir çözümdür. Böyle bir seçenek mümkün değilse SET-COVER örneğinin de çözümü yoktur.m(si,oi)oikm(si,o)ej

Polinom zamanında yapı mümkün olduğu için bu SET-COVER DGD'yi kanıtlamaktadır .p


Örnek olarak, Wikipedia'da verilen örnek set kapak örneğini , yani ve S = { { 1 , 2 , 3 } , { 2 , 4 } , { 3 , 4 } kümelerini göz önünde bulundurun , { 4 , 5 } } . Bu, aşağıdaki grafiğe dönüşür:{1,2,3,4,5}S={{1,2,3},{2,4},{3,4},{4,5}}

misal
[ kaynak ]


1
Bu neredeyse doğrudur, çünkü ben ve B gerçekten tamamen kaplıdır, ancak O değildir. Set-cover örneği, k = 2 için bir evet örneğidir , ancak DGD örneğinde k = 2, s2 ve s3'ü açık bırakır . Bu muhtemelen otomatik olarak her bir düğümden bir kenar eklenerek çözülebilir olduğunu düşünüyorum O için o .
user8879

(si,o)siS

Şimdi anladım: O'daki her düğüm için B'de ek bir düğüm oluşturun , daha sonra O'daki ve o'daki karşılık gelen düğüme bağlayın . Bu örnekte fazladan dört yol elde edersiniz (s1 -> s1 '-> o vb.). Son olarak, k'yi dört ile arttırdıktan sonra tamamlanmalıdır.
user8879

si
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.