Mantıksal Min-Cut NP-Komple mi?


24

Mantıksal Min Cut (LMC) problem tanımı

' nin ağırlıklı olmayan bir digraf olduğunu, s ve t'nin V'nin iki köşesi olduğunu ve t'nin s'den erişilebilir olduğunu varsayalım . Biz yapmak nasıl LMC sorun çalışmaları t gelen ulaşılamaz s bazı kenarların ayrılmasıyla G aşağıdaki kısıtlamalar aşağıdaki gibidir:G=(V,E)stVtstsG

  1. Çıkarılan kenarların sayısı minimum olmalıdır.
  2. Herhangi bir tepe noktasının her çıkış kenarını çıkaramıyoruz (yani, giden kenarları olan hiçbir köşe tüm giden kenarlarını çıkaramaz).G

Bu ikinci kısıtlamaya mantıksal kaldırma denir. Bir aramaya nedenle Mantıksal, en az kaldırma bazı kenarların şekilde T den ulaşılamaz olacaktır s .Gts

Çözüm girişimleri

LMC probleminin mantıksal giderim sınırını görmezden gelirsek, bu ağırlıksız digrafide -min-problem olur , yani polinom olarak çözülebilir (maksimum-akış min-cut teoremi).G

Biz LMC sorununun minimum kaldırma sınırlaması görmezden gelirsek, bir DAG tekrar çözülebilir polynomially olacaktır: Bir köşe bulmak öyle ki k dan ulaşılabilir s ve t den erişilemiyor k . Sonra bir yol düşünün p gelen keyfi bir yoldur s için k . Şimdi, p yolunu G'nin bir alt yazısı olarak kabul edin : cevap, altyazının p her çıkış kenarı olacaktır . K tepe noktasının DFS tarafından G'de polinom sürede bulunabileceği açıktır . Ne yazık ki bu algoritma genel olarak çalışmıyorkkstkpskpGpkG keyfi bir yöneltilmiş grafik için.

LMC problemini dinamik bir programlama tekniği ile çözmeye çalıştım, ancak problemi çözmek için gereken durumların sayısı üssel hale geldi. Dahası, 3-SAT, max2Sat, max-cut ve klik gibi bazı NP-Komple problemlerini de azaltma bulmayı başaramadığım LMC problemine indirgemeye çalıştım.

