Планування роботи з проблемою вузького місця


11

З огляду на завдань , для кожного завдання потрібно час.nT i > 0 , T iNJ1,J2,...,JnTi>0,TiN

Кожне завдання повинно бути попередньо оброблене та опрацьоване на одній машині M, яка може обробляти лише 1 завдання за один раз, а обидві фази потребують 1 одиниці часу. Після попередньої обробки завдання відправляється на машину з необмеженою потужністю (яка може паралельно обробляти необмежену кількість завдань), і вона буде готова вчасно , тоді вона повинна бути відправлена ​​( негайно ) в машину M знову для подальша обробка.T iJiTi

введіть тут опис зображення

Пов'язана проблема рішення:

Вхідний дані : Час обробки з робочих місць, ціле число Питання: можемо чи ми обробити всі робочі місця під час , використовуючи вищезгадану модель «вузького місця»? N K 2 NTi>0,TiNNK2N
K

Ця проблема має ім’я?
У чому її складність? (це в чи це -повне?) Н ПPNP

ОНОВЛЕННЯ 29 березня:
Як правильно зауважив М. Кафаро у своїй відповіді, проблема схожа на задачу щодо необмеженого мінімального часу закінчення (UMFT) (див. Розділ 17 Посібника з алгоритмів планування ), яка є -hard (доведено У. Керн та У. Навійн, "Планування багатоопераційних завдань із затримками часу на одній машині", Університет Твенте, 1993). Як я бачу, є деякі відмінності, оскільки в моїй моделі:NP

  • час обробки до / після обробки є постійним (1 одиниця часу)
  • як тільки завдання буде виконано, його потрібно негайно опрацювати (модель UMFT дозволяє затримати)

Я не знайшов доказ Kern & Nawijn в Інтернеті, тому я досі не знаю, чи змінять вищезазначені обмеження складність проблеми.

Нарешті, ви можете продумати весь процес, як один робочий кухар з великою духовкою; робот може готувати різні види продуктів один за одним (всі вимагають однакового часу приготування), покласти їх у духовку, і як тільки вони приготуються, він повинен вийняти їх з духовки і додати трохи холодних інгредієнтів ... « зварити проблеми робот » :-)


Приємно. У мене таке відчуття, що вузьке місце повинно спростити справи.
Рафаель

Обмеження завжди перевіряється, оскільки витрати на попередню та після обробки - це 1 одиниця часу, і у вас робочих місць. Ви впевнені, що обмеження правильне? nk2nn
Массімо Кафаро

Вибачте, мені не було зрозуміло, що я мав на увазі в попередньому коментарі. Чи явно вказано у введенні як "кінцевий термін" чи ви просите алгоритм мінімізувати ? kkk
Массімо Кафаро

@MassimoCafaro: задається як вхід (щоб зробити проблему оптимізації вирішенням проблеми). Як ви помітили, я написав тому що якщо відповідь тривіально НІ. Але, можливо, це заплутано, і я повинен її видалити. k 2 n k < 2 nkk2nk<2n
Vor

1
Ваше запитання підтверджено NP-завершеним у "Зведення мінімізації пробігу в магазині двох машин із затримками та операціями з одиничним часом є NP-Hard" від W. Yu, H. Hoogeveen та JK Lenstra (2004), які також кажуть, що Керн і Навійн цього не вирішили. Я цитую: "Статус складності у спеціальній справі із завданнями на одиницю часу був відкритий як для мінімальних, так і для точних затримок. Статус складності того, з мінімальними затримками, ставиться як відкрите запитання Керн та Навійн (1991)."
Пітер Шор

Відповіді:


5

Питання є доволі складним у „Зменшення пробілу в магазині двох машин із затримками та операціями одиничного часу є NP-Hard” У. Ю., Х. Худжевен та Дж. Ленстра (2004). Це доведено у розділі 9 статті:

