Метод ветвей и границ
Среди методов, ориентированных на точное и/или приближенное решение задач комбинаторного типа, занимает группа методов, объединенных под общим названием "Метод ветвей и границ".
Впервые метод ветвей и границ был предложен в работе американских математиков Лэнд и Дойг в 1960г. применительно к задаче ЛЦП. Однако, в силу ряда причин, эта работа не оказала заметного влияния на развитие целочисленного программирования. Фактически "второе рождение" метода ветвей и границ связано с работой американских математиков Литтла, Мурти и др. (Little, Murty, Sweeney и Karel), посвященной задаче о коммивояжере (1963г.). В этой же работе впервые позвучало общепринятое теперь название "Метод ветвей и границ".
Различные реализации МВ и Г объединяет общая идея – идея замены полного перебора сокращенным, направленным перебором допустимых решений (комбинаций). Эффект достигается за счет массового отсеивания т.н. "бесперспективных" вариантов.
В основу различных модификаций МВ и Г положено несколько принципов, которые рассматриваются в следующем разделе.
Принципы метода ветвей и границ
-
Вычисление верхней или нижней границы (оценки) ЦФ на допустимом множестве или некотором его подмножестве;
-
Последовательное разбиение допустимого множества (ветвление), шаг за шагом сокращающее допустимое множество;
-
Пересчет оценок (границ);
-
Установление признака оптимальности;
4' Оценка точности приближенного решения.
1. Вычисление границы
Для определенности рассмотрим в самой общей постановке задачу комбинаторного типа на минимум ЦФ:
F(X)min,
XG.
Здесь G – множество допустимых решений (комбинаций);
X –элемент множества G.
Иногда удается найти нижнюю границу (оценку) целевой функции F на G или на некотором его подмножестве G'G.
Нижняя граница – это такое число (G) (или (G')), что
XG имеет место F(X) (G). Способ вычисления нижней границы существенно зависит от содержательной постановки задачи.
Например, в задаче поиска самого короткого маршрута из некоторой точки A в точку B с учетом существующей транспортной сети, в качестве нижней границы можно взять евклидово расстояние между этими точками (короче пути нет и быть не может).
2. Ветвление
Реализация метода ветвей и границ связана с постепенным разбиением допустимого множества G на подмножества меньшей мощности – с представлением этого подмножества в виде дерева подмножеств. Принцип, по которому осуществляется разбиение, также зависит от конкретной задачи.
3. Пересчет оценок
Пересчет оценок основан на очевидном факте. Если G1G2, то должно иметь место:
.!
Учитывая это обстоятельство, предполагается, что, если разбить некоторое множество G'G на подмножества
G'1, G'2,…, G's, причем G'=, то оценка любого подмножества должна быть не меньше оценки подмножества G':
, .
Таким образом, после разбиения любого подмножества, необходимо вычислить оценки всех вновь образованных подмножеств – "уточнить" оценки.
4. Признак оптимальности
Пусть G= и известно решение ({1,2,…,s}). Пусть, далее, имеет место следующее соотношение:
Тогда - оптимальное решение задачи. Доказательство вытекает непосредственно из определения границы.