Algoritma polinomial-waktu dengan eksponen / konstanta besar

59

Apakah Anda tahu algoritma masuk akal yang berjalan dalam waktu polinomial dalam (Panjang input + Panjang output), tetapi yang menjalankan waktu asimtotik dalam ukuran yang sama memiliki eksponen / konstanta yang sangat besar (setidaknya, di mana batas atas terbukti pada waktu berjalan adalah dalam sedemikian rupa)?

Joris
sumber
3
Lihat mathoverflow.net/questions/65412 : "Algoritma terburuk yang diketahui dalam hal big-O atau lebih tepatnya big-Theta." Saya mengirim jawaban di sana.
Joseph O'Rourke
4
Ada algoritme LOGSPACE Reingold untuk konektivitas (lihat pertanyaan mengenai kompleksitas waktunya ), tetapi ragu itu masuk akal dalam arti yang Anda maksud di sini ...
Janne H. Korhonen
1
@ Joseph Orourke: Saya punya kertas "kotak lemak" di meja saya sekarang!
Aaron Sterling
3
Meskipun adalah perhitungan yang sah (pemrograman dinamis memunculkannya), saya memasukkannya dalam versi konferensi sebagai semacam lelucon , lelucon yang dihapus dalam versi jurnal. n42
Joseph O'Rourke
9
Pengakuan grafik sempurna ada di , dan terobosan tampaknya diperlukan untuk meningkatkan ini. O(|V(G)|9)
András Salamon

Jawaban:

39

Algoritma berdasarkan lemma keteraturan adalah contoh yang baik untuk algoritma polinomial-waktu dengan konstanta yang mengerikan (baik dalam eksponen atau sebagai koefisien terkemuka).

Lemma keteraturan Szemeredi memberi tahu Anda bahwa dalam grafik apa pun pada simpul Anda dapat mempartisi simpul ke dalam set di mana tepi antara pasangan set "pseudo-acak" (yaitu, kepadatan himpunan bagian yang cukup besar terlihat seperti kepadatan dalam grafik acak) . Ini adalah struktur yang sangat bagus untuk dikerjakan, dan sebagai konsekuensinya ada algoritma yang menggunakan partisi. Tangkapannya adalah bahwa jumlah set dalam partisi adalah menara eksponensial dalam parameter pseudo-randomness (Lihat di sini: http://en.wikipedia.org/wiki/Szemer%C3%A9di_regularity_lemma ).n

Untuk beberapa tautan ke algoritma yang mengandalkan lemma keteraturan, lihat, misalnya: http://www.cs.cmu.edu/~ryanw/regularity-journ.pdf

Dana Moshkovitz
sumber
2
Poin bagus! Meskipun demikian, saya tidak mengetahui adanya masalah komputasi di mana ada batas bawah menara eksponensial yang sesuai. Gower membuktikan batasan yang lebih rendah untuk lemma keteraturan itu sendiri, tetapi saya tidak tahu masalah komputasi di mana itu berlaku.
arnab
3
Saya percaya bahwa algoritma berkelompok yang dijelaskan oleh Chazelle dalam makalah ini ( arxiv.org/abs/0905.4241 ) memiliki konvergensi yang optimal (yaitu memiliki batas bawah) yang merupakan menara berpasangan
Suresh Venkat
Dalam makalah baru-baru ini ( eccc.hpi-web.de/report/2014/018 ), saya menunjukkan beberapa algoritma lain menggunakan lemma keteraturan (aritmatika) yang memiliki konstanta besar yang disembunyikan oleh notasi O ().
arnab
55

Berita dari SODA 2013 : Masalah Max-Bisection diperkirakan sekitar dalam faktor 0,8776 di sekitar waktu waktu.O(n10100)

Jagadish
sumber
54

Berikut adalah dua tangkapan layar dari Pendekatan Berbasis Energi ke Linkage Unfolding oleh Jason H. Cantarella, Erik D. Demaine, Hayley N. Iben, James F. O'Brien, SOCG 2004:

Akibat wajar 1. Jumlah langkah dalam algoritma kami paling banyak $ 1752484608000 n ^ {79} L ^ {25} / D ^ {26} (\ Theta_0) $

Konsekuensi 2. Jumlah langkah dalam algoritme kami paling banyak $ 117607251220365312000 n ^ {79} (\ ell _ {\ max} / d _ {\ min} (\ Theta_0)) ^ {26} $]

