Masalah yang dapat digunakan untuk menunjukkan hasil kekerasan waktu polinomial

58

Ketika merancang suatu algoritma untuk masalah baru, jika saya tidak dapat menemukan algoritma waktu polinomial setelah beberapa saat, saya mungkin mencoba membuktikannya sebagai NP-hard. Jika saya berhasil, saya sudah menjelaskan mengapa saya tidak dapat menemukan algoritma waktu polinomial. Bukannya saya tahu pasti bahwa P! = NP, hanya saja ini yang terbaik yang bisa dilakukan dengan pengetahuan saat ini, dan memang konsensusnya adalah bahwa P! = NP.

Demikian pula, katakan saya telah menemukan solusi polinomial-waktu untuk beberapa masalah, tetapi waktu yang berjalan adalah . Setelah banyak upaya, saya tidak membuat kemajuan dalam meningkatkan ini. Jadi, sebagai gantinya, saya mungkin mencoba membuktikan bahwa ini adalah 3SUM-hard. Ini biasanya keadaan yang memuaskan, bukan karena keyakinan tertinggi saya bahwa 3SUM memang membutuhkan waktu , tetapi karena ini adalah keadaan seni saat ini, dan banyak orang pintar telah mencoba untuk meningkatkan itu, dan telah gagal. Jadi bukan salah saya bahwa itu yang terbaik yang bisa saya lakukan.Θ ( n 2 )O(n2)Θ(n2)

Dalam kasus seperti itu, yang terbaik yang bisa kita lakukan adalah hasil kekerasan, sebagai pengganti batas bawah yang sebenarnya, karena kita tidak memiliki batas bawah super-linear untuk Mesin Turing untuk masalah dalam NP.

Apakah ada serangkaian masalah yang seragam yang dapat digunakan untuk semua waktu menjalankan polinomial? Sebagai contoh, jika saya ingin membuktikan bahwa tidak mungkin beberapa masalah memiliki algoritma yang lebih baik daripada , apakah ada beberapa masalah X sehingga saya dapat menunjukkannya X-keras dan membiarkannya begitu saja?O(n7)

Pembaruan : Pertanyaan ini awalnya menanyakan keluarga masalah. Karena tidak ada banyak keluarga masalah, dan pertanyaan ini telah menerima contoh luar biasa dari masalah sulit individu, saya melonggarkan pertanyaan untuk masalah apa pun yang dapat digunakan untuk hasil kekerasan waktu polinomial. Saya juga menambahkan hadiah untuk pertanyaan ini untuk mendorong lebih banyak jawaban.

Robin Kothari
sumber
5
Halaman maven.smith.edu/~orourke/TOPP/P11.html merangkum beberapa hasil tentang batas bawah 3SUM dan masalah terkait lainnya dan patut dibaca.
Tsuyoshi Ito
2
Tidak adanya batas bawah super-linier adalah untuk TM dengan setidaknya dua kaset, bukan? Saya ingat pernah membaca di suatu tempat bahwa memeriksa palindrome pada single-tape TM memiliki batas waktu kuadratik yang lebih rendah. Ketika kita berbicara tentang batas bawah dalam , dari jenis vs , apakah masih boleh untuk mengasumsikan bahwa model persis TM tidak terlalu penting? Ω ( n i ) Ω ( n i + 1 )PΩ(ni)Ω(ni+1)
gphilip
3
Di luar topik: Robin, Tsuyoshi, terima kasih telah memperkenalkan keluarga 3SUM dengan batas bawah: Saya belum pernah mendengar tentang mereka sebelumnya.
gphilip
2
@ Tsuyoshi: Terima kasih atas informasinya. Ini adalah survei yang bagus tentang topik: cs.mcgill.ca/~jking/papers/3sumhard.pdf . @ gphilip: Saya baru saja diperkenalkan dengan masalah ini oleh beberapa ahli ilmu ukur komputer. Saya kira itu sangat terkenal di daerah itu.
Robin Kothari
Pertanyaan bagus Bisakah Anda mengklarifikasi apa yang Anda maksud dengan "seragam": apakah Anda ingin membatasi jumlah preprocessing dari parameter?
András Salamon

