Karar problemlerinin optimizasyon versiyonu


26

Her bir optimizasyon / arama probleminin eşdeğer bir karar problemi olduğu bilinmektedir. Örneğin en kısa yol problemi

  • : optimizasyonu / arama bu bir yönsüz ağırlıksız grafik göz önüne alındığında G=(V,E) ve iki köşe v,uV arasında bir en kısa yol v ve u .
  • karar sürümü: Yönlendirilmemiş ağırlıklandırılmamış bir grafik G=(V,E) , iki köşe v,uV ve negatif olmayan bir tamsayı k verildiğinde, u ile vG arasında en fazla k olan bir yol var mı?uvk

Genel olarak, "Bul xX st f(x)=min{f(x)xX} !" olur "var mıdır xX st f(x)k ?".

Ancak bunun tersi de geçerlidir, yani her karar sorunu için eşdeğer bir optimizasyon sorunu var mı? Olmazsa, eşdeğer optimizasyon sorunu olmayan bir karar sorununa bir örnek nedir?


6
Bu bit sıfıra eşit mi?
JeffE

5
"Eşdeğeri" daha ayrıntılı olarak açıklamak zorundasınız, örneğin polinom zamanında (veya logaritmik uzayda) birinin diğerini bir kehanet / kara kutu olarak kullanarak çözebileceği anlamına mı geliyorsunuz? Tüm sorunları mı önemsiyorsun, yoksa sadece \ sf {NP} içindeki sorunlar NP?
Kaveh

1
Bakış açınıza bağlı olarak, soru ya önemsizdir (" k " bulunmayan herhangi bir karar sorununu alın ) "veya cevaplanamaz (nasıl" eşdeğer seçenek "sorunu olduğunu nasıl ispatlayabiliriz?).
Raphael

Yanıtlar:


28

Yorumlarda da belirtildiği gibi, her zaman olduğu gibi tanımlara bağlıdır. Buna cevap verme girişimin çok az tanımlaması gerekiyor, bu yüzden özlü cevaplar veremememin bir başka örneği de bu olacak.


Tanım: bir optimizasyon problemi tuple olduğu ile(X,F,Z,)

  • X uygun şekilde kodlanmış (dizeler) örnekler veya girişler kümesi .
  • F Her bir örneği eşleştiren bir fonksiyonudur bir dizi arasında uygulanabilir çözümler arasında .xXF(x)x
  • Z her çift haritalar amaç fonksiyonu , ve , bir reel sayı için olarak adlandırılan bir değer arasında .(x,y)xXyF(x)Z(x,y)y
  • olan optimizasyon yönü ya veya .minmax

Tanım: Bir optimizasyon probleminin örneğinin optimal çözümü , , uygun olan bir çözümdür ; . Optimal bir çözeltinin değeri, ile gösterilir ve optimum olarak adlandırılır .xXPOyF(x)Z(x,y)={Z(x,y)yF(x)}Opt(x)

Tanım: değerlendirme sorunu , gösterilen optimizasyon problemine karşı gelen, şudur: bir örneği göz önüne alındığında , işlem eğer , en iyi bir ve çıkış aksi takdirde “optimal bir çözüm” yer alır.PEPOxXOpt(x)x

Bunun sadece tüm detaylarıyla birlikte tüm çözüm değil, en uygun çözümün değerini istediğini unutmayın .

Tanım: karar problemi , gösterilen optimizasyon problemi tekabül aşağıdaki gibidir: bir çift göz önüne alındığında , burada ve , karar uygun bir çözüm vardır Öyle ki ise ve böylelikle ise .PDPO(x,k)xXkQxyZ(x,y)k=minZ(x,y)k=max

İlk gözlem şimdi . Kanıt zor değil ve burada atlandı.PONPOPDNP

Şimdi sezgisel olarak ve karşılık gelen , kendisinden daha zor değildir . Bu duyguyu resmen ifade etmek (böylece, hangi eşdeğerin ne anlama gelmesi gerektiğini tanımlamak ), indirimler kullanacağız.PEPDPOPO

Bir dil hatırlayın bu başka bir dil için bir polinom zamanlı indirgenebilir bir fonksiyonu olup olmadığını örneğin polinom zamanda hesaplanabilir, bu tüm kelimeleri için , . Bu tür indirgenebilirlik, Karp veya bire bir indirgenebilirlik olarak bilinir ve eğer bu şekilde indirgenebilir ise , bunu yazarak ifade . Bu, NP tamamlama tanımında merkezi bir kavramdır.L1L2fxxL1f(x)L2L1L2L1mL2

Ne yazık ki, birebir yapılan indirimler diller arasında değişmektedir ve optimizasyon problemleri bağlamında nasıl kullanılacağı açık değildir. Bu nedenle, farklı bir indirgenebilirlik türü göz önünde bulundurmamız gerekiyor, Turing indirgenebilirliği . İlk önce buna ihtiyacımız var:

