Bilinen algoritmalar için ne zaman daha iyi sınırlar bulduk?


16

Kanıtlanmış sınırlarla yayınlanmış ilginç algoritma örnekleri var mı ve daha sonra daha iyi sınırlar daha sonra yayınlandı mı? Daha iyi sınırlarla daha iyi algoritmalar değil - açıkçası bu oldu! Ancak mevcut bir algoritmaya daha iyi bağlanma sağlayan daha iyi analiz

Matris çarpımının bunun bir örneği olduğunu düşündüm, ama Coppersmith-Winograd ve arkadaşlarını daha iyi anlamaya çalıştıktan sonra kendimden (belki de yanlış!) Konuştum.


Bunun ideal bir örneği Matris Çarpımıdır. Son gelişmeler aslında daha iyi analizlerdir (Le Gall, Williams, vb.).
Lwins

Lwins - Durum böyle olabileceğinden şüphelendim, ancak bazı makaleleri gözden kaçırmak hem algoritmayı hem de analizi biraz değiştirdiklerini düşündürdü. Daha derine bakmam gerekebilir.
Rob Simmons

Bu yarım cevaptır, çünkü 2. el kulaktan doludur: Buechi otomata'nın belirlenmesi için çalışırken ( dl.acm.org/citation.cfm?id=1398627 ), Safra aslında yapısını ikinci dereceden bir üs için analiz etti. Daha sonra, yapıyı yazdıktan sonra ve bazı yanlış anlaşılmalar nedeniyle, daha iyi (optimal) üsüyle sonuçlandı . nlogn
Shaull

Hareket planlama problemlerine bakmayı öneririm - orada birkaç durum varmış gibi hissediyorum. Ayrıca, IIRC, simpleks algoritma (lar) ın kesin karmaşıklığı bir süre için bir çalışma konusuydu.
Steven Stadnicki

1
Biraz farklıdır, ancak 3SAT örneğinde tatmin eden bir girdinin varlığına dair kanıt, daha dikkatli bir analizle açık bir algoritmaya dönüştürülmüştür. 7m/8
Stella Biderman

Yanıtlar:


23

Birlik-Bul algoritması, Tarjan 1 karmaşıklığı vardı gösterdi , Ackermann ters fonksiyonu, birden fazla kişi tarafından daha önce analiz edilmiştir. Wikipedia'ya göre, Galler ve Fischer 2 tarafından icat edildi , ancak algoritmanın hızlı bir şekilde çalışması için gereken tüm bileşenlerine sahip olmadıkları için bu yanlış görünüyor.nα(n)α(n)

Makalelerin kısa taramalarına dayanarak, algoritmanın Hopcroft ve Ullman 3 tarafından icat edildiği anlaşılmaktadır ve bunlar (yanlış) zaman sınırı vermiştir . Fischer 4 daha sonra kanıtta hatayı buldu ve zaman sınırı verdi. Daha sonra Hopcroft ve Ullman 5 bir zaman sınırı verdi, ardından Tarjan 1 (optimal) zaman sınırını buldu.O(n)O(nloglogn)O(nlogn)O(nα(n))

1 RE Tarjan, "İyi ama doğrusal olmayan küme birliği algoritmasının etkinliği" (1975).
2 BS Galler ve MJ Fischer, "Geliştirilmiş bir denklik algoritması" (1964).
3 JE Hopcroft ve JD Ullman, "Doğrusal liste birleştirme algoritması" (1971).
4 MJ Fischer, "Eşdeğerlik algoritmalarının etkinliği" (1972).
5 JE Hopcroft ve JD Ullman, "Set-birleştirme algoritmaları" (1973).


2
Bu veri yapısının tarihi benim için biraz belirsiz ve araştırmak güzel olurdu. Galler ve Fischer makalesini gözden kaçırdım ve ayrık kümeler ormanı (DSF) veri yapısını tarif ediyor gibi görünüyor, ancak önemli yol sıkıştırması (PC) ve ağırlıklı birleşim (WU) buluşsal yöntemleri olmadan. Hopcroft ve Ullman, DSF'yi PC ve WU içermeyen Truth'a Knuth'dan bahseder. Hem PC hem de WU'lu DSF'nin Hopcroft ve Ullman'ın makalesinden önce yayınlanan bir makalede önerilip önerilmediğinden emin değilim, ancak olsaydı şaşırmazdım.
Sasho Nikolov

1
@Sasho: Kağıtların kısa taramasına dayandığı için bunların tümü kontrol edilmelidir. Tarjan, DSF'yi hem PC hem de WU ile Michael Fischer'a "denklik algoritmalarının etkinliği" (1972) ile ilişkilendirir ve bu ona çalışma süresi verir. Fischer'ın makalesini tararken, algoritmayı "Lineer liste birleştirme algoritması" nda Hopcroft ve Ullman ile ilişkilendiriyor gibi görünüyor, ancak Fischer'ın gösterdiği kanıtın yanlış olduğu için çalışma süresi veriyorlar . Tarjan, "Set-birleştirme algoritmaları" nda Hopcroft ve Ullman'ın bir bağlı vererek kendilerini kullandıklarını söylüyor . O(nloglogn)Θ(n)O(nlogn)
Peter Shor