Jawaban:

35

Ya, algoritma yang paling dikenal untuk -SUM berjalan dalam waktu , jadi sangat mungkin bahwa Anda dapat memperdebatkan beberapa masalah sulit, karena jika itu dalam maka Anda bisa menyelesaikan -SUM lebih cepat.O ( n k / 2 ) n 7 n 6.99 14kO(nk/2)n7n6.9914

Perhatikan bahwa masalah -SUM menjadi "lebih mudah" karena bertambah: mengingat algoritma yang ditingkatkan untuk -SUM, cukup mudah untuk mendapatkan algoritma yang ditingkatkan untuk -SUM: ambil semua pasangan dari angka di diberi contoh -SUM, mengganti setiap pasangan dengan jumlah keduanya, dan mencari jumlah dari jumlah yang sama dengan . Kemudian, sebuah algoritma untuk -SUM menyiratkan algoritma untuk -SUM. Dengan kata lain, batas bawah yang ketat untukk k 2 k O ( n 2 ) n 2 k k 0 O ( n k / 2 - ε ) k O ( n k - 2 ε ) 2 k 2 k kkkk2kO(n2)n2kk0O(nk/2ε)kO(nk2ε)2k2k-SUM adalah asumsi yang lebih kuat daripada batas bawah ketat untuk -SUM.k

Kandidat lain untuk masalah yang sulit adalah -Clique. Lihat saya -Clique jawaban untuk lebih lanjut tentang itu . Jika Anda dapat menunjukkan (misalnya) bahwa algoritma yang lebih baik untuk masalah Anda menyiratkan algoritma untuk -clique, maka terobosan super akan diperlukan untuk meningkatkan algoritma Anda. Kompleksitas parameter memberi banyak contoh masalah lain seperti ini: -Clique sulit untuk kelas , dan -SUM sulit untuk .O ( log n ) O ( n 2 ) 3 k W \ [ 1 \] k W \ [ 2 \]kO(logn)O(n2)3kW\[1\]kW\[2\]

Biarkan saya memperingatkan Anda bahwa meskipun masalah seperti ini sangat mudah untuk dikerjakan, masalah seperti -SUM tidak termasuk yang "paling sulit" dalam , misalnya, sangat tidak mungkin bahwa setiap masalah dalam sebenarnya bisa linear-waktu dikurangi menjadi -SUM. Ini karena -SUM dapat diselesaikan dengan bit nondeterminisme dalam waktu linier, jadi jika semuanya dalam waktu kuadratik dapat dikurangi menjadi -SUM, maka dan hasil konsekuensi fantastis lainnya. Lebih tentang hal ini dapat ditemukan dalam artikel "Bagaimana keras adalah -Hard masalah?"T I M E [ n 2 ] T I M E [ n 2 ] 3 3 O ( log n ) 3 P N P n 2 n 23TIME[n2]TIME[n2]33O(logn)3PNPn2(Pada titik tertentu, "3SUM-hard" disebut " -hard"; artikel SIGACT ini dengan tepat mengeluhkan nama itu.)n2

