Топ питань
Часова шкала
Чат
Перспективи
Список задач про наповнення рюкзака
стаття-список у проєкті Вікімедіа З Вікіпедії, вільної енциклопедії
Remove ads
Задача про наповнення рюкзака — це одна з задач комбінаторної оптимізації. Задача отримала назву від максимізаційної задачі пакування якомога більшої кількості речей в рюкзак при умові, щоб загальний об'єм (чи вага) всіх предметів, здатних поміститись в рюкзак, обмежений. Тому в цієї задачі існує декілька підвидів. Загальним для всіх видів є наявність набору з n предметів, кожен з двома параметрами — вага і ціна , .Є рюкзак, визначеної місткості . Завдання — зібрати рюкзак з максимальною цінністю предметів всередині, зберігаючи при цьому вагове обмеження рюкзака. Зазвичай всі параметри є цілими невід'ємними числами.
![]() | Було запропоновано об'єднати цю статтю або розділ з Задача пакування рюкзака, але, можливо, це варто додатково обговорити. Пропозиція з грудня 2014. |
Remove ads
Рюкзак 0-1 (англ. 0-1 Knapsack Problem)
Це найбільш поширений різновид рюкзака. Нехай приймає два значення: , якщо вантаж запакований, і в іншому випадку, де . Завдання: Максимізувати
при наявності обмеження на місткість рюкзака.
Remove ads
Обмежений рюкзак (англ. Bounded Knapsack Problem)
Кожен предмет може бути обраний обмежену кількість раз. Завдання: Максимізувати
так, щоб виконалась умова на місткість
і для всіх .
Число називають границею, межею.
Remove ads
Необмежений рюкзак (цілочисельний рюкзак) (англ. Unbounded Knapsack Problem (integer knapsack))
Кожен предмет може бути обраний необмежену кількість раз. Завдання: максимізувати
так щоб виконалась умова на місткість
і ціле для всіх .
Рюкзак з мультивибором (англ. Multiple-choice Knapsack Problem)
Всі предмети розділяють на класів . Обов'язковою є умова вибору предмета з кожного класу. приймає значення тільки 0 і 1. Завдання: максимізувати
так щоб виконувалась умова на місткість,
для всіх
Remove ads
Мультиплікативний рюкзак (англ. Multiple Knapsack Problem)
Нехай в нас є предметів та рюкзаків . У кожного предмета, як і раніше, є вага і ціна , у кожного рюкзака відповідно своя місткість Завдання: максимізувати
так щоб виконувалась умова для всіх ,
для всіх .
Remove ads
Багатовимірний рюкзак (англ. Multy-dimensional knapsack problem)
Якщо є більше одного обмеження на рюкзак, наприклад об'єм і вага, задачу називають m-вимірною задачею про рюкзак. Наприклад, для необмеженого варіанта: максимізувати
так щоб
и для всіх .
Remove ads
Література
- В. Н. Бурков, И. А. Горгидзе, С. Е. Ловецкий. Прикладные задачи теории графов. — М., 1974. — 232 с. (рос.)
- Silvano Martelo, Paolo Toth Knapsack problems. — Wiley, 1990. — 306 с. (англ.)
- David Pisinger Knapsack problems. — 1995. (англ.)
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads