Penjadwalan pekerjaan dengan masalah bottleneck

11

Diberikan pekerjaan , setiap pekerjaan membutuhkan T_i> 0, T_i \ dalam N waktu untuk menyelesaikan.J 1 , J 2 , . . . , J n T i > 0 , T iNnJ1,J2,...,JnTi>0,TiN

Setiap pekerjaan harus pra-diproses dan pasca-proses oleh satu mesin M yang hanya dapat menangani 1 pekerjaan pada satu waktu dan kedua fase membutuhkan 1 unit waktu. Setelah diproses, pekerjaan Ji dikirim ke mesin dengan daya tidak terbatas (yang dapat menangani secara paralel jumlah pekerjaan tidak terbatas) dan akan siap pada waktunya Ti , maka harus dikirim ( segera ) ke mesin M lagi untuk pengolahan pasca.

masukkan deskripsi gambar di sini

Masalah keputusan terkait adalah:

Input: waktu pemrosesan dari pekerjaan , integer Pertanyaan: dapatkah kita memproses semua pekerjaan dalam waktu menggunakan model "bottleneck" di atas? N K 2 N KTi>0,TiNNK2N
K

Apakah ada masalah dengan nama ini?
Apa kerumitannya? (Apakah dalam atau apakah itu -lengkap?) N PPNP

PEMBARUAN 29 Maret:
Sebagaimana diperhatikan dengan benar oleh M.Cafaro dalam jawabannya, masalahnya serupa dengan Masalah Waktu Selesai Minimum Tidak Dibatasi (UMFT) (lihat Bab 17 dari Buku Pegangan Algoritma Penjadwalan ) yaitu -hard (terbukti) di W. Kern dan W. Nawijn, "Menjadwalkan pekerjaan multi-operasi dengan jeda waktu pada satu mesin", University of Twente, 1993). Seperti yang saya lihat, ada beberapa perbedaan karena dalam model saya:NP

  • waktu pemrosesan pra / pasca adalah konstan (1 unit waktu)
  • segera setelah pekerjaan selesai, pekerjaan harus segera diproses (model UMFT memungkinkan penundaan)

Saya tidak menemukan bukti Kern & Nawijn online, jadi saya masih tidak tahu apakah pembatasan di atas mengubah kesulitan masalah.

Akhirnya Anda bisa memikirkan seluruh proses seperti robot masak tunggal dengan oven besar; robot dapat menyiapkan berbagai jenis makanan satu per satu (semua memerlukan waktu persiapan yang sama), memasukkannya ke dalam oven, dan segera setelah dimasak, mereka harus mengeluarkannya dari oven dan menambahkan beberapa bahan dingin ... " masalah robot masak " :-)

Vor
sumber
Bagus. Saya merasa bahwa kemacetan harus menyederhanakan hal-hal.
Raphael
Batasan selalu diverifikasi, karena biaya pra dan pasca pemrosesan keduanya 1 unit waktu dan Anda memiliki pekerjaan. Apakah Anda yakin batasannya benar? nk2nn
Massimo Cafaro
Maaf, saya tidak jelas tentang apa yang saya maksud di komentar sebelumnya. Apakah secara eksplisit diberikan dalam input sebagai "tenggat waktu" atau apakah Anda meminta algoritma untuk meminimalkan k ? kk
Massimo Cafaro
@ MassimoCafaro: diberikan sebagai input (untuk menjadikan masalah optimisasi sebagai masalah keputusan). Seperti yang Anda perhatikan, saya menulis k 2 n karena jika k < 2 n jawabannya sepele TIDAK. Tapi mungkin itu membingungkan dan saya harus menghapusnya. kk2nk<2n
Vor
1
Pertanyaan Anda terbukti NP-lengkap dalam "Meminimalkan Makespan di Toko Dua-Mesin dengan Penundaan dan Operasi Unit-Waktu adalah NP-Hard" oleh W. Yu, H. Hoogeveen, dan JK Lenstra (2004), yang juga mengatakan bahwa Kern dan Nawijn tidak menyelesaikannya. Saya kutip: "Status kerumitan kasus khusus dengan tugas waktu unit pemrosesan telah terbuka untuk keterlambatan minimum dan tepat. Status kompleksitas kasus dengan keterlambatan minimum diajukan sebagai pertanyaan terbuka oleh Kern dan Nawijn (1991)."
Peter Shor