12

Algoritması Paturi, Pudlak, Saks'e ve Zane'in için (PPSZ) çalışan bir zaman için malûm için , benzersiz bir tatmin edici atamaya sahip olması garantilenen formüller için daha iyi bir sınırı ile . Daha sonra Hertli , bu gelişmiş çalışma zamanı sınırının genel durum için de geçerli olduğunu gösteren, böylece PPSZ'nin o zaman bilinen için en iyi algoritma olduğunu gösteren gelişmiş bir analiz verdi . k-SATO(1.364n)3-SATO(1.308n)3-SAT


Bu gerçekten tatmin edici bir cevap! Bence ve Union Find örnekleri umduğum şeyin en güzel örnekleridir.
Rob Simmons

8

Logjam saldırı (fazla ayrık logaritma işlem uygulanan genel sayı alanı eleğin bu analiz söz 3, sayfa sol üst bkz tightend olduğu iniş aşamasında). Bu, önceden hesaplanamayan tek adım olduğundan ( sabitse), etkinliği saldırılarına etkili olmuştur.FpFp

İlk analiz Gordon 92'de , inişin ön hesaplamaya benzer şekilde maliyetlendiği görülmektedir . Sıkı analizi ile ilgili olduğu görülmektedir Barbulescu tezi iniş de mal olan, : Bunun teknik olarak bir üst sınır değil, beklenen bir maliyet olduğunu belirtmek gerekir. Bu hala bana sorunun ruhunda görünüyor, ancak aradığınız şey değilse kaldırırım.Lp(1/3,32/3)L p ( 1 / 3 , 1.232 ) L p ( v , c ) = exp ( ( C + O ( 1 ) ) ( log P ) v ( log giriş p ) 1 - v )Lp(1/3,1.232)

Lp(v,c)=exp((c+o(1))(logp)v(loglogp)1v)


1
Ruhu çok, teşekkür ederim!
Rob Simmons

6

Anupam Gupta, Euiwoong Lee ve Jason Li [1] 'in son çalışmaları, minimum kesim problemik için Karger-Stein algoritmasının aslında asimptotik zaman karmaşıklığına , veren orijinal analiz geliştirildi (ve aynı yazarlar tarafından önceki çalışmalarda, zamanında çalışan farklı bir algoritma elde edildi ).O(nk+o(1))O(n2k2)O ( n 1.98 k + O ( 1 ) )O(n1.98k+O(1))

Bu, koşullu bir alt sınırına bağlı olarak (neredeyse) optimal olacaktır .Ω(nk)

Not: Jason Li'nin (ve ilgili slaytların) bir konuşması TCS + web sitesinde bulunabilir .


[1] Karger-Stein algoritması için en uygun olan kesk Anupam Gupta Euiwoong Lee, Jason Li. arXiv: 1911.09165 , 2019.


4

sunucusu için çalışma fonksiyonu algoritmasının Koutsipias ve Papadimitrou tarafından rekabetçi olduğu gösterilmiştir - algoritma önceden biliniyordu ve sadece özel durumlarda analiz edildi. rekabetçi olduğu varsayılmaktadır .k(2k1)k


4

-Hitting Seti sorun "daha iyi bir analiz" (bkz Fernau gazetelerde birkaç tekrarlamalar vardı [1] [2] ), bu yazıda daha önce algoritma, (... 'avantaj seçmek' gibi) bazı keyfi seçenek vardı ama seçimler belirli bir şekilde özel olarak seçilir, daha rafine bir analize izin verir, bu da iyileştirmenin geldiği yerdir. Ve bence Ekleri 13 daha iyi yinelemelere ve daha iyi çalışma sürelerine yol açan daha rafine bir analiz (alt problemleri / alt yapıları sayarak) verir. Bence, parametreye karmaşıklık literatüründe, analize başka bir değişken eklemenin çalışma zamanlarının artmasına neden olabileceği birkaç örnek olduğunu düşünüyorum, ancak birkaç yıldır bu oyunun dışındayım ve belirli olanları düşünemiyorum. an. FPT ve PTAS alanlarında, kağıt başlıklarında "geliştirilmiş analiz" araması sırasında ortaya çıkan bir dizi makale bulunmaktadır.

Seçimleri belirtmek aynı algoritma olarak sayılıyorsa (union-find'ın derinlik sıralaması sezgisel gibi), Edmonds-Karp algoritması Ford-Fulkerson'un 'geliştirilmiş bir analizi' ve algoritmaların olduğu başka birçok problem olduğunu hayal ediyorum yeni seçim kurallarından çalışma zamanı iyileştirmeleri gördük.

Sonra mevcut algoritmaların amortize edilmiş bir sürü analizi var (bence send-find bu tanımın altında uyuyor, işte bir tane daha https://link.springer.com/article/10.1007/s00453-004-1145-7 )


Yeni seçimler yapmak aradığım şeye yakın geliyor, ama tam olarak orada değil - bir anlamda, daha belirgin bir algoritma "farklı bir algoritma" - ama bunlar hala çok ilginç örnekler!
Rob Simmons
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.