Ryan Williams
sumber
4
Satu-satunya masalah yang saya miliki dengan menggunakan k-klik adalah bahwa 3-klik dapat dipecahkan dalam . Jika itu kasus yang k-klik tampaknya memerlukan , itu akan menjadi keluarga alami yang bagus untuk digunakan. Θ ( n k )O(n2.376)Θ(nk)
Robin Kothari
Saya tidak melihat perbedaan mendasar antara menggunakan -SUM dan -Clique. -SUM dalam bahkan untuk . Jika Anda dapat menunjukkan bahwa algoritma yang lebih baik untuk masalah Anda menyiratkan bahwa -Clique ada di , ini adalah bukti kuat bahwa algoritma yang lebih baik untuk masalah Anda akan sangat sulit ditemukan. k k O ( n k / 2 ) k k O ( n k / 2 )kkkO(nk/2)kkO(nk/2)
Ryan Williams
referensi yang rapi, Ryan. Saya malu bahwa saya tidak tahu tentang itu sebelumnya, mengingat betapa populernya 3SUM di komunitas geometri. Tentu saja hal ini menimbulkan pertanyaan: apakah ada calon alami untuk menjadi keras? n2
Suresh Venkat
@Ryan: Anda benar, mereka sama. Meskipun, dengan k-SUM, setidaknya kami memiliki bukti dalam model yang lebih lemah bahwa batas dugaan itu benar. Saya tidak tahu argumen apa pun yang menyarankan 3-klik tidak harus dipecahkan lebih cepat dari perkalian matriks.
Robin Kothari
@Robin: Saya akan berpikir keluarga alami masalah dengan kemungkinan batas bawah, untuk , akan menjadi jawaban yang baik. Konstanta yang tepat tampaknya kurang penting? f ( k ) = Θ ( k )nf(k)f(k)=Θ(k)
András Salamon
14

Masalah All-Pairs Shortest Paths (APSP) diyakini membutuhkan waktu waktu. Mengurangi dari itu adalah cara yang bagus untuk berpendapat bahwa perbaikan berdasarkan Fast Matrix Multiplication (FMM) tidak mungkin.Ω(n3)

Mihai
sumber
2
Bagaimana dengan diameter grafik? Lebih baik lagi, buatlah masalah keputusan "Apakah diameter setidaknya k?". Ini memiliki keuntungan karena tidak ada ikatan superlinear yang jelas, sejauh yang saya tahu.
Raphael
9

Dipercaya bahwa algoritma terbaik untuk masalah degenerasi afin dalam ruang dimensi dijalankan dalam waktu . Masalahnya adalah sebagai berikut: Diberikan poin dalam ruang dimensional dengan koordinat bilangan bulat, apakah ada poin terletak pada hyperplane bersama?O ( n d ) n d d + 1dO(nd)ndd+1

Masalah degenerasi afin adalah -SUM keras. Jika kita pasang batas bawah dugaan untuk -SUM, kita memperoleh batas bawah . Dugaan untuk kompleksitas masalah degenerasi afin jauh lebih kuat untuk .k Ω ( n d / 2 + 1 ) d 3(d+1)kΩ(nd/2+1)d3

J. Erickson, S. Har-Peled, dan Mount DM, On the Least Median Square Problem, Diskrit dan Geometri Komputasi, 36, 593-607, 2006. http://www.cs.umd.edu/~mount/Papers /dcg06-lms.pdf

J. Erickson dan R. Seidel. Batas bawah yang lebih baik dalam mendeteksi degenerasi bola dan bola. Komputasi Terpisah. Geom., 13: 41–57, 1995. http://compgeom.cs.uiuc.edu/~jeffe/pubs/degen.html

J. Erickson. Batas bawah baru untuk masalah hull cembung dalam dimensi aneh. SIAM J. Comput., 28: 1198–1214, 1999. http://compgeom.cs.uiuc.edu/~jeffe/pubs/convex.html

Guilherme D. da Fonseca
sumber
Saya suka jawaban ini, tetapi bisakah Anda menjelaskannya? Mengapa itu dipercaya?
Aaron Sterling
8

Masalah Hopcroft diperkirakan membutuhkan waktu : Diberikan satu set poin dan satu set garis dalam pesawat, apakah ada titik yang terletak pada garis apa pun?n nΘ(n4/3)nn

Jeffε
sumber
7
Adakah masalah non-geometris yang mereduksi menjadi masalah Hopcroft?
Suresh Venkat
Saya memutuskan untuk memberikan hadiah untuk jawaban ini karena saya belum pernah mendengar masalah ini sebelumnya.
Robin Kothari