Jawaban:

5

Ini terlihat seperti model penjadwalan master-slave yang diperkenalkan oleh Sahni . Secara khusus, masalah Anda berada di bawah Sistem Single-Master Master-Slave. Anda dapat membedakan beberapa kasus:

1) Jika Anda tidak menambahkan kendala tambahan pada urutan pelaksanaan pekerjaan (seperti dalam kasus Anda), masalahnya disebut masalah waktu selesai minimum tidak terbatas (UMFT) dan telah terbukti NP-hard;

O(nlogn)

NPP

Masalah terkait lainnya adalah:

3) Reverse Order Postprocessing: Untuk setiap permutasi preprocessing yang diberikan, , adalah mungkin untuk membangun jadwal urutan terbalik, disebut sebagai canonical reverse order schedule (CROS). Diberikan permutasi preprocessing , CROS yang sesuai adalah unik. Sangat mudah untuk menetapkan bahwa setiap jadwal minimum urutan waktu selesai (ROMFT) adalah CROS.σσσ

4) kendala tanpa menunggu dalam proses:

a) [MFTNW] Minimalkan waktu selesai dengan tunduk pada batasan tanpa-tunggu-dalam-proses; b) [OP-MFTNW] Ini adalah versi MFTNW yang mempertahankan pesanan. Yaitu, meminimalkan waktu selesai dengan tunduk pada batasan tanpa-tunggu-proses dan pelestarian pesanan; c) [RO-MFTNW] Minimalkan waktu selesai dengan tunduk pada larangan-menunggu-dalam-proses dan urutan terbalik.

Masalah dan adalah NP-hard, sementara mengakui solusi waktu polinomial.b cabc

Rincian tambahan dalam Buku Pegangan Penjadwalan , bab 17.

Massimo Cafaro
sumber
Terima kasih, ini mirip (saya tidak punya buku tetapi saya menemukan makalah ini ). Saya akan membacanya dengan cermat nanti, Hanya sebuah pertanyaan setelah membaca pengantar, tampaknya ia menggunakan budak (setelah preprocessing), tetapi dalam model saya ada banyak budak; Apakah itu benar?. Saya akan membaca bukti NP-hardness UMFT dan melihat apakah itu menggunakan hipotesis bahwa jumlah budak terbatas. n
Vor
Sahni menunjukkan bahwa Anda selalu dapat menggunakan persis budak: "Prosesor yang tersedia dibagi menjadi dua kategori: master dan budak. Jika menunjukkan jumlah pekerjaan, maka tidak ada jadwal yang dapat menggunakan lebih dari budak. Oleh karena itu, kita dapat mengasumsikan bahwa ada persis budak. " Jadi masalah Anda mudah diterjemahkan ke pengaturan ini: Anda cukup membuang dan tidak menggunakan budak tambahan yang tersedia di mesin dengan budak tak terbatas. n n nnnnn
Massimo Cafaro
2
Bagiku, bukti kekerasan NP dari Sahni secara kritis menggunakan fakta bahwa waktu pra-pemrosesan dan waktu pasca-pemrosesan bisa sewenang-wenang. Masalah OP memiliki semua ini sama dengan 1. Apakah buktinya bekerja dalam kasus ini?
Peter Shor
Vor, makalah yang Anda maksud hanyalah ekstrak dengan banyak bagian yang hilang dari bab 17 buku ini. Namun, bagian yang hilang akan mencegah Anda untuk memahami dengan benar (notasi yang hilang, dll.).
Massimo Cafaro
Peter, saya tidak yakin dan saya perlu memeriksa buktinya; jika hanya membutuhkan waktu pra-pemrosesan> 0 maka harus termasuk masalah OP ketika mempertimbangkan masalah waktu selesai minimum yang tidak dibatasi. Dengan alasan yang sama, ini seharusnya mengarah pada algoritma waktu polinomial untuk pesanan yang menjaga masalah waktu selesai minimum. O(nlogn)
Massimo Cafaro