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


11

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

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

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

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

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

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

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

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

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

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


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

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

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

@MassimoCafaro: задається як вхід (щоб зробити проблему оптимізації вирішенням проблеми). Як ви помітили, я написав тому що якщо відповідь тривіально НІ. Але, можливо, це заплутано, і я повинен її видалити. k ≥ 2 n k < 2 nkk≥2nk<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(nlog⁡n)

Отже, у випадку 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(nlog⁡n)
— Массімо Кафаро
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.