Semidefinite programlamaya dayalı algoritmalara sahip polinom hızlandırmaları


17

Bu, A. Pal tarafından sorulan yakın tarihli bir sorunun takibi: Polimom zamanında yarı-yan programların çözülmesi .

Hala bir yarım kenarlı programın (SDP) çözümünü hesaplamak algoritmaların gerçek çalışma süresi üzerinde kafa karıştırıcı. Robin'in yukarıdaki soruya yaptığı açıklamada belirttiği gibi, SDP'ler genel olarak polinom zamanında çözülemez.

SDP'mizi dikkatli bir şekilde tanımlarsak ve primal uygulanabilir bölgenin ne kadar iyi sınırlandığına dair bir koşul koyarsak, SDP'yi çözmek için gereken zamana bir polinom bağı vermek için elipsoid yöntemini kullanabiliriz (bkz.Bölüm 3.2) L. Lovász, Semidefinite programları ve kombinatoryal optimizasyon ). Verilen sınır genel bir " polinom zamanı " dır ve burada daha az kaba bir sınırla ilgileniyorum.

Motivasyon, kuantum ayrılabilirlik problemi için kullanılan iki algoritmanın karşılaştırılmasından kaynaklanmaktadır (asıl sorun burada geçerli değildir, bu yüzden klasik okuyucuları okumayı bırakmayın!). Algoritmalar, SDP'lere dönüştürülebilen bir test hiyerarşisine dayanır ve hiyerarşideki her test daha büyük bir alan üzerindedir, yani karşılık gelen SDP'nin boyutu daha büyüktür. Karşılaştırmak istediğim iki algoritma aşağıdaki dengede farklılık gösteriyor: birincisinde, hiyerarşinin daha fazla adımına tırmanmanız gereken çözümü bulmak için ve ikincisinde hiyerarşinin adımları daha yüksek, ama daha az tırmanmanız gerekiyor onları. Bu değiş tokuşun analizinde, SDP'yi çözmek için kullanılan algoritmanın kesin bir çalışma süresinin önemli olduğu açıktır. Bu algoritmaların analizi Navascués ve ark. in arxiv: 0906.2731, yazdıkları yer:

... olan bir SDP zaman karmaşıklığı değişkenleri ve matris boyutu N olduğu O ( m, 2 , n 2 ) (algoritmaların bir yineleme gelen küçük bir ilave maliyetle).mnO(m2n2)

Gelen başka kağıda sorununa bu yaklaşım ilk önerilmişti, yazarlar aynı ciltli vermek, ancak daha temkinli terim " aritmetik işlem sayısı " yerine " zaman karmaşıklığını ".

Sorum iki katlıdır:

  • Hangi algoritma / bağlı olan Navascués ve ark. atıfta?
  • Lovász'daki "polinom zamanı" ifadesini daha az kaba bir şeyle (aynı varsayımları koruyarak) değiştirebilir miyim?

1
Anladığım kadarıyla, elipsoid yönteminin log ( 1 / ϵ ) ' de zaman içinde polinom zaman içinde ek hata içinde cevaplar olması . En sorunları, bir şüpheli olabilir ε = Ω ( 1 / 2 , n ) yeterli olabilir. ϵlog(1/ϵ)ϵ=Ω(1/2n)
Suresh Venkat

@SureshVenkat: Bu doğru, elipsoid yöntemi, giriş matrislerinin büyüklüğü, kısıtların ve büyüklüğünde zaman polinomunda çalışır . Sorun şu ki, soruda bahsettiğim uygulama için, sadece "polinom" demek yeterli değil, daha kesin bir bağlamaya ihtiyacım var. log(1/ϵ)
Alessandro Cosentino

Yanıtlar:


12

Özellikle yarı belirli programlar için elipsoid yönteminin ayrıntılarına aşina değilim, ancak doğrusal programlar için bile elipsoid yönteminin analizi oldukça incedir.

  • İlk olarak, ideal elipsoid algoritmasının yineleme sayısını sınırlamak gerekir . Let kullanılan ellispoid olmak i elipsoid algoritma inci yineleme ve izin C ı kendi ağırlık merkezi olabilir. İdeal algoritmasında, bir ayırma / üyelik torpil size halfspace verir h ı uygun noktasını içeren X * , ancak ağırlık merkezi c i . Bir sonraki elipsoid E i + 1 , E ih i içeren en küçük elipsoiddir . Her i içinEiicihixciEi+1Eihii,n-boyuttur. Bu nedenle, verilen bir uygun başlangıç elips, yineleme sayısı olarak polinomdur, nvegünlük(1/ε). Bilgisayarei+1denEivehigerektirir (kabaca)O(n,2)aritmetik işlemler. Aritmetik işlem sayısı da polinom olduğunu Yaninvelog(vol(Ei+1)<(11n)vol(Ei)nnlog(1/ε)Ei+1EihiO(n2)n .log(1/ε)

  • Ancak, bu aritmetik işlemlerden bazıları kare köktür! İdealin katsayıları elips olduğunu izler derece irrasyonel sayılar 2 i ve bu yüzden aslında hesaplama hiçbir umut var E i + 1 tam herhangi makul bir süre içinde. Böylece, bunun yerine, her iterasyonda sonlu hassasiyetli aritmetik kullanılarak yakın bir dış yaklaşım ˜ E iE i hesaplanır . Grötschel, Lovasz ve Schrijver, eğer i yinelemede 10 i hassasiyet  kullanırsa , hala v o l (Ei2iEi+1 E~iEi10iivol(E~i+1)<O(11n)vol(E~i)iO(i polylog i)

nlog(1/ε)


Cevap için teşekkürler. Eğer doğru konuşuyorsam, sahip olduğum şey budur (çok kabaca):Σben=1n. iterasyonlarınÖ(n2) (aritmetik işlemlerin sayısı) xÖ(benpolylogben)(her aritmetik işlem için zaman). Yinelemelerin sayısı üzerinde hala bir sınırım yok, ancak bunun içinde polinomn ve günlük(1/ε). Belki de sorumda çok net değildim, ama yineleme sayısı için de daha kesin bir sınırla ilgileniyorum (şöyle bir şey:n, n2, ...).
Alessandro Cosentino

Bir şey daha var: Analizin herhangi bir yerinde kısıtlamaların sayısı da görünmemeli mi? Ayrıca, bu doğrusal programlara özgü mü?
Alessandro Cosentino

1
Ayrılma kehanetinin çalışma süresini de hesaba katmalısınız; burada kısıtlamaların sayısı ortaya çıkıyor. Açık LP'ler için, ayrılık kehaneti kısıtlamaları birer birer dener. Örtülü temsil edilen LP'ler için daha karmaşıktır.
Jeffε
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.