Пример.

Отбрасывая требование целочисленности, решим заданную задачу как обычную задачу линейного программирования.

БП СЧ CO
3 20/3
40/7
F -2 -4 -3  

БП СЧ
20/7 -13/7 -3/7 -23/7
40/7 9/7 1/7 10/7
F 160/7 22/7 4/7 19/7

В полученном оптимальном решении задачи имеем нецелочисленное значение неизвестной х2 . Дополнительное ограничение формируем по элементам второй строки:

БП СЧ CO
20/7 -13/7 -3/7 -23/7 -
40/7 9/7 1/7 10/7
-5/7 -2/7 -1/7 -3/7 5
F 160/7 22/7 4/7 19/7  

БП СЧ
     
     
     
F

Ответ:

Метод ветвей и границ

Сначала в области допустимых решений системы ограничений находится оптимальное решение, в частности симплекс-методом без учета целочисленности. Если в полученном решении некоторые переменные имеют дробные значения, то выбираем любую из дробных переменных и по ней строим два ограничения. В одном ограничении величина этой переменной меньше либо равна наибольшему целому числу, не превышающему значения дробной переменной в оптимальном решении. В другом ограничении переменная больше или равна наименьшему целому значению, но не меньше значения дробной переменной.

Если, например, дополнительные ограничения строить по переменной , то первое ограничение будет а второе этим мы исключаем из ОДР исходной задачи промежуток с дробными значениями неизвестной . Этот промежуток разбивает ОДР на две части

ОДР

ОДЗ1 ОДЗ2

В результате разбиения ОДР получены две новые задачи (подзадачи) линейной оптимизации. Если после их решения полученные значения неизвестных будут не целочисленные, то, сравнив значения функций этих задач, выбираем задачу с большим значением функции и по новой неизвестной с дробным значением строим снова два дополнительных ограничения (третье и четвертое) и разбиваем эту задачу еще на две новые подзадачи. В результате получаем ветви. Ветвление заканчивается нахождением целочисленного решения, если оно существует. Границами в методе выступают значения функций задач каждой ветви. На каждом этапе решения задачи дальнейшему ветвлению (разбиению на новые задачи) подлежит та ветвь (задача), у которой значение функции больше. Поэтому отдельные подзадачи (ветви), у которых, значение функции меньше, могут быть отброшены. Однако иногда, сравнивая значения функций подзадач, приходится возвращаться к ветвям, которые, ранее были отброшены, и продолжать дальнейшее решение от них.

Поскольку множество всех решений задачи ЦЛО конечно, то после конечного числа разбиений исходной задачи на подзадачи оптимальное решение будет найдено.

Проиллюстрируем применение метода ветвей и границ на следующем примере.

Пример. Найти максимум функции

при ограничениях

Решение. Для наглядности решение осуществим графическим методом. ОДР задачи является многоугольник ОАВС (рис. 1). В точке В находится максимальное значение функции: при и

Рис. 1

Поскольку значения неизвестных дробные, то разобьём по неизвестной ОДР задачи на две части. Одна будет содержать множество точек, у которых , а вторая — у которых . В результате получаем две новые задачи линейной оптимизации: №2 и № 3 (исходная задача имеет № 1).

Задача № 2 Задача № 3

 

Области допустимых решений задач представлены на рис. 2.

Из рис. 2 видно, что ни одна целочисленная точка исходной ОДР не потеряна. ОДР задачи № 2 является многоугольник OADEC. В точке Е с координатами и функция достигает максимального значения

 

Рис. 2

Решение задачи № 2 не является целочисленным. Что касается задачи № 3, то ее ОДР пустая. Ограничения этой задачи противоречивы, и она не имеет решения.

Продолжая решение, разобьем ОДР задачи № 2 на два подмножества по неизвестной . В результате получим две новые задачи № 4 и № 5 с соответствующими дополнительными ограничениями : и .

Задача № 4 Задача № 5

 

ОДР этих задач представлены на рис. 3.

ОДР задачи № 4 является многоугольник OADFK. Максимальное значение функции достигается в точке F с координатами и . . Таким образом, получено целочисленное решение задачи № 4.

ОДР задачи № 5 является треугольник LMC. Максимальное значение функция достигает в точке L с координатами ; ;

Так как значение функции целочисленного решения задачи № 4 меньше , то дальнейшему разбиению на две задачи № 6 и № 7 подлежит задача № 5 по нецелочисленной неизвестной . Не проводя дополнительных построений, отметим, что ОДР задачи № 6 с дополнительным ограничением не существует, а значение функции в оптимальном целочисленном решении задачи № 7 с дополнительным ограничением равно 7, что меньше . Таким образом, целочисленное решение исходной задачи следующее: , , .

 

Рис. 3