Курсовая работа
«Задача о ранце (рюкзаке)»
- 15 страниц(ы)
- 2946 просмотров
Автор: navip
Содержание
Введение 4
Классификация методов 7
Исходный код программы 10
Заключение 12
Литература 13
Классическая задача о рюкзаке (о загрузке) известна очень давно, ниже приведена ее формализация. Пусть есть N разных предметов, каждый предмет имеет вес wi и полезность pi , так же имеется максимальный вес W, который можно положить в рюкзак. Требуется собрать такой набор предметов P, чтобы полезность их была наибольшей, а суммарный вес не превышал W. Конечно, никто не собирается писать программу, чтобы наилучшим образом загрузить рюкзак, отправляясь в поход или в путешествие, тут все слишком просто, и никто не задумывается об этом, но существует и более широкое применение.
Задача о загрузке (задача о рюкзаке) и различные её модификации широко применяются на практике в прикладной математике, криптографии, экономике, логистике, для нахождения решения оптимальной загрузки различных транспортных средств: самолетов, кораблей, железнодорожных вагонов и т.д.
Рассматриваемая нами задача является NP – полной, то есть для нее не существует полиномиального алгоритма , решающего её за разумное время, в этом и есть проблема. Либо мы выбираем быстрый алгоритм, но он как известно не всегда решает задачу наилучшим образом, либо выбираем точный, который опять же не является работоспособным для больших значений. Цель данной работы – выделить основные методы решения задачи о загрузке, классифицировать и сравнить эти методы.
Реализовать алгоритмы решения классической задачи о рюкзаке. Протестировать их и разбить их на две группы: точные и приближенные, сравнить по скорости решения, по точности. Определить в каких случаях следует использовать тот или иной подход к решению задачи.
Алгоритмы решения можно разделить на два типа: точные и приближенные. Точные: применение динамического программирования, полный перебор, метод ветвей и границ (сокращение полного перебора). Приближенные алгоритмы: Жадный алгоритм.
В ходе исследования задачи о рюкзаке были выявлены три основных алгоритма решения. Полный перебор, ДП – программирование, жадный алгоритм. Так же был рассмотрен Метод ветвей и границ, но как сокращение полного перебора. Все методы разделены на две группы. Первая группа – точные методы, сюда входят ДП – алгоритмы, Полный перебор и Метод ветвей и границ. Вторая группа – приближенные методы, к таким методам относится Жадный алгоритм. Выбор использования того или иного метода спорный вопрос, все зависит от постановки задачи, а так же от того, какие цели поставлены. Если требуется найти точное решение, то конечно нужно использовать точные методы, при небольшом наборе входных данных (предметов до 10-20), подойдет перебор или метод ветвей и границ в силу простоты реализации, при больших, следует использовать ДП – алгоритм. Если же точность решения не так важна, или входные данные таковы, что ни один из точных методов не работоспособен, остается применять только приближенные алгоритмы. Но остается возможность комбинирования различных методов для ускорения, или даже применение каких либо “уловок” для конкретного примера. Надеяться же на построение полиномиального алгоритма нет смысла, так как данная задача NP-полна. Безусловно, данная задача очень важна с точки зрения ее приложения в реальной жизни. Не смотря на свою “древность”, рюкзак не только не забывается, наоборот, интерес к нему задаче растет. Оптимальная загрузка транспорта помогает сокращать расходы, получать большую прибыль. Также задача применяется в криптографии и прикладной математике.
1. С. А. Немнюгин. Turbo Pascal. Учебник
2. Окулов, С.М. Информатика в задачах [Текст] / С.М. Окулов, А.А, Пес-тов, О.А. Пестов. – Киров: Изд-во ВГПУ, 1998.
3/h**t://ru.wikipedia.org/wiki/%C7%E0%E4%E0%F7%E0_%EE_%F0%FE%EA%E7%E0%EA%E5
3. h**t://slovari.yandex.r*/~%D0%BA%D0%BD%D0%B8%D0%B3%D0%B8/%D0%9B%D0%BE%D0%BF%D0%B0%D1%82%D0%BD%D0%B8%D0%BA%D0%BE%D0%B2/%D0%97%D0%B0%D0%B4%D0%B0%D1%87%D0%B0%20%D0%BE%20%D1%80%D0%B0%D0%BD%D1%86%D0%B5/
4. h**t://w*w.vzmakh.r*/info/pascal/modules/page14.html
К работе прилагается рабочая программа на языке программирования.
Работа может быть скорректирована по желанию заказчика.
Тема: | «Задача о ранце (рюкзаке)» | |
Раздел: | Информатика | |
Тип: | Курсовая работа | |
Страниц: | 15 | |
Цена: | 900 руб. |
Закажите авторскую работу по вашему заданию.
- Цены ниже рыночных
- Удобный личный кабинет
- Необходимый уровень антиплагиата
- Прямое общение с исполнителем вашей работы
- Бесплатные доработки и консультации
- Минимальные сроки выполнения
Мы уже помогли 24535 студентам
Средний балл наших работ
- 4.89 из 5
написания вашей работы
Не подошла эта работа?
Воспользуйтесь поиском по базе из более чем 40000 работ
-
Дипломная работа:
Организация предпрофильной подготовки учащихся
74 страниц(ы) 2011 2405
-
Магистерская работа:
72 страниц(ы) 2022 347
-
Дипломная работа:
56 страниц(ы) 2022 341
-
Курсовая работа:
Государственная политика по реформированию образования
32 страниц(ы) 2017 304
-
ВКР:
84 страниц(ы) 2023 203
-
Дипломная работа:
Воспитание координационных способностей у детей 13-14 лет на уроках физической культуры
52 страниц(ы) 2022 300
-
Дипломная работа:
Игровой метод в обучении плаванию
60 страниц(ы) 2013 4409
-
Дипломная работа:
Методика изучения отдельных вопросов алгебры и начал анализа
255 страниц(ы) 2015 2132
-
Курсовая работа:
Способы формирования имиджа вуза
43 страниц(ы) 2012 4401
-
Лабораторная работа:
Интерполяция функций с помощью сплайна
12 страниц(ы) 2013 1739
682 автора
помогают студентам
23 задания
за последние сутки
10 минут
среднее время отклика
-
Курсовая работа:
Решение задачи «Планирование ассортимента блюд на предприятии об-щественного питания» в программной среде MS Excel
16 страниц(ы) -
Курсовая работа:
Решение задачи «Планирование поставок газированных напитков» с помощью MS Excel
16 страниц(ы) -
Доклад:
Исследование операций в экономике: модели, задачи, решения
255 страниц(ы) -
Дипломная работа:
Программный модуль формирования маршрутов транспортных средств на базе эволюционного алгоритма
68 страниц(ы)