Şahsen, bir ikili DAG olsa bile LMC probleminin NP-Tamam olduğunu düşünüyorum (yani, hiçbir düğümün 2'den büyük olmayan bir DAG olmadığı).G

Sorular

  1. LMC problemi isteğe bağlı bir yazımında NP-Tamam mı? (ana soru)G
  2. LMC problemi isteğe bağlı bir DAG NP-Complete mi?G
  3. LMC problemi NP-Complete'i isteğe bağlı bir ikili DAG mi?G

Grafiğiniz yönlendirilmemişse sorunun olduğuna eminim . Bu, sorunuza yeterli bir cevap olur mu? P
Alex ten Brink,

@ SaeedAmiri: ve t için bir min-cut bul . Bir köşe bağlantısını keserse, bu köşe s veya t olmalıdır . Eğer ikisi de ise, o zaman böyle bir min kesim yoktur. Varsayalım t kesilmiş tepe ve bir ( t , v ) kenarı. Bu kenarı, çıkarın ve bir dakika-kesmek yerine s ve v yinelemeli. ststt(t,v)sv
Alex ten Brink,

Basit bir gözlemle, eğer şu problem NP-Complete ise, LMC probleminin de NP-Complete olacağı sonucuna varılabilir (tersinin doğru olduğundan emin değilim). Diyelim ki bir digraph. Bir ile dk-kesim olabilir nasıl G (bölüm V için S ve T st kenarlarının sayısı S için T minimumdur) ve bir tepe bulunmayacağım yok v aittir V st her çıkış kenarının baş v ait ila T (çıkış kenarı S ilaG=(V,E)GVSTSTvVvTS ). T
amirv


2
Amirv, sadece kısıtlı olan (2) problem için, anladığım kadarıyla önerdiğin algoritma pek doğru değil. Tüm düğümler v için s'den v'ye bir yol ve v'den t'ye bir yol olmasına rağmen bir çözüm olabilir. Grafiği düşünüldüğünde ile V = { s , t , bir } ve E = { ( s , t ) , ( s , bir ) , ( a , s ) } .G=(V,E)V={s,t,a}E={(s,t),(s,a),(a,s)}
Neal Young

Yanıtlar:


1

G = (V, E) ağırlıklı bir DAG, s ve t, iki G noktası olsun ve LSTMC = (G, s, t), mantıksal st min-cut probleminin bir örneği olsun. LSTMC sorununun NP olduğu açıktır. Şimdi, LSTMC'nin NP Zor olduğunu göstermeliyiz. Vurma problemini LSTMC problemine indirgiyoruz. S = {s1, s2, ..., sn} verilen kümeler ve {a1, a2, ..., am} tüm kümelerin birliği olsun. K1 sayısı göz önüne alındığında, vuruş set probleminin karar problemi, K'nin her elemanının (her set si st i = 1..n) A'nın en az bir elementini içerdiği şekilde bir set A'nın olup olmadığını belirtir. Vuruş kümesi problemini HS (S) olarak gösterir. Algoritma HS2LSTMC tarafından ayarlanan S grubundan ağırlıklı DAG G construc inşa edilir. Bu algoritma s yi DAG G ′ 'nin kaynak tepe noktası olarak kabul eder. Her bir HS st i = 1..n set si si için, algoritma ilgili köşeyi göz önünde bulundurur, si ve s'den her si'ye sonsuz ağırlığa sahip bir kenar ekler. Daha sonra, st j = 1..m giriş kümelerinin birliğinin her bir elemanı aj için, algoritma karşılık gelen tepe noktası, aj'ı göz önünde bulundurur ve her si'den HS'deki herhangi bir ajsi'ye sıfır ağırlığa sahip bir kenar ekler. Son olarak, algoritma, t ve k olarak adlandırılan iki son köşeyi göz önünde bulundurur ve her iki ajanda da iki kenar ekler. Polinom zamanında G time yapılabileceği açıktır.

Şimdi, HS (S) 'nin k1 elemanları ile bir cevabı olduğunu göstermeliyiz ve eğer LSTMC = (G ′, s, t) bazı mantıksal olarak kaldırılmış kenarlarla bir cevaba sahipse, çıkarılan kenarların ağırlıklarının toplamı k1.

Basit olması için, bir örnek vererek, ispatın bu bölümünü gerçekleştiririz:

Aşağıdaki şekilde, S = {s1, s2, s3} 'ün öyle olduğunu varsayalım ki s1 = {1, 2, 3}, s2 = {1, 4} ve s3 = {2, 5}. Şekil 2, Vuruş takımı problemine HS (S) karşılık gelen LSTMC probleminin ağırlıklı DAG G shows 'ını göstermektedir. Bu örnekte, A kümesi, yani S'nin tüm öğelerinin birleşimi, A = {1, 2, 3, 4, 5} 'dir. Biz | S | = 3 ve | A | = 5. Bu örnek, vurma kümesi sorununun rastgele bir örneğinin, ağırlıklı bir DAG'daki mantıksal st min-cut sorununun belirli bir örneğinin yardımı ile nasıl çözülebileceğini göstermektedir. LSTMC = (G ′, s, t) için bir cevap hesaplarsak ve E1 (1 ≤ j ≤ m) olarak adlandırılan (aj, t) şeklinde yanıtın kaldırılmış kenarlarını, sonra E1, HS (S) 'nin bir cevabıdır. LSTMC problemine bir cevap, E1 = {(s1, 2), (s1, 3), (s2, 4), (s3, 5), (1, t), (2, t)} kenarıdır. Yani, E2 altkümesinin kuyruk seti = {(1, t), (2,

indirgeme


0

İşte (denemede) rastgele ikili DAG üzerindeki LMC için bir polinom-zaman algoritması .G

Bu, Soru # 3'ü cevaplar. (Zamanın dağınık yazdığı için üzgünüm. :))

Başlamak için, ulaşılamayan herhangi bir köşeyi "sonsuza kadar" atın . Herhangi bir parçası değiliz kadar, bu umurumda değil ler - t yolunun.sst

Daha sonra , başlangıçta boş olan alt DAG ve B'yi tanımlayın . Sonra, tüm köşeler için v G - { s , t } ,ABvG{s,t}

ile t arasında bir yol olup olmadığını test edin . Eğer öyleyse, ekleme v için A . Değilse, eklemek v için B .vtvAvB

ABsAAtABBt

A{a}A

aatstaaBAaAaAt

{a}B{a}tat

|{a}|atstataat

|{a}|{a}tk<|{a}|As{a}t

G

{a}

{a}B

{a}{a}t{a}

{a}{a}

{a}ts

{a}

{a}t{a}tsts

A

O(|E|)O(|E|2)O(|E|).

O(|V|(|V|+|E|))O(|V|3)O(|E|2)O(|V|2+|E||V|+|V|3+|E|2)=O(|V|3+|E|2)

st


{a}B{a}t(a,t)a{a}

s{a}aA

2
Sonunda bu sorunun NP Tamamlandı olduğunu ispat etmeyi başardım.
07

1
Ah @amirv, lütfen bunu bir cevap şeklinde pay ispat ana hatlarını!
Raphael

1
Sorun, dipnotun ağırlıklandırılmamış bir ikili DAG olmasına rağmen NP-Complete'tir.
amirv
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.