- •Часть 2
- •Содержание
- •1. Рабочая программа курса "математические основы информатики"
- •Часть 2.
- •Предисловие
- •Практические занятия
- •Литература (основная)
- •Литература (дополнительная)
- •2. Краткий конспект лекций
- •2.1.Задачи целочисленного булева программирования
- •2.2. Каноническая и многомерная задачи о ранце и их интерпретации
- •2.3. Задача коммивояжера и ее интерпретации
- •2.4. Задачи о назначениях и их интерпретации
- •2.5. Задача целочисленного линейного программирования в общей постановке
- •2.6. Метод ветвей и границ
- •2.7. Общая схема метода ветвей и границ Джеффриона-Марстена
- •2.8. Решение канонической задачи о ранце методом ветвей и границ
- •2.9. Решение многомерной задачи о ранце методом ветвей и границ
- •2.10. Решение задачи коммивояжера методом ветвей и границ
- •2.11. Решение задачи целочисленного линейного программирования методом ветвей и границ
- •2.12. Решение задачи о ранце с использованием табличной схемы
- •2.13. Решение задачи о ранце с использованием рекуррентных соотношений динамического программирования
- •2.14. Решение задачи коммивояжера с использованием рекуррентных соотношений динамического программирования
- •2.15. Задачи теории расписаний
- •2.16. Задачи теории расписаний с одним обслуживающим прибором
- •2.17. Перестановочный прием в задачах теории расписаний
- •2.18. Теорема Лившица-Кладова
- •2.19. Задачи теории расписаний в общей постановке
- •2.20. Задача Джонсона. Графики Ганта
- •2.21.Постановка задачи теории расписаний как задачи частично-целочисленного линейного программирования
- •2.22. Сетевые модели. Расчет временных характеристик сетевых моделей
- •2.23. Потоки в сетях. Теорема Форда-Фалкерсона о максимальном потоке
- •2.24. Алгоритм Форда-Фалкерсона нахождения максимального потока в транспортной сети
- •2.25. Решение задачи о назначениях алгоритмом Куна
- •2.26. Минимаксные задачи о назначениях
- •2.27. Задачи о назначениях с индивидуальными предпочтениями
- •3. Задачник с решением типовых задач
- •3.1. Решение задачи о ранце
- •3.1.1. Решение задачи о ранце методом ветвей и границ
- •3.1.2. Решение задачи о ранце методом динамического программирования (табличная форма)
- •3.1.3. Решение задачи о ранце методом динамического программирования (рекуррентная схема)
- •3.1.4. Решить следующие задачи о ранце :
- •3.2. Решение задачи коммивояжера
- •3.2.1. Решение задачи коммивояжера методом ветвей и границ
- •3.2.2. Решение задачи коммивояжера с использованием рекуррентных соотношений динамического программирования
- •3.2.3. Решить задачи коммивояжера:
- •3.3. Решить задачу Джонсона для двух станков, построить график Ганта для оптимального расписания
- •3.4. Решение задачи о назначениях алгоритмом Куна
- •3.5. Решение минимаксных (максиминных) задач о назначениях
- •3.6. Решить задачи о назначениях с индивидуальными предпочтениями
- •3.7. Нахождение максимального потока в транспортной сети алгоритмом Форда-Фалкерсона
- •3.8. Расчет временных характеристик сетевых моделей
- •Рассчитать временные характеристики сетевой модели
- •4. Контрольные задания
- •5. Вопросы к экзамену
- •3.Задачи целочисленного булева программирования.
- •6.Задача коммивояжера и ее интерпретации.
- •8.Задача целочисленного линейного программирования в общей постановке.
Литература (основная)
1.Корбут А.А., Финкельштейн Ю.Ю. Дискретное программирование. М. Наука, 1969.
2.Таха Х. Введение в исследование операций. М. Мир,1985,Том 1.
3.Вагнер Г. Основы исследования операций. М. Мир, 1972, том 1.
Литература (дополнительная)
1.Танаев В.С., Шкурба В.В. Введение в теорию расписаний. М.Наука,1975.
2.Форд Л., Фалкерсон Д., Потоки в сетях. М. Мир, 1966.
3.Филлипс Д., Гарсиа-Диас А. Методы анализа сетей. М. Мир, 1984.
4.Сергиенко И.В."Математические модели и методы решения задач дискретной оптимизации" Киев, Наукова думка, 1988.
5.Батищев Д.И., Прилуцкий М.Х. "Оптимизация управленческих решений в сетевых моделях" Учебное пособие. Горький, ГГУ,1985.
6.Батищев Д.И., Коган Д.И. Вычислительная сложность экстремальных задач переборного типа. Учебное пособие. Изд. ННГУ, Н.Новгород, 1994.
2. Краткий конспект лекций
2.1.Задачи целочисленного булева программирования
Под задачей математического программирования понимается задача (1):
extr f(x), (1)
x D
где D = {х (x) 0, j=1,2,...,n, x Q, Q }.
Здесь (x), j=1,2,...,n, и f(x) - произвольные функции, а extr - max или min. Функция f(x) называется целевой функцией, функционалом или критерием задачи (1), а D - множеством или областью допустимых решений задачи (1).
Среди задач типа (1) выделяют задачи, которые называют регулярными.
Для них:
- для каждого допустимого вектора x, x D, может быть определена непустая окрестность;
-можно указать достаточно эффективно проверяемые необходимые и достаточные условия локальной оптимальности, т.е. локальный оптимум может быть найден на множестве D при помощи конечного процесса ( или бесконечного сходящегося);
-локальный оптимум целевой функции совпадает с глобальным.
Примерами регулярных задач являются задачи выпуклого программирования (функция f(x) - вогнута, а функции gj(x) -выпуклые). Если функции f(x) и gj(x) - линейные, то задача называется задачей линейного программирования.
Если область Q не является связной, то задача (1) называется дискретной задачей математического программирования или задачей дискретного программирования. Если функции f(x) и gj(x) при этом являются линейными, то такая задача называется задачей целочисленного линейного программирования. Если компоненты вектора x могут принимать лишь значения 0 или 1, то такая задача называется задачей целочисленного булева программирования.
2.2. Каноническая и многомерная задачи о ранце и их интерпретации
Содержательное описание.
Есть несколько “предметов”, о которых известны их “веса” и “полезности”. Задан “ранец” определённой грузоподъёмности. Требуется поместить в “ранец” “предметы” таким образом, чтобы они все “убрались” в “ранец” и суммарная “полезность” от них была максимальна.
Математическая модель.
Исходные параметры модели.
Пусть i=1,2,...,m - номера предметов, v(i) - вес предмета с номеров i, c(i) - полезность предмета с номером i, i=1,2,...,m, v(0) - вместимость ранца.
Варьируемые параметры модели.
Обозначим через x - m мерный вектор, элементы которого x(i)=1, если предмет с номером i будет помещен в ранец и x(i)=0, если предмет с номером i не будет помещен в ранец.
Ограничения математической модели.
v(i) x(i) v(0) , (1)
x(i) {0,1}, i=1,2,...,m. (2)
Постановка оптимизационной задачи.
Критерий оптимальности для задачи о ранце имеет вид:
F(x) = c(i) x(i ) max . (3)
Здесь ограничение (1) связано с вместимостью ранца, а условия (2) - естественные условия на введенные переменные.
Критерий (3) связан с максимизацией суммарной полезности от предметов, помещенных в ранец.
Задача (1) - (3) называется задачей о ранце (канонический случай).
Если кроме ограничения (1) по весу в задаче присутствуют подобные ограничения по другим характеристикам предметов, т.е. ограничения (1) преобразуются в (4):
v(i,j) x(i) b(j) , j=1,2,...,m , (4)
где v(i,j) - есть j-ая характеристика предмета с номером i, i=1,2,...,m, j=1,2,...,n, а b(j) -вместимость ранца по j-той характеристике, то задача (2), (3), (4) называется многомерной задачей о ранце.
С помощью математических моделей ранцевого типа описываются следующие прикладные задачи:
- задача загрузки уникального оборудования,
- задача формирования портфеля заказов, обеспеченного ресурсами,
- задача объемного планирования для предприятия,
- задачи загрузки контейнеров и др.