Теорема 24. Проблема мінімізації пробілу на одній машині з двома операціями часу на одиницю роботи з довільними проміжними затримками є надзвичайно важкою.

Точна модель, що вивчається тут, полягає в тому, що робота складається з двох операцій, які займають одиничний час, розділений деяким часом затримки . Проблема сильно заповнена NP як тоді, коли для кожного завдання задано точне значення затримки , так і коли для кожного завдання задається мінімальний час затримки.T i T iiTiTi


5

Це схоже на так звану модель планування майстер-рабів, представлену Сані . Зокрема, ваша проблема підпадає під Системи одноосібного головного управління. Можна виділити кілька випадків:

1) Якщо ви не додаєте жодних додаткових обмежень щодо порядку виконання завдання (як у вашому випадку), проблема називається необмеженою проблемою мінімального часу закінчення (UMFT) і виявилася важкою для NP;

2) однакові замовлення до і після обробки: можна розробити алгоритм для побудови замовлення, зберігаючи графік мінімального часу завершення (OPMFT);O(nlogn)

Отже, у випадку 1 ваша проблема є твердою, тоді як вона є в у випадку 2.PNPP

Додаткові пов'язані проблеми:

3) Пост-обробка замовлень із зворотним замовленням: Для будь-якої заданої перестановки попередньої обробки, , можна побудувати графік зворотного порядку, який називається канонічним графіком зворотного замовлення (CROS). Враховуючи попередню обробку перестановки , відповідна CROS є унікальною. Неважко встановити, що кожен мінімальний графік зворотного порядку закінчення (ROMFT) - це CROS.σσσ

4) обмеження в режимі очікування:

a) [MFTNW] Мінімізуйте час закінчення з урахуванням обмеження очікування в процесі очікування; b) [OP-MFTNW] Це версія для зберігання замовлень MFTNW. Тобто, мінімізуйте час фінішу з урахуванням обмежень, що не очікують, і збереження порядку; в) [RO-MFTNW] Мінімізуйте час фінішу з урахуванням обмежень не очікування в процесі та зворотного порядку.

Задачі і є важкими для NP, тоді як допускає рішення полінома часу.b cabc

Додаткові відомості у Підручнику з планування , глава 17.


Дякую, це схоже (у мене немає книги, але я знайшов цей папір ). Я прочитаю його уважно пізніше. Лише питання, прочитавши його вступ, здається, що він використовує рабів (після попередньої обробки), але в моїй моделі є необмежена кількість рабів; це правильно?. Я прочитаю доказ NP твердості UMFT і побачу, чи використовує він гіпотезу про обмеження кількості рабів. n
Vor

Сані показав, що завжди можна використовувати саме рабів: "Наявні процесори поділяються на дві категорії: головний і підлеглий. Якщо позначає кількість завдань, то жоден графік не може використовувати більше рабів. Отже, ми можемо припустити, що там є рівно рабами ". Тож ваша проблема легко перекладається на цей параметр: ви просто відкидаєте та не використовуєте додаткові раби, наявні в машині, з необмеженими рабами. n n nnnnn
Массімо Кафаро

2
Мені здається, що доказ твердості NP Сані критично використовує той факт, що час попередньої обробки та час після обробки можуть бути довільними. Проблема ОП у всі ці часи дорівнює 1. Чи працює доказ в цьому випадку?
Пітер Шор

Що стосується статті, то ви посилаєтесь на це витяг із безліччю відсутніх частин глави 17 книги. Однак частина, яка відсутня, заважає вам правильно зрозуміти (відсутні позначення тощо).
Массімо Кафаро

Петре, я не впевнений, і мені потрібно перевірити доказ; якщо він просто вимагає попереднього часу після обробки> 0, він повинен включати проблему ОП під час розгляду необмеженої задачі про мінімальний час закінчення. За тими ж міркуваннями це має призвести замість алгоритму поліноміального часу для порядку, що зберігає задачу про мінімальний час закінчення. O(nlogn)
Массімо Кафаро
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.