Muhtemelen negatif ağırlığa sahip ağırlıklı yönlendirilmiş asiklik grafiklerde minimum kesim


9

Aşağıdaki sorunla karşılaştım:

Gerçek değerli kenar ağırlıklarına ve iki s ve t köşelerine sahip yönlendirilmiş bir asiklik grafik verildiğinde, minimum kesimi hesaplayın.

Genel grafikler için bu NP-zordur, çünkü biri sadece kenar ağırlıklarını tersine çevirerek maksimum kesimi azaltabilir (yanlışsam beni düzeltin).

DAG'larda durum nedir? Min-cut (veya max-cut) polinom zamanında çözülebilir mi? NP zor mu ve eğer varsa bilinen bir yaklaşım algoritması var mı?

Bu konuda iş bulmaya çalıştım ama yapamadım (belki sadece aramalarda yanlış anahtar kelimeler kullanıyorum), bu yüzden birinin bu konuda bir şeyler bilmesini (veya bulabileceğini) umuyordum.


2
Min-cut'un doğrusal programlama formülasyonu burada nerede başarısız olur?
Peter Shor

( en.wikipedia.org/wiki/… notasyonunu kullanarak ): Negatif ağırlığa sahip kenarlar için d_ {ij} isteğe bağlı olarak büyük olabilir. Biri yukarıdan d_ {ij} sınırlasa bile, negatif ağırlığa sahip kenarlar için her zaman mümkün olan maksimum değeri alır. Dolayısıyla böyle bir programın çözümü her zaman geçerli bir kesinti vermeyecektir. Bu tür sorunlarla çok fazla tecrübeli olmadığım için yanlış olabilirim, lütfen beni düzeltin. Temel olarak, maksimum kesimin (keyfi ağırlıklar ile) DAG'lar için verimli bir şekilde çözülüp çözülemeyeceğini bilmek istiyorum.
George

1
Bu işi yapmak için ilk eşitsizliği eşitliğe değiştirmeniz gerekir: dbenj=pj-pben. Neden hala başarısız olduğunu anlamıyorum, ama belki bir şeyleri kaçırıyorum. Çok fazla düşünmedim.
Peter Shor

Muhtemelen burada bir şey eksik olan benim. Bu garanti tümpbenintegral değerleri alabilir miyim? Biri bağlanabilirdipbenyukarıdan 1 ile, ancak bunun işe yarayıp yaramadığından emin değilim. Sorun şu ki, bu çözülebiliyorsa, kenar ağırlıklarını tersine çevirerek maksimum kesimi azaltabilir, ki bu maksimum kesim NP-sert olduğu için mümkün olmamalıdır. Ancak burada yanlış olabilirim.
George

1
St max-cut NP DAG'lar için zor mu? Grafik bir DAG değilse, bu eşitsizliği eşitlikle değiştiremezsiniz, çünkü döngü varsa eşitsizliğe ihtiyacınız vardır. Dolayısıyla, genel durumda LP negatif ağırlıklarla çalışmaz.
Peter Shor

Yanıtlar:


10

Yorumlarınızda sorununuzu biraz daha geliştirdiniz. Daha spesifik olmak gerekirse, tüm kenarları kaynaktan akan bir DAG'niz vars ve lavaboya doğru t (yani, tüm kenarlar s için t). İlk parçanın bağlı olduğu DAG'ın iki parçası arasındaki minimum kesimi bulmak istiyorsunuzsve ikincisi t. Bu sorun için, MIN-CUT için standart doğrusal programlama algoritmasının bir varyasyonu, negatif kenar ağırlıklarında bile çalışır.

Wikipedia'daki ile aynı gösterimi kullanıyoruz . Kenar maliyeti(ben,j) dır-dir cbenj. Potansiyel bir fonksiyon koydukpben her bir düğümde dbenj=pben-pj. LP

mbennbenmbenze Σ(ben,j)Ecbenjdbenjsubject tÖ    dbenj=pben-pj  (ben,j)E   dbenj0           (ben,j)E   ps=1   pt=0

Bu denklemler, 0pben1, çünkü her tepe noktası s-tyolu. Benzer şekilde,dbenj=pben-pj negatif değil, herhangi bir yoldaki potansiyeller s için tazalıyor. Hala LP'ye en uygun çözümün olduğunu göstermemiz gerekiyor.pben ya 0 veya 1. Bu, yukarıdaki LP'nin bir çözeltisine verilen değerin, kesimin beklenen değeri olması gerçeğinden kaynaklanmaktadır.Cw, nerede w rastgele seçilir [0,1]ve nerede kesilir Cw tüm köşeleri koyarak elde edilir ben ile pbenw ilk köşelerde ve tüm köşelerde pben<w ikinci sette.


Mükemmel cevabın için teşekkürler Peter. İlk bakışta belli değildi0pbenleq1, ama sanırım anladım. Ancak, integral çözüm hakkındaki argümanı anlamakta zorlanıyorum.
George

@George: Normal Min-Cut LP'nin entegre çözümlere sahip olduğunu gösteren aynı argüman. Çevrimiçi bir yerde daha uzun (ve daha anlaşılır) bir açıklama olmalıdır.
Peter Shor

Tamam arayacağım. Yardımınız için tekrar çok teşekkürler!
George
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.