Jeffε
sumber
12
Konstanta jauh lebih mengesankan daripada kekuatan :)n
Suresh Venkat
11
Ini adalah algoritma dengan eksponen besar DAN konstanta besar ...
Hsien-Chih Chang 張顯 之
5
Batas yang sama berlaku untuk Bubblesort.
Raphael
1
Seberapa ketat batas ini?
Maks
34

Berikut adalah hasil terbaru dari makalah FUN 2012 Picture-Hanging Puzzles oleh Erik D. Demaine, Martin L. Demaine, Yair N. Minsky, Joseph SB Mitchell, Ronald L. Rivest dan Mihai Patrascu.

Kami menunjukkan cara menggantung gambar dengan melilitkan tali di sekitar paku, membuat polinomial dalam jumlah bengkok, sehingga gambar jatuh setiap kali ada k di kuku yang dilepas, dan gambar tetap menggantung ketika lebih sedikit dari k yang dilepas.

Jangan biarkan 'angka polinom' menipu Anda ... ternyata itu .O(n43737)

Jagadish
sumber
15
Itu (!!)(618)#gates in an AKS sorting network
Jeffε
23

Ada kelas masalah, yang solusinya sulit dihitung, tetapi memperkirakannya dengan akurasi apa pun itu mudah , dalam arti ada algoritma waktu polinomial yang dapat memperkirakan solusi ke dalam untuk konstanta ε > 0. Namun, ada tangkapan: waktu menjalankan aproksimator mungkin sangat tergantung pada , misalnya, menjadi .1 / ϵ O ( n 1 / ϵ )(1+ϵ)1/ϵO(n1/ϵ)

Lihat info lebih lanjut di sini: http://en.wikipedia.org/wiki/Polynomial-time_approximation_scheme .

Sadeq Dousti
sumber
17

Meskipun run-time untuk algoritma tersebut telah diperbaiki, algoritma asli untuk pengambilan sampel titik dari badan cembung telah menjalankan waktu .O~(n19)

Dyer, Frieze, dan Kannan: http://portal.acm.org/citation.cfm?id=102783

Aaron Roth
sumber
16

Jika adalah modal tabular atau logika superintuitionistic, maka Frege yang diperluas dan sistem bukti Frege pengganti untuk adalah setara secara polinomi, dan secara polinomi dapat ditafsirkan secara setia dalam EF klasik (ini adalah Teorema 5.10 dalam makalah ini dari saya). Eksponen dari simulasi polinom tidak secara eksplisit dinyatakan dalam Teorema 5.10, tetapi bukti induktif teorema memberikan , di mana adalah kerangka Kripke hingga yang menghasilkan , sehingga ia dapat menjadi sebesar yang Anda inginkan tergantung pada logika. (Itu menjadi lebih buruk dalam Teorema 5.20.)L c c = 2 O ( | F | ) F LLLcc=2O(|F|)FL

Emil Jeřábek
sumber
16

Algoritma yang paling dikenal saat ini untuk mengenali grafik peta (generalisasi grafik planar) berjalan di . Thorup, Peta grafik dalam waktu polinomial.n120

Menghitung ekuilibrium pasar Arrow-Debreu menggunakan perhitungan max-flow , di mana adalah utilitas maksimum. Duan, Mehlhorn, Algoritma Polinomial Kombinatorial untuk Pasar Linear Arrow-Debreu.UO(n6log(nU))U

adrianN
sumber
Saya mendapatkan kesalahan dari IEEE ketika saya mengikuti tautan Anda, tetapi saya menganggap Anda merujuk pada makalah FOCS'98 Thorup "Peta grafik dalam waktu polinomial".
David Eppstein
1
Maksud saya kertas itu, dan itu memuat baik untuk saya.
adrianN
bekerja untuk saya dari U.
Suresh Venkat
12

Masalah Tranpensi Sandpile

