Курсова робота на тему: Задача про пакування рюкзака
Курсова робота на тему: Задача про пакування рюкзака з частково заданим порядком Виконавець: студентка групи ПС-13-1 Мігріна А. М. Керівник: доц. кафедри ОМ та МК Турчина В. А.
Вступ Дж. Б. Метьюз 15 kg 3$ 10$ 5$ 3$ 1$
Актуальність ?
Відомі задачі 1) Рюкзак «0-1». Кожна річ унікальна, її можна або покласти в рюкзак, або ні; 2) обмежений рюкзак. Маємо декілька екземплярів кожної речі, але з цієї множини ми можемо взяти певну кількість; 3) необмежений рюкзак. Маємо необмежену множину екземплярів кожної речі, з якої можемо брати необмежену кількість предметів; 4) мультиплікативний рюкзак. Є декілька рюкзаків з певною місткістю. Кожен предмет можемо або покласти в один з рюкзаків, або не класти предмет ні в який з них. Потрібно максимізувати ціну предметів для кожного рюкзака. 5) рюкзак з мультивибором. Усі предмети розбиті на множини. Головна умова взяти лише один предмет з кожної множини; 6) багатовимірний рюкзак. Предмети мають більше параметрів, наприклад не тільки вагу та користь, а й термін придатності, швидкість пакування.
Алгоритми пошуку розв'язку Точні, але повільні: алгоритм методу повного перебору; алгоритм методу гілок та меж; алгоритм методу динамічного програмування. Наближені: жадібний алгоритм; генетичний алгоритм.
Програмна реалізація 1 – кнопка, що дозволяє відкрити файл з даними про предмети та про рюкзак; 2 – кнопка, що дозволяє зберегти дані з таблиці 6 та поля 4 в файл, який потім можна бути відкрити в програмі; 3 – кнопка, що видаляє завантажені дані; 4 – випадний список, в якому можна обрати режим знаходження питомої ціни групи предметів: average для першого варіанту або max для другого (розділ 5); 5 – поле, в яке вводять значення місткості рюкзака; 6 – кнопка, яка запускає функцію групування та функцію пошуку розв'язку; 7 – таблиця, в яку вводять дані про предмети(поле «П. ціна» обчислюється автоматично для кожного предмету); 8 – поле, в якому з’являються результати обчислень. Вигляд вікна програми
Тести
Висновки була розглянута одна з нових постановок задачі про рюкзак, що є модифікацією відомої класичної задачі; були вивчені різні постановки задачі про рюкзак; зроблено огляд методів їх розв’язання; для розглянутої задачі розроблено метод знаходження її точного розв’язку, що базується на схемі направленого перебору; на основі створеного методу було розроблено та програмно реалізовано алгоритм; алгоритм протестовано та проведений порівняльний аналіз з результатами класичної задачі.
140-kursova_robota.pptx
- Количество слайдов: 11