Tanım: Bir torpil bir sorun için örneklerini çözebilecek bir (varsayımsal) altprogram olan sabit zamanda.PP

Tanım: Bir sorun polinom zamanlı Turing-indirgenebilir bir sorun için yazılı, örnekleri ise, için kahin erişimi olan bir algoritma tarafından polinom zamanda çözülebilir .P1P2P1TP2P1P2

Gayrı, sadece olduğu gibi , ilişki anlatırken kullanılır, bu fazla zordur . polinom zamanında çözülebildiğini görmek de kolaydır , bu yüzden olabilir . Yine geçişli bir ilişkidir. Aşağıdaki gerçek açıktır:mP1TP2P1P2P2P1T

Let , ardından .PONPOPDTPETPO

Çünkü tam çözüm verildiğinde değerini hesaplamak ve sınır karşılayıp karşılamayacağına karar vermek basittir.k

Tanım: ve iki sorunu için her ikisi de , ilişkilerini , ; Bizim kavramı denkliği .P1P2P1TP2P2P1P1TP2

Şimdi, ilgili optimizasyon problemine göre ve tamsayı olduğunu . göstermeliyiz . Biz belirleyebilir , bir ikili şurada Orcale usign arama . Nedir? sağlar bir polinom için , ikili arama aşama sayısı, bu nedenle polinom olarak. PDTPEPONPOZPETPD{Z(x,y)yF(x)}PDNPO|Z(x,y)|2q(|x|)q|x|

Bir optimizasyon problemi için için ilişki az açıktır. Birçok somut durumda, doğrudan . Bunun genel olarak burada verilen çerçevede tutulduğunu kanıtlamak için ek bir varsayıma ihtiyacımız var.POPEPDTPETPO

Öncelikle, 'yi dil çiftlerinden ilgili karar problemlerinin çiftlerine genişletmeliyiz . Sonra görmek kolaydır daha geneldir .mTm

Let ve karar problemleri olabilir; sonra . Bu, çoktan bire bir indirimin bir kehaneti çok sınırlı bir şekilde kullanmak olarak yorumlanabileceği için geçerlidir: Kehaneye bir kez, en sonunda bir çağrı yapılır ve sonucu da sonuç olarak döndürülür. PPPmPPTP

Şimdi final için hazırız:

Let ve varsayalım tamsayıdır değerli olduğu ve NP-tam, daha sonraÖnceki gözlemlerde gösterilmeye devam edilmiştir . Bunu yapmak için, da . Sonraİkinci ve üçüncü , daha önce kanıtlanmış olan karar ve değerlendirme versiyonunun denkliği nedeniyle . Üçüncü , NP'nin ve daha önce belirtilen iki gerçeğin ;PONPOZPD

PDTPETPO.
POTPEPONPOPOTPE
POTPETPDTPDTPE.
TTPDPONPOPDNP ve .PmPOPTPO

Şimdi detaylar: uygulanabilir çözümlerinin bir toplam sipariş ile donatılmış bir alfabe kullanılarak kodlandığını varsayın . Let gelen kelime ortak uzunluk kelimelerin blok içinde uzunluk ve lexicographic düzeni azalmayan sırasına göre listelenir. (Bu nedenle boş bir kelimedir.) Tüm için izin benzersiz bir tamsayıyı temsil eder öyle ki . Hem hem de polinom süresi içinde hesaplanabilir. , x'teki tüm için olduğu gibi bir polinom olsunPOΣw0,w1,Σw0yΣσ(y)iy=wiσσ1qxXve Elimizdeki .yF(x)σ(y)<2q(|x|)

Şimdi sorun , değiştirilmiş nesnel fonksiyon hariç ile aynıdır . İçin ve aldığımız . polinom zamanında hesaplanabilir, bu nedenle .POPOZxXyF(x)Z(x,y)=2q(|x|)Z(x,y)+σ(y)ZPONPO

Olduğunu göstermek için biz bu gözlemlemek için mümkündür eğer ve onun için mümkün olduğu takdirde . Bunun böyle olduğunu varsayabiliriz, çünkü tam tersi dava ele almak için önemsizdir.POTPExPOPE

Arasında saydırma için anlamda monoton tüm bu , eğer daha sonra . Bu her optimal bir çözüm anlamına gelir in optimal çözüm de . Böylece, bizim görev, en iyi çözüm hesaplama azaltır arasında de .ZZy1,y2F(x)Z(x,y1)<Z(x,y2)Z(x,y1)<Z(x,y2)xPOxPOyxPO

