Apakah kesulitan masalah NP-hard atau NP-complete (seperti misalnya didefinisikan di sini ) berubah ketika inputnya unary bukan binary encoded?
Apa bedanya jika input dari masalah NP-hard sangat tidak terenkripsi? Maksud saya, jika saya mengambil contoh masalah Knapsack NP-complete yang lemah, itu adalah NP-complete ketika biner dikodekan tetapi dapat diselesaikan dalam waktu polinomial dengan pemrograman dinamis ketika unary dikodekan. Mungkin itu memiliki beberapa implikasi untuk kekerasan tingkat yang lebih tinggi dari hirarki waktu polinomial?
Apakah gagasan kuat ...- keras juga berlaku untuk kelas kompleksitas lainnya, misalnya kelas hierarki waktu polinomial yang lebih tinggi?
Saya sebelumnya menanyakan pertanyaan ini di stackoverflow.com tetapi ditunjukkan bahwa lebih tepat di sini.
sumber
Jawaban:
Ukuran masalah dikodekan dalam unary adalah ukuran dan jika biner. Jika waktu yang diambil adalah , ini adalah dalam kasus pertama dan dalam kasus kedua. Jadi suatu algoritma yang polinomial untuk kasus pertama mungkin akan eksponensial untuk yang kedua. Pengkodean masalah dapat mengubah kompleksitas suatu algoritma secara radikal.N N logN F(N) F(size) F(2size)
sumber
Tidak.
Jika Anda mengubah pengkodean input, Anda telah mengubah definisi formal masalah, yang berarti masalah yang berbeda . Kompleksitas masalah asli tidak berubah, karena alasan yang sama bahwa menunjuk pada cahaya berbeda di langit tidak mengubah massa bulan.
sumber
Jawaban singkatnya adalah, bahwa jika inputnya disandikan, maka itu lebih panjang . Secara eksponensial lebih lama. Sekarang, sebuah algoritma yang bekerja dalam waktu polinomial dalam ukuran input memiliki "cukup waktu" untuk menyelesaikan masalah, hanya karena input itu sendiri secara eksponensial lebih lama daripada dalam masalah aslinya.
sumber
Melihat melewati masalah formulasi yang ditunjukkan dalam jawaban JeffE, jawabannya adalah ya.
Pertimbangkan masalah Knapsack . Itu memang memiliki algoritma pseudo-polinomial , yaitu satu dengan runtime yang dibatasi oleh polinomial dalam angka yang dikodekan dalam input. Karena dalam nilai-nilai pengkodean unary sesuai dengan panjang, ini adalah algoritma waktu polinomial untuk versi unary.
Faktanya, setiap masalah NP-complete yang lemah termasuk dalam kategori ini.
sumber