Hızlı algoritmalar olmadan


15

Polinom zamanında çözülebilecek bazı zor karar sorunlarına örnekler nelerdir? Optimal algoritmanın "yavaş" olduğu veya bilinen en hızlı algoritmanın "yavaş" olduğu sorunları arıyorum.

İşte iki örnek:

  • Mükemmel grafikleri tanıma. FOCS'03 makalelerinde [1] Cornuéjols, Liu ve Vuskovic problem için zaman algoritması vermiştir, burada köşe noktası sayısıdır. Bu sınırın geliştirilip geliştirilmediğinden emin değilim, ancak anladığım kadarıyla, daha hızlı bir algoritma elde etmek için az çok bir atılım gerekiyor. (Yazarlar [1] günlük sürümünde zaman algoritması vermektedir, buraya bakınız ).O(n10)nO(n9)

  • Harita grafiklerini tanıma. Thorup [2] üssü (yaklaşık?) olan oldukça karmaşık bir algoritma verdi . Belki de bu dramatik bir şekilde geliştirildi, ancak iyi bir referansım yok.120

Özellikle pratik önemi olan problemlerle ilgileniyorum ve "hızlı" (hatta pratik) bir algoritma elde etmek birkaç yıldır açık.


[1] Cornuéjols, Gérard, Xinming Liu ve Kristina Vuskovic. "Mükemmel grafikleri tanımak için bir polinom algoritması." Bilgisayar Biliminin Temelleri, 2003. Bildiriler. 44. Yıllık IEEE Sempozyumu. IEEE, 2003.

[2] Thorup, Mikkel. "Harita grafikleri polinom zamanında." Bilgisayar Biliminin Temelleri, 1998. Bildiriler. 39. Yıllık Sempozyumu. IEEE, 1998.


Raymond Greenlaw, H. James Hoover, Walter L.Ruzzo, Paralel Hesaplamanın Sınırları'naP bir göz atmak isteyebilirsiniz : P- Eksiklik Teorisi , 1995
Kaveh

Yanıtlar:


12

Belki aşağıdaki sorunlar örneklerinize uygundur:

  • (Karar versiyonu) Boyama, Klik, Kararlı Set, Klişe Kaplama mükemmel grafikler. Şimdiye kadar, bu problemler için bilinen tek polinom zaman algoritmaları , '' yavaş '' (ve sayısal olarak kararsız) olan elipsoid yöntemine dayanmaktadır.

  • AKS-asallık testi içinde süresi. Pek çok gelişme olmasına rağmen (şu anda O ( ( log n ) 7.5 )O((logn)12)O((logn)7.5) ), AKS algoritması uygulamada hala çok yavaştır.


Evet, bunlar çok güzel örnekler!
Juho

Rasgeleleşmeye izin veriliyorsa, öncelik testi için çok hızlı bilinen algoritmalar olduğunu unutmayın. Yani pratik olarak, "bilinen en hızlı algoritma yavaş" kriterlerini karşılamıyor.
6005

11

Benzer bir soru , 6 ya da 7 üslü üst üste sahip "gerçekçi olarak pratik olmayan yavaş" algoritmalardan çok sayıda örnekle , cstheory'de de benzer bir soru var . Bu soru aynı zamanda büyük sabitleri de tartışıyor.

Polinom zamanının (JeffE'nin cevabından utanmadan çalınan) böyle muhteşem bir örnek gibi göründüğü gibi çoğaltmak istediğim bir klasik var:

Sonuç 1. Algoritmamızdaki adım sayısı en fazla .1752484608000n79L25/D26(Θ0)

Sonuç 2. Algoritmamızdaki adım sayısı en fazla 117607251220365312000n79(max/dmin(Θ0))26.

Kaynak: Jason H. Cantarella, Erik D. Demaine, Hayley N. Iben, James F. O'Brien, Bağlantı Açılımına Enerji Odaklı Bir Yaklaşım , SOCG 2004.


Bunun gerçekten pratik bir sorun olup olmadığını merak ediyorum. Ayrıca, CSTheory'deki sorunların listesi kısadır ve sorunların çoğu oldukça ezoterik görünür ... :-(
Juho

@Juho, diğer soru hakkındaki ilk yorumda math.se'deki benzer bir soruya başka bir bağlantı daha var. Direnmek için çok eğlenceli bulduğumu buldum, ancak korkunç algoritmalara veya yapıcı olmayanlara sahip bazı önemli ptime sonuçları var: Courcelle Teoremi ve metatheoremleri kontrol eden benzer bir grup model, bir sürü grafik küçük şey ve ayrışma algoritması treewidth gibi özellikler.
Luke Mathieson
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.