kehanetini , değerini alabiliriz . Bu sayı, modülo kalanını oluşturan elde edilir olan polinom bir sürede elde edilebilir.PEZ(x,y)=2q(|x|)Z(x,y)+σ(y)2q(|x|)σ(y)y


"P sorunu için bir kehanet, P vakasını sürekli zaman içinde çözebilen (varsayımsal) bir alt programdır." Bir kehanet sadece sabit bir zaman alır mı?
Tim

@Tim Tabii ki kitaplar var, başka bir cevabın
uli

Oracle ilgili @Tim: Eğer bulduk halinde / azalma tasarlanmış iki sorun arasında ve Eğer var düşük için etkili bir algoritma bulma problemi için etkili bir algoritma bulma . Başka bir deyişle, azaltma size çözmek için kullanabileceğinizi söyler . için bir algoritmada için bir alt yordam kullanmak gibidir . Ancak ve problemleriATBABABABBAABgenellikle verimli çözümler bilmediğimiz sorunlardır. Ve Turing-indirgenebilirlik durumunda, söz konusu sorunların hiçbir zaman kesinleşemediği durumlarda bile kullanıyoruz.
uli

Bu nedenle , bilinmeyen bir alt programdır. Karmaşıklık teorisinde, olan bir algoritma olarak indirgenmeden elde edilen varsayımsal algoritma olarak adlandırılması bir gelenek haline gelmiştir . bilinmeyen alt rutini bir kehanet olarak adlandırmak, için bir kehanet edinmeyi umduğumuz gibi , için etkili bir algoritma bulmayı ümit edemeyeceğimizi ifade eder . Bu seçim, sihirli bir yeteneği ifade ettiği için biraz talihsiz. Kahin için maliyetialt rutin olarak en azından girişini okumalıdır . BABBBB|x|x
uli

3
Her yerde mükemmel bir cevap; Ekleyeceğim tek şey (şimdi başka bir soru ile gelmek) 'optimizasyon yönünün gereksiz bir karmaşıklık bittiği ve somutluk için her zaman hedef fonksiyonunun maksimize edileceğini varsayabiliriz ; niyeti aza indirmek için ise, o zaman sadece yeni bir amaç fonksiyonu tanımlayabiliriz ve tüm minimize yeniden maksimizasyonu olarak . ZZ=ZZZ
Steven Stadnicki

5

Yorumların söylediği gibi cevap kesin tanımlara bağlıdır. Soruyu çok basit (hatta saf) bir şekilde yorumlayayım.

Let bazı olan ilişki, olmak .SS{(a,b)a,bΣ}

Şimdi için bir arama problemi tanımladık :S

Verilen , bir arayan , öyle ki .ab(a,b)S

ve için bir karar sorunu :S

Verilen olup olmadığını cevaplayın .(a,b)(a,b)S

(Örneğin, söz konusu belirli bir örnekte, tüm çiftleri tutacaktır arasında bir yol vardır, öyle ki ve daha kısadır .)S(u,v,k)uvk

Bu iki sorunun iyi tanımlandığını unutmayın . Bu tanım için , iki sorunun herhangi bir için "eşdeğer" olup olmadığını sorabiliriz . "Eşdeğer" olarak, eğer biri hesaplanabilirse (yani, onu çözen bir algoritma varsa) diğerinin de hesaplanabilir olduğunu kastediyorum. Genelde değiller.S

1. Talep : Karar , Arama'yı ima eder .

İspat: , karar problemini çözen algoritma olsun . Bir giriş göz önüne alındığında Biz çalışabilir uygun herhangi bir , birbiri ardına ya da paralel olarak. Eğer de , sonunda onu bulacağız. Aksi takdirde, algoritma durduramayabilir .DSSaDS(a,x)xΣb(a,b)S

2 İstem : Arama gelmez değil ima Kararı .

Bunun nedeni, arama algoritmasının ihtiyacımız olandan farklı bir döndürmesi olabilir . Yani, her biri bulunması çok kolay olan bazı var, fakat diğer öyle değil. Örneğin, kararsız bir dil olmasına izin verin , sonra tanımlayın Her için arama algoritması döndürür . Ancak herhangi bir karar algoritması doğru cevap olup olmadığını için, bütün çift . Olsaydı, imkansız olan, kararlaştırılamaz bir soruna karar verirdi.babbL

S={(x,0)xΣ}{(x,1)xL}.
x0(x,1)S(x,1)


Bu, bağlıdır . Örneğin, sınırlı ise, durması gereken bir algoritma olabilir.SS


2
Doğru karar sorunu, st varlığıdır . ba,bS
Kaveh

Karar varlığı olarak tanımlanırsa , arama kararı belirtir . b
Ran G.

1
Zayıf bir anlamda, hesaplanabilirlik ancak karmaşıklık değil daha hassas bir konudur.
Kaveh
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.