- •«Методы оптимизации» для студентов заочной формы обучения
- •Содержание
- •1. Лекционные занятия Модуль 1
- •Тема 1. Введение в методы оптимальных решений
- •Тема 2. Постановка задачи линейного программирования
- •Тема 3. Графический метод решения задачи линейного программирования
- •Тема 4. Симплекс-метод решения задачи линейного программирования
- •Тема 5. Решение задачи линейного программирования на основе теории двойственности
- •Модуль 2
- •Тема 6. Специальные задачи линейного программирования
- •Тема 7. Транспортные задачи
- •Тема 8. Принятие оптимальных решений на основе метода динамического программирования
- •Тема 9. Принятие оптимальных решений на основе методов безусловной оптимизации
- •Тема 10. Принятие оптимальных решений на основе методов условной оптимизации
- •Текст лекций
- •Основные понятия
- •Постановка задачи линейного программирования и свойства ее решений
- •Графический способ решения злп
- •Симплексный метод решение злп
- •Теория двойственности
- •Основные теоремы двойственности и их экономическое содержание
- •Основные виды экономических задач, сводящихся к злп
- •2. Практические занятия Модуль 1
- •Задание 3. Решение задач линейного программирования симплекс-методом
- •Задание 4. Решение задач линейного программирования на основе теории двойственности
- •Задание 5. Решение целочисленных задач линейного программирования на основе метода ветвей и границ
- •Задание 6. Решение транспортных задач на основе метода потенциалов
- •3. Контроль овладения компетенциями
- •4. Самостоятельная работа студентов
- •5.Аттестация Структура аттестации
- •5.1 Примерные вопросы к промежуточному тестированию Модуль 1
- •Модуль 2
- •5.2 Практические задания Модуль 1
- •Модуль 2
- •5.3 Вопросы и задания к итоговой аттестации
- •Модуль 2
- •6.Учебно-методическое обеспечение дисциплины
- •Основная литература
- •6.2 Дополнительная литература
- •7. Информационно-методическое обеспечение дисциплины
- •Контактная информация преподавателя
Задание 5. Решение целочисленных задач линейного программирования на основе метода ветвей и границ
Рассмотрим задачу ЦЛП вида
, ,
,,,,
— целые,.
На первом шаге необходимо решить сформулированную задачу как задачу ЛП, рассматривая все ее переменные как непрерывные. Получаемая таким образом задача ЛП обозначается через ЛП-1, оптимальное значение ее целевой функции – через . Пусть в оптимальном решении задачи ЛП-1 некоторые целочисленные переменные принимают дробные значения; тогда оптимальное решение исходной задачи не совпадает с оптимальным решением ЛП-1. В этом случае величина представляет собой верхнюю границу оптимального значения исходной задачи.
На следующем шаге производится ветвление по одной из целочисленных переменных, имеющих дробное значение в оптимальном решении задачи ЛП-1. Часто выбирают переменную, которая имеет наибольшее дробное значение.
Пусть ветвление происходит по целочисленной переменной xj, значение которой в оптимальном решении ЛП-1 равно . Далее рассматриваются две новые задачи ЛП, обозначаемые через ЛП-2 и ЛП-3. Они получаются путем введения ограничений [] и [] + 1 соответственно. Условия задач ЛП-2 и ЛП-3 можно записать следующим образом:
ЛП-2
, , ,, ,, [] —целые, . |
|
ЛП-3
, , ,, ,, [] + 1 —целые, .. |
Допустим, что оптимальные решения задач ЛП-2 и ЛП-3 также содержат дробные значения целочисленных переменных и поэтому не являются допустимыми для исходной задачи.
На следующем шаге необходимо выбрать задачу ЛП-2 или ЛП-3 и произвести ветвление в соответствующей вершине, вводя новое ограничение. Выбор вершины (ЗЛП) для дальнейшего ветвления часто осуществляется с использованием оптимального значения целевой функции, т.е. выбирается вершина, соответствующая наибольшему оптимальному значению целевой функции ЗЛП.
После выбора вершины для дальнейшего ветвления выбирается целочисленная переменная, которая имеет в оптимальном решении соответствующей ЗЛП дробное значение, и производится ветвление по этой переменной. Процесс ветвления и решения ЗЛП продолжается до получения целочисленного оптимального решения одной из ЗЛП. значение Z0 в полученной точке представляет собой текущую нижнюю границу оптимального значения целевой функции исходной задачи ЦЛП. На этом этапе отбрасываются все вершины (ЗЛП), для которых оптимальное значение не превосходит полученной нижней границы. Про такие вершины также говорят, что они являются прозондированными, поскольку в соответствующих им допустимых областях нет целочисленных решений, лучших, чем уже полученное, следовательно, промежуточная вершина (ЗЛП) является прозондированной (явным или неявным образом) в том случае, если она удовлетворяет хотя бы одному из следующих условий:
1. Оптимальное решение, соответствующее данной вершине, целочисленно.
2. ЗЛП, соответствующая рассматриваемой вершине, не имеет допустимых решений.
3. Оптимальное значение соответствующей ЗЛП не превосходит текущей нижней границы Z0.
Дальнейшее ветвление можно производить только в вершинах, для которых Z0. Как только полученное допустимое целочисленное решение одной из ЗЛП окажется лучше имеющегося текущего значения Z0, оно фиксируется вместо зафиксированного ранее (т.е. меняется значение Z0).
При использовании метода ветвей и границ выбор вершин для дальнейшего ветвления происходит до тех пор, пока остается хотя бы одна непрозондированная вершина. Прозондированная вершина с наилучшим значением Z0 дает решение исходной задачи ЦЛП.
Решить задачу целочисленного программирования методом ветвей и границ, учитывая целочисленность переменных.