Misalkan ada sesi tutorial di universitas. Kami memiliki serangkaian pertanyaan dan satu set siswa . Setiap siswa memiliki keraguan dalam subset pertanyaan tertentu, yaitu untuk setiap siswa , biarkan menjadi set pertanyaan yang siswa ragukan. Asumsikan bahwa \ forall 1 \ leq j \ leq n: Q_j \ neq \ phi dan \ bigcup_ {1 \ leq j \ leq n} Q_j = Q .
Semua siswa memasuki sesi tutorial di awal (di ). Sekarang, seorang siswa meninggalkan sesi tutorial segera setelah semua pertanyaan di mana ia memiliki keraguan telah dibahas. Misalkan waktu yang dibutuhkan untuk membahas setiap pertanyaan sama, katakan 1 unit . Biarkan menjadi waktu yang dihabiskan oleh di sesi tutorial. Kami ingin mengetahui permutasi yang optimal di mana pertanyaan dibahas seperti kuantitas diminimalkan.
Saya belum bisa mendesain algoritma waktu polinomial, atau membuktikan -newness.
Kita dapat mendefinisikan versi keputusan dari masalah
di mana adalah himpunan .
Kita kemudian dapat mengetahui T_ \ sigma minimum menggunakan pencarian biner pada dan menemukan \ sigma optimal menggunakan penugasan sebagian untuk dalam waktu polinomial menggunakan oracle untuk . Juga, karena \ sigma optimal dapat digunakan sebagai sertifikat yang dapat kita verifikasi dengan mudah dalam waktu polinomial.
Pertanyaan saya: Apakah -lengkapi atau bisakah kita merancang algoritma waktu polinomial untuk itu?N P
Sidenote: Ngomong-ngomong, saya memikirkan pertanyaan ini setelah sesi tutorial yang sebenarnya, di mana TA membahas pertanyaan dalam urutan normal karena itu banyak siswa harus menunggu sampai akhir.
Contoh
Misalkan dan . dan . Kita dapat melihat bahwa yang optimal karena dalam kasus itu, meninggalkan setelah dan meninggalkan setelah , jadi jumlahnya adalah 4.
Namun, jika kita membahas pertanyaan dalam urutan , lalu dan keduanya harus menunggu sampai akhir dan , jadi jumlahnya 6.n = 2 Q 1 = { q 3 } Q 2 = { q 1 , q 2 , q 3 } σ = ⟨ 3 , 1 , 2 ⟩ s 1 t 1 = 1 s 2 t 2 = 3 ⟨ 1 , 2 , 3 ⟩ s 1 s 2 t 1 =
Anda bebas untuk menyelesaikan kasus yang lebih umum di mana setiap pertanyaan membutuhkan unit untuk didiskusikan!
sumber
Jawaban:
Saya menduga masalah menjadi NP-keras. Saya akan menunjukkan cara mengubah masalah sehingga sangat terkait dengan masalah yang NP-keras. (Ya, ini semua agak kabur. Pada dasarnya saya pikir pendekatan umum saya benar, tetapi saat ini saya tidak dapat melanjutkan.)TUT
Pertama, catatan bahwa masalah dapat dirumuskan sebagai berikut:TUT
Mengingat satu set pertanyaan ukuran k , satu set n himpunan bagian F Q ⊆ P ( Q ) dan integer C , tidak terdapat urutan Σ : ⟨ S 1 , ... , S k ⟩ seperti itu, untuk semua i ∈ { 1 , ... , k } :Q k n FQ⊆P(Q) C Σ:⟨S1,…,Sk⟩ i∈{1,…,k}
Perhatikan bahwa himpunan mewakili pertanyaan i pertama yang akan dijelaskan. Kondisi 1 dan 2 memastikan bahwa himpunan bagian terbentuk dengan baik sesuai dengan interpretasi ini. Kondisi 3 menghitung jumlah siswa yang tidak pergi setiap saat, jadi itu benar-benar jumlah total waktu tunggu di antara semua siswa.Si i
Sekarang, kita membatasi ukuran subset di ke 2 , sehingga kita dapat mewakili himpunan bagian ini sebagai tepi pada grafik di mana simpul adalah elemen dari Q . (Hasil kekerasan untuk kasus khusus ini cukup untuk kekerasan masalah umum)FQ 2 Q
Sekarang, masalah meminimalkan untuk i tunggal (ini pada dasarnya mengabaikan kondisi 2) setara dengan masalah berikut, yang saya beri nama ' Double max k -vertex-cover ':|{q∈FQ∣q⊈Si}| i Double max k-vertex-cover
Masalah ini NP-hard, karena -clique adalah kasus khusus dari masalah ini, seperti yang ditunjukkan oleh jawaban ini . Namun, ini tidak cukup untuk membuktikan T U T menjadi NP-keras, karena kita perlu menemukan maksimum untuk setiap i , sementara menghormati kondisi 2. kondisi ini tidak puas dengan setiap urutan Σ yang memenuhi satunya syarat 1 dan 3: pertimbangkan grafik pada 7 simpul dengan dua siklus terpisah, satu ukuran 4 , ukuran lain 3 . Untuk i = 3 , memilih semua simpul dalam 3- cycle memberikan maksimum, sambil memilih semua simpul dari 4k TUT i Σ 7 4 3 i=3 3 4 -putaran optimal untuk .i=4
Tampaknya kondisi 2 membuat masalah lebih sulit dan tentu saja tidak lebih mudah, yang berarti harus NP-keras, tetapi saya belum melihat metode untuk membuktikan ini secara resmi.TUT
Jadi, untuk meringkas, saya telah mengurangi pertanyaan sebagai berikut:
Catatan: Formulasi yang saya berikan membuatnya tergoda untuk mencoba algoritma berulang yang menemukan dalam kondisi 2 dari i = 1 ... k , dengan menemukan semua 'penambahan' maksimum dari semua set maksimum yang ditemukan untuk i - 1 . Ini tidak mengarah pada algoritma yang efisien, karena jumlah set maksimum pada satu iterasi tunggal mungkin eksponensial dalam k . Selain itu, saya belum melihat metode untuk menentukan apakah subset untuk beberapa i|{q∈FQ∣q⊈Si}| i=1…k i−1 k i pada akhirnya akan menjadi 'global' maksimum untuk mencegah pengecekan jumlah himpunan bagian eksponensial.
sumber