Pertimbangkan proses berikut. Ambil ubin tebal dan taruh partikel pasir di atasnya satu butir setiap kali. Tumpukan secara bertahap menumpuk dan kemudian sebagian besar pasir terlepas dari tepi ubin. Jika kita terus menambahkan partikel pasir, setelah titik waktu tertentu, konfigurasi tumpukan berulang. Setelah itu, konfigurasi menjadi berulang, yaitu terus meninjau kembali keadaan yang terlihat sebelumnya.

Pertimbangkan model berikut untuk proses di atas. Modelkan ubin sebagai kisi . Partikel pasir dijatuhkan pada simpul dari kisi ini. Jika jumlah partikel pada suatu vertex melebihi derajatnya, maka verteks tersebut akan runtuh dan partikel-partikel di dalamnya akan berpindah ke verteks yang berdekatan (dengan cara cascading). Sebuah partikel pasir yang mencapai titik batas menghilang ke wastafel (`jatuh '). Ini dikenal sebagai Abelian Sandpile Model .n×n

Masalah: Berapa lama waktu yang diperlukan untuk konfigurasi menjadi berulang dalam hal , dengan asumsi algoritma terburuk untuk menjatuhkan partikel pasir?n

Dalam SODA '07 , László Babai dan Igor Gorodezky membuktikan kali ini terikat secara polinomi tetapi ..

masukkan deskripsi gambar di sini

Dalam SODA '12 , Ayush Choure dan Sundar Vishwanathan meningkatkan ikatan ini menjadi .O(n7)

Jawaban ini akan terlihat sedikit lebih baik jika bukan karena peningkatan mereka :)

Jagadish
sumber
11

Masalah "tengkorak cembung" adalah untuk menemukan poligon cembung luas maksimum di dalam poligon sederhana yang diberikan. Algoritma tercepat yang dikenal untuk masalah ini berjalan dalam waktu [Chang dan Yap, DCG 1986].O(n7)

Jeffε
sumber
8

Teorema Robertson-Seymour alias Graph Minor Theorem menetapkan antara lain bahwa untuk setiap grafik , ada algoritma yang menentukan apakah grafik sewenang-wenang (ukuran ) memiliki sebagai minor. Buktinya nonkonstruktif dan konstanta multiplikasi (saya pikir tidak seragam) mungkin sangat besar sehingga tidak ada rumus untuk itu yang dapat dituliskan secara eksplisit (misalnya sebagai fungsi rekursif primitif pada ).GO(n3)HnGG

http://en.wikipedia.org/wiki/Graph_minor_theorem#Polynomial_time_recognition

tidak ada
sumber
6

Dalam makalah ICALP 2014 mereka , Andreas Björklund dan Thore Husfeldt memberikan algoritma polinomial pertama (acak) yang menghitung 2 jalur terputus-putus dengan panjang total minimum (jumlah dari dua jalur panjang) antara dua pasang simpul yang diberikan. Waktu berjalan adalah dalam .O(n11)

Lamine
sumber
2

Dalam rectangulation Polygon, bagian 2: Jumlah minimum dari persegi panjang lemak , modifikasi praktis dari masalah partisi persegi panjang yang dimotivasi oleh keprihatinan dalam VLSI disajikan:

Lemak Rectangle Optimasi Masalah: Diberi poligon ortogonal , memaksimalkan terpendek sisi atas semua rectangulations dari . Di antara partisi dengan sama , pilih partisi dengan jumlah persegi paling sedikit.PδPδ

Sampai saat ini, hanya algoritma teoretis yang ada, dengan waktu berjalan . (Itu bukan kesalahan ketik, dan diperoleh melalui solusi pemrograman dinamis "alami" untuk masalah yang dinyatakan di sana.)O(n42)

Thomas Klimpel
sumber
-3

menghitung kekakuan matriks [1] melalui brute force / naif / enumerasi tampaknya membutuhkan waktu untuk matriks ukuran elemen. ini dapat dilihat sebagai batas konvergen urutan perkiraan yang semakin akurat yang mengambil langkah , , , .... dengan kata lain masing-masing perkiraan dalam P-waktu untuk setiap eksponen sewenang-wenang (yaitu langkah). algoritma naif memilih apa sajaO(2n)n(n1)(n2)(n3)O(nc)c(nc)celemen matriks untuk diubah dan diuji untuk pengurangan dimensi yang dihasilkan. ini tidak sepenuhnya mengejutkan mengingat telah dikaitkan dengan rangkaian komputasi batas bawah. ini mengikuti pola di mana banyak algoritme memiliki solusi P-time untuk beberapa parameter tetapi bukti solid dari batas bawah kemungkinan akan menyiratkan atau sesuatu yang lebih kuat.PNP

[1] Pertanyaan tentang kekakuan matriks komputasi

vzn
sumber
2
Tidak yakin bagaimana ini berbeda (misalnya) dengan mencoba menemukan klik maksimum dengan menghitung semua set ukuran k, untuk meningkatkan k. setiap langkah juga waktu-p untuk k tetap.
Suresh Venkat
ya itu sangat mirip & mengingatkan saya pada dugaan isomorfisme Hartmanis untuk set NP. bahkan jika dugaan isomorfisme itu tidak benar (konsensus saat ini / kebijaksanaan konvensional tampaknya bersandar terhadapnya), tampaknya set NP memiliki beberapa properti yang serupa tetapi mungkin agak lebih lemah, yang juga tampaknya membutuhkan pencarian lengkap
vzn
-4

anehnya salah satu jawaban yang paling jelas belum diposting. menemukan klik ukuran (tepi atau simpul) tampaknya membutuhkan waktu oleh algoritma naive / brute force yang menyebutkan semua kemungkinan. atau lebih tepatnya proporsional dengan langkah . (Anehnya, fakta dasar ini tampaknya jarang ditunjukkan dalam literatur.) Namun bukti yang kuat akan menyiratkan . jadi pertanyaan ini terkait dengan dugaan terbuka terkenal, hampir setara dengan itu. masalah tipe NP lainnya dapat diparameterisasi dengan cara ini.cO(nc)(nc)PNP

ay
sumber
2
1. ada algoritma (sederhana) yang sedikit meningkatkan eksponen. 2. ini adalah pernyataan yang jauh lebih kuat dari P tidak sama dengan NP, sama seperti ETH lebih kuat dari P tidak sama dengan NP. Saya pikir algoritma seperti ini belum ditunjukkan karena tampaknya OP tidak tertarik pada jenis pencarian algoritma yang lengkap.
Sasho Nikolov
5
nitpicking: menemukan sebuah klik dengan tepi dapat dilakukan dalam waktu atau lebih (karena kami mencari sebuah klik dengan simpul ). n c O(ncO(c)
Daniel Marx
5
Anda harus berhati-hati dalam menduga bahwa semua masalah NP-lengkap hanya dapat dipecahkan melalui pencarian brute force. seperti saya katakan, menemukan klik dapat dipercepat dengan perkalian matriks. untuk banyak masalah lain kami memiliki algoritma waktu eksponensial yang tepat dengan eksponen yang lebih baik daripada pencarian brute force. apa yang Anda bicarakan paling mirip dengan hipotesis waktu eksponensial: dugaan (jauh lebih kuat dari P neq NP) bahwa untuk semua -SAT memerlukan waktu di mana . k 2 s k n s k > 0k>2 k2sknsk>0
Sasho Nikolov
6
Ada banyak kasus di mana pencarian brute force tidak optimal untuk masalah NP-hard. Tiga contoh klasik: (1) Penutup vertex ukuran dapat ditemukan dalam waktu misalnya , (2) Jalur panjang dapat ditemukan dalam waktu yang sama, (3) Seperangkat ukuran independen dalam grafik planar dapat ditemukan dalam waktu . BTW: Mengenai masalah ETH dan perlunya kekerasan, Anda mungkin menemukan survei kami menarik: cs.bme.hu/~dmarx/papers/survey-eth-beatcs.pdf2 kn k k 2 O ( k2knkk2O(k)n
Daniel Marx
5
@vzn: adalah jauh lebih cepat dari . 2O(n)2O(n)2O(